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.
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"
22 * \ingroup peripherals
24 class CPeripheralAddonTranslator
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