altoslib: Do data analysis on raw values rather than AltosState
[fw/altos] / altoslib / AltosSensorTM.java
index 5d1b1b7f6c50f24ca023dbbbe83c9516d46e12bb..7d7becfbc6785bd9fac5215f46b3f973f7da76f7 100644 (file)
@@ -29,18 +29,18 @@ public class AltosSensorTM {
        public int      drogue;
        public int      main;
 
-       static public void update_state(AltosState state, AltosLink link, AltosConfigData config_data) throws InterruptedException {
+       static public void provide_data(AltosDataListener listener, AltosLink link, AltosCalData cal_data) throws InterruptedException {
                try {
                        AltosSensorTM   sensor_tm = new AltosSensorTM(link);
 
                        if (sensor_tm == null)
                                return;
-                       state.set_accel(sensor_tm.accel);
-                       state.set_pressure(AltosConvert.barometer_to_pressure(sensor_tm.pres));
-                       state.set_temperature(AltosConvert.thermometer_to_temperature(sensor_tm.temp));
-                       state.set_battery_voltage(AltosConvert.cc_battery_to_voltage(sensor_tm.batt));
-                       state.set_apogee_voltage(AltosConvert.cc_ignitor_to_voltage(sensor_tm.drogue));
-                       state.set_main_voltage(AltosConvert.cc_ignitor_to_voltage(sensor_tm.main));
+                       listener.set_acceleration(cal_data.acceleration((sensor_tm.accel)));
+                       listener.set_pressure(AltosConvert.barometer_to_pressure(sensor_tm.pres));
+                       listener.set_temperature(AltosConvert.thermometer_to_temperature(sensor_tm.temp));
+                       listener.set_battery_voltage(AltosConvert.cc_battery_to_voltage(sensor_tm.batt));
+                       listener.set_apogee_voltage(AltosConvert.cc_ignitor_to_voltage(sensor_tm.drogue));
+                       listener.set_main_voltage(AltosConvert.cc_ignitor_to_voltage(sensor_tm.main));
 
                } catch (TimeoutException te) {
                }