diff --git a/src/libcamera/control_serializer.cpp b/src/libcamera/control_serializer.cpp index edf3e5ca..997e87be 100644 --- a/src/libcamera/control_serializer.cpp +++ b/src/libcamera/control_serializer.cpp @@ -146,40 +146,7 @@ size_t ControlSerializer::binarySize(const ControlList &list) void ControlSerializer::store(const ControlValue &value, ByteStreamBuffer &buffer) { - switch (value.type()) { - case ControlTypeBool: { - bool data = value.get(); - buffer.write(&data); - break; - } - - case ControlTypeByte: { - uint8_t data = value.get(); - buffer.write(&data); - break; - } - - case ControlTypeInteger32: { - int32_t data = value.get(); - buffer.write(&data); - break; - } - - case ControlTypeInteger64: { - uint64_t data = value.get(); - buffer.write(&data); - break; - } - - case ControlTypeFloat: { - float data = value.get(); - buffer.write(&data); - break; - } - - default: - break; - } + buffer.write(value.data()); } void ControlSerializer::store(const ControlRange &range,