diff options
Diffstat (limited to 'xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_peripheral_utils.hpp')
| -rw-r--r-- | xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_peripheral_utils.hpp | 38 |
1 files changed, 30 insertions, 8 deletions
diff --git a/xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_peripheral_utils.hpp b/xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_peripheral_utils.hpp index f01180b..2106d19 100644 --- a/xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_peripheral_utils.hpp +++ b/xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_peripheral_utils.hpp | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * Copyright (C) 2014-2016 Team Kodi | 2 | * Copyright (C) 2014-2017 Team Kodi |
| 3 | * http://kodi.tv | 3 | * http://kodi.tv |
| 4 | * | 4 | * |
| 5 | * This Program is free software; you can redistribute it and/or modify | 5 | * This Program is free software; you can redistribute it and/or modify |
| @@ -362,7 +362,9 @@ namespace ADDON | |||
| 362 | * | 362 | * |
| 363 | * Semiaxis: | 363 | * Semiaxis: |
| 364 | * - driver index | 364 | * - driver index |
| 365 | * - center | ||
| 365 | * - semiaxis direction | 366 | * - semiaxis direction |
| 367 | * - range | ||
| 366 | * | 368 | * |
| 367 | * Motor: | 369 | * Motor: |
| 368 | * - driver index | 370 | * - driver index |
| @@ -377,7 +379,9 @@ namespace ADDON | |||
| 377 | m_type(type), | 379 | m_type(type), |
| 378 | m_driverIndex(driverIndex), | 380 | m_driverIndex(driverIndex), |
| 379 | m_hatDirection(JOYSTICK_DRIVER_HAT_UNKNOWN), | 381 | m_hatDirection(JOYSTICK_DRIVER_HAT_UNKNOWN), |
| 380 | m_semiAxisDirection(JOYSTICK_DRIVER_SEMIAXIS_UNKNOWN) | 382 | m_center(0), |
| 383 | m_semiAxisDirection(JOYSTICK_DRIVER_SEMIAXIS_UNKNOWN), | ||
| 384 | m_range(1) | ||
| 381 | { | 385 | { |
| 382 | } | 386 | } |
| 383 | 387 | ||
| @@ -389,7 +393,9 @@ namespace ADDON | |||
| 389 | m_type(JOYSTICK_DRIVER_PRIMITIVE_TYPE_UNKNOWN), | 393 | m_type(JOYSTICK_DRIVER_PRIMITIVE_TYPE_UNKNOWN), |
| 390 | m_driverIndex(0), | 394 | m_driverIndex(0), |
| 391 | m_hatDirection(JOYSTICK_DRIVER_HAT_UNKNOWN), | 395 | m_hatDirection(JOYSTICK_DRIVER_HAT_UNKNOWN), |
| 392 | m_semiAxisDirection(JOYSTICK_DRIVER_SEMIAXIS_UNKNOWN) | 396 | m_center(0), |
| 397 | m_semiAxisDirection(JOYSTICK_DRIVER_SEMIAXIS_UNKNOWN), | ||
| 398 | m_range(1) | ||
| 393 | { | 399 | { |
| 394 | } | 400 | } |
| 395 | 401 | ||
| @@ -409,7 +415,9 @@ namespace ADDON | |||
| 409 | m_type(JOYSTICK_DRIVER_PRIMITIVE_TYPE_HAT_DIRECTION), | 415 | m_type(JOYSTICK_DRIVER_PRIMITIVE_TYPE_HAT_DIRECTION), |
| 410 | m_driverIndex(hatIndex), | 416 | m_driverIndex(hatIndex), |
| 411 | m_hatDirection(direction), | 417 | m_hatDirection(direction), |
| 412 | m_semiAxisDirection(JOYSTICK_DRIVER_SEMIAXIS_UNKNOWN) | 418 | m_center(0), |
| 419 | m_semiAxisDirection(JOYSTICK_DRIVER_SEMIAXIS_UNKNOWN), | ||
| 420 | m_range(1) | ||
| 413 | { | 421 | { |
| 414 | } | 422 | } |
| 415 | 423 | ||
| @@ -417,11 +425,13 @@ namespace ADDON | |||
| 417 | * \brief Construct a driver primitive representing the positive or negative | 425 | * \brief Construct a driver primitive representing the positive or negative |
| 418 | * half of an axis | 426 | * half of an axis |
| 419 | */ | 427 | */ |
| 420 | DriverPrimitive(unsigned int axisIndex, JOYSTICK_DRIVER_SEMIAXIS_DIRECTION direction) : | 428 | DriverPrimitive(unsigned int axisIndex, int center, JOYSTICK_DRIVER_SEMIAXIS_DIRECTION direction, unsigned int range) : |
| 421 | m_type(JOYSTICK_DRIVER_PRIMITIVE_TYPE_SEMIAXIS), | 429 | m_type(JOYSTICK_DRIVER_PRIMITIVE_TYPE_SEMIAXIS), |
| 422 | m_driverIndex(axisIndex), | 430 | m_driverIndex(axisIndex), |
| 423 | m_hatDirection(JOYSTICK_DRIVER_HAT_UNKNOWN), | 431 | m_hatDirection(JOYSTICK_DRIVER_HAT_UNKNOWN), |
| 424 | m_semiAxisDirection(direction) | 432 | m_center(center), |
| 433 | m_semiAxisDirection(direction), | ||
| 434 | m_range(range) | ||
| 425 | { | 435 | { |
| 426 | } | 436 | } |
| 427 | 437 | ||
| @@ -437,7 +447,9 @@ namespace ADDON | |||
| 437 | m_type(primitive.type), | 447 | m_type(primitive.type), |
| 438 | m_driverIndex(0), | 448 | m_driverIndex(0), |
| 439 | m_hatDirection(JOYSTICK_DRIVER_HAT_UNKNOWN), | 449 | m_hatDirection(JOYSTICK_DRIVER_HAT_UNKNOWN), |
| 440 | m_semiAxisDirection(JOYSTICK_DRIVER_SEMIAXIS_UNKNOWN) | 450 | m_center(0), |
| 451 | m_semiAxisDirection(JOYSTICK_DRIVER_SEMIAXIS_UNKNOWN), | ||
| 452 | m_range(1) | ||
| 441 | { | 453 | { |
| 442 | switch (m_type) | 454 | switch (m_type) |
| 443 | { | 455 | { |
| @@ -455,7 +467,9 @@ namespace ADDON | |||
| 455 | case JOYSTICK_DRIVER_PRIMITIVE_TYPE_SEMIAXIS: | 467 | case JOYSTICK_DRIVER_PRIMITIVE_TYPE_SEMIAXIS: |
| 456 | { | 468 | { |
| 457 | m_driverIndex = primitive.semiaxis.index; | 469 | m_driverIndex = primitive.semiaxis.index; |
| 470 | m_center = primitive.semiaxis.center; | ||
| 458 | m_semiAxisDirection = primitive.semiaxis.direction; | 471 | m_semiAxisDirection = primitive.semiaxis.direction; |
| 472 | m_range = primitive.semiaxis.range; | ||
| 459 | break; | 473 | break; |
| 460 | } | 474 | } |
| 461 | case JOYSTICK_DRIVER_PRIMITIVE_TYPE_MOTOR: | 475 | case JOYSTICK_DRIVER_PRIMITIVE_TYPE_MOTOR: |
| @@ -471,7 +485,9 @@ namespace ADDON | |||
| 471 | JOYSTICK_DRIVER_PRIMITIVE_TYPE Type(void) const { return m_type; } | 485 | JOYSTICK_DRIVER_PRIMITIVE_TYPE Type(void) const { return m_type; } |
| 472 | unsigned int DriverIndex(void) const { return m_driverIndex; } | 486 | unsigned int DriverIndex(void) const { return m_driverIndex; } |
| 473 | JOYSTICK_DRIVER_HAT_DIRECTION HatDirection(void) const { return m_hatDirection; } | 487 | JOYSTICK_DRIVER_HAT_DIRECTION HatDirection(void) const { return m_hatDirection; } |
| 488 | int Center(void) const { return m_center; } | ||
| 474 | JOYSTICK_DRIVER_SEMIAXIS_DIRECTION SemiAxisDirection(void) const { return m_semiAxisDirection; } | 489 | JOYSTICK_DRIVER_SEMIAXIS_DIRECTION SemiAxisDirection(void) const { return m_semiAxisDirection; } |
| 490 | unsigned int Range(void) const { return m_range; } | ||
| 475 | 491 | ||
| 476 | bool operator==(const DriverPrimitive& other) const | 492 | bool operator==(const DriverPrimitive& other) const |
| 477 | { | 493 | { |
| @@ -492,7 +508,9 @@ namespace ADDON | |||
| 492 | case JOYSTICK_DRIVER_PRIMITIVE_TYPE_SEMIAXIS: | 508 | case JOYSTICK_DRIVER_PRIMITIVE_TYPE_SEMIAXIS: |
| 493 | { | 509 | { |
| 494 | return m_driverIndex == other.m_driverIndex && | 510 | return m_driverIndex == other.m_driverIndex && |
| 495 | m_semiAxisDirection == other.m_semiAxisDirection; | 511 | m_center == other.m_center && |
| 512 | m_semiAxisDirection == other.m_semiAxisDirection && | ||
| 513 | m_range == other.m_range; | ||
| 496 | } | 514 | } |
| 497 | default: | 515 | default: |
| 498 | break; | 516 | break; |
| @@ -520,7 +538,9 @@ namespace ADDON | |||
| 520 | case JOYSTICK_DRIVER_PRIMITIVE_TYPE_SEMIAXIS: | 538 | case JOYSTICK_DRIVER_PRIMITIVE_TYPE_SEMIAXIS: |
| 521 | { | 539 | { |
| 522 | driver_primitive.semiaxis.index = m_driverIndex; | 540 | driver_primitive.semiaxis.index = m_driverIndex; |
| 541 | driver_primitive.semiaxis.center = m_center; | ||
| 523 | driver_primitive.semiaxis.direction = m_semiAxisDirection; | 542 | driver_primitive.semiaxis.direction = m_semiAxisDirection; |
| 543 | driver_primitive.semiaxis.range = m_range; | ||
| 524 | break; | 544 | break; |
| 525 | } | 545 | } |
| 526 | case JOYSTICK_DRIVER_PRIMITIVE_TYPE_MOTOR: | 546 | case JOYSTICK_DRIVER_PRIMITIVE_TYPE_MOTOR: |
| @@ -542,7 +562,9 @@ namespace ADDON | |||
| 542 | JOYSTICK_DRIVER_PRIMITIVE_TYPE m_type; | 562 | JOYSTICK_DRIVER_PRIMITIVE_TYPE m_type; |
| 543 | unsigned int m_driverIndex; | 563 | unsigned int m_driverIndex; |
| 544 | JOYSTICK_DRIVER_HAT_DIRECTION m_hatDirection; | 564 | JOYSTICK_DRIVER_HAT_DIRECTION m_hatDirection; |
| 565 | int m_center; | ||
| 545 | JOYSTICK_DRIVER_SEMIAXIS_DIRECTION m_semiAxisDirection; | 566 | JOYSTICK_DRIVER_SEMIAXIS_DIRECTION m_semiAxisDirection; |
| 567 | unsigned int m_range; | ||
| 546 | }; | 568 | }; |
| 547 | 569 | ||
| 548 | typedef PeripheralVector<DriverPrimitive, JOYSTICK_DRIVER_PRIMITIVE> DriverPrimitives; | 570 | typedef PeripheralVector<DriverPrimitive, JOYSTICK_DRIVER_PRIMITIVE> DriverPrimitives; |
