Bullet Collision Detection & Physics Library
Classes | Macros
SpuCollisionTaskProcess.h File Reference
#include <assert.h>
#include "LinearMath/btScalar.h"
#include "PlatformDefinitions.h"
#include "LinearMath/btAlignedObjectArray.h"
#include "SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h"
#include "btThreadSupportInterface.h"
#include <string.h>
#include "BulletCollision/CollisionDispatch/btCollisionObject.h"
#include "BulletCollision/CollisionShapes/btCollisionShape.h"
#include "BulletCollision/CollisionShapes/btConvexShape.h"
#include "LinearMath/btAlignedAllocator.h"
#include <stdio.h>
Include dependency graph for SpuCollisionTaskProcess.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  SpuGatherAndProcessWorkUnitInput
 MidphaseWorkUnitInput stores individual primitive versus mesh collision detection input, to be processed by the SPU. More...
 
class  SpuCollisionTaskProcess
 SpuCollisionTaskProcess handles SPU processing of collision pairs. More...
 

Macros

#define DEBUG_SpuCollisionTaskProcess   1
 
#define CMD_GATHER_AND_PROCESS_PAIRLIST   1
 
#define MIDPHASE_TASK_PTR(task)   (&m_workUnitTaskBuffers[0] + MIDPHASE_WORKUNIT_TASK_SIZE*task)
 
#define MIDPHASE_ENTRY_PTR(task, page, entry)   (MIDPHASE_TASK_PTR(task) + MIDPHASE_WORKUNIT_PAGE_SIZE*page + sizeof(SpuGatherAndProcessWorkUnitInput)*entry)
 
#define MIDPHASE_OUTPUT_PTR(task)   (&m_contactOutputBuffers[0] + MIDPHASE_MAX_CONTACT_BUFFER_SIZE*task)
 
#define MIDPHASE_TREENODES_PTR(task)   (&m_complexShapeBuffers[0] + MIDPHASE_COMPLEX_SHAPE_BUFFER_SIZE*task)
 
#define MIDPHASE_WORKUNIT_PAGE_SIZE   (16)
 
#define MIDPHASE_NUM_WORKUNIT_PAGES   1
 
#define MIDPHASE_WORKUNIT_TASK_SIZE   (MIDPHASE_WORKUNIT_PAGE_SIZE*MIDPHASE_NUM_WORKUNIT_PAGES)
 
#define MIDPHASE_NUM_WORKUNITS_PER_PAGE   (MIDPHASE_WORKUNIT_PAGE_SIZE / sizeof(SpuGatherAndProcessWorkUnitInput))
 
#define MIDPHASE_NUM_WORKUNITS_PER_TASK   (MIDPHASE_NUM_WORKUNITS_PER_PAGE*MIDPHASE_NUM_WORKUNIT_PAGES)
 

Macro Definition Documentation

#define CMD_GATHER_AND_PROCESS_PAIRLIST   1

Definition at line 46 of file SpuCollisionTaskProcess.h.

#define DEBUG_SpuCollisionTaskProcess   1

Definition at line 43 of file SpuCollisionTaskProcess.h.

#define MIDPHASE_ENTRY_PTR (   task,
  page,
  entry 
)    (MIDPHASE_TASK_PTR(task) + MIDPHASE_WORKUNIT_PAGE_SIZE*page + sizeof(SpuGatherAndProcessWorkUnitInput)*entry)

Definition at line 148 of file SpuCollisionTaskProcess.h.

#define MIDPHASE_NUM_WORKUNIT_PAGES   1

Definition at line 156 of file SpuCollisionTaskProcess.h.

#define MIDPHASE_NUM_WORKUNITS_PER_PAGE   (MIDPHASE_WORKUNIT_PAGE_SIZE / sizeof(SpuGatherAndProcessWorkUnitInput))

Definition at line 158 of file SpuCollisionTaskProcess.h.

#define MIDPHASE_NUM_WORKUNITS_PER_TASK   (MIDPHASE_NUM_WORKUNITS_PER_PAGE*MIDPHASE_NUM_WORKUNIT_PAGES)

Definition at line 159 of file SpuCollisionTaskProcess.h.

#define MIDPHASE_OUTPUT_PTR (   task)    (&m_contactOutputBuffers[0] + MIDPHASE_MAX_CONTACT_BUFFER_SIZE*task)

Definition at line 149 of file SpuCollisionTaskProcess.h.

#define MIDPHASE_TASK_PTR (   task)    (&m_workUnitTaskBuffers[0] + MIDPHASE_WORKUNIT_TASK_SIZE*task)

Definition at line 147 of file SpuCollisionTaskProcess.h.

#define MIDPHASE_TREENODES_PTR (   task)    (&m_complexShapeBuffers[0] + MIDPHASE_COMPLEX_SHAPE_BUFFER_SIZE*task)

Definition at line 150 of file SpuCollisionTaskProcess.h.

#define MIDPHASE_WORKUNIT_PAGE_SIZE   (16)

Definition at line 153 of file SpuCollisionTaskProcess.h.

#define MIDPHASE_WORKUNIT_TASK_SIZE   (MIDPHASE_WORKUNIT_PAGE_SIZE*MIDPHASE_NUM_WORKUNIT_PAGES)

Definition at line 157 of file SpuCollisionTaskProcess.h.