package org.altusmetrum.micropeak;
-public class MicroDataPoint {
- public double time;
- public double pressure;
- public double height;
- public double speed;
- public double accel;
-
- public MicroDataPoint (double pressure, double height, double speed, double accel, double time) {
+import org.altusmetrum.altosuilib_2.*;
+
+public class MicroDataPoint implements AltosUIDataPoint {
+ public double time;
+ public double pressure;
+ public double height;
+ public double speed;
+ public double accel;
+ public MicroStats stats;
+
+ public static final int data_height = 0;
+ public static final int data_speed = 1;
+ public static final int data_accel = 2;
+ public static final int data_state = 3;
+
+ public double x() {
+ return time;
+ }
+
+ public double y(int index) {
+ switch (index) {
+ case data_height:
+ return height;
+ case data_speed:
+ return speed;
+ case data_accel:
+ return accel;
+ default:
+ return 0;
+ }
+ }
+
+ public int id(int index) {
+ if (index == data_state) {
+ return stats.state(time);
+ }
+ return 0;
+ }
+
+ public String id_name(int index) {
+ if (index == data_state)
+ return stats.state_name(time);
+ return "";
+ }
+
+ public MicroDataPoint (double pressure, double height, double speed, double accel, double time, MicroStats stats) {
this.pressure = pressure;
this.height = height;
this.speed = speed;
this.accel = accel;
this.time = time;
+ this.stats = stats;
}
public MicroDataPoint(MicroData data, int i) {
data.height(i),
data.speed(i),
data.acceleration(i),
- data.time(i));
+ data.time(i),
+ data.stats);
}
}
\ No newline at end of file