17#ifndef BT_COMPOUND_COLLISION_ALGORITHM_H
18#define BT_COMPOUND_COLLISION_ALGORITHM_H
btAlignedObjectArray< btPersistentManifold * > btManifoldArray
btShapePairCallback gCompoundChildShapePairCallback
bool(* btShapePairCallback)(const btCollisionShape *pShape0, const btCollisionShape *pShape1)
btAlignedObjectArray< const btDbvtNode * > btNodeStack
float btScalar
The btScalar type abstracts floating point numbers, to easily switch between double and single floati...
btActivatingCollisionAlgorithm(const btCollisionAlgorithmConstructionInfo &ci)
The btAlignedObjectArray template class uses a subset of the stl::vector interface for its methods It...
btCollisionObject can be used to manage collision detection objects.
The btCollisionShape class provides an interface for collision shapes that can be shared among btColl...
virtual void processCollision(const btCollisionObjectWrapper *body0Wrap, const btCollisionObjectWrapper *body1Wrap, const btDispatcherInfo &dispatchInfo, btManifoldResult *resultOut)
virtual void getAllContactManifolds(btManifoldArray &manifoldArray)
class btPersistentManifold * m_sharedManifold
btAlignedObjectArray< btCollisionAlgorithm * > m_childCollisionAlgorithms
btCollisionAlgorithm * getChildAlgorithm(int n) const
void removeChildAlgorithms()
btScalar calculateTimeOfImpact(btCollisionObject *body0, btCollisionObject *body1, const btDispatcherInfo &dispatchInfo, btManifoldResult *resultOut)
void preallocateChildAlgorithms(const btCollisionObjectWrapper *body0Wrap, const btCollisionObjectWrapper *body1Wrap)
btCompoundCollisionAlgorithm(const btCollisionAlgorithmConstructionInfo &ci, const btCollisionObjectWrapper *body0Wrap, const btCollisionObjectWrapper *body1Wrap, bool isSwapped)
int m_compoundShapeRevision
btManifoldArray manifoldArray
virtual ~btCompoundCollisionAlgorithm()
The btDispatcher interface class can be used in combination with broadphase to dispatch calculations ...
virtual void * allocateCollisionAlgorithm(int size)=0
btManifoldResult is a helper class to manage contact results.
btPersistentManifold is a contact point cache, it stays persistent as long as objects are overlapping...
btDispatcher * m_dispatcher1
btCollisionAlgorithmCreateFunc()
virtual btCollisionAlgorithm * CreateCollisionAlgorithm(btCollisionAlgorithmConstructionInfo &ci, const btCollisionObjectWrapper *body0Wrap, const btCollisionObjectWrapper *body1Wrap)
virtual btCollisionAlgorithm * CreateCollisionAlgorithm(btCollisionAlgorithmConstructionInfo &ci, const btCollisionObjectWrapper *body0Wrap, const btCollisionObjectWrapper *body1Wrap)