renamed gamepad to device in inputDeviceManager

renamed as not every device is a gamepad
This commit is contained in:
fireclawthefox 2016-07-21 12:46:20 +02:00
parent dcdbe4b339
commit a6110a606e
2 changed files with 27 additions and 9 deletions

View File

@ -246,23 +246,40 @@ consider_add_js_device(int js_index) {
#endif #endif
/** /**
* Description: Returns all currently connected gamepad devices. * Description: Returns all currently connected devices.
*/ */
InputDeviceSet InputDeviceManager:: InputDeviceSet InputDeviceManager::
get_gamepads() const { get_devices() const {
InputDeviceSet gamepads; InputDeviceSet devices;
LightMutexHolder holder(_lock); LightMutexHolder holder(_lock);
for (size_t i = 0; i < _connected_devices.size(); ++i) { for (size_t i = 0; i < _connected_devices.size(); ++i) {
InputDevice *device = _connected_devices[i]; InputDevice *device = _connected_devices[i];
if (device->get_device_class() == InputDevice::DC_gamepad) { devices.add_device(device);
gamepads.add_device(device); }
return devices;
}
/**
* Description: Returns all currently connected devices of the given device class.
*/
InputDeviceSet InputDeviceManager::
get_devices(InputDevice::DeviceClass device_class) const {
InputDeviceSet devices;
LightMutexHolder holder(_lock);
for (size_t i = 0; i < _connected_devices.size(); ++i) {
InputDevice *device = _connected_devices[i];
if (device->get_device_class() == device_class) {
devices.add_device(device);
} }
} }
return gamepads; return devices;
} }
/** /**
* Called when a new device has been discovered. This may also be used to * Called when a new device has been discovered. This may also be used to
* register virtual devices. * register virtual devices.

View File

@ -38,7 +38,8 @@ private:
#endif #endif
public: public:
InputDeviceSet get_gamepads() const; InputDeviceSet get_devices() const;
InputDeviceSet get_devices(InputDevice::DeviceClass device_class) const;
PUBLISHED: PUBLISHED:
void add_device(InputDevice *device); void add_device(InputDevice *device);
@ -48,8 +49,8 @@ PUBLISHED:
INLINE static InputDeviceManager *get_global_ptr(); INLINE static InputDeviceManager *get_global_ptr();
// The set of all currently connected gamepad devices. // The set of all currently connected devices.
MAKE_PROPERTY(gamepads, get_gamepads); MAKE_PROPERTY(devices, get_devices);
private: private:
LightMutex _lock; LightMutex _lock;