1 package net.sf.openrocket.utils;
3 import java.io.FileInputStream;
4 import java.io.IOException;
5 import java.text.Collator;
6 import java.util.ArrayList;
7 import java.util.Collections;
8 import java.util.HashMap;
12 import net.sf.openrocket.file.GeneralMotorLoader;
13 import net.sf.openrocket.file.MotorLoader;
14 import net.sf.openrocket.motor.ThrustCurveMotor;
15 import net.sf.openrocket.util.Pair;
17 public class MotorCompareAll {
22 * java MotorCompareAll *.eng *.rse
24 public static void main(String[] args) throws IOException {
26 Map<String, Pair<List<ThrustCurveMotor>, List<String>>> map =
27 new HashMap<String, Pair<List<ThrustCurveMotor>, List<String>>>();
29 MotorLoader loader = new GeneralMotorLoader();
31 for (String filename : args) {
33 List<ThrustCurveMotor> motors = (List) loader.load(new FileInputStream(filename), filename);
35 for (ThrustCurveMotor m : motors) {
36 String key = m.getManufacturer() + ":" + m.getDesignation();
37 Pair<List<ThrustCurveMotor>, List<String>> pair = map.get(key);
39 pair = new Pair<List<ThrustCurveMotor>, List<String>>
40 (new ArrayList<ThrustCurveMotor>(), new ArrayList<String>());
44 pair.getV().add(filename);
48 Collator collator = Collator.getInstance();
50 List<String> keys = new ArrayList<String>(map.keySet());
51 Collections.sort(keys, collator);
52 for (String basename : keys) {
53 Pair<List<ThrustCurveMotor>, List<String>> pair = map.get(basename);
54 System.err.println(basename + ": " + pair.getV());
55 MotorCompare.compare(pair.getU(), pair.getV());