micropeak: Use altosuilib graphing functions
[fw/altos] / micropeak / MicroDataPoint.java
index 3fd1e641cdb1f13bf8880108f21edc0d5d9ae2a9..a81eb0d357dba3f34e28daf3f54e8655f1bcb968 100644 (file)
 
 package org.altusmetrum.micropeak;
 
-public class MicroDataPoint {
+import org.altusmetrum.altosuilib_1.*;
+
+public class MicroDataPoint implements AltosUIDataPoint {
        public double   time;
+       public double   pressure;
        public double   height;
        public double   speed;
        public double   accel;
 
-       public MicroDataPoint (double height, double speed, double accel, double time) {
+       public static final int data_height = 0;
+       public static final int data_speed = 1;
+       public static final int data_accel = 2;
+
+       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 MicroDataPoint (double pressure, double height, double speed, double accel, double time) {
+               this.pressure = pressure;
                this.height = height;
                this.speed = speed;
                this.accel = accel;
@@ -31,7 +56,8 @@ public class MicroDataPoint {
        }
 
        public MicroDataPoint(MicroData data, int i) {
-               this(data.height(i),
+               this(data.pressure(i),
+                    data.height(i),
                     data.speed(i),
                     data.acceleration(i),
                     data.time(i));