little optimisation
This commit is contained in:
@@ -13,11 +13,8 @@ App::App( const DisplayProperties& props )
|
||||
, mInput()
|
||||
{
|
||||
RegisterAsSink( "ENGINE_DISPLAY_CORE", 0 );
|
||||
RegisterAsSink( "ENGINE_INPUT_MOUSE", 0 );
|
||||
RegisterAsSink( "ENGINE_INPUT_KEYBOARD", 0 );
|
||||
|
||||
mDisplay.Create( props );
|
||||
|
||||
}
|
||||
|
||||
void App::Run()
|
||||
@@ -35,7 +32,6 @@ const Display& App::GetDisplay()
|
||||
|
||||
bool App::EventRecieved( GenericEvent& e )
|
||||
{
|
||||
//std::cout << e.Type << std::endl;
|
||||
if ( e.Type == "DISPLAY_CLOSED" )
|
||||
{
|
||||
mSIGTERM = true;
|
||||
|
||||
@@ -125,11 +125,14 @@ void EventManager::RemoveSink( int listenerID, std::string system )
|
||||
|
||||
void EventManager::Dispatch( int dispatcherID, GenericEvent e )
|
||||
{
|
||||
// TODO: if there's no sinks, discard the event because it would be
|
||||
// unneccesary effort to keep going with it
|
||||
std::string targetSink = mSources[dispatcherID];
|
||||
auto sinks = mSinks[targetSink];
|
||||
|
||||
if ( sinks.empty() )
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
for ( auto& listenerPair : sinks )
|
||||
{
|
||||
EventListener* listener = std::get<0>( listenerPair );
|
||||
|
||||
@@ -27,6 +27,9 @@ namespace Aeon::Core {
|
||||
/*
|
||||
* Engine event systems / type
|
||||
* ENGINE_SYSTEM_CORE - start, stop, pause, etc
|
||||
* ENGINE_START - starts game loop execution
|
||||
* ENGINE_STOP
|
||||
* ENGINE_PAUSE
|
||||
* ENGINE_DISPLAY_CORE - window open, window close, etc
|
||||
* DISPLAY_RESIZE (x, y) - rezise to x, y being new w, h
|
||||
* DISPLAY_MOVE (x, y) - move to x, y
|
||||
@@ -51,7 +54,7 @@ namespace Aeon::Core {
|
||||
* ENGINE_INPUT_KEYBOARD
|
||||
* KEYBOARD_KEYDOWN - keycode
|
||||
* KEYBOARD_KEYUP - keycode
|
||||
* KEYBOARD_PRESSED - keycode for continual pressing
|
||||
* KEYBOARD_KEYPRESS - keycode for continual pressing
|
||||
*/
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user