Commit in lcsim/src/org/lcsim/recon/util on MAIN
CalorimeterInformation.java+331.3 -> 1.4
Add nsides

lcsim/src/org/lcsim/recon/util
CalorimeterInformation.java 1.3 -> 1.4
diff -u -r1.3 -r1.4
--- CalorimeterInformation.java	4 Feb 2010 21:09:37 -0000	1.3
+++ CalorimeterInformation.java	8 Mar 2010 19:41:20 -0000	1.4
@@ -32,6 +32,7 @@
     private String[] digicollname;
     private int[] sysid;
     private int[] nlayers;
+    private int[] nsides;
     private double[] rmin;
     private double[] rmax;
     private double[] zmin;
@@ -84,6 +85,7 @@
         digicollname = new String[ncal];
         sysid = new int[ncal];
         nlayers = new int[ncal];
+        nsides = new int[ncal];
         rmin = new double[ncal];
         rmax = new double[ncal];
         zmin = new double[ncal];
@@ -135,6 +137,7 @@
                 nlam[i].add(new Double(xlam/10.));
                 de[i].add(new Double(xde));
             }
+            nsides[i] = 1;
             if(s.isBarrel())
             {
                 if(s instanceof CylindricalBarrelCalorimeter)
@@ -154,6 +157,7 @@
                     rmax[i] = b.getOuterR();
                     zmin[i] = b.getZMin();
                     zmax[i] = b.getZMax();
+                    nsides[i] = ((AbstractPolyhedraCalorimeter) s).getNumberOfSides();
                 }
                 else if(s instanceof EcalBarrel)
                 {
@@ -163,6 +167,7 @@
                     rmax[i] = b.getOuterR();
                     zmin[i] = b.getZMin();
                     zmax[i] = b.getZMax();
+                    nsides[i] = ((AbstractPolyhedraCalorimeter) s).getNumberOfSides();
                 }
                 else
                 {
@@ -189,6 +194,7 @@
                     rmax[i] = e.getOuterR();
                     zmin[i] = e.getZMin();
                     zmax[i] = e.getZMax();
+                    nsides[i] = ((AbstractPolyhedraCalorimeter) s).getNumberOfSides();
                 }
                 else if(s instanceof PolyhedraEndcapCalorimeter2)
                 {
@@ -198,6 +204,7 @@
                     rmax[i] = e.getOuterR();
                     zmin[i] = e.getZMin();
                     zmax[i] = e.getZMax();
+                    nsides[i] = ((AbstractPolyhedraCalorimeter) s).getNumberOfSides();
                 }
                 else
                 {
@@ -424,6 +431,32 @@
     /**
      *
      * @param String representation of Calorimeter type
+     * @return # sides
+     */
+    public int getNSides(String s)
+    {
+        return getNSides(Calorimeter.CalorimeterType.fromString(s));
+    }
+    /**
+     *
+     * @param CalorimetType representation from
+     * Calorimeter.CalorimeterType
+     * @return # sides
+     */
+    public int getNSides(Calorimeter.CalorimeterType s)
+    {
+        Integer ind = indexmap.get(s);
+        if(ind == null)
+        {
+            System.out.println("Type "+s+" did not map to a CalorimeterType");
+            return -1;
+        }
+        index = ind.intValue();
+        return nsides[index];
+    }
+    /**
+     *
+     * @param String representation of Calorimeter type
      * @return the maximum radius
      */
     public double getRMax(String s)
CVSspam 0.2.8