#include "digital_controller.h" #include "YBaseLib/Log.h" Log_SetChannel(DigitalController); DigitalController::DigitalController() = default; DigitalController::~DigitalController() = default; ControllerType DigitalController::GetType() const { return ControllerType::DigitalController; } std::optional DigitalController::GetAxisCodeByName(std::string_view axis_name) const { return StaticGetAxisCodeByName(axis_name); } std::optional DigitalController::GetButtonCodeByName(std::string_view button_name) const { return StaticGetButtonCodeByName(button_name); } void DigitalController::SetAxisState(s32 axis_code, float value) {} void DigitalController::SetButtonState(Button button, bool pressed) { if (pressed) m_button_state &= ~(u16(1) << static_cast(button)); else m_button_state |= u16(1) << static_cast(button); } void DigitalController::SetButtonState(s32 button_code, bool pressed) { if (button_code < 0 || button_code >= static_cast(Button::Count)) return; SetButtonState(static_cast