17 #ifndef TOUCHNAVIGATIONROUTER_H
18 #define TOUCHNAVIGATIONROUTER_H
21 #include "ControllerEvent.h"
22 #include "ControllerFactory.h"
23 #include "InputRouter.h"
24 #include "JoystickAxisScheme.h"
25 #include "KeyScheme.h"
101 #endif // TOUCHNAVIGATIONROUTER_H
Software represention and state capable of describing almost all physical controllers.
Definition: VirtualController.h:36
Base interface for constructing virtual controllers from a deviceId.
Definition: ControllerFactory.h:34
bool addTouchNavigationControllerFactory(const TouchNavigationControllerFactory &factory)
Adds the specified TouchNavigationControllerFactory to the list of factories to route by...
Routes gamepad-related ControllerEvents according to inherent TouchNativationControllerFactory specif...
Definition: TouchNavigationRouter.h:32
virtual bool intersects(const ControllerFactory &otherFactory) const override
Returns whether or not this ControllerFactory intersects (i.e. overlaps input schemes) with the speci...
A platform independent event generated by controller device.
Definition: ControllerEvent.h:34
Represents a scheme mapping input joystick axes to output actions.
Definition: JoystickAxisScheme.h:28
virtual VirtualController * createNewController(int deviceId) const override
Returns a new VirtualController for the specified deviceId.
TouchNavigationControllerFactory(const KeyScheme &keyScheme, const JoystickAxisScheme &joystickAxisScheme)
Constructs a TouchNavigationControllerFactory from input schemes.
Represents a scheme mapping keyboard input to output actions.
Definition: KeyScheme.h:28
virtual bool handlesControllerEvent(const ControllerEvent *event) const override
Returns whether or not this ControllerFactory can process the specified event.
static TouchNavigationRouter * getInstance()
Returns singleton instance of TouchNavigationRouter.
Factory for constructing VirtualControllers to represent touch navigation devices as controllers...
Definition: TouchNavigationRouter.h:39
static std::set< KeyCode > sValidKeyCodes
Set of KeyCodes valid as input on a touch navigation device.
Definition: TouchNavigationRouter.h:68
static std::set< JoystickAxisCode > sValidJoystickAxisCodes
Set of JoystickAxisCodes valid as input on a touch navigation device.
Definition: TouchNavigationRouter.h:72