32 #ifndef _ODE_THREADING_IMPL_H_
33 #define _ODE_THREADING_IMPL_H_
36 #include <ode/odeconfig.h>
37 #include <ode/threading.h>
45 struct dxThreadingThreadPool;
46 typedef struct dxThreadingThreadPool *dThreadingThreadPoolID;
64 ODE_API dThreadingImplementationID dThreadingAllocateMultiThreadedImplementation();
107 ODE_API
void dThreadingImplementationShutdownProcessing(dThreadingImplementationID impl);
125 ODE_API
void dThreadingImplementationCleanupForRestart(dThreadingImplementationID impl);
139 ODE_API
void dThreadingFreeImplementation(dThreadingImplementationID impl);
142 typedef void (dThreadReadyToServeCallback)(
void *callback_context);
166 ODE_API
void dExternalThreadingServeMultiThreadedImplementation(dThreadingImplementationID impl,
167 dThreadReadyToServeCallback *readiness_callback,
void *callback_context);
195 ODE_API dThreadingThreadPoolID dThreadingAllocateThreadPool(
unsigned thread_count,
196 size_t stack_size,
unsigned int ode_data_allocate_flags,
void *reserved);
218 ODE_API
void dThreadingThreadPoolServeMultiThreadedImplementation(dThreadingThreadPoolID pool, dThreadingImplementationID impl);
242 ODE_API
void dThreadingThreadPoolWaitIdleState(dThreadingThreadPoolID pool);
257 ODE_API
void dThreadingFreeThreadPool(dThreadingThreadPoolID pool);
An interface structure with function pointers to be provided by threading implementation.
Definition: threading.h:370