[WASAPI] fix stream types and frequencies enumeration
[xbmc.git] / xbmc / peripherals / addons / PeripheralAddonTranslator.h
blob18357458f9a141c286946dcea3ea204d0424c407
1 /*
2 * Copyright (C) 2015-2024 Team Kodi
3 * This file is part of Kodi - https://kodi.tv
5 * SPDX-License-Identifier: GPL-2.0-or-later
6 * See LICENSES/README.md for more information.
7 */
9 #pragma once
11 #include "addons/kodi-dev-kit/include/kodi/addon-instance/Peripheral.h"
12 #include "input/joysticks/DriverPrimitive.h"
13 #include "input/joysticks/JoystickTypes.h"
14 #include "input/mouse/MouseTypes.h"
15 #include "peripherals/PeripheralTypes.h"
17 #include <vector>
19 namespace PERIPHERALS
21 /*!
22 * \ingroup peripherals
24 class CPeripheralAddonTranslator
26 public:
27 static const char* TranslateError(PERIPHERAL_ERROR error);
29 static PeripheralType TranslateType(PERIPHERAL_TYPE type);
30 static PERIPHERAL_TYPE TranslateType(PeripheralType type);
32 static KODI::JOYSTICK::CDriverPrimitive TranslatePrimitive(
33 const kodi::addon::DriverPrimitive& primitive);
34 static kodi::addon::DriverPrimitive TranslatePrimitive(
35 const KODI::JOYSTICK::CDriverPrimitive& primitive);
37 static std::vector<KODI::JOYSTICK::CDriverPrimitive> TranslatePrimitives(
38 const std::vector<kodi::addon::DriverPrimitive>& primitives);
39 static std::vector<kodi::addon::DriverPrimitive> TranslatePrimitives(
40 const std::vector<KODI::JOYSTICK::CDriverPrimitive>& primitives);
42 static KODI::JOYSTICK::HAT_DIRECTION TranslateHatDirection(JOYSTICK_DRIVER_HAT_DIRECTION dir);
43 static JOYSTICK_DRIVER_HAT_DIRECTION TranslateHatDirection(KODI::JOYSTICK::HAT_DIRECTION dir);
45 static KODI::JOYSTICK::HAT_STATE TranslateHatState(JOYSTICK_STATE_HAT state);
47 static KODI::JOYSTICK::SEMIAXIS_DIRECTION TranslateSemiAxisDirection(
48 JOYSTICK_DRIVER_SEMIAXIS_DIRECTION dir);
49 static JOYSTICK_DRIVER_SEMIAXIS_DIRECTION TranslateSemiAxisDirection(
50 KODI::JOYSTICK::SEMIAXIS_DIRECTION dir);
52 static KODI::MOUSE::BUTTON_ID TranslateMouseButton(JOYSTICK_DRIVER_MOUSE_INDEX button);
53 static JOYSTICK_DRIVER_MOUSE_INDEX TranslateMouseButton(KODI::MOUSE::BUTTON_ID button);
55 static KODI::JOYSTICK::RELATIVE_POINTER_DIRECTION TranslateRelPointerDirection(
56 JOYSTICK_DRIVER_RELPOINTER_DIRECTION dir);
57 static JOYSTICK_DRIVER_RELPOINTER_DIRECTION TranslateRelPointerDirection(
58 KODI::JOYSTICK::RELATIVE_POINTER_DIRECTION dir);
60 static KODI::JOYSTICK::FEATURE_TYPE TranslateFeatureType(JOYSTICK_FEATURE_TYPE type);
61 static JOYSTICK_FEATURE_TYPE TranslateFeatureType(KODI::JOYSTICK::FEATURE_TYPE type);
63 static kodi::addon::DriverPrimitive Opposite(const kodi::addon::DriverPrimitive& semiaxis);
65 } // namespace PERIPHERALS