input_common: have an unique vector in callback status
This commit is contained in:
parent
155213484b
commit
224a19758e
3 changed files with 19 additions and 6 deletions
|
@ -277,8 +277,9 @@ struct CallbackStatus {
|
|||
BodyColorStatus color_status{};
|
||||
BatteryStatus battery_status{};
|
||||
VibrationStatus vibration_status{};
|
||||
CameraStatus camera_status{};
|
||||
NfcStatus nfc_status{};
|
||||
CameraFormat camera_status{CameraFormat::None};
|
||||
NfcState nfc_status{NfcState::Unknown};
|
||||
std::vector<u8> raw_data{};
|
||||
};
|
||||
|
||||
// Triggered once every input change
|
||||
|
|
|
@ -277,7 +277,10 @@ Common::Input::CameraStatus TransformToCamera(const Common::Input::CallbackStatu
|
|||
Common::Input::CameraStatus camera{};
|
||||
switch (callback.type) {
|
||||
case Common::Input::InputType::IrSensor:
|
||||
camera = callback.camera_status;
|
||||
camera = {
|
||||
.format = callback.camera_status,
|
||||
.data = callback.raw_data,
|
||||
};
|
||||
break;
|
||||
default:
|
||||
LOG_ERROR(Input, "Conversion from type {} to camera not implemented", callback.type);
|
||||
|
@ -291,7 +294,10 @@ Common::Input::NfcStatus TransformToNfc(const Common::Input::CallbackStatus& cal
|
|||
Common::Input::NfcStatus nfc{};
|
||||
switch (callback.type) {
|
||||
case Common::Input::InputType::Nfc:
|
||||
return callback.nfc_status;
|
||||
nfc = {
|
||||
.state = callback.nfc_status,
|
||||
.data = callback.raw_data,
|
||||
};
|
||||
break;
|
||||
default:
|
||||
LOG_ERROR(Input, "Conversion from type {} to NFC not implemented", callback.type);
|
||||
|
|
|
@ -691,9 +691,12 @@ public:
|
|||
}
|
||||
|
||||
void OnChange() {
|
||||
const auto camera_status = GetStatus();
|
||||
|
||||
const Common::Input::CallbackStatus status{
|
||||
.type = Common::Input::InputType::IrSensor,
|
||||
.camera_status = GetStatus(),
|
||||
.camera_status = camera_status.format,
|
||||
.raw_data = camera_status.data,
|
||||
};
|
||||
|
||||
TriggerOnChange(status);
|
||||
|
@ -732,9 +735,12 @@ public:
|
|||
}
|
||||
|
||||
void OnChange() {
|
||||
const auto nfc_status = GetStatus();
|
||||
|
||||
const Common::Input::CallbackStatus status{
|
||||
.type = Common::Input::InputType::Nfc,
|
||||
.nfc_status = GetStatus(),
|
||||
.nfc_status = nfc_status.state,
|
||||
.raw_data = nfc_status.data,
|
||||
};
|
||||
|
||||
TriggerOnChange(status);
|
||||
|
|
Loading…
Reference in a new issue