btSortedOverlappingPairCache maintains the objects with overlapping AABB Typically managed by the Broadphase, Axis3Sweep or btSimpleBroadphase More...
#include <btOverlappingPairCache.h>
btSortedOverlappingPairCache maintains the objects with overlapping AABB Typically managed by the Broadphase, Axis3Sweep or btSimpleBroadphase
Definition at line 281 of file btOverlappingPairCache.h.
btSortedOverlappingPairCache::btSortedOverlappingPairCache | ( | ) |
Definition at line 541 of file btOverlappingPairCache.cpp.
btSortedOverlappingPairCache::~btSortedOverlappingPairCache | ( | ) | [virtual] |
Definition at line 551 of file btOverlappingPairCache.cpp.
btBroadphasePair * btSortedOverlappingPairCache::addOverlappingPair | ( | btBroadphaseProxy * | proxy0, | |
btBroadphaseProxy * | proxy1 | |||
) | [virtual] |
Implements btOverlappingPairCallback.
Definition at line 462 of file btOverlappingPairCache.cpp.
void btSortedOverlappingPairCache::cleanOverlappingPair | ( | btBroadphasePair & | pair, | |
btDispatcher * | dispatcher | |||
) | [virtual] |
Implements btOverlappingPairCache.
Definition at line 555 of file btOverlappingPairCache.cpp.
void btSortedOverlappingPairCache::cleanProxyFromPairs | ( | btBroadphaseProxy * | proxy, | |
btDispatcher * | dispatcher | |||
) | [virtual] |
Implements btOverlappingPairCache.
Definition at line 569 of file btOverlappingPairCache.cpp.
btBroadphasePair * btSortedOverlappingPairCache::findPair | ( | btBroadphaseProxy * | proxy0, | |
btBroadphaseProxy * | proxy1 | |||
) | [virtual] |
this findPair becomes really slow.
Either sort the list to speedup the query, or use a different solution. It is mainly used for Removing overlapping pairs. Removal could be delayed. we could keep a linked list in each proxy, and store pair in one of the proxies (with lowest memory address) Also we can use a 2D bitmap, which can be useful for a future GPU implementation
Implements btOverlappingPairCache.
Definition at line 486 of file btOverlappingPairCache.cpp.
int btSortedOverlappingPairCache::getNumOverlappingPairs | ( | ) | const [inline, virtual] |
Implements btOverlappingPairCache.
Definition at line 353 of file btOverlappingPairCache.h.
btOverlapFilterCallback* btSortedOverlappingPairCache::getOverlapFilterCallback | ( | ) | [inline] |
Definition at line 358 of file btOverlappingPairCache.h.
btBroadphasePairArray& btSortedOverlappingPairCache::getOverlappingPairArray | ( | ) | [inline, virtual] |
Implements btOverlappingPairCache.
Definition at line 330 of file btOverlappingPairCache.h.
const btBroadphasePairArray& btSortedOverlappingPairCache::getOverlappingPairArray | ( | ) | const [inline] |
Definition at line 335 of file btOverlappingPairCache.h.
btBroadphasePair* btSortedOverlappingPairCache::getOverlappingPairArrayPtr | ( | ) | [inline, virtual] |
Implements btOverlappingPairCache.
Definition at line 343 of file btOverlappingPairCache.h.
const btBroadphasePair* btSortedOverlappingPairCache::getOverlappingPairArrayPtr | ( | ) | const [inline, virtual] |
Implements btOverlappingPairCache.
Definition at line 348 of file btOverlappingPairCache.h.
virtual bool btSortedOverlappingPairCache::hasDeferredRemoval | ( | ) | [inline, virtual] |
Implements btOverlappingPairCache.
Definition at line 368 of file btOverlappingPairCache.h.
bool btSortedOverlappingPairCache::needsBroadphaseCollision | ( | btBroadphaseProxy * | proxy0, | |
btBroadphaseProxy * | proxy1 | |||
) | const [inline] |
Definition at line 319 of file btOverlappingPairCache.h.
void btSortedOverlappingPairCache::processAllOverlappingPairs | ( | btOverlapCallback * | callback, | |
btDispatcher * | dispatcher | |||
) | [virtual] |
Implements btOverlappingPairCache.
Definition at line 514 of file btOverlappingPairCache.cpp.
void * btSortedOverlappingPairCache::removeOverlappingPair | ( | btBroadphaseProxy * | proxy0, | |
btBroadphaseProxy * | proxy1, | |||
btDispatcher * | dispatcher | |||
) | [virtual] |
Implements btOverlappingPairCallback.
Definition at line 430 of file btOverlappingPairCache.cpp.
void btSortedOverlappingPairCache::removeOverlappingPairsContainingProxy | ( | btBroadphaseProxy * | proxy, | |
btDispatcher * | dispatcher | |||
) | [virtual] |
Implements btOverlappingPairCallback.
Definition at line 604 of file btOverlappingPairCache.cpp.
virtual void btSortedOverlappingPairCache::setInternalGhostPairCallback | ( | btOverlappingPairCallback * | ghostPairCallback | ) | [inline, virtual] |
Implements btOverlappingPairCache.
Definition at line 373 of file btOverlappingPairCache.h.
void btSortedOverlappingPairCache::setOverlapFilterCallback | ( | btOverlapFilterCallback * | callback | ) | [inline, virtual] |
Implements btOverlappingPairCache.
Definition at line 363 of file btOverlappingPairCache.h.
void btSortedOverlappingPairCache::sortOverlappingPairs | ( | btDispatcher * | dispatcher | ) | [virtual] |
Implements btOverlappingPairCache.
Definition at line 629 of file btOverlappingPairCache.cpp.
bool btSortedOverlappingPairCache::m_blockedForChanges [protected] |
Definition at line 288 of file btOverlappingPairCache.h.
Definition at line 296 of file btOverlappingPairCache.h.
bool btSortedOverlappingPairCache::m_hasDeferredRemoval [protected] |
by default, do the removal during the pair traversal
Definition at line 291 of file btOverlappingPairCache.h.
Definition at line 294 of file btOverlappingPairCache.h.
Definition at line 285 of file btOverlappingPairCache.h.