+ if (has_accel)
+ out.printf(Locale.ROOT,"acceleration,");
+ if (has_baro)
+ out.printf(Locale.ROOT,"pressure,altitude,");
+ out.printf(Locale.ROOT,"height,speed");
+ if (has_baro)
+ out.printf(Locale.ROOT,",temperature");
+ if (has_pyro)
+ out.printf(Locale.ROOT,",drogue_voltage,main_voltage");
+ }
+
+ double acceleration() { return series.value(AltosFlightSeries.accel_name, indices); }
+ double pressure() { return series.value(AltosFlightSeries.pressure_name, indices); }
+ double altitude() { return series.value(AltosFlightSeries.altitude_name, indices); }
+ double height() { return series.value(AltosFlightSeries.height_name, indices); }
+ double speed() { return series.value(AltosFlightSeries.speed_name, indices); }
+ double temperature() { return series.value(AltosFlightSeries.temperature_name, indices); }
+ double apogee_voltage() { return series.value(AltosFlightSeries.apogee_voltage_name, indices); }
+ double main_voltage() { return series.value(AltosFlightSeries.main_voltage_name, indices); }
+
+ void write_basic() {
+ if (has_accel)
+ out.printf(Locale.ROOT,"%8.2f,", acceleration());
+ if (has_baro)
+ out.printf(Locale.ROOT,"%10.2f,%8.2f,",
+ pressure(), altitude());
+ out.printf(Locale.ROOT,"%8.2f,%8.2f",
+ height(), speed());
+ if (has_baro)
+ out.printf(Locale.ROOT,",%5.1f", temperature());
+ if (has_pyro)
+ out.printf(Locale.ROOT,",%5.2f,%5.2f",
+ apogee_voltage(),
+ main_voltage());
+ }
+
+ void write_battery_header() {
+ out.printf(Locale.ROOT,"battery_voltage");
+ }
+
+ double battery_voltage() { return series.value(AltosFlightSeries.battery_voltage_name, indices); }
+
+ void write_battery() {
+ out.printf(Locale.ROOT,"%5.2f", battery_voltage());
+ }
+
+ void write_motor_pressure_header() {
+ out.printf(Locale.ROOT,"motor_pressure");
+ }
+
+ double motor_pressure() { return series.value(AltosFlightSeries.motor_pressure_name, indices); }
+
+ void write_motor_pressure() {
+ out.printf(Locale.ROOT,"%10.1f", motor_pressure());
+ }
+
+ void write_3d_accel_header() {
+ out.printf(Locale.ROOT,"accel_x,accel_y,accel_z");
+ }
+
+ double accel_along() { return series.value(AltosFlightSeries.accel_along_name, indices); }
+ double accel_across() { return series.value(AltosFlightSeries.accel_across_name, indices); }
+ double accel_through() { return series.value(AltosFlightSeries.accel_through_name, indices); }
+
+ void write_3d_accel() {
+ out.printf(Locale.ROOT,"%7.2f,%7.2f,%7.2f",
+ accel_along(), accel_across(), accel_through());
+ }
+
+ void write_imu_header() {
+ out.printf(Locale.ROOT,"gyro_roll,gyro_pitch,gyro_yaw,mag_x,mag_y,mag_z,tilt");