20 #ifndef BT_SEQUENTIAL_THREAD_SUPPORT_H
21 #define BT_SEQUENTIAL_THREAD_SUPPORT_H
28 typedef void* (*SequentiallsMemorySetupFunc)();
76 virtual void waitForResponse(
unsigned int *puiArgument0,
unsigned int *puiArgument1);
99 #endif //BT_SEQUENTIAL_THREAD_SUPPORT_H
The SequentialThreadSupport is a portable non-parallel implementation of the btThreadSupportInterface...
The btAlignedObjectArray template class uses a subset of the stl::vector interface for its methods It...
virtual void deleteCriticalSection(btCriticalSection *criticalSection)
void *(* SequentiallsMemorySetupFunc)()
const char * m_uniqueName
btAlignedObjectArray< void * > m_completeHandles
virtual void sendRequest(uint32_t uiCommand, ppu_address_t uiArgument0, uint32_t uiArgument1)
send messages to SPUs
SequentialThreadSupport(SequentialThreadConstructionInfo &threadConstructionInfo)
SequentiallsMemorySetupFunc m_lsMemoryFunc
virtual void startSPU()
start the spus (can be called at the beginning of each frame, to make sure that the right SPU program...
btAlignedObjectArray< btSpuStatus > m_activeSpuStatus
virtual void setNumTasks(int numTasks)
tell the task scheduler to use no more than numTasks tasks
void(* SequentialThreadFunc)(void *userPtr, void *lsMemory)
void startThreads(SequentialThreadConstructionInfo &threadInfo)
virtual void stopSPU()
tell the task scheduler we are done with the SPU tasks
virtual void deleteBarrier(btBarrier *barrier)
virtual btCriticalSection * createCriticalSection()
SequentialThreadConstructionInfo(const char *uniqueName, SequentialThreadFunc userThreadFunc, SequentiallsMemorySetupFunc lsMemoryFunc)
SequentialThreadFunc m_userThreadFunc
virtual int getNumTasks() const
virtual void waitForResponse(unsigned int *puiArgument0, unsigned int *puiArgument1)
check for messages from SPUs
virtual ~SequentialThreadSupport()
cleanup/shutdown Libspe2
static void barrier(unsigned int a)
virtual btBarrier * createBarrier()
SequentialThreadFunc m_userThreadFunc