30 #include <unordered_map> 31 #include "../Interfaces/IFSJoystickListener.h" 32 #include "../Interfaces/IFSJoystickInfo.h" 33 #include "../Interfaces/IFSDevice.h" 34 #include "../baseClasses/FSBaseDevice.h" 35 #include "../baseClasses/FSBaseEvent.h" 36 #include "../Interfaces/IFSDeviceIDCreator.h" 103 virtual void init() ;
106 #pragma mark -Advance API 110 std::unordered_multimap<FreeStickEventType,std::pair<IFSJoystickListener *,bool> > _joystickDeviceListeners;
111 typedef std::unordered_multimap<FreeStickEventType,std::pair<IFSJoystickListener *,bool> >::iterator joystickDeviceListenersItr;
113 std::unordered_map<unsigned int,std::multimap<FreeStickEventType,IFSJoystickListener * > > _joystickDeviceInputListeners;
114 std::vector<IFSJoystickListener *> allJoystickListeners;
116 std::vector<std::pair<FreeStickEventType,IFSJoystickListener * > > _listenersToCleanUp;
118 std::unordered_map<unsigned int, FSBaseDevice * >
deviceMap;
Definition: IFSJoystickListener.h:34
void RemoveListenerForEventType(FreeStickEventType eventType, IFSJoystickListener &listener)
Definition: FSBaseManager.cpp:178
virtual void inputOnDeviceChangedWithNormilzedValues(FreeStickEventType eventType, FSEventAction eventAction, FSDeviceInput inputType, idNumber deviceID, idNumber deviceControlID, float newValue, float oldValue)
Definition: FSBaseManager.cpp:297
void ListenForJoystickEvent(FreeStickEventType eventType, IFSJoystickListener &listener)
FSEventAction
Definition: IFSEvent.h:46
virtual void init()
Definition: FSBaseManager.cpp:41
virtual void UnListenForAllJoysticksForEventTypes(unsigned int eventFlags, IFSJoystickListener &listener)
Definition: FSBaseManager.cpp:116
virtual const FSBaseDevice * getDevice(idNumber deviceID)
Definition: FSBaseManager.cpp:72
virtual void ListenForAllJoysticksForEventTypes(unsigned int eventFlags, IFSJoystickListener &listener)
This is the base manager.
Definition: FSBaseManager.cpp:80
float convertRawToNormalizedRanger(double value, minMaxNumber maxValue, minMaxNumber minValue)
Definition: FSBaseManager.cpp:283
uint32_t idNumber
Definition: FSTypes.h:33
FreeStickEventType
Definition: IFSEvent.h:36
Definition: IFSDeviceIDCreator.h:30
FSBaseManager()
Definition: FSBaseManager.cpp:36
void UnListenForAllJoysticksForEventType(FreeStickEventType eventType, IFSJoystickListener &listener)
Definition: FSBaseManager.cpp:156
std::unordered_map< unsigned int, FSBaseDevice * > deviceMap
Definition: FSBaseManager.h:118
Definition: FSBaseDevice.h:32
Definition: FSBaseEvent.h:33
virtual ~FSBaseManager()
Definition: FSBaseManager.cpp:56
uint64_t deviceID
Definition: FSTypes.h:37
virtual elementID getNextID()
Definition: FSBaseManager.cpp:343
virtual void addDevice(FSBaseDevice *device)
Definition: FSBaseManager.cpp:318
virtual void removeDevice(FSBaseDevice *device)
Definition: FSBaseManager.cpp:328
void updateEvent(FSBaseEvent &event)
Definition: FSBaseManager.cpp:212
unsigned int elementID
Definition: FSTypes.h:36
virtual void inputOnDeviceChanged(FreeStickEventType eventType, FSEventAction eventAction, FSDeviceInput inputType, idNumber deviceID, idNumber deviceControlID, int newValue, int oldValue, minMaxNumber min, minMaxNumber max)
Definition: FSBaseManager.cpp:313
Definition: FSBaseDevice.h:35
void ListenForAllJoysticksForEventType(FreeStickEventType eventType, IFSJoystickListener &listener)
Definition: FSBaseManager.cpp:199
This is the base manager.
Definition: FSBaseManager.h:79
FSDeviceInput
Definition: IFSDevice.h:31
int32_t minMaxNumber
Definition: FSTypes.h:34