almost all event managers stored a pointer back to the logic manager, easier if this pointer is in the base class - SCA_EventManager

This commit is contained in:
Campbell Barton 2009-09-25 16:30:15 +00:00
parent 9f6566c0a5
commit aa989c1e83
23 changed files with 22 additions and 44 deletions

@ -36,8 +36,7 @@
SCA_ActuatorEventManager::SCA_ActuatorEventManager(class SCA_LogicManager* logicmgr)
: SCA_EventManager(ACTUATOR_EVENTMGR),
m_logicmgr(logicmgr)
: SCA_EventManager(logicmgr, ACTUATOR_EVENTMGR)
{
}

@ -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();

@ -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)
{
}

@ -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();

@ -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)
{
}

@ -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)
{
}

@ -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);

@ -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++) {

@ -35,8 +35,6 @@
using namespace std;
class SCA_JoystickManager : public SCA_EventManager
{
class SCA_LogicManager* m_logicmgr;
/**
* SDL Joystick Class Instance
*/

@ -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);
}
}

@ -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);

@ -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);
}
}
}

@ -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;

@ -35,8 +35,7 @@
SCA_PropertyEventManager::SCA_PropertyEventManager(class SCA_LogicManager* logicmgr)
: SCA_EventManager(PROPERTY_EVENTMGR),
m_logicmgr(logicmgr)
: SCA_EventManager(logicmgr, PROPERTY_EVENTMGR)
{
}

@ -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();

@ -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)
{
}

@ -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);

@ -43,7 +43,7 @@
#include "FloatValue.h"
SCA_TimeEventManager::SCA_TimeEventManager(SCA_LogicManager* logicmgr)
: SCA_EventManager(TIME_EVENTMGR)
: SCA_EventManager(NULL, TIME_EVENTMGR)
{
}

@ -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");
}

@ -34,7 +34,6 @@
class KX_NetworkEventManager : public SCA_EventManager
{
class SCA_LogicManager* m_logicmgr;
class NG_NetworkDeviceInterface* m_ndi;
public:

@ -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();

@ -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);

@ -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;