diff options
author | Keith Packard <keithp@keithp.com> | 2017-05-23 14:53:55 -0700 |
---|---|---|
committer | Keith Packard <keithp@keithp.com> | 2017-05-23 15:15:21 -0700 |
commit | 7600116a191b3ac252a0f716d200d0e0b3500987 (patch) | |
tree | c9cc6c418244d3e2fb5b5c1b9ab961f8a3f5ab30 /altoslib/AltosTelemetryConfiguration.java | |
parent | abcedc4b49ce77607ef95abf69479dc1d2c1b76d (diff) |
altoslib: Don't store computed telemetry fields
These values are only needed once, so there's no reason to save them.
Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'altoslib/AltosTelemetryConfiguration.java')
-rw-r--r-- | altoslib/AltosTelemetryConfiguration.java | 49 |
1 files changed, 19 insertions, 30 deletions
diff --git a/altoslib/AltosTelemetryConfiguration.java b/altoslib/AltosTelemetryConfiguration.java index 6ded5461..d91a03fc 100644 --- a/altoslib/AltosTelemetryConfiguration.java +++ b/altoslib/AltosTelemetryConfiguration.java @@ -20,43 +20,32 @@ package org.altusmetrum.altoslib_11; public class AltosTelemetryConfiguration extends AltosTelemetryStandard { - int device_type; - int flight; - int config_major; - int config_minor; - int apogee_delay; - int main_deploy; - int v_batt; - int flight_log_max; - String callsign; - String version; + int device_type() { return uint8(5); } + int flight() { return uint16(6); } + int config_major() { return uint8(8); } + int config_minor() { return uint8(9); } + int apogee_delay() { return uint16(10); } + int main_deploy() { return uint16(12); } + int v_batt() { return uint16(10); } + int flight_log_max() { return uint16(14); } + String callsign() { return string(16, 8); } + String version() { return string(24, 8); } - public AltosTelemetryConfiguration(int[] bytes) { + public AltosTelemetryConfiguration(int[] bytes) throws AltosCRCException { super(bytes); - - device_type = uint8(5); - flight = uint16(6); - config_major = uint8(8); - config_minor = uint8(9); - v_batt = uint16(10); - apogee_delay = uint16(10); - main_deploy = uint16(12); - flight_log_max = uint16(14); - callsign = string(16, 8); - version = string(24, 8); } public void update_state(AltosState state) { super.update_state(state); - state.set_device_type(device_type); - state.set_flight(flight); - state.set_config(config_major, config_minor, flight_log_max); - if (device_type == AltosLib.product_telegps) - state.set_battery_voltage(AltosConvert.tele_gps_voltage(v_batt)); + state.set_device_type(device_type()); + state.set_flight(flight()); + state.set_config(config_major(), config_minor(), flight_log_max()); + if (device_type() == AltosLib.product_telegps) + state.set_battery_voltage(AltosConvert.tele_gps_voltage(v_batt())); else - state.set_flight_params(apogee_delay, main_deploy); + state.set_flight_params(apogee_delay(), main_deploy()); - state.set_callsign(callsign); - state.set_firmware_version(version); + state.set_callsign(callsign()); + state.set_firmware_version(version()); } } |