I'm studying a good number of articles about this topic and seems to me that there is just one way to do this: a signal/slot design.
I was also looking at some more complex async examples but I don't think I will adopt this, the tradeoff is not convenient in my opinion.
The classic C++ code that I have read until now is done with a template design and adopt a signal/slot logic, now my question: there is a better way to handle the input from the user? Is there a good pre-packed library for this?
I'd like to handle a broad range of different inputs: mouse, keyboard, gamepad, maybe also touch screen gestures, on several different platforms. My system should also be user-configurable.