btCollisionDispatcher Class Reference

btCollisionDispatcher supports algorithms that handle ConvexConvex and ConvexConcave collision pairs. More...

#include <btCollisionDispatcher.h>

Inheritance diagram for btCollisionDispatcher:
Inheritance graph
[legend]
Collaboration diagram for btCollisionDispatcher:
Collaboration graph
[legend]

List of all members.

Public Types

enum  DispatcherFlags {
  CD_STATIC_STATIC_REPORTED = 1,
  CD_USE_RELATIVE_CONTACT_BREAKING_THRESHOLD = 2
}

Public Member Functions

int getDispatherFlags () const
void setDispatcherFlags (int flags)
void registerCollisionCreateFunc (int proxyType0, int proxyType1, btCollisionAlgorithmCreateFunc *createFunc)
 registerCollisionCreateFunc allows registration of custom/alternative collision create functions
int getNumManifolds () const
btPersistentManifold ** getInternalManifoldPointer ()
btPersistentManifoldgetManifoldByIndexInternal (int index)
const btPersistentManifoldgetManifoldByIndexInternal (int index) const
 btCollisionDispatcher (btCollisionConfiguration *collisionConfiguration)
virtual ~btCollisionDispatcher ()
virtual btPersistentManifoldgetNewManifold (void *b0, void *b1)
virtual void releaseManifold (btPersistentManifold *manifold)
virtual void clearManifold (btPersistentManifold *manifold)
btCollisionAlgorithmfindAlgorithm (btCollisionObject *body0, btCollisionObject *body1, btPersistentManifold *sharedManifold=0)
virtual bool needsCollision (btCollisionObject *body0, btCollisionObject *body1)
virtual bool needsResponse (btCollisionObject *body0, btCollisionObject *body1)
virtual void dispatchAllCollisionPairs (btOverlappingPairCache *pairCache, const btDispatcherInfo &dispatchInfo, btDispatcher *dispatcher)
void setNearCallback (btNearCallback nearCallback)
btNearCallback getNearCallback () const
virtual void * allocateCollisionAlgorithm (int size)
virtual void freeCollisionAlgorithm (void *ptr)
btCollisionConfigurationgetCollisionConfiguration ()
const btCollisionConfigurationgetCollisionConfiguration () const
void setCollisionConfiguration (btCollisionConfiguration *config)

Static Public Member Functions

static void defaultNearCallback (btBroadphasePair &collisionPair, btCollisionDispatcher &dispatcher, const btDispatcherInfo &dispatchInfo)

Private Attributes

int m_dispatcherFlags
btAlignedObjectArray
< btPersistentManifold * > 
m_manifoldsPtr
btManifoldResult m_defaultManifoldResult
btNearCallback m_nearCallback
btPoolAllocatorm_collisionAlgorithmPoolAllocator
btPoolAllocatorm_persistentManifoldPoolAllocator
btCollisionAlgorithmCreateFuncm_doubleDispatch [MAX_BROADPHASE_COLLISION_TYPES][MAX_BROADPHASE_COLLISION_TYPES]
btCollisionConfigurationm_collisionConfiguration

Detailed Description

btCollisionDispatcher supports algorithms that handle ConvexConvex and ConvexConcave collision pairs.

Time of Impact, Closest Points and Penetration Depth.

Definition at line 43 of file btCollisionDispatcher.h.


Member Enumeration Documentation

Enumerator:
CD_STATIC_STATIC_REPORTED 
CD_USE_RELATIVE_CONTACT_BREAKING_THRESHOLD 

Definition at line 64 of file btCollisionDispatcher.h.


Constructor & Destructor Documentation

btCollisionDispatcher::btCollisionDispatcher ( btCollisionConfiguration collisionConfiguration  ) 

Definition at line 36 of file btCollisionDispatcher.cpp.

btCollisionDispatcher::~btCollisionDispatcher (  )  [virtual]

Definition at line 66 of file btCollisionDispatcher.cpp.


Member Function Documentation

void * btCollisionDispatcher::allocateCollisionAlgorithm ( int  size  )  [virtual]

Implements btDispatcher.

Definition at line 283 of file btCollisionDispatcher.cpp.

void btCollisionDispatcher::clearManifold ( btPersistentManifold manifold  )  [virtual]

Implements btDispatcher.

Definition at line 105 of file btCollisionDispatcher.cpp.

void btCollisionDispatcher::defaultNearCallback ( btBroadphasePair collisionPair,
btCollisionDispatcher dispatcher,
const btDispatcherInfo dispatchInfo 
) [static]

Definition at line 248 of file btCollisionDispatcher.cpp.

void btCollisionDispatcher::dispatchAllCollisionPairs ( btOverlappingPairCache pairCache,
const btDispatcherInfo dispatchInfo,
btDispatcher dispatcher 
) [virtual]

Reimplemented in SpuGatheringCollisionDispatcher.

Definition at line 232 of file btCollisionDispatcher.cpp.

btCollisionAlgorithm * btCollisionDispatcher::findAlgorithm ( btCollisionObject body0,
btCollisionObject body1,
btPersistentManifold sharedManifold = 0 
) [virtual]

Implements btDispatcher.

Definition at line 138 of file btCollisionDispatcher.cpp.

void btCollisionDispatcher::freeCollisionAlgorithm ( void *  ptr  )  [virtual]

Implements btDispatcher.

Definition at line 294 of file btCollisionDispatcher.cpp.

const btCollisionConfiguration* btCollisionDispatcher::getCollisionConfiguration (  )  const [inline]

Definition at line 146 of file btCollisionDispatcher.h.

btCollisionConfiguration* btCollisionDispatcher::getCollisionConfiguration (  )  [inline]

Definition at line 141 of file btCollisionDispatcher.h.

int btCollisionDispatcher::getDispatherFlags (  )  const [inline]

Definition at line 70 of file btCollisionDispatcher.h.

btPersistentManifold** btCollisionDispatcher::getInternalManifoldPointer (  )  [inline, virtual]

Implements btDispatcher.

Definition at line 89 of file btCollisionDispatcher.h.

const btPersistentManifold* btCollisionDispatcher::getManifoldByIndexInternal ( int  index  )  const [inline]

Definition at line 99 of file btCollisionDispatcher.h.

btPersistentManifold* btCollisionDispatcher::getManifoldByIndexInternal ( int  index  )  [inline, virtual]

Implements btDispatcher.

Definition at line 94 of file btCollisionDispatcher.h.

btNearCallback btCollisionDispatcher::getNearCallback (  )  const [inline]

Definition at line 129 of file btCollisionDispatcher.h.

btPersistentManifold * btCollisionDispatcher::getNewManifold ( void *  b0,
void *  b1 
) [virtual]

Implements btDispatcher.

Definition at line 70 of file btCollisionDispatcher.cpp.

int btCollisionDispatcher::getNumManifolds (  )  const [inline, virtual]

Implements btDispatcher.

Definition at line 84 of file btCollisionDispatcher.h.

bool btCollisionDispatcher::needsCollision ( btCollisionObject body0,
btCollisionObject body1 
) [virtual]

Implements btDispatcher.

Definition at line 164 of file btCollisionDispatcher.cpp.

bool btCollisionDispatcher::needsResponse ( btCollisionObject body0,
btCollisionObject body1 
) [virtual]

Implements btDispatcher.

Definition at line 153 of file btCollisionDispatcher.cpp.

void btCollisionDispatcher::registerCollisionCreateFunc ( int  proxyType0,
int  proxyType1,
btCollisionAlgorithmCreateFunc createFunc 
)

registerCollisionCreateFunc allows registration of custom/alternative collision create functions

Definition at line 61 of file btCollisionDispatcher.cpp.

void btCollisionDispatcher::releaseManifold ( btPersistentManifold manifold  )  [virtual]

Implements btDispatcher.

Definition at line 111 of file btCollisionDispatcher.cpp.

void btCollisionDispatcher::setCollisionConfiguration ( btCollisionConfiguration config  )  [inline]

Definition at line 151 of file btCollisionDispatcher.h.

void btCollisionDispatcher::setDispatcherFlags ( int  flags  )  [inline]

Definition at line 75 of file btCollisionDispatcher.h.

void btCollisionDispatcher::setNearCallback ( btNearCallback  nearCallback  )  [inline]

Definition at line 124 of file btCollisionDispatcher.h.


Member Data Documentation

Definition at line 53 of file btCollisionDispatcher.h.

Definition at line 59 of file btCollisionDispatcher.h.

Definition at line 49 of file btCollisionDispatcher.h.

Definition at line 45 of file btCollisionDispatcher.h.

btCollisionAlgorithmCreateFunc* btCollisionDispatcher::m_doubleDispatch[MAX_BROADPHASE_COLLISION_TYPES][MAX_BROADPHASE_COLLISION_TYPES] [private]

Definition at line 57 of file btCollisionDispatcher.h.

Definition at line 47 of file btCollisionDispatcher.h.

Definition at line 51 of file btCollisionDispatcher.h.

Definition at line 55 of file btCollisionDispatcher.h.


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

Generated on Mon Feb 15 22:21:59 2010 for Bullet Collision Detection & Physics Library by  doxygen 1.6.1