*
* 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
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
*/
-package org.altusmetrum.altosuilib_1;
+package org.altusmetrum.altosuilib_13;
import java.util.*;
import libaltosJNI.*;
if (want_product == AltosUILib.product_any)
return true;
+ int have_product = getProduct();
+
if (want_product == AltosUILib.product_basestation)
- return matchProduct(AltosUILib.product_teledongle) ||
- matchProduct(AltosUILib.product_teleterra) ||
- matchProduct(AltosUILib.product_telebt) ||
- matchProduct(AltosUILib.product_megadongle);
+ return have_product == AltosUILib.product_teledongle ||
+ have_product == AltosUILib.product_teleterra ||
+ have_product == AltosUILib.product_telebt ||
+ have_product == AltosUILib.product_megadongle;
if (want_product == AltosUILib.product_altimeter)
- return matchProduct(AltosUILib.product_telemetrum) ||
- matchProduct(AltosUILib.product_megametrum) ||
- matchProduct(AltosUILib.product_telegps);
-
- int have_product = getProduct();
+ return have_product == AltosUILib.product_telemetrum ||
+ have_product == AltosUILib.product_telemega ||
+ have_product == AltosUILib.product_easymega ||
+ have_product == AltosUILib.product_telegps ||
+ have_product == AltosUILib.product_easymini ||
+ have_product == AltosUILib.product_telemini;
if (have_product == AltosUILib.product_altusmetrum) /* old devices match any request */
return true;
return false;
}
+ public int hashCode() {
+ return getVendor() ^ getProduct() ^ getSerial() ^ getPath().hashCode();
+ }
+
+ public boolean equals(Object o) {
+ if (o == null)
+ return false;
+
+ if (!(o instanceof AltosUSBDevice))
+ return false;
+ AltosUSBDevice other = (AltosUSBDevice) o;
+
+ return getVendor() == other.getVendor() &&
+ getProduct() == other.getProduct() &&
+ getSerial() == other.getSerial() &&
+ getPath().equals(other.getPath());
+ }
+
static public java.util.List<AltosDevice> list(int product) {
if (!AltosUILib.load_library())
return null;
return device_list;
}
-}
\ No newline at end of file
+}