1#ifndef CollisionManager_H 
    2#define CollisionManager_H 
    7#include "CollisionTestSelfCommand.h" 
    8#include "CollisionTestPairCommand.h" 
    9#include "CollisionTerrainCommand.h" 
   10#include "CollisionDispatch.h" 
   11#include "CollisionDispatchTerrain.h" 
   37    CollisionManager(
const CollisionManager&) = 
delete;
 
   38    CollisionManager& operator=(
const CollisionManager&) = 
delete;
 
   65        DebugMsg::out(
"CollisionManager: TypeID %d registered\n", myTypeID);
 
 
   69    void UpdateGroupAABBs();
 
  115    template <
typename C>
 
  128    template <
typename C1, 
typename C2>
 
  138    template <
typename Type>
 
  139    void SetCollisionTerrain()
 
 
Manages a collection of collidable objects.
Definition CollidableGroup.h:17
Handles the dispatching of collision callbacks between two collidable objects.
Definition CollisionDispatch.h:17
Handles the dispatching of collision callbacks between two collidable objects.
Definition CollisionDispatchTerrain.h:17
void SetGroupForTypeID(CollisionManager::PWTypeID ind)
Sets the group for the specified type ID.
Definition CollisionManager.cpp:27
static PWTypeID TypeIDNextNumber
The next type ID number.
Definition CollisionManager.h:82
void SetCollisionPair()
Sets the collision pair test for the specified collidable types.
Definition CollisionManager.h:129
CollidableGroup * GetColGroup(PWTypeID id)
Gets the collidable group for the specified type ID.
Definition CollisionManager.cpp:35
std::list< CollisionTestCommandBase * > CollisionTestCommands
Type alias for the collision test commands.
Definition CollisionManager.h:103
PWTypeID GetTypeID()
Gets the type ID for the specified collidable type.
Definition CollisionManager.h:59
const int MAX_COLLISION_GROUP
The maximum number of collision groups.
Definition CollisionManager.h:77
CollisionTestCommands colTestCommands
The collision test commands.
Definition CollisionManager.h:108
static const PWTypeID PWID_UNDEFINED
The undefined type ID.
Definition CollisionManager.h:34
void ProcessElements()
Processes all registered collisions.
Definition CollisionManager.cpp:40
void SetCollisionSelf()
Sets the collision self test for the specified collidable type.
Definition CollisionManager.h:116
std::vector< CollidableGroup * > CollidableGroupCollection
Type alias for the collidable group collection.
Definition CollisionManager.h:87
CollidableGroupCollection ColGroupCollection
The collidable group collection.
Definition CollisionManager.h:92
int PWTypeID
Type alias for the type ID.
Definition CollisionManager.h:29
Command to handle collision tests within a single collidable group.
Definition CollisionTerrainCommand.h:17
Base class for collision test commands.
Definition CollisionTestCommandBase.h:12
Command to handle collision tests between two collidable groups.
Definition CollisionTestPairCommand.h:17
Command to handle collision tests within a single collidable group.
Definition CollisionTestSelfCommand.h:17