altoslib: Add AltosOrient class and max_orient()
authorKeith Packard <keithp@keithp.com>
Sat, 28 Dec 2013 18:13:05 +0000 (10:13 -0800)
committerKeith Packard <keithp@keithp.com>
Sat, 28 Dec 2013 18:13:05 +0000 (10:13 -0800)
This adds the class necessary to put orient into a UI.

Signed-off-by: Keith Packard <keithp@keithp.com>
altoslib/AltosConvert.java
altoslib/AltosOrient.java [new file with mode: 0644]
altoslib/AltosState.java
altoslib/Makefile.am

index ace9d62ea790bb7149ee30f47417c46e6ee5626e..8f214c8b40c7a80fc6778a3b6806e471b76b7ad6 100644 (file)
@@ -330,6 +330,8 @@ public class AltosConvert {
 
        public static AltosTemperature temperature = new AltosTemperature();
 
+       public static AltosOrient orient = new AltosOrient();
+
        public static String show_gs(String format, double a) {
                a = meters_to_g(a);
                format = format.concat(" g");
diff --git a/altoslib/AltosOrient.java b/altoslib/AltosOrient.java
new file mode 100644 (file)
index 0000000..d916a0f
--- /dev/null
@@ -0,0 +1,41 @@
+/*
+ * Copyright © 2013 Keith Packard <keithp@keithp.com>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; version 2 of the License.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+ */
+
+package org.altusmetrum.altoslib_3;
+
+public class AltosOrient extends AltosUnits {
+
+       public double value(double p, boolean imperial_units) {
+               return p;
+       }
+
+       public double inverse(double p, boolean imperial_units) {
+               return p;
+       }
+
+       public String show_units(boolean imperial_units) {
+               return "°";
+       }
+
+       public String say_units(boolean imperial_units) {
+               return "degrees";
+       }
+
+       public int show_fraction(int width, boolean imperial_units) {
+               return 0;
+       }
+}
\ No newline at end of file
index 6a5b2a46761b34aa00551d375ce177a1e508ccc3..134aeb4e34eaa3929a86b6e91cd49076a6b2aa95 100644 (file)
@@ -474,6 +474,10 @@ public class AltosState implements Cloneable {
                return orient.value();
        }
 
+       public double max_orient() {
+               return orient.max();
+       }
+
        public AltosValue       kalman_height, kalman_speed, kalman_acceleration;
 
        public void set_kalman(double height, double speed, double acceleration) {
index 6d396635905ab2e6bbacb0d48485442940797290..2ee4d89f635e97db90b065c08d95d296b58d165c 100644 (file)
@@ -70,6 +70,7 @@ altoslib_JAVA = \
        AltosMma655x.java \
        AltosMs5607.java \
        AltosNoSymbol.java \
+       AltosOrient.java \
        AltosParse.java \
        AltosPreferences.java \
        AltosPreferencesBackend.java \