Changeset 9898 in orxonox.OLD for branches/coll_rect/src/lib/collision_reaction/collision_tube.h
- Timestamp:
- Oct 20, 2006, 1:21:09 PM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/coll_rect/src/lib/collision_reaction/collision_tube.h
r9896 r9898 48 48 ObjectListDeclaration(CollisionTube); 49 49 50 51 /* Constructor/Deconstructor/Singleton Interface */ 50 52 public: 53 inline static CollisionTube* getInstance() { if( CollisionTube::instance != NULL) CollisionTube::instance = new CollisionTube(); return CollisionTube::instance; } 51 54 virtual ~CollisionTube(); 52 55 53 inline static CollisionTube* getInstance() { if( CollisionTube::instance != NULL) CollisionTube::instance = new CollisionTube(); return CollisionTube::instance; } 56 private: 57 CollisionTube(); 58 CollisionTube(const CollisionTube& tube) {} 54 59 55 /** @returns true if at least one of both WorldEntities are subscribed for a collision check */ 56 inline bool isReactive(const WorldEntity& entityA, const WorldEntity& entityB) const 57 { return (entityA.isReactive() && entityB.isReactive()); } 58 bool needCollisionChecking(const WorldEntity& entityA, const WorldEntity& entityB); 60 static CollisionTube* instance; //!< the singleton instance 59 61 62 63 /* Collision Handling */ 64 public: 60 65 void registerCollisionEvent(WorldEntity* entityA, WorldEntity* entityB, BoundingVolume* bvA, BoundingVolume* bvB); 61 66 void registerCollisionEvent(CREngine::CollisionType type, WorldEntity* entity, WorldEntity* groundEntity, … … 64 69 void handleCollisions(); 65 70 66 67 private:68 /* private std constructor since this is a singleton class */69 CollisionTube();70 /* private copy constructor so this object can't be passed as a */71 CollisionTube(const CollisionTube& tube) {}72 73 74 71 private: 75 72 std::vector<Collision*> _collisionList; //!< the list of collisions since the last processing 76 73 77 static CollisionTube* instance; //!< the singleton instance 74 75 /* Misc State Informations */ 76 public: 77 /** @returns true if at least one of both WorldEntities are subscribed for a collision check */ 78 inline bool isReactive(const WorldEntity& entityA, const WorldEntity& entityB) const 79 { return (entityA.isReactive() && entityB.isReactive()); } 80 bool needCollisionChecking(const WorldEntity& entityA, const WorldEntity& entityB); 81 78 82 }; 79 83
Note: See TracChangeset
for help on using the changeset viewer.