Przeglądaj źródła

renamed gamepad to device in inputDeviceManager

renamed as not every device is a gamepad
fireclawthefox 9 lat temu
rodzic
commit
a6110a606e

+ 23 - 6
panda/src/device/inputDeviceManager.cxx

@@ -246,23 +246,40 @@ consider_add_js_device(int js_index) {
 #endif
 
 /**
- * Description: Returns all currently connected gamepad devices.
+ * Description: Returns all currently connected devices.
  */
 InputDeviceSet InputDeviceManager::
-get_gamepads() const {
-  InputDeviceSet gamepads;
+get_devices() 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() == InputDevice::DC_gamepad) {
-      gamepads.add_device(device);
+    devices.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
  * register virtual devices.

+ 4 - 3
panda/src/device/inputDeviceManager.h

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