Blender V2.61 - r43446
Public Member Functions

btBroadphaseInterface Class Reference

#include <btBroadphaseInterface.h>

Inheritance diagram for btBroadphaseInterface:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual ~btBroadphaseInterface ()
virtual btBroadphaseProxy * createProxy (const btVector3 &aabbMin, const btVector3 &aabbMax, int shapeType, void *userPtr, short int collisionFilterGroup, short int collisionFilterMask, btDispatcher *dispatcher, void *multiSapProxy)=0
virtual void destroyProxy (btBroadphaseProxy *proxy, btDispatcher *dispatcher)=0
virtual void setAabb (btBroadphaseProxy *proxy, const btVector3 &aabbMin, const btVector3 &aabbMax, btDispatcher *dispatcher)=0
virtual void getAabb (btBroadphaseProxy *proxy, btVector3 &aabbMin, btVector3 &aabbMax) const =0
virtual void rayTest (const btVector3 &rayFrom, const btVector3 &rayTo, btBroadphaseRayCallback &rayCallback, const btVector3 &aabbMin=btVector3(0, 0, 0), const btVector3 &aabbMax=btVector3(0, 0, 0))=0
virtual void aabbTest (const btVector3 &aabbMin, const btVector3 &aabbMax, btBroadphaseAabbCallback &callback)=0
virtual void calculateOverlappingPairs (btDispatcher *dispatcher)=0
 calculateOverlappingPairs is optional: incremental algorithms (sweep and prune) might do it during the set aabb
virtual btOverlappingPairCachegetOverlappingPairCache ()=0
virtual const
btOverlappingPairCache
getOverlappingPairCache () const =0
virtual void getBroadphaseAabb (btVector3 &aabbMin, btVector3 &aabbMax) const =0
virtual void resetPool (btDispatcher *dispatcher)
 reset broadphase internal structures, to ensure determinism/reproducability
virtual void printStats ()=0

Detailed Description

The btBroadphaseInterface class provides an interface to detect aabb-overlapping object pairs. Some implementations for this broadphase interface include btAxisSweep3, bt32BitAxisSweep3 and btDbvtBroadphase. The actual overlapping pair management, storage, adding and removing of pairs is dealt by the btOverlappingPairCache class.

Definition at line 51 of file btBroadphaseInterface.h.


Constructor & Destructor Documentation

virtual btBroadphaseInterface::~btBroadphaseInterface ( ) [inline, virtual]

Definition at line 54 of file btBroadphaseInterface.h.


Member Function Documentation

virtual void btBroadphaseInterface::aabbTest ( const btVector3 &  aabbMin,
const btVector3 &  aabbMax,
btBroadphaseAabbCallback callback 
) [pure virtual]
virtual void btBroadphaseInterface::calculateOverlappingPairs ( btDispatcher dispatcher) [pure virtual]

calculateOverlappingPairs is optional: incremental algorithms (sweep and prune) might do it during the set aabb

Implemented in btAxisSweep3Internal< BP_FP_INT_TYPE >, btDbvtBroadphase, btMultiSapBroadphase, btSimpleBroadphase, btAxisSweep3Internal< unsigned int >, and btAxisSweep3Internal< unsigned short int >.

Referenced by btCollisionWorld::performDiscreteCollisionDetection().

virtual btBroadphaseProxy* btBroadphaseInterface::createProxy ( const btVector3 &  aabbMin,
const btVector3 &  aabbMax,
int  shapeType,
void *  userPtr,
short int  collisionFilterGroup,
short int  collisionFilterMask,
btDispatcher dispatcher,
void *  multiSapProxy 
) [pure virtual]
virtual void btBroadphaseInterface::destroyProxy ( btBroadphaseProxy *  proxy,
btDispatcher dispatcher 
) [pure virtual]
virtual void btBroadphaseInterface::getAabb ( btBroadphaseProxy *  proxy,
btVector3 &  aabbMin,
btVector3 &  aabbMax 
) const [pure virtual]
virtual void btBroadphaseInterface::getBroadphaseAabb ( btVector3 &  aabbMin,
btVector3 &  aabbMax 
) const [pure virtual]

getAabb returns the axis aligned bounding box in the 'global' coordinate frame will add some transform later

Implemented in btAxisSweep3Internal< BP_FP_INT_TYPE >, btDbvtBroadphase, btMultiSapBroadphase, btSimpleBroadphase, btAxisSweep3Internal< unsigned int >, and btAxisSweep3Internal< unsigned short int >.

virtual btOverlappingPairCache* btBroadphaseInterface::getOverlappingPairCache ( ) [pure virtual]
virtual const btOverlappingPairCache* btBroadphaseInterface::getOverlappingPairCache ( ) const [pure virtual]
virtual void btBroadphaseInterface::printStats ( ) [pure virtual]
virtual void btBroadphaseInterface::rayTest ( const btVector3 &  rayFrom,
const btVector3 &  rayTo,
btBroadphaseRayCallback rayCallback,
const btVector3 &  aabbMin = btVector3(0, 0, 0),
const btVector3 &  aabbMax = btVector3(0, 0, 0) 
) [pure virtual]
virtual void btBroadphaseInterface::resetPool ( btDispatcher dispatcher) [inline, virtual]

reset broadphase internal structures, to ensure determinism/reproducability

Reimplemented in btAxisSweep3Internal< BP_FP_INT_TYPE >, btDbvtBroadphase, btMultiSapBroadphase, btSimpleBroadphase, btAxisSweep3Internal< unsigned int >, and btAxisSweep3Internal< unsigned short int >.

Definition at line 76 of file btBroadphaseInterface.h.

virtual void btBroadphaseInterface::setAabb ( btBroadphaseProxy *  proxy,
const btVector3 &  aabbMin,
const btVector3 &  aabbMax,
btDispatcher dispatcher 
) [pure virtual]

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