Public Member Functions | Private Member Functions | Private Attributes

SpuSampleTaskProcess Class Reference

SpuSampleTaskProcess handles SPU processing of collision pairs. More...

#include <SpuSampleTaskProcess.h>

Collaboration diagram for SpuSampleTaskProcess:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 SpuSampleTaskProcess (btThreadSupportInterface *threadInterface, int maxNumOutstandingTasks)
 ~SpuSampleTaskProcess ()
void initialize ()
 call initialize in the beginning of the frame, before addCollisionPairToTask
void issueTask (void *sampleMainMemPtr, int sampleValue, int sampleCommand)
void flush ()
 call flush to submit potential outstanding work to SPUs and wait for all involved SPUs to be finished

Private Member Functions

void postProcess (int taskId, int outputSize)
 Optional PPU-size post processing for each task.

Private Attributes

btAlignedObjectArray< bool > m_taskBusy
btAlignedObjectArray
< SpuSampleTaskDesc
m_spuSampleTaskDesc
int m_numBusyTasks
int m_currentTask
bool m_initialized
class btThreadSupportInterfacem_threadInterface
int m_maxNumOutstandingTasks

Detailed Description

SpuSampleTaskProcess handles SPU processing of collision pairs.

When PPU issues a task, it will look for completed task buffers PPU will do postprocessing, dependent on workunit output (not likely)

Definition at line 40 of file SpuSampleTaskProcess.h.


Constructor & Destructor Documentation

SpuSampleTaskProcess::SpuSampleTaskProcess ( btThreadSupportInterface threadInterface,
int  maxNumOutstandingTasks 
)

Definition at line 61 of file SpuSampleTaskProcess.cpp.

SpuSampleTaskProcess::~SpuSampleTaskProcess (  ) 

Definition at line 83 of file SpuSampleTaskProcess.cpp.


Member Function Documentation

void SpuSampleTaskProcess::flush (  ) 

call flush to submit potential outstanding work to SPUs and wait for all involved SPUs to be finished

Definition at line 180 of file SpuSampleTaskProcess.cpp.

void SpuSampleTaskProcess::initialize (  ) 

call initialize in the beginning of the frame, before addCollisionPairToTask

Definition at line 91 of file SpuSampleTaskProcess.cpp.

void SpuSampleTaskProcess::issueTask ( void *  sampleMainMemPtr,
int  sampleValue,
int  sampleCommand 
)

Definition at line 108 of file SpuSampleTaskProcess.cpp.

void SpuSampleTaskProcess::postProcess ( int  taskId,
int  outputSize 
) [private]

Optional PPU-size post processing for each task.

Definition at line 174 of file SpuSampleTaskProcess.cpp.


Member Data Documentation

Definition at line 49 of file SpuSampleTaskProcess.h.

Definition at line 51 of file SpuSampleTaskProcess.h.

Definition at line 57 of file SpuSampleTaskProcess.h.

Definition at line 46 of file SpuSampleTaskProcess.h.

Definition at line 44 of file SpuSampleTaskProcess.h.

Definition at line 43 of file SpuSampleTaskProcess.h.

Definition at line 55 of file SpuSampleTaskProcess.h.


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