11 #include "PeripheralAddon.h"     12 #include "input/joysticks/DriverPrimitive.h"    13 #include "input/joysticks/JoystickTypes.h"    14 #include "input/joysticks/interfaces/IButtonMap.h"    15 #include "peripherals/PeripheralTypes.h"    16 #include "threads/CriticalSection.h"    29                   const std::weak_ptr<CPeripheralAddon>& addon,
    30                   const std::string& strControllerId);
    35   std::string 
ControllerID(
void)
 const override { 
return m_strControllerId; }
    37   std::string 
Location(
void) 
const override;
    39   bool Load(
void) 
override;
    41   void Reset(
void) 
override;
    43   bool IsEmpty(
void) 
const override;
    47   bool SetAppearance(
const std::string& controllerId) 
const override;
    50                   KODI::JOYSTICK::FeatureName& feature) 
override;
    52   KODI::JOYSTICK::FEATURE_TYPE 
GetFeatureType(
const KODI::JOYSTICK::FeatureName& feature) 
override;
    54   bool GetScalar(
const KODI::JOYSTICK::FeatureName& feature,
    57   void AddScalar(
const KODI::JOYSTICK::FeatureName& feature,
    61                       KODI::JOYSTICK::ANALOG_STICK_DIRECTION direction,
    65                       KODI::JOYSTICK::ANALOG_STICK_DIRECTION direction,
    69                           KODI::JOYSTICK::RELATIVE_POINTER_DIRECTION direction,
    73                           KODI::JOYSTICK::RELATIVE_POINTER_DIRECTION direction,
    86   bool GetWheel(
const KODI::JOYSTICK::FeatureName& feature,
    87                 KODI::JOYSTICK::WHEEL_DIRECTION direction,
    90   void AddWheel(
const KODI::JOYSTICK::FeatureName& feature,
    91                 KODI::JOYSTICK::WHEEL_DIRECTION direction,
    94   bool GetThrottle(
const KODI::JOYSTICK::FeatureName& feature,
    95                    KODI::JOYSTICK::THROTTLE_DIRECTION direction,
    98   void AddThrottle(
const KODI::JOYSTICK::FeatureName& feature,
    99                    KODI::JOYSTICK::THROTTLE_DIRECTION direction,
   102   bool GetKey(
const KODI::JOYSTICK::FeatureName& feature,
   105   void AddKey(
const KODI::JOYSTICK::FeatureName& feature,
   109       const std::vector<KODI::JOYSTICK::CDriverPrimitive>& primitives) 
override;
   113   bool GetAxisProperties(
unsigned int axisIndex, 
int& center, 
unsigned int& range) 
override;
   120   typedef std::map<KODI::JOYSTICK::CDriverPrimitive, KODI::JOYSTICK::FeatureName> DriverMap;
   121   typedef std::vector<KODI::JOYSTICK::CDriverPrimitive> JoystickPrimitiveVector;
   124   static DriverMap CreateLookupTable(
const FeatureMap& features);
   128       KODI::JOYSTICK::RELATIVE_POINTER_DIRECTION dir);
   134   const std::weak_ptr<CPeripheralAddon> m_addon;
   135   const std::string m_strControllerId;
   138   std::string m_controllerAppearance;
   139   FeatureMap m_features;
   140   DriverMap m_driverMap;
   141   JoystickPrimitiveVector m_ignoredPrimitives;
   144   mutable CCriticalSection m_mutex;
 
JOYSTICK_FEATURE_PRIMITIVE
Definition: peripheral.h:538
Definition: RetroPlayerInput.h:15
Basic driver element associated with input events. 
Definition: DriverPrimitive.h:70
Definition: Peripheral.h:71