summaryrefslogtreecommitdiff
path: root/altoslib/AltosTelemetrySatellite.java
diff options
context:
space:
mode:
Diffstat (limited to 'altoslib/AltosTelemetrySatellite.java')
-rw-r--r--altoslib/AltosTelemetrySatellite.java16
1 files changed, 10 insertions, 6 deletions
diff --git a/altoslib/AltosTelemetrySatellite.java b/altoslib/AltosTelemetrySatellite.java
index 6897f0e6..ce12d32d 100644
--- a/altoslib/AltosTelemetrySatellite.java
+++ b/altoslib/AltosTelemetrySatellite.java
@@ -19,13 +19,12 @@
package org.altusmetrum.altoslib_11;
public class AltosTelemetrySatellite extends AltosTelemetryStandard {
- int channels;
- AltosGPSSat[] sats;
+ int channels() { return uint8(5); }
- public AltosTelemetrySatellite(int[] bytes) {
- super(bytes);
+ AltosGPSSat[] sats() {
+ int channels = channels();
+ AltosGPSSat[] sats = null;
- channels = uint8(5);
if (channels > 12)
channels = 12;
if (channels == 0)
@@ -38,6 +37,11 @@ public class AltosTelemetrySatellite extends AltosTelemetryStandard {
sats[i] = new AltosGPSSat(svid, c_n_1);
}
}
+ return sats;
+ }
+
+ public AltosTelemetrySatellite(int[] bytes) throws AltosCRCException {
+ super(bytes);
}
public void update_state(AltosState state) {
@@ -45,7 +49,7 @@ public class AltosTelemetrySatellite extends AltosTelemetryStandard {
AltosGPS gps = state.make_temp_gps(true);
- gps.cc_gps_sat = sats;
+ gps.cc_gps_sat = sats();
state.set_temp_gps();
}
}