X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=altoslib%2FAltosPyro.java;h=0ea3bfc13ccacdf950b204b452e98ef84d5f248c;hp=aefc6fbda7d7383441e3673fd35771bd564b03f2;hb=cf20e213f39fb24f15e0ac94307c2d138fcadecb;hpb=b89fb51a963635e2effe3a31f803bfc29c2c46b7 diff --git a/altoslib/AltosPyro.java b/altoslib/AltosPyro.java index aefc6fbd..0ea3bfc1 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_3; +package org.altusmetrum.altoslib_12; import java.util.*; import java.text.*; @@ -105,7 +106,7 @@ public class AltosPyro { private static HashMap pyro_to_units = new HashMap(); private static HashMap pyro_to_scale = new HashMap(); - + private static void insert_map(int flag, String string, String name, AltosUnits units, double scale) { string_to_pyro.put(string, flag); pyro_to_string.put(flag, string); @@ -114,7 +115,7 @@ public class AltosPyro { pyro_to_units.put(flag, units); pyro_to_scale.put(flag, scale); } - + public static int string_to_pyro(String name) { if (string_to_pyro.containsKey(name)) return string_to_pyro.get(name); @@ -138,7 +139,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) { @@ -174,7 +175,7 @@ public class AltosPyro { insert_map(pyro_after_motor, pyro_after_motor_string, pyro_after_motor_name, null, 1.0); insert_map(pyro_delay, pyro_delay_string, pyro_delay_name, null, pyro_delay_scale); - + insert_map(pyro_state_less, pyro_state_less_string, pyro_state_less_name, null, 1.0); insert_map(pyro_state_greater_or_equal, pyro_state_greater_or_equal_string, pyro_state_greater_or_equal_name, null, 1.0); } @@ -277,7 +278,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 +290,10 @@ public class AltosPyro { } } + public AltosPyro() { + this(0); + } + public String toString() { String ret = String.format("%d", channel);