com.bulletphysics.collision.broadphase
Class Dispatcher

java.lang.Object
  extended by com.bulletphysics.collision.broadphase.Dispatcher
Direct Known Subclasses:
CollisionDispatcher

public abstract class Dispatcher
extends Object

Dispatcher abstract class can be used in combination with broadphase to dispatch calculations for overlapping pairs. For example for pairwise collision detection, calculating contact points stored in PersistentManifold or user callbacks (game logic).


Constructor Summary
Dispatcher()
           
 
Method Summary
abstract  void clearManifold(PersistentManifold manifold)
           
abstract  void dispatchAllCollisionPairs(OverlappingPairCache pairCache, DispatcherInfo dispatchInfo, Dispatcher dispatcher)
           
 CollisionAlgorithm findAlgorithm(CollisionObject body0, CollisionObject body1)
           
abstract  CollisionAlgorithm findAlgorithm(CollisionObject body0, CollisionObject body1, PersistentManifold sharedManifold)
           
abstract  void freeCollisionAlgorithm(CollisionAlgorithm algo)
           
abstract  ObjectArrayList<PersistentManifold> getInternalManifoldPointer()
           
abstract  PersistentManifold getManifoldByIndexInternal(int index)
           
abstract  PersistentManifold getNewManifold(Object body0, Object body1)
           
abstract  int getNumManifolds()
           
abstract  boolean needsCollision(CollisionObject body0, CollisionObject body1)
           
abstract  boolean needsResponse(CollisionObject body0, CollisionObject body1)
           
abstract  void releaseManifold(PersistentManifold manifold)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Dispatcher

public Dispatcher()
Method Detail

findAlgorithm

public final CollisionAlgorithm findAlgorithm(CollisionObject body0,
                                              CollisionObject body1)

findAlgorithm

public abstract CollisionAlgorithm findAlgorithm(CollisionObject body0,
                                                 CollisionObject body1,
                                                 PersistentManifold sharedManifold)

getNewManifold

public abstract PersistentManifold getNewManifold(Object body0,
                                                  Object body1)

releaseManifold

public abstract void releaseManifold(PersistentManifold manifold)

clearManifold

public abstract void clearManifold(PersistentManifold manifold)

needsCollision

public abstract boolean needsCollision(CollisionObject body0,
                                       CollisionObject body1)

needsResponse

public abstract boolean needsResponse(CollisionObject body0,
                                      CollisionObject body1)

dispatchAllCollisionPairs

public abstract void dispatchAllCollisionPairs(OverlappingPairCache pairCache,
                                               DispatcherInfo dispatchInfo,
                                               Dispatcher dispatcher)

getNumManifolds

public abstract int getNumManifolds()

getManifoldByIndexInternal

public abstract PersistentManifold getManifoldByIndexInternal(int index)

getInternalManifoldPointer

public abstract ObjectArrayList<PersistentManifold> getInternalManifoldPointer()

freeCollisionAlgorithm

public abstract void freeCollisionAlgorithm(CollisionAlgorithm algo)