deserialize method
Implementation
@override
BatteryState deserialize(ByteDataReader reader) {
//deserializes a message object of type BatteryState
final data = BatteryState();
// Deserialize message field [header]
data.header = Header.$prototype.deserialize(reader);
// Deserialize message field [voltage]
data.voltage = reader.readFloat32();
// Deserialize message field [current]
data.current = reader.readFloat32();
// Deserialize message field [charge]
data.charge = reader.readFloat32();
// Deserialize message field [capacity]
data.capacity = reader.readFloat32();
// Deserialize message field [design_capacity]
data.design_capacity = reader.readFloat32();
// Deserialize message field [percentage]
data.percentage = reader.readFloat32();
// Deserialize message field [power_supply_status]
data.power_supply_status = reader.readUint8();
// Deserialize message field [power_supply_health]
data.power_supply_health = reader.readUint8();
// Deserialize message field [power_supply_technology]
data.power_supply_technology = reader.readUint8();
// Deserialize message field [present]
data.present = reader.readUint8() != 0;
// Deserialize message field [cell_voltage]
data.cell_voltage = reader.readArray<double>(() => reader.readFloat32(), arrayLen: null);
// Deserialize message field [location]
data.location = reader.readString();
// Deserialize message field [serial_number]
data.serial_number = reader.readString();
return data;
}