From 86b22151f0758311fd146ff508e7254337414bc1 Mon Sep 17 00:00:00 2001 From: manuel Date: Tue, 15 Aug 2017 17:40:26 +0200 Subject: sync with upstream --- .../include/kodi/addon-instance/AudioDSP.h | 2 +- .../include/kodi/addon-instance/Peripheral.h | 17 +++++++++++++++++ .../include/kodi/addon-instance/PeripheralUtils.h | 4 ++++ 3 files changed, 22 insertions(+), 1 deletion(-) (limited to 'xbmc/addons/kodi-addon-dev-kit/include/kodi/addon-instance') diff --git a/xbmc/addons/kodi-addon-dev-kit/include/kodi/addon-instance/AudioDSP.h b/xbmc/addons/kodi-addon-dev-kit/include/kodi/addon-instance/AudioDSP.h index c508f80..3587a33 100644 --- a/xbmc/addons/kodi-addon-dev-kit/include/kodi/addon-instance/AudioDSP.h +++ b/xbmc/addons/kodi-addon-dev-kit/include/kodi/addon-instance/AudioDSP.h @@ -580,7 +580,7 @@ namespace addon { /// add-on CreateInstance call with instance /// id ADDON_INSTANCE_ADSP. /// - CInstanceAudioDSP(KODI_HANDLE instance) + explicit CInstanceAudioDSP(KODI_HANDLE instance) : IAddonInstance(ADDON_INSTANCE_ADSP) { if (CAddonBase::m_interface->globalSingleInstance != nullptr) diff --git a/xbmc/addons/kodi-addon-dev-kit/include/kodi/addon-instance/Peripheral.h b/xbmc/addons/kodi-addon-dev-kit/include/kodi/addon-instance/Peripheral.h index 631b9b4..045a925 100644 --- a/xbmc/addons/kodi-addon-dev-kit/include/kodi/addon-instance/Peripheral.h +++ b/xbmc/addons/kodi-addon-dev-kit/include/kodi/addon-instance/Peripheral.h @@ -210,6 +210,8 @@ extern "C" JOYSTICK_FEATURE_TYPE_ANALOG_STICK, JOYSTICK_FEATURE_TYPE_ACCELEROMETER, JOYSTICK_FEATURE_TYPE_MOTOR, + JOYSTICK_FEATURE_TYPE_RELPOINTER, + JOYSTICK_FEATURE_TYPE_ABSPOINTER, } JOYSTICK_FEATURE_TYPE; typedef enum JOYSTICK_FEATURE_PRIMITIVE @@ -257,6 +259,7 @@ extern "C" void (*trigger_scan)(void* kodiInstance); void (*refresh_button_maps)(void* kodiInstance, const char* device_name, const char* controller_id); unsigned int (*feature_count)(void* kodiInstance, const char* controller_id, JOYSTICK_FEATURE_TYPE type); + JOYSTICK_FEATURE_TYPE (*feature_type)(void* kodiInstance, const char* controller_id, const char* feature_name); } AddonToKodiFuncTable_Peripheral; //! @todo Mouse, light gun, multitouch @@ -545,6 +548,20 @@ namespace addon return m_instanceData->toKodi.feature_count(m_instanceData->toKodi.kodiInstance, strControllerId.c_str(), type); } + /*! + * @brief Return the type of the feature + * + * @param controllerId The controller ID to check + * @param featureName The feature to check + * + * @return The type of the specified feature, or JOYSTICK_FEATURE_TYPE_UNKNOWN + * if unknown + */ + JOYSTICK_FEATURE_TYPE FeatureType(const std::string& strControllerId, const std::string &featureName) + { + return m_instanceData->toKodi.feature_type(m_instanceData->toKodi.kodiInstance, strControllerId.c_str(), featureName.c_str()); + } + private: void SetAddonStruct(KODI_HANDLE instance) { diff --git a/xbmc/addons/kodi-addon-dev-kit/include/kodi/addon-instance/PeripheralUtils.h b/xbmc/addons/kodi-addon-dev-kit/include/kodi/addon-instance/PeripheralUtils.h index 8cfa91b..721da35 100644 --- a/xbmc/addons/kodi-addon-dev-kit/include/kodi/addon-instance/PeripheralUtils.h +++ b/xbmc/addons/kodi-addon-dev-kit/include/kodi/addon-instance/PeripheralUtils.h @@ -580,10 +580,14 @@ namespace addon * 2) analog stick * 3) accelerometer * 4) motor + * 5) relative pointer[2] * * [1] All three driver primitives (buttons, hats and axes) have a state that * can be represented using a single scalar value. For this reason, * features that map to a single primitive are called "scalar features". + * + * [2] Relative pointers are similar to analog sticks, but they use + * relative distances instead of positions. */ class JoystickFeature { -- cgit v1.2.3