Speed up the physics engine: hook the SOLID broad phase, so we can either reject...
[blender.git] / source / gameengine / Ketsji / KX_TouchEventManager.h
index 923ecd108848f7bbf2a820520f92bc14e84746ae..eb2c26a64f32db9e13171de5208e57ae9a958596 100644 (file)
 #include "KX_GameObject.h"
 
 #include <vector>
+#include <set>
+
+class SCA_ISensor;
+class SM_Object;
 
 class KX_TouchEventManager : public SCA_EventManager
 {
+       struct Collision
+       {
+               static int next_id;
+               int          m_id;
+               SCA_ISensor *m_sensor;
+               SM_Object   *m_object1;
+               SM_Object   *m_object2;
+               
+               Collision(SCA_ISensor *sensor, SM_Object *obj1, SM_Object *obj2);
+               
+               bool operator<(const Collision &other) const;
+               bool operator==(const Collision &other) const;
+       };
+
        class SCA_LogicManager* m_logicmgr;
        SM_Scene *m_scene;
+       
+       std::set<Collision> m_collisions;
+       
 
        static DT_Bool collisionResponse(void *client_data, 
                                                        void *object1,