40 #ifndef _eventmanager_h
41 #define _eventmanager_h
47 #include "entresolmanager.h"
48 #include "entresolmanagerfactory.h"
49 #include "eventbase.h"
50 #include "singleton.h"
54 #include "Input/metacode.h"
66 #if !(defined(SWIG) && defined(MEZZLUA51)) // Stop Swig from making lua bindings but allow other languages
84 #endif // \!SWIG && LUA
90 class EventGameWindow;
96 class EventManagerInternalData;
101 %
template(SingletonEventManager) Singleton<EventManager>;
174 void UpdateQuitEvents();
183 friend class EventWorkUnit;
202 size_t GetRemainingEventCount();
222 void RemoveNextEvent();
234 void RemoveEvent(
EventBase* EventToRemove);
266 void RemoveNextGameWindowEvent();
271 std::list<EventGameWindow*>* GetAllGameWindowEvents();
297 void RemoveNextUserInputEvent();
302 std::list<EventUserInput*>* GetAllUserInputEvents();
328 void RemoveNextQuitEvent();
334 std::list<EventQuit*>* GetAllQuitEvents();
398 virtual void Initialize();
400 virtual void Deinitialize();
410 virtual ManagerType GetInterfaceType()
const;
412 virtual String GetImplementationTypeName()
const;
429 String GetManagerImplName()
const;
std::ostream & operator<<(std::ostream &stream, const Mezzanine::LinearInterpolator< T > &Lint)
Used to Serialize an Mezzanine::LinearInterpolator to a human readable stream.
Default implementation of WorkUnit. This represents on piece of work through time.
Used to increase encapsulation, just a bit.
ManagerType
A listing of Manager Types.
This is a base class for factories that construct managers used by the Entresol class.
Every frame the OS must be queried for changes to the state, this does that querying on behalf of an ...
static const String ImplementationName
A String containing the name of this manager implementation.
Internal::EventManagerInternalData * _Data
All the internal data for this EventManager.
A thread specific collection of double-buffered and algorithm specific resources. ...
static const ManagerBase::ManagerType InterfaceType
A ManagerType enum value used to describe the type of interface/functionality this manager provides...
EventType
A listing of values that can be used to identify Events.
This is the base class for all managers that do no describe properties of a single world...
The base class for all events.
A light-weight handle for manipulating nodes in DOM tree.
This is intended to convey the message that quitting needs to happen.
EventManager(const EventManager &Dummy)
Private copy semantics, because copying this will cause problems.
A factory responsible for the creation and destruction of the default eventmanager.
std::list< NameValuePair > NameValuePairList
This is a datatype mostly used for describing settings or parameters that can't be declared in advanc...
The bulk of the engine components go in this namspace.
std::istream & operator>>(std::istream &stream, Mezzanine::LinearInterpolator< T > &Lint)
Used to de-serialize an Mezzanine::LinearInterpolator from a stream.
Convey the message that Something happened to a game window.
EventManager * TargetManager
The Manager this does the work for.
This is a container for Events and facilitates the transfer of data.
std::string String
A datatype used to a series of characters.
This file has the definition of the workunit.