2024-02-22 13:39:23 +03:00
|
|
|
|
/**
|
|
|
|
|
* @brief Класс ControllerSupport позволяет играть с использованием различных устройств ввода.
|
|
|
|
|
*/
|
2024-02-15 12:12:47 +03:00
|
|
|
|
class ControllerSupport {
|
|
|
|
|
public:
|
2024-02-22 13:39:23 +03:00
|
|
|
|
/**
|
|
|
|
|
* @brief Инициализирует поддержку контроллеров.
|
|
|
|
|
*/
|
2024-02-15 12:12:47 +03:00
|
|
|
|
void initialize();
|
|
|
|
|
|
2024-02-22 13:39:23 +03:00
|
|
|
|
/**
|
|
|
|
|
* @brief Проверяет подключение контроллеров и обновляет их состояние.
|
|
|
|
|
*/
|
2024-02-15 12:12:47 +03:00
|
|
|
|
void update();
|
|
|
|
|
|
2024-02-22 13:39:23 +03:00
|
|
|
|
/**
|
|
|
|
|
* @brief Возвращает состояние указанной кнопки на контроллере.
|
|
|
|
|
* @param controllerId Идентификатор контроллера.
|
|
|
|
|
* @param buttonId Идентификатор кнопки на контроллере.
|
|
|
|
|
* @return Состояние кнопки (нажата/не нажата).
|
|
|
|
|
*/
|
2024-02-15 12:12:47 +03:00
|
|
|
|
bool getButtonState(int controllerId, int buttonId);
|
|
|
|
|
|
2024-02-22 13:39:23 +03:00
|
|
|
|
/**
|
|
|
|
|
* @brief Конфигурирует маппинг кнопок контроллера.
|
|
|
|
|
* @param mappingParams Параметры маппинга кнопок.
|
|
|
|
|
*/
|
2024-02-15 12:12:47 +03:00
|
|
|
|
void configureButtonMapping(/* параметры маппинга */);
|
|
|
|
|
};
|