I was reading the Simple Event Handling article and I noticed every class that inherits IEventHandler registers as a listener for all events. The class then implements the EventHandler member function and handles the events it is interested in.
This is a bit different that what I expected. In a more complex event system wouldn't the game event manager class register the listener and a specific event? Then the game event manager class is tasked with matching the event with the listeners.
I just want clarify that this is a simplified implementation and not a mistake in my understanding.
Next, I have a question about integrating something similar to the Simple Event Handling article into my game. My confusion stems from the fact my game loop already polls for events and then feeds these events to my already existing HandleEvent functions that cascades through my game. I assume both these systems are necessary, but I would seem to need two different HandleEvents functions. One for events coming from the OS and then one for events that I create at a much higher level. I am having a hard time visualizing how I imeplement both these systems independently of each other in the same code base. Any help would be much appreciated!