Bullet Collision Detection & Physics Library
Public Member Functions | List of all members
btThreadSupportInterface Class Referenceabstract

#include <btThreadSupportInterface.h>

Inheritance diagram for btThreadSupportInterface:
Inheritance graph
[legend]

Public Member Functions

virtual ~btThreadSupportInterface ()
 
virtual void sendRequest (uint32_t uiCommand, ppu_address_t uiArgument0, uint32_t uiArgument1)=0
 send messages to SPUs More...
 
virtual void waitForResponse (unsigned int *puiArgument0, unsigned int *puiArgument1)=0
 check for messages from SPUs More...
 
virtual void startSPU ()=0
 non-blocking test if a task is completed. More...
 
virtual void stopSPU ()=0
 tell the task scheduler we are done with the SPU tasks More...
 
virtual void setNumTasks (int numTasks)=0
 tell the task scheduler to use no more than numTasks tasks More...
 
virtual int getNumTasks () const =0
 
virtual btBarriercreateBarrier ()=0
 
virtual btCriticalSectioncreateCriticalSection ()=0
 
virtual void deleteBarrier (btBarrier *barrier)=0
 
virtual void deleteCriticalSection (btCriticalSection *criticalSection)=0
 
virtual void * getThreadLocalMemory (int taskId)
 

Detailed Description

Definition at line 49 of file btThreadSupportInterface.h.

Constructor & Destructor Documentation

btThreadSupportInterface::~btThreadSupportInterface ( )
virtual

Definition at line 18 of file btThreadSupportInterface.cpp.

Member Function Documentation

virtual btBarrier* btThreadSupportInterface::createBarrier ( )
pure virtual
virtual btCriticalSection* btThreadSupportInterface::createCriticalSection ( )
pure virtual
virtual void btThreadSupportInterface::deleteBarrier ( btBarrier barrier)
pure virtual
virtual void btThreadSupportInterface::deleteCriticalSection ( btCriticalSection criticalSection)
pure virtual
virtual int btThreadSupportInterface::getNumTasks ( ) const
pure virtual
virtual void* btThreadSupportInterface::getThreadLocalMemory ( int  taskId)
inlinevirtual

Reimplemented in PosixThreadSupport, and Win32ThreadSupport.

Definition at line 84 of file btThreadSupportInterface.h.

virtual void btThreadSupportInterface::sendRequest ( uint32_t  uiCommand,
ppu_address_t  uiArgument0,
uint32_t  uiArgument1 
)
pure virtual

send messages to SPUs

Implemented in PosixThreadSupport, Win32ThreadSupport, and SequentialThreadSupport.

virtual void btThreadSupportInterface::setNumTasks ( int  numTasks)
pure virtual

tell the task scheduler to use no more than numTasks tasks

Implemented in PosixThreadSupport, Win32ThreadSupport, and SequentialThreadSupport.

virtual void btThreadSupportInterface::startSPU ( )
pure virtual

non-blocking test if a task is completed.

First implement all versions, and then enable this API virtual bool isTaskCompleted(unsigned int *puiArgument0, unsigned int *puiArgument1, int timeOutInMilliseconds)=0; start the spus (can be called at the beginning of each frame, to make sure that the right SPU program is loaded)

Implemented in PosixThreadSupport, Win32ThreadSupport, and SequentialThreadSupport.

virtual void btThreadSupportInterface::stopSPU ( )
pure virtual

tell the task scheduler we are done with the SPU tasks

Implemented in PosixThreadSupport, Win32ThreadSupport, and SequentialThreadSupport.

virtual void btThreadSupportInterface::waitForResponse ( unsigned int *  puiArgument0,
unsigned int *  puiArgument1 
)
pure virtual

check for messages from SPUs

Implemented in PosixThreadSupport, Win32ThreadSupport, and SequentialThreadSupport.


The documentation for this class was generated from the following files: