/* * private.h * * 32-bit Motion Control Device Driver * User-mode support library - private definitions */ #ifndef _PRIVATE_H #define _PRIVATE_H /* * function codes that the calling thread can ask the worker thread to * perform */ typedef enum _MCFUNC { // arg result // --- ------ InterruptTerm, // InvalidFunction } MCFUNC, *PMCFUNC; /* we send this many interrupt request to the kernel at once to queue */ // #define ALL_INTERRUPTS 8 // total available ints on pmac/starter set // #define INTERRUPT_THRESHOLD 3 // queue not less than these many ints /* * the worker thread starts execution at this function */ DWORD MC_ThreadInit( DWORD ); /* * process a user request that needs to be handled on the * worker thread * * It returns the result of the operation in pResult, and returns * TRUE if the worker thread loop should terminate. * * This function will normally be called from the main * worker-thread event processing loop. However, it must be * called directly by the entrypoint functions if they * discover they are running on the worker thread (eg from a callback). * If this doesn't happen, we will enter deadlock with the worker thread * waiting for itself to signal an event. */ //BOOL MC_ProcessFunction(PUSER_HANDLE vh, MCFUNC Function, DWORD Param, LPDWORD pResult); #endif