Merge remote-tracking branch 'origin/master'
[fw/altos] / altoslib / AltosLib.java
index 8d383f1219498def39161c055dbe7c4e5b530073..d60ef492ccffeb38d89f70d0b02b89e8306e4426 100644 (file)
@@ -15,7 +15,7 @@
  * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
  */
 
-package org.altusmetrum.AltosLib;
+package org.altusmetrum.altoslib_1;
 
 import java.util.*;
 import java.io.*;
@@ -50,7 +50,7 @@ public class AltosLib {
        public static final int AO_LOG_SERIAL_NUMBER = 2002;
        public static final int AO_LOG_LOG_FORMAT = 2003;
 
-       /* Added for header fields in megametrum files */
+       /* Added for header fields in telemega files */
        public static final int AO_LOG_BARO_RESERVED = 3000;
        public static final int AO_LOG_BARO_SENS = 3001;
        public static final int AO_LOG_BARO_OFF = 3002;
@@ -89,10 +89,13 @@ public class AltosLib {
        public final static int product_telelco = 0x0010;
        public final static int product_telescience = 0x0011;
        public final static int product_telepyro =0x0012;
-       public final static int product_megametrum = 0x0023;
+       public final static int product_telemega = 0x0023;
        public final static int product_megadongle = 0x0024;
+       public final static int product_telegps = 0x0025;
+       public final static int product_easymini = 0x0026;
+       public final static int product_telemini = 0x0027;
        public final static int product_altusmetrum_min = 0x000a;
-       public final static int product_altusmetrum_max = 0x0024;
+       public final static int product_altusmetrum_max = 0x002c;
 
        public final static int product_any = 0x10000;
        public final static int product_basestation = 0x10000 + 1;
@@ -109,7 +112,7 @@ public class AltosLib {
        public static final int ao_telemetry_0_8 = 3;
        public static final int ao_telemetry_max = 3;
 
-       public static final String[] ao_telemetry_name = {
+       private static final String[] ao_telemetry_name = {
                "Off", "Standard Telemetry", "TeleMetrum v0.9", "TeleMetrum v0.8"
        };
 
@@ -119,13 +122,13 @@ public class AltosLib {
        public static final int ao_telemetry_0_9_len = 95;
        public static final int ao_telemetry_0_8_len = 94;
 
-       public static final int[] ao_telemetry_len = {
+       private static final int[] ao_telemetry_len = {
                0, 32, 95, 94
        };
 
-       public static HashMap<String,Integer>   string_to_state = new HashMap<String,Integer>();
+       private static HashMap<String,Integer>  string_to_state = new HashMap<String,Integer>();
 
-       public static boolean map_initialized = false;
+       private static boolean map_initialized = false;
 
        public static void initialize_map()
        {
@@ -157,7 +160,7 @@ public class AltosLib {
                                                                 telemetry));
        }
        
-       public static String[] state_to_string = {
+       private static String[] state_to_string = {
                "startup",
                "idle",
                "pad",
@@ -170,7 +173,7 @@ public class AltosLib {
                "invalid",
        };
 
-       public static String[] state_to_string_capital = {
+       private static String[] state_to_string_capital = {
                "Startup",
                "Idle",
                "Pad",
@@ -197,6 +200,12 @@ public class AltosLib {
                return state_to_string[state];
        }
 
+       public static String state_name_capital(int state) {
+               if (state < 0 || state_to_string.length <= state)
+                       return "Invalid";
+               return state_to_string_capital[state];
+       }
+
        public static final int AO_GPS_VALID = (1 << 4);
        public static final int AO_GPS_RUNNING = (1 << 5);
        public static final int AO_GPS_DATE_VALID = (1 << 6);
@@ -208,7 +217,8 @@ public class AltosLib {
        public static final int AO_LOG_FORMAT_TINY = 2;
        public static final int AO_LOG_FORMAT_TELEMETRY = 3;
        public static final int AO_LOG_FORMAT_TELESCIENCE = 4;
-       public static final int AO_LOG_FORMAT_MEGAMETRUM = 5;
+       public static final int AO_LOG_FORMAT_TELEMEGA = 5;
+       public static final int AO_LOG_FORMAT_MINI = 6;
        public static final int AO_LOG_FORMAT_NONE = 127;
 
        public static boolean isspace(int c) {
@@ -399,4 +409,8 @@ public class AltosLib {
                        input = input.substring(0,dot);
                return input.concat(extension);
        }
+
+       public static File replace_extension(File input, String extension) {
+               return new File(replace_extension(input.getPath(), extension));
+       }
 }