From 4c3251ec645c8b71820dab7e51e612e5919d4e75 Mon Sep 17 00:00:00 2001 From: manuel Date: Sun, 23 Jul 2017 16:59:43 +0200 Subject: sync with upstream --- .../include/kodi/kodi_peripheral_dll.h | 246 --------------------- 1 file changed, 246 deletions(-) delete mode 100644 xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_peripheral_dll.h (limited to 'xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_peripheral_dll.h') diff --git a/xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_peripheral_dll.h b/xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_peripheral_dll.h deleted file mode 100644 index b353316..0000000 --- a/xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_peripheral_dll.h +++ /dev/null @@ -1,246 +0,0 @@ -/* - * Copyright (C) 2014-2017 Team Kodi - * http://kodi.tv - * - * This Program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. - * - * This Program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this Program; see the file COPYING. If not, see - * . - * - */ -#ifndef __PERIPHERAL_DLL_H__ -#define __PERIPHERAL_DLL_H__ - -#include "kodi_peripheral_types.h" - -#define PERIPHERAL_ADDON_JOYSTICKS //! @todo - -#ifdef __cplusplus -extern "C" -{ -#endif - - /// @name Peripheral operations - ///{ - /*! - * @brief Get the list of features that this add-on provides - * @param pCapabilities The add-on's capabilities. - * @return PERIPHERAL_NO_ERROR if the properties were fetched successfully. - * @remarks Valid implementation required. - * - * Called by the frontend to query the add-on's capabilities and supported - * peripherals. All capabilities that the add-on supports should be set to true. - * - */ - PERIPHERAL_ERROR GetAddonCapabilities(PERIPHERAL_CAPABILITIES *pCapabilities); - - /*! - * @brief Perform a scan for joysticks - * @param peripheral_count Assigned to the number of peripherals allocated - * @param scan_results Assigned to allocated memory - * @return PERIPHERAL_NO_ERROR if successful; peripherals must be freed using - * FreeScanResults() in this case - * - * The frontend calls this when a hardware change is detected. If an add-on - * detects a hardware change, it can trigger this function using the - * TriggerScan() callback. - */ - PERIPHERAL_ERROR PerformDeviceScan(unsigned int* peripheral_count, PERIPHERAL_INFO** scan_results); - - /*! - * @brief Free the memory allocated in PerformDeviceScan() - * - * Must be called if PerformDeviceScan() returns PERIPHERAL_NO_ERROR. - * - * @param peripheral_count The number of events allocated for the events array - * @param scan_results The array of allocated peripherals - */ - void FreeScanResults(unsigned int peripheral_count, PERIPHERAL_INFO* scan_results); - - /*! - * @brief Get all events that have occurred since the last call to GetEvents() - * @return PERIPHERAL_NO_ERROR if successful; events must be freed using - * FreeEvents() in this case - */ - PERIPHERAL_ERROR GetEvents(unsigned int* event_count, PERIPHERAL_EVENT** events); - - /*! - * @brief Free the memory allocated in GetEvents() - * - * Must be called if GetEvents() returns PERIPHERAL_NO_ERROR. - * - * @param event_count The number of events allocated for the events array - * @param events The array of allocated events - */ - void FreeEvents(unsigned int event_count, PERIPHERAL_EVENT* events); - - /*! - * @brief Send an input event to the specified peripheral - * @param peripheralIndex The index of the device receiving the input event - * @param event The input event - * @return true if the event was handled, false otherwise - */ - bool SendEvent(const PERIPHERAL_EVENT* event); - ///} - - /// @name Joystick operations - /*! - * @note #define PERIPHERAL_ADDON_JOYSTICKS before including kodi_peripheral_dll.h - * in the add-on if the add-on provides joysticks and add provides_joysticks="true" - * to the kodi.peripheral extension point node in addon.xml. - */ - ///{ -#ifdef PERIPHERAL_ADDON_JOYSTICKS - /*! - * @brief Get extended info about an attached joystick - * @param index The joystick's driver index - * @param info The container for the allocated joystick info - * @return PERIPHERAL_NO_ERROR if successful; array must be freed using - * FreeJoystickInfo() in this case - */ - PERIPHERAL_ERROR GetJoystickInfo(unsigned int index, JOYSTICK_INFO* info); - - /*! - * @brief Free the memory allocated in GetJoystickInfo() - */ - void FreeJoystickInfo(JOYSTICK_INFO* info); - - /*! - * @brief Get the features that allow translating the joystick into the controller profile - * @param joystick The device's joystick properties; unknown values may be left at their default - * @param controller_id The controller profile being requested, e.g. game.controller.default - * @param feature_count The number of features allocated for the features array - * @param features The array of allocated features - * @return PERIPHERAL_NO_ERROR if successful; array must be freed using - * FreeButtonMap() in this case - */ - PERIPHERAL_ERROR GetFeatures(const JOYSTICK_INFO* joystick, const char* controller_id, - unsigned int* feature_count, JOYSTICK_FEATURE** features); - - /*! - * @brief Free the memory allocated in GetFeatures() - * - * Must be called if GetFeatures() returns PERIPHERAL_NO_ERROR. - * - * @param feature_count The number of features allocated for the features array - * @param features The array of allocated features - */ - void FreeFeatures(unsigned int feature_count, JOYSTICK_FEATURE* features); - - /*! - * @brief Add or update joystick features - * @param joystick The device's joystick properties; unknown values may be left at their default - * @param controller_id The game controller profile being updated - * @param feature_count The number of features in the features array - * @param features The array of features - * @return PERIPHERAL_NO_ERROR if successful - */ - PERIPHERAL_ERROR MapFeatures(const JOYSTICK_INFO* joystick, const char* controller_id, - unsigned int feature_count, const JOYSTICK_FEATURE* features); - - /*! - * @brief Get the driver primitives that should be ignored while mapping the device - * @param joystick The device's joystick properties; unknown values may be left at their default - * @param primitive_count The number of features allocated for the primitives array - * @param primitives The array of allocated driver primitives to be ignored - * @return PERIPHERAL_NO_ERROR if successful; array must be freed using - * FreePrimitives() in this case - */ - PERIPHERAL_ERROR GetIgnoredPrimitives(const JOYSTICK_INFO* joystick, - unsigned int* primitive_count, - JOYSTICK_DRIVER_PRIMITIVE** primitives); - - /*! - * @brief Free the memory allocated in GetIgnoredPrimitives() - * - * Must be called if GetIgnoredPrimitives() returns PERIPHERAL_NO_ERROR. - * - * @param primitive_count The number of driver primitives allocated for the primitives array - * @param primitives The array of allocated driver primitives - */ - void FreePrimitives(unsigned int primitive_count, JOYSTICK_DRIVER_PRIMITIVE* primitives); - - /*! - * @brief Set the list of driver primitives that are ignored for the device - * @param joystick The device's joystick properties; unknown values may be left at their default - * @param primitive_count The number of driver features in the primitives array - * @param primitives The array of driver primitives to ignore - * @return PERIPHERAL_NO_ERROR if successful - */ - PERIPHERAL_ERROR SetIgnoredPrimitives(const JOYSTICK_INFO* joystick, - unsigned int primitive_count, - const JOYSTICK_DRIVER_PRIMITIVE* primitives); - - /*! - * @brief Save the button map for the given joystick - * @param joystick The device's joystick properties - */ - void SaveButtonMap(const JOYSTICK_INFO* joystick); - - /*! - * @brief Revert the button map to the last time it was loaded or committed to disk - * @param joystick The device's joystick properties - */ - void RevertButtonMap(const JOYSTICK_INFO* joystick); - - /*! - * @brief Reset the button map for the given joystick and controller profile ID - * @param joystick The device's joystick properties - * @param controller_id The game controller profile being reset - */ - void ResetButtonMap(const JOYSTICK_INFO* joystick, const char* controller_id); - - /*! - * @brief Powers off the given joystick if supported - * @param index The joystick's driver index - */ - void PowerOffJoystick(unsigned int index); -#endif - ///} - - /*! - * Called by the frontend to assign the function pointers of this add-on to - * pClient. Note that get_addon() is defined here, so it will be available in - * all compiled peripheral add-ons. - */ - void __declspec(dllexport) get_addon(void* ptr) - { - AddonInstance_Peripheral* pClient = static_cast(ptr); - - pClient->toAddon.GetAddonCapabilities = GetAddonCapabilities; - pClient->toAddon.PerformDeviceScan = PerformDeviceScan; - pClient->toAddon.FreeScanResults = FreeScanResults; - pClient->toAddon.GetEvents = GetEvents; - pClient->toAddon.FreeEvents = FreeEvents; - pClient->toAddon.SendEvent = SendEvent; - -#ifdef PERIPHERAL_ADDON_JOYSTICKS - pClient->toAddon.GetJoystickInfo = GetJoystickInfo; - pClient->toAddon.FreeJoystickInfo = FreeJoystickInfo; - pClient->toAddon.GetFeatures = GetFeatures; - pClient->toAddon.FreeFeatures = FreeFeatures; - pClient->toAddon.MapFeatures = MapFeatures; - pClient->toAddon.GetIgnoredPrimitives = GetIgnoredPrimitives; - pClient->toAddon.FreePrimitives = FreePrimitives; - pClient->toAddon.SetIgnoredPrimitives = SetIgnoredPrimitives; - pClient->toAddon.SaveButtonMap = SaveButtonMap; - pClient->toAddon.RevertButtonMap = RevertButtonMap; - pClient->toAddon.ResetButtonMap = ResetButtonMap; - pClient->toAddon.PowerOffJoystick = PowerOffJoystick; -#endif - } - -#ifdef __cplusplus -} -#endif - -#endif // __PERIPHERAL_DLL_H__ -- cgit v1.2.3