Blender  V3.3
Classes | Typedefs | Functions | Variables
btOverlappingPairCache.h File Reference
#include "btBroadphaseInterface.h"
#include "btBroadphaseProxy.h"
#include "btOverlappingPairCallback.h"
#include "LinearMath/btAlignedObjectArray.h"

Go to the source code of this file.

Classes

struct  btOverlapCallback
 
struct  btOverlapFilterCallback
 
class  btOverlappingPairCache
 

Typedefs

typedef btAlignedObjectArray< btBroadphasePair > btBroadphasePairArray
 

Functions

 BT_DECLARE_ALIGNED_ALLOCATOR ()
 
 btHashedOverlappingPairCache ()
 
virtual ~btHashedOverlappingPairCache ()
 
void removeOverlappingPairsContainingProxy (btBroadphaseProxy *proxy, btDispatcher *dispatcher)
 
virtual void * removeOverlappingPair (btBroadphaseProxy *proxy0, btBroadphaseProxy *proxy1, btDispatcher *dispatcher)
 
SIMD_FORCE_INLINE bool needsBroadphaseCollision (btBroadphaseProxy *proxy0, btBroadphaseProxy *proxy1) const
 
virtual btBroadphasePair * addOverlappingPair (btBroadphaseProxy *proxy0, btBroadphaseProxy *proxy1)
 
void cleanProxyFromPairs (btBroadphaseProxy *proxy, btDispatcher *dispatcher)
 
virtual void processAllOverlappingPairs (btOverlapCallback *, btDispatcher *dispatcher)
 
virtual void processAllOverlappingPairs (btOverlapCallback *callback, btDispatcher *dispatcher, const struct btDispatcherInfo &dispatchInfo)
 
virtual btBroadphasePair * getOverlappingPairArrayPtr ()
 
btBroadphasePairArray & getOverlappingPairArray ()
 
void cleanOverlappingPair (btBroadphasePair &pair, btDispatcher *dispatcher)
 
btBroadphasePair * findPair (btBroadphaseProxy *proxy0, btBroadphaseProxy *proxy1)
 
int GetCount () const
 
btOverlapFilterCallback * getOverlapFilterCallback ()
 
void setOverlapFilterCallback (btOverlapFilterCallback *callback)
 
int getNumOverlappingPairs () const
 

Variables

const int BT_NULL_PAIR = 0xffffffff
 
btHashedOverlappingPairCache __pad0__
 Hash-space based Pair Cache, thanks to Erin Catto, Box2D, http://www.box2d.org, and Pierre Terdiman, Codercorner, http://codercorner.com. More...
 
btOverlapFilterCallback * m_overlapFilterCallback
 
btAlignedObjectArray< int > m_hashTable
 
btAlignedObjectArray< int > m_next
 
btOverlappingPairCallback * m_ghostPairCallback
 

Typedef Documentation

◆ btBroadphasePairArray

Definition at line 26 of file btOverlappingPairCache.h.

Function Documentation

◆ addOverlappingPair()

virtual btBroadphasePair* addOverlappingPair ( btBroadphaseProxy *  proxy0,
btBroadphaseProxy *  proxy1 
)
virtual

Definition at line 121 of file btOverlappingPairCache.h.

References needsBroadphaseCollision().

◆ BT_DECLARE_ALIGNED_ALLOCATOR()

BT_DECLARE_ALIGNED_ALLOCATOR ( )

◆ btHashedOverlappingPairCache()

btHashedOverlappingPairCache::btHashedOverlappingPairCache ( )

◆ cleanOverlappingPair()

void cleanOverlappingPair ( btBroadphasePair &  pair,
btDispatcher *  dispatcher 
)

◆ cleanProxyFromPairs()

void cleanProxyFromPairs ( btBroadphaseProxy *  proxy,
btDispatcher *  dispatcher 
)

◆ findPair()

btBroadphasePair* findPair ( btBroadphaseProxy *  proxy0,
btBroadphaseProxy *  proxy1 
)

◆ GetCount()

int GetCount ( ) const

Definition at line 159 of file btOverlappingPairCache.h.

References btAlignedObjectArray< T >::size().

◆ getNumOverlappingPairs()

int getNumOverlappingPairs ( ) const

Definition at line 172 of file btOverlappingPairCache.h.

References btAlignedObjectArray< T >::size().

Referenced by recoverFromPenetration().

◆ getOverlapFilterCallback()

btOverlapFilterCallback* getOverlapFilterCallback ( )

Definition at line 162 of file btOverlappingPairCache.h.

References m_overlapFilterCallback.

◆ getOverlappingPairArray()

const btBroadphasePairArray & getOverlappingPairArray ( )

Definition at line 145 of file btOverlappingPairCache.h.

◆ getOverlappingPairArrayPtr()

const btBroadphasePair * getOverlappingPairArrayPtr ( )
virtual

Definition at line 135 of file btOverlappingPairCache.h.

◆ needsBroadphaseCollision()

SIMD_FORCE_INLINE bool needsBroadphaseCollision ( btBroadphaseProxy *  proxy0,
btBroadphaseProxy *  proxy1 
) const

◆ processAllOverlappingPairs() [1/2]

virtual void processAllOverlappingPairs ( btOverlapCallback *  ,
btDispatcher *  dispatcher 
)
virtual

◆ processAllOverlappingPairs() [2/2]

virtual void processAllOverlappingPairs ( btOverlapCallback *  callback,
btDispatcher *  dispatcher,
const struct btDispatcherInfo &  dispatchInfo 
)
virtual

◆ removeOverlappingPair()

virtual void* removeOverlappingPair ( btBroadphaseProxy *  proxy0,
btBroadphaseProxy *  proxy1,
btDispatcher *  dispatcher 
)
virtual

◆ removeOverlappingPairsContainingProxy()

void removeOverlappingPairsContainingProxy ( btBroadphaseProxy *  proxy,
btDispatcher *  dispatcher 
)

◆ setOverlapFilterCallback()

void setOverlapFilterCallback ( btOverlapFilterCallback *  callback)

Definition at line 167 of file btOverlappingPairCache.h.

References callback, and m_overlapFilterCallback.

◆ ~btHashedOverlappingPairCache()

btHashedOverlappingPairCache::~btHashedOverlappingPairCache ( )
virtual

Definition at line 32 of file btOverlappingPairCache.cpp.

Variable Documentation

◆ __pad0__

Hash-space based Pair Cache, thanks to Erin Catto, Box2D, http://www.box2d.org, and Pierre Terdiman, Codercorner, http://codercorner.com.

Definition at line 88 of file btOverlappingPairCache.h.

◆ BT_NULL_PAIR

const int BT_NULL_PAIR = 0xffffffff

Definition at line 46 of file btOverlappingPairCache.h.

◆ m_ghostPairCallback

btOverlappingPairCallback* m_ghostPairCallback
protected

Definition at line 96 of file btOverlappingPairCache.h.

◆ m_hashTable

btAlignedObjectArray<int> m_hashTable
protected

Definition at line 94 of file btOverlappingPairCache.h.

◆ m_next

btAlignedObjectArray<int> m_next
protected

Definition at line 95 of file btOverlappingPairCache.h.

◆ m_overlapFilterCallback

btOverlapFilterCallback* m_overlapFilterCallback