X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=altoslib%2FAltosPyro.java;h=b716f4e3c8532a0c91793922ab90615c08725f4d;hp=28e65bc2f9b52de27de4d0051b1e08d53ec4dc89;hb=297eb795b24ec31f6599f48bc8c3769557a7ec6f;hpb=21d176f161b90f18f236ef887cef9676d712eee3 diff --git a/altoslib/AltosPyro.java b/altoslib/AltosPyro.java index 28e65bc2..b716f4e3 100644 --- a/altoslib/AltosPyro.java +++ b/altoslib/AltosPyro.java @@ -3,7 +3,8 @@ * * 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. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of @@ -15,7 +16,7 @@ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. */ -package org.altusmetrum.altoslib_10; +package org.altusmetrum.altoslib_13; import java.util.*; import java.text.*; @@ -28,24 +29,24 @@ public class AltosPyro { public static final int pyro_accel_greater = 0x00000002; public static final String pyro_accel_less_string = "a<"; public static final String pyro_accel_greater_string = "a>"; - public static final String pyro_accel_less_name = "Acceleration less than"; - public static final String pyro_accel_greater_name = "Acceleration greater than"; + public static final String pyro_accel_less_name = "Vertical acceleration less than"; + public static final String pyro_accel_greater_name = "Vertical acceleration greater than"; public static final double pyro_accel_scale = 16.0; public static final int pyro_speed_less = 0x00000004; public static final int pyro_speed_greater = 0x00000008; public static final String pyro_speed_less_string = "s<"; public static final String pyro_speed_greater_string = "s>"; - public static final String pyro_speed_less_name = "Speed less than"; - public static final String pyro_speed_greater_name = "Speed greater than"; + public static final String pyro_speed_less_name = "Ascent rate less than"; + public static final String pyro_speed_greater_name = "Ascent rate greater than"; public static final double pyro_speed_scale = 16.0; public static final int pyro_height_less = 0x00000010; public static final int pyro_height_greater = 0x00000020; public static final String pyro_height_less_string = "h<"; public static final String pyro_height_greater_string = "h>"; - public static final String pyro_height_less_name = "Height less than"; - public static final String pyro_height_greater_name = "Height greater than"; + public static final String pyro_height_less_name = "Height above pad less than"; + public static final String pyro_height_greater_name = "Height above pad greater than"; public static final double pyro_height_scale = 1.0; public static final int pyro_orient_less = 0x00000040; @@ -60,8 +61,8 @@ public class AltosPyro { public static final int pyro_time_greater = 0x00000200; public static final String pyro_time_less_string = "t<"; public static final String pyro_time_greater_string = "t>"; - public static final String pyro_time_less_name = "Time since boost less than (s)"; - public static final String pyro_time_greater_name = "Time since boost greater than (s)"; + public static final String pyro_time_less_name = "Time since launch less than (s)"; + public static final String pyro_time_greater_name = "Time since launch greater than (s)"; public static final double pyro_time_scale = 100.0; public static final int pyro_ascending = 0x00000400; @@ -89,7 +90,10 @@ public class AltosPyro { public static final String pyro_state_greater_or_equal_name = "Flight state after"; public static final double pyro_state_scale = 1.0; + public static final int pyro_deprecate = pyro_ascending | pyro_descending; + public static final int pyro_all = 0x0000ffff; + public static final int pyro_all_useful = pyro_all ^ pyro_deprecate; public static final int pyro_no_value = (pyro_ascending | pyro_descending); @@ -138,7 +142,7 @@ public class AltosPyro { units = pyro_to_units.get(flag); if (units == null) return name; - return String.format ("%s (%s)", name, units.show_units()); + return String.format ("%s (%s)", name, units.parse_units()); } public static AltosUnits pyro_to_units(int flag) { @@ -277,7 +281,7 @@ public class AltosPyro { int value = 0; ++i; try { - value = AltosLib.fromdec(tokens[i]); + value = (int) AltosLib.fromdec(tokens[i]); } catch (NumberFormatException n) { throw new ParseException(String.format("Invalid pyro value \"%s\"", tokens[i]), i); @@ -289,6 +293,10 @@ public class AltosPyro { } } + public AltosPyro() { + this(0); + } + public String toString() { String ret = String.format("%d", channel);