Print

Print


Author: [log in to unmask]
Date: Wed May 27 12:52:56 2015
New Revision: 3037

Log:
Merge HPSJAVA-499 into trunk.

Added:
    java/trunk/detector-model/
      - copied from r3036, java/branches/HPSJAVA-499/detector-model/
Modified:
    java/trunk/   (props changed)
    java/trunk/conditions/src/main/java/org/hps/conditions/svt/SvtAlignmentConstant.java
    java/trunk/distribution/   (props changed)
    java/trunk/distribution/pom.xml
    java/trunk/parent/pom.xml
    java/trunk/pom.xml
    java/trunk/tracking/pom.xml

Modified: java/trunk/conditions/src/main/java/org/hps/conditions/svt/SvtAlignmentConstant.java
 =============================================================================
--- java/trunk/conditions/src/main/java/org/hps/conditions/svt/SvtAlignmentConstant.java	(original)
+++ java/trunk/conditions/src/main/java/org/hps/conditions/svt/SvtAlignmentConstant.java	Wed May 27 12:52:56 2015
@@ -12,7 +12,6 @@
  * translation or rotation of a detector component.
  * <p>
  * The format of the keys is ABCDE where:<br>
- *
  * <pre>
  * A == half == [1,2]
  * B == alignment type == [1,2]
@@ -29,164 +28,21 @@
 public final class SvtAlignmentConstant extends BaseConditionsObject {
 
     /**
-     * The alignment constant type which is rotation or translation.
-     */
-    public enum AlignmentType {
-        /** Rotation alignment type. */
-        ROTATION(1),
-        /** Translation alignment type. */
-        TRANSLATION(2);
-
-        /**
-         * The value of the alignment type constants.
-         */
-        private final int value;
-
-        /**
-         * Constructor that has value of constant.
-         *
-         * @param value the value of the constant
-         */
-        private AlignmentType(final int value) {
-            this.value = value;
-        }
-
-        /**
-         * Get the value for the alignment constant type.
-         *
-         * @return the value of the constant
-         */
-        int getValue() {
-            return this.value;
-        }
-    }
-
-    /**
-     * Top or bottom half.
-     */
-    public enum Half {
-        /** Bottom half. */
-        BOTTOM(2),
-        /** Top half. */
-        TOP(1);
-
-        /**
-         * The integer value designating top or bottom half.
-         */
-        private final int value;
-
-        /**
-         * Create from top or bottom value.
-         *
-         * @param value the value for half
-         */
-        private Half(final int value) {
-            this.value = value;
-        }
-
-        /**
-         * Get the value for the half.
-         *
-         * @return the value
-         */
-        int getValue() {
-            return this.value;
-        }
-    };
-
-    /**
      * Collection implementation for {@link SvtAlignmentConstant}.
      */
     @SuppressWarnings("serial")
     public static class SvtAlignmentConstantCollection extends BaseConditionsObjectCollection<SvtAlignmentConstant> {
+        
+        public SvtAlignmentConstant find(int id) {
+            for (SvtAlignmentConstant constant : this) {
+                if (constant.getParameter().equals(id)) {
+                    return constant;
+                }
+            }
+            return null;
+        }
+        
     };
-
-    /**
-     * The unit axis which for translations maps to XYZ. (Convention for rotation???)
-     */
-    public enum UnitAxis {
-        /** U unit axis. */
-        U(1),
-        /** V unit axis. */
-        V(2),
-        /** W unit axis. */
-        W(3);
-
-        /**
-         * Value for the constant.
-         */
-        private final int value;
-
-        /**
-         * Create from value.
-         *
-         * @param value the value
-         */
-        private UnitAxis(final int value) {
-            this.value = value;
-        }
-
-        /**
-         * Get the value for the unit axis.
-         *
-         * @return the value
-         */
-        int getValue() {
-            return this.value;
-        }
-    };
-
-    /**
-     * Maximum value of the module number.
-     */
-    private static final int MAX_MODULE_NUMBER = 10;
-
-    /**
-     * Decode the AlignmentType value from the key.
-     *
-     * @return the AlignmentType value from the key
-     * @see AlignmentType
-     */
-    public AlignmentType getAlignmentType() {
-        final int alignmentType = Integer.parseInt(getParameter().substring(1, 2));
-        if (alignmentType == AlignmentType.TRANSLATION.getValue()) {
-            return AlignmentType.TRANSLATION;
-        } else if (alignmentType == AlignmentType.ROTATION.getValue()) {
-            return AlignmentType.ROTATION;
-        } else {
-            throw new IllegalArgumentException("Could not parse valid AlignmentType from " + getParameter());
-        }
-    }
-
-    /**
-     * Decode the Half value from the key.
-     *
-     * @return the Half value from the key
-     * @see Half
-     */
-    public Half getHalf() {
-        final int half = Integer.parseInt(getParameter().substring(0, 1));
-        if (half == Half.TOP.getValue()) {
-            return Half.TOP;
-        } else if (half == Half.BOTTOM.getValue()) {
-            return Half.BOTTOM;
-        } else {
-            throw new IllegalArgumentException("Could not parse valid Half from " + getParameter());
-        }
-    }
-
-    /**
-     * Decode the module number from the key.
-     *
-     * @return the module number from the key
-     */
-    public int getModuleNumber() {
-        final int moduleNumber = Integer.parseInt(getParameter().substring(3, 5));
-        if (moduleNumber > MAX_MODULE_NUMBER || moduleNumber == 0) {
-            throw new IllegalArgumentException("The decoded module number " + moduleNumber + " is invalid.");
-        }
-        return moduleNumber;
-    }
 
     /**
      * Get the alignment constant's encoded, raw value.
@@ -194,27 +50,9 @@
      * @return the alignment constant's key
      */
     @Field(names = { "parameter" })
-    public String getParameter() {
+    public Integer getParameter() {
+        //System.out.println("parameter = " + this.getFieldValues().get("parameter") + "; type = " + this.getFieldValues().get("parameter").getClass());
         return getFieldValue("parameter");
-    }
-
-    /**
-     * Decode the UnitAxis from the key.
-     *
-     * @return the UnitAxis v
-     * @see UnitAxis
-     */
-    public UnitAxis getUnitAxis() {
-        final int unitAxis = Integer.parseInt(getParameter().substring(2, 3));
-        if (unitAxis == UnitAxis.U.getValue()) {
-            return UnitAxis.U;
-        } else if (unitAxis == UnitAxis.V.getValue()) {
-            return UnitAxis.V;
-        } else if (unitAxis == UnitAxis.W.getValue()) {
-            return UnitAxis.W;
-        } else {
-            throw new IllegalArgumentException("Could not parse valid UnitAxis from " + getParameter());
-        }
     }
 
     /**
@@ -223,7 +61,7 @@
      * @return the alignment constant's value as a double
      */
     @Field(names = { "value" })
-    public double getValue() {
+    public Double getValue() {
         return getFieldValue("value");
     }
 
@@ -234,12 +72,6 @@
      */
     @Override
     public String toString() {
-        final StringBuffer buff = new StringBuffer();
-        buff.append(super.toString());
-        buff.append("half: ").append(getHalf().getValue()).append('\n');
-        buff.append("alignment_type: ").append(getAlignmentType().getValue()).append('\n');
-        buff.append("unit_axis: ").append(getUnitAxis().getValue()).append('\n');
-        buff.append("module_number: ").append(getModuleNumber()).append('\n');
-        return buff.toString();
+        return "SvtAlignmentConstant parameter = " + this.getParameter() + "; value = " + this.getValue();
     }
 }

Modified: java/trunk/distribution/pom.xml
 =============================================================================
--- java/trunk/distribution/pom.xml	(original)
+++ java/trunk/distribution/pom.xml	Wed May 27 12:52:56 2015
@@ -84,5 +84,9 @@
             <groupId>org.hps</groupId>
             <artifactId>hps-evio</artifactId>
         </dependency>
+        <dependency>
+            <groupId>org.hps</groupId>
+            <artifactId>hps-detector-model</artifactId>
+        </dependency>
     </dependencies>
 </project>

Modified: java/trunk/parent/pom.xml
 =============================================================================
--- java/trunk/parent/pom.xml	(original)
+++ java/trunk/parent/pom.xml	Wed May 27 12:52:56 2015
@@ -146,6 +146,11 @@
             </dependency>
             <dependency>
                 <groupId>org.hps</groupId>
+                <artifactId>hps-detector-model</artifactId>
+                <version>3.3.1-SNAPSHOT</version>
+            </dependency>
+            <dependency>
+                <groupId>org.hps</groupId>
                 <artifactId>hps-conditions</artifactId>
                 <version>3.3.1-SNAPSHOT</version>
             </dependency>

Modified: java/trunk/pom.xml
 =============================================================================
--- java/trunk/pom.xml	(original)
+++ java/trunk/pom.xml	Wed May 27 12:52:56 2015
@@ -132,6 +132,7 @@
         <module>datacat</module>
 -->        
         <module>detector-data</module>
+        <module>detector-model</module>
         <module>distribution</module>
         <module>ecal-event-display</module>
         <module>ecal-readout-sim</module>

Modified: java/trunk/tracking/pom.xml
 =============================================================================
--- java/trunk/tracking/pom.xml	(original)
+++ java/trunk/tracking/pom.xml	Wed May 27 12:52:56 2015
@@ -36,7 +36,7 @@
     <dependencies>
         <dependency>
             <groupId>org.hps</groupId>
-            <artifactId>hps-conditions</artifactId>
+            <artifactId>hps-detector-model</artifactId>
         </dependency>
         <dependency>
             <groupId>org.hps</groupId>