Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2009-09-25 20:30:15 +0400
committerCampbell Barton <ideasman42@gmail.com>2009-09-25 20:30:15 +0400
commitaa989c1e8343cb761665129d44e03a4fc4c7cd95 (patch)
treebc7af2fbee186fb0d1ea563b8d43e79f5af30f0a /source/gameengine
parent9f6566c0a57ae136a819a461c43092a998c69f77 (diff)
almost all event managers stored a pointer back to the logic manager, easier if this pointer is in the base class - SCA_EventManager
Diffstat (limited to 'source/gameengine')
-rw-r--r--source/gameengine/GameLogic/SCA_ActuatorEventManager.cpp3
-rw-r--r--source/gameengine/GameLogic/SCA_ActuatorEventManager.h2
-rw-r--r--source/gameengine/GameLogic/SCA_AlwaysEventManager.cpp3
-rw-r--r--source/gameengine/GameLogic/SCA_AlwaysEventManager.h2
-rw-r--r--source/gameengine/GameLogic/SCA_BasicEventManager.cpp3
-rw-r--r--source/gameengine/GameLogic/SCA_EventManager.cpp5
-rw-r--r--source/gameengine/GameLogic/SCA_EventManager.h4
-rw-r--r--source/gameengine/GameLogic/SCA_JoystickManager.cpp3
-rw-r--r--source/gameengine/GameLogic/SCA_JoystickManager.h2
-rw-r--r--source/gameengine/GameLogic/SCA_KeyboardManager.cpp7
-rw-r--r--source/gameengine/GameLogic/SCA_KeyboardManager.h2
-rw-r--r--source/gameengine/GameLogic/SCA_MouseManager.cpp7
-rw-r--r--source/gameengine/GameLogic/SCA_MouseManager.h1
-rw-r--r--source/gameengine/GameLogic/SCA_PropertyEventManager.cpp3
-rw-r--r--source/gameengine/GameLogic/SCA_PropertyEventManager.h2
-rw-r--r--source/gameengine/GameLogic/SCA_RandomEventManager.cpp3
-rw-r--r--source/gameengine/GameLogic/SCA_RandomEventManager.h2
-rw-r--r--source/gameengine/GameLogic/SCA_TimeEventManager.cpp2
-rw-r--r--source/gameengine/Ketsji/KXNetwork/KX_NetworkEventManager.cpp2
-rw-r--r--source/gameengine/Ketsji/KXNetwork/KX_NetworkEventManager.h1
-rw-r--r--source/gameengine/Ketsji/KX_RayEventManager.h3
-rw-r--r--source/gameengine/Ketsji/KX_TouchEventManager.cpp3
-rw-r--r--source/gameengine/Ketsji/KX_TouchEventManager.h1
23 files changed, 22 insertions, 44 deletions
diff --git a/source/gameengine/GameLogic/SCA_ActuatorEventManager.cpp b/source/gameengine/GameLogic/SCA_ActuatorEventManager.cpp
index a80b2af55c8..e4dfe4e0bff 100644
--- a/source/gameengine/GameLogic/SCA_ActuatorEventManager.cpp
+++ b/source/gameengine/GameLogic/SCA_ActuatorEventManager.cpp
@@ -36,8 +36,7 @@
SCA_ActuatorEventManager::SCA_ActuatorEventManager(class SCA_LogicManager* logicmgr)
- : SCA_EventManager(ACTUATOR_EVENTMGR),
- m_logicmgr(logicmgr)
+ : SCA_EventManager(logicmgr, ACTUATOR_EVENTMGR)
{
}
diff --git a/source/gameengine/GameLogic/SCA_ActuatorEventManager.h b/source/gameengine/GameLogic/SCA_ActuatorEventManager.h
index f3884c87a75..8c86d0dd422 100644
--- a/source/gameengine/GameLogic/SCA_ActuatorEventManager.h
+++ b/source/gameengine/GameLogic/SCA_ActuatorEventManager.h
@@ -37,8 +37,6 @@ using namespace std;
class SCA_ActuatorEventManager : public SCA_EventManager
{
- class SCA_LogicManager* m_logicmgr;
-
public:
SCA_ActuatorEventManager(class SCA_LogicManager* logicmgr);
virtual ~SCA_ActuatorEventManager();
diff --git a/source/gameengine/GameLogic/SCA_AlwaysEventManager.cpp b/source/gameengine/GameLogic/SCA_AlwaysEventManager.cpp
index dd3b55abcc9..aee01606974 100644
--- a/source/gameengine/GameLogic/SCA_AlwaysEventManager.cpp
+++ b/source/gameengine/GameLogic/SCA_AlwaysEventManager.cpp
@@ -42,8 +42,7 @@
using namespace std;
SCA_AlwaysEventManager::SCA_AlwaysEventManager(class SCA_LogicManager* logicmgr)
- : SCA_EventManager(ALWAYS_EVENTMGR),
- m_logicmgr(logicmgr)
+ : SCA_EventManager(logicmgr, ALWAYS_EVENTMGR)
{
}
diff --git a/source/gameengine/GameLogic/SCA_AlwaysEventManager.h b/source/gameengine/GameLogic/SCA_AlwaysEventManager.h
index 9540e3b71f6..f7fb3b9714e 100644
--- a/source/gameengine/GameLogic/SCA_AlwaysEventManager.h
+++ b/source/gameengine/GameLogic/SCA_AlwaysEventManager.h
@@ -34,8 +34,6 @@
using namespace std;
class SCA_AlwaysEventManager : public SCA_EventManager
{
-
- class SCA_LogicManager* m_logicmgr;
public:
SCA_AlwaysEventManager(class SCA_LogicManager* logicmgr);
virtual void NextFrame();
diff --git a/source/gameengine/GameLogic/SCA_BasicEventManager.cpp b/source/gameengine/GameLogic/SCA_BasicEventManager.cpp
index 24cae439fb7..a2a7e535b5c 100644
--- a/source/gameengine/GameLogic/SCA_BasicEventManager.cpp
+++ b/source/gameengine/GameLogic/SCA_BasicEventManager.cpp
@@ -42,8 +42,7 @@
using namespace std;
SCA_BasicEventManager::SCA_BasicEventManager(class SCA_LogicManager* logicmgr)
- : SCA_EventManager(BASIC_EVENTMGR),
- m_logicmgr(logicmgr)
+ : SCA_EventManager(logicmgr, BASIC_EVENTMGR)
{
}
diff --git a/source/gameengine/GameLogic/SCA_EventManager.cpp b/source/gameengine/GameLogic/SCA_EventManager.cpp
index d1301541a0a..5b6f3c46022 100644
--- a/source/gameengine/GameLogic/SCA_EventManager.cpp
+++ b/source/gameengine/GameLogic/SCA_EventManager.cpp
@@ -35,8 +35,9 @@
#endif
-SCA_EventManager::SCA_EventManager(EVENT_MANAGER_TYPE mgrtype)
- :m_mgrtype(mgrtype)
+SCA_EventManager::SCA_EventManager(SCA_LogicManager* logicmgr, EVENT_MANAGER_TYPE mgrtype)
+ :m_logicmgr(logicmgr),
+ m_mgrtype(mgrtype)
{
}
diff --git a/source/gameengine/GameLogic/SCA_EventManager.h b/source/gameengine/GameLogic/SCA_EventManager.h
index f77b115ee03..debefcc45b0 100644
--- a/source/gameengine/GameLogic/SCA_EventManager.h
+++ b/source/gameengine/GameLogic/SCA_EventManager.h
@@ -38,6 +38,8 @@
class SCA_EventManager
{
protected:
+ class SCA_LogicManager* m_logicmgr; /* all event manager subclasses use this (other then TimeEventManager) */
+
// use a set to speed-up insertion/removal
//std::set <class SCA_ISensor*> m_sensors;
SG_DList m_sensors;
@@ -58,7 +60,7 @@ public:
BASIC_EVENTMGR
};
- SCA_EventManager(EVENT_MANAGER_TYPE mgrtype);
+ SCA_EventManager(SCA_LogicManager* logicmgr, EVENT_MANAGER_TYPE mgrtype);
virtual ~SCA_EventManager();
virtual void RemoveSensor(class SCA_ISensor* sensor);
diff --git a/source/gameengine/GameLogic/SCA_JoystickManager.cpp b/source/gameengine/GameLogic/SCA_JoystickManager.cpp
index ff8f3b1c81f..480292774da 100644
--- a/source/gameengine/GameLogic/SCA_JoystickManager.cpp
+++ b/source/gameengine/GameLogic/SCA_JoystickManager.cpp
@@ -37,8 +37,7 @@
SCA_JoystickManager::SCA_JoystickManager(class SCA_LogicManager* logicmgr)
- : SCA_EventManager(JOY_EVENTMGR),
- m_logicmgr(logicmgr)
+ : SCA_EventManager(logicmgr, JOY_EVENTMGR)
{
int i;
for (i=0; i<JOYINDEX_MAX; i++) {
diff --git a/source/gameengine/GameLogic/SCA_JoystickManager.h b/source/gameengine/GameLogic/SCA_JoystickManager.h
index be55e95b033..cd0e22cc367 100644
--- a/source/gameengine/GameLogic/SCA_JoystickManager.h
+++ b/source/gameengine/GameLogic/SCA_JoystickManager.h
@@ -35,8 +35,6 @@
using namespace std;
class SCA_JoystickManager : public SCA_EventManager
{
-
- class SCA_LogicManager* m_logicmgr;
/**
* SDL Joystick Class Instance
*/
diff --git a/source/gameengine/GameLogic/SCA_KeyboardManager.cpp b/source/gameengine/GameLogic/SCA_KeyboardManager.cpp
index 279adab94d8..3d010f57055 100644
--- a/source/gameengine/GameLogic/SCA_KeyboardManager.cpp
+++ b/source/gameengine/GameLogic/SCA_KeyboardManager.cpp
@@ -37,9 +37,8 @@
SCA_KeyboardManager::SCA_KeyboardManager(SCA_LogicManager* logicmgr,
SCA_IInputDevice* inputdev)
- : SCA_EventManager(KEYBOARD_EVENTMGR),
- m_inputDevice(inputdev),
- m_logicmanager(logicmgr)
+ : SCA_EventManager(logicmgr, KEYBOARD_EVENTMGR),
+ m_inputDevice(inputdev)
{
}
@@ -65,7 +64,7 @@ void SCA_KeyboardManager::NextFrame()
SG_DList::iterator<SCA_ISensor> it(m_sensors);
for (it.begin();!it.end();++it)
{
- (*it)->Activate(m_logicmanager);
+ (*it)->Activate(m_logicmgr);
}
}
diff --git a/source/gameengine/GameLogic/SCA_KeyboardManager.h b/source/gameengine/GameLogic/SCA_KeyboardManager.h
index c5553a74aef..8155283a274 100644
--- a/source/gameengine/GameLogic/SCA_KeyboardManager.h
+++ b/source/gameengine/GameLogic/SCA_KeyboardManager.h
@@ -45,8 +45,6 @@ using namespace std;
class SCA_KeyboardManager : public SCA_EventManager
{
class SCA_IInputDevice* m_inputDevice;
- class SCA_LogicManager* m_logicmanager;
-
public:
SCA_KeyboardManager(class SCA_LogicManager* logicmgr,class SCA_IInputDevice* inputdev);
diff --git a/source/gameengine/GameLogic/SCA_MouseManager.cpp b/source/gameengine/GameLogic/SCA_MouseManager.cpp
index d407647cec3..c752701e785 100644
--- a/source/gameengine/GameLogic/SCA_MouseManager.cpp
+++ b/source/gameengine/GameLogic/SCA_MouseManager.cpp
@@ -48,9 +48,8 @@
SCA_MouseManager::SCA_MouseManager(SCA_LogicManager* logicmgr,
SCA_IInputDevice* mousedev)
- : SCA_EventManager(MOUSE_EVENTMGR),
- m_mousedevice (mousedev),
- m_logicmanager(logicmgr)
+ : SCA_EventManager(logicmgr, MOUSE_EVENTMGR),
+ m_mousedevice (mousedev)
{
m_xpos = 0;
m_ypos = 0;
@@ -93,7 +92,7 @@ void SCA_MouseManager::NextFrame()
mousesensor->setX(mx);
mousesensor->setY(my);
- mousesensor->Activate(m_logicmanager);
+ mousesensor->Activate(m_logicmgr);
}
}
}
diff --git a/source/gameengine/GameLogic/SCA_MouseManager.h b/source/gameengine/GameLogic/SCA_MouseManager.h
index ef1533c636b..00bbab66aa6 100644
--- a/source/gameengine/GameLogic/SCA_MouseManager.h
+++ b/source/gameengine/GameLogic/SCA_MouseManager.h
@@ -47,7 +47,6 @@ class SCA_MouseManager : public SCA_EventManager
{
class SCA_IInputDevice* m_mousedevice;
- class SCA_LogicManager* m_logicmanager;
unsigned short m_xpos; // Cached location of the mouse pointer
unsigned short m_ypos;
diff --git a/source/gameengine/GameLogic/SCA_PropertyEventManager.cpp b/source/gameengine/GameLogic/SCA_PropertyEventManager.cpp
index 764465309df..e01ce74e0a9 100644
--- a/source/gameengine/GameLogic/SCA_PropertyEventManager.cpp
+++ b/source/gameengine/GameLogic/SCA_PropertyEventManager.cpp
@@ -35,8 +35,7 @@
SCA_PropertyEventManager::SCA_PropertyEventManager(class SCA_LogicManager* logicmgr)
- : SCA_EventManager(PROPERTY_EVENTMGR),
- m_logicmgr(logicmgr)
+ : SCA_EventManager(logicmgr, PROPERTY_EVENTMGR)
{
}
diff --git a/source/gameengine/GameLogic/SCA_PropertyEventManager.h b/source/gameengine/GameLogic/SCA_PropertyEventManager.h
index a9692377df8..5a036abb8b7 100644
--- a/source/gameengine/GameLogic/SCA_PropertyEventManager.h
+++ b/source/gameengine/GameLogic/SCA_PropertyEventManager.h
@@ -37,8 +37,6 @@ using namespace std;
class SCA_PropertyEventManager : public SCA_EventManager
{
- class SCA_LogicManager* m_logicmgr;
-
public:
SCA_PropertyEventManager(class SCA_LogicManager* logicmgr);
virtual ~SCA_PropertyEventManager();
diff --git a/source/gameengine/GameLogic/SCA_RandomEventManager.cpp b/source/gameengine/GameLogic/SCA_RandomEventManager.cpp
index 976597aa812..780f8d10857 100644
--- a/source/gameengine/GameLogic/SCA_RandomEventManager.cpp
+++ b/source/gameengine/GameLogic/SCA_RandomEventManager.cpp
@@ -42,8 +42,7 @@ using namespace std;
#endif
SCA_RandomEventManager::SCA_RandomEventManager(class SCA_LogicManager* logicmgr)
- : SCA_EventManager(RANDOM_EVENTMGR),
- m_logicmgr(logicmgr)
+ : SCA_EventManager(logicmgr, RANDOM_EVENTMGR)
{
}
diff --git a/source/gameengine/GameLogic/SCA_RandomEventManager.h b/source/gameengine/GameLogic/SCA_RandomEventManager.h
index c8b511b87b7..81896709551 100644
--- a/source/gameengine/GameLogic/SCA_RandomEventManager.h
+++ b/source/gameengine/GameLogic/SCA_RandomEventManager.h
@@ -39,8 +39,6 @@ using namespace std;
class SCA_RandomEventManager : public SCA_EventManager
{
- class SCA_LogicManager* m_logicmgr;
-
public:
SCA_RandomEventManager(class SCA_LogicManager* logicmgr);
diff --git a/source/gameengine/GameLogic/SCA_TimeEventManager.cpp b/source/gameengine/GameLogic/SCA_TimeEventManager.cpp
index 911ea772bef..1b49906b8de 100644
--- a/source/gameengine/GameLogic/SCA_TimeEventManager.cpp
+++ b/source/gameengine/GameLogic/SCA_TimeEventManager.cpp
@@ -43,7 +43,7 @@
#include "FloatValue.h"
SCA_TimeEventManager::SCA_TimeEventManager(SCA_LogicManager* logicmgr)
-: SCA_EventManager(TIME_EVENTMGR)
+: SCA_EventManager(NULL, TIME_EVENTMGR)
{
}
diff --git a/source/gameengine/Ketsji/KXNetwork/KX_NetworkEventManager.cpp b/source/gameengine/Ketsji/KXNetwork/KX_NetworkEventManager.cpp
index 738f64713b0..65f7d98253c 100644
--- a/source/gameengine/Ketsji/KXNetwork/KX_NetworkEventManager.cpp
+++ b/source/gameengine/Ketsji/KXNetwork/KX_NetworkEventManager.cpp
@@ -45,7 +45,7 @@
KX_NetworkEventManager::KX_NetworkEventManager(class SCA_LogicManager*
logicmgr, class NG_NetworkDeviceInterface *ndi) :
-SCA_EventManager(NETWORK_EVENTMGR), m_logicmgr(logicmgr), m_ndi(ndi)
+SCA_EventManager(logicmgr, NETWORK_EVENTMGR), m_ndi(ndi)
{
//printf("KX_NetworkEventManager constructor\n");
}
diff --git a/source/gameengine/Ketsji/KXNetwork/KX_NetworkEventManager.h b/source/gameengine/Ketsji/KXNetwork/KX_NetworkEventManager.h
index ae88f1d4987..fd776640bcf 100644
--- a/source/gameengine/Ketsji/KXNetwork/KX_NetworkEventManager.h
+++ b/source/gameengine/Ketsji/KXNetwork/KX_NetworkEventManager.h
@@ -34,7 +34,6 @@
class KX_NetworkEventManager : public SCA_EventManager
{
- class SCA_LogicManager* m_logicmgr;
class NG_NetworkDeviceInterface* m_ndi;
public:
diff --git a/source/gameengine/Ketsji/KX_RayEventManager.h b/source/gameengine/Ketsji/KX_RayEventManager.h
index 27c9be14d1f..030dae525e1 100644
--- a/source/gameengine/Ketsji/KX_RayEventManager.h
+++ b/source/gameengine/Ketsji/KX_RayEventManager.h
@@ -41,8 +41,7 @@ class KX_RayEventManager : public SCA_EventManager
class SCA_LogicManager* m_logicmgr;
public:
KX_RayEventManager(class SCA_LogicManager* logicmgr)
- : SCA_EventManager(RAY_EVENTMGR),
- m_logicmgr(logicmgr)
+ : SCA_EventManager(logicmgr, RAY_EVENTMGR)
{}
virtual void NextFrame();
diff --git a/source/gameengine/Ketsji/KX_TouchEventManager.cpp b/source/gameengine/Ketsji/KX_TouchEventManager.cpp
index 712a512995e..6b454f6a338 100644
--- a/source/gameengine/Ketsji/KX_TouchEventManager.cpp
+++ b/source/gameengine/Ketsji/KX_TouchEventManager.cpp
@@ -40,8 +40,7 @@
KX_TouchEventManager::KX_TouchEventManager(class SCA_LogicManager* logicmgr,
PHY_IPhysicsEnvironment* physEnv)
- : SCA_EventManager(TOUCH_EVENTMGR),
- m_logicmgr(logicmgr),
+ : SCA_EventManager(logicmgr, TOUCH_EVENTMGR),
m_physEnv(physEnv)
{
//notm_scene->addTouchCallback(STATIC_RESPONSE, KX_TouchEventManager::collisionResponse, this);
diff --git a/source/gameengine/Ketsji/KX_TouchEventManager.h b/source/gameengine/Ketsji/KX_TouchEventManager.h
index 6da37d615a4..e6414a2e285 100644
--- a/source/gameengine/Ketsji/KX_TouchEventManager.h
+++ b/source/gameengine/Ketsji/KX_TouchEventManager.h
@@ -43,7 +43,6 @@ class PHY_IPhysicsEnvironment;
class KX_TouchEventManager : public SCA_EventManager
{
typedef std::pair<PHY_IPhysicsController*, PHY_IPhysicsController*> NewCollision;
- class SCA_LogicManager* m_logicmgr;
PHY_IPhysicsEnvironment* m_physEnv;
std::set<NewCollision> m_newCollisions;