lcsim/src/org/lcsim/recon/util
diff -u -r1.5 -r1.6
--- CalorimeterInformation.java 7 May 2010 19:05:47 -0000 1.5
+++ CalorimeterInformation.java 30 Nov 2010 00:17:05 -0000 1.6
@@ -4,24 +4,38 @@
* Stores often needed Calorimeter information for easy access
* @author cassell
*/
-import java.util.*;
-import org.lcsim.geometry.Detector;
+import hep.physics.vec.BasicHep3Vector;
+import hep.physics.vec.Hep3Vector;
+
+import java.io.PrintStream;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.lcsim.detector.material.BetheBlochCalculator;
+import org.lcsim.detector.material.IMaterial;
+import org.lcsim.detector.material.IMaterialStore;
+import org.lcsim.detector.material.MaterialStore;
import org.lcsim.geometry.Calorimeter;
+import org.lcsim.geometry.Detector;
import org.lcsim.geometry.IDDecoder;
+import org.lcsim.geometry.compact.Subdetector;
import org.lcsim.geometry.layer.Layer;
import org.lcsim.geometry.layer.LayerSlice;
-import org.lcsim.detector.material.IMaterial;
-import org.lcsim.detector.material.BetheBlochCalculator;
-import org.lcsim.detector.material.MaterialStore;
-import org.lcsim.detector.material.IMaterialStore;
-import org.lcsim.geometry.compact.Subdetector;
-import org.lcsim.geometry.subdetector.*;
-import hep.physics.vec.Hep3Vector;
-import hep.physics.vec.BasicHep3Vector;
+import org.lcsim.geometry.subdetector.AbstractPolyhedraCalorimeter;
+import org.lcsim.geometry.subdetector.CylindricalBarrelCalorimeter;
+import org.lcsim.geometry.subdetector.CylindricalEndcapCalorimeter;
+import org.lcsim.geometry.subdetector.EcalBarrel;
+import org.lcsim.geometry.subdetector.PolyhedraBarrelCalorimeter;
+import org.lcsim.geometry.subdetector.PolyhedraBarrelCalorimeter2;
+import org.lcsim.geometry.subdetector.PolyhedraEndcapCalorimeter;
+import org.lcsim.geometry.subdetector.PolyhedraEndcapCalorimeter2;
public class CalorimeterInformation
{
static CalorimeterInformation theCalorimeterInformation;
+ private final boolean debug = true;
private int ncal = 0;
private List<Subdetector> sublist;
private Subdetector[] subdetector;
@@ -146,37 +160,37 @@
CylindricalBarrelCalorimeter b = (CylindricalBarrelCalorimeter) s;
rmin[i] = b.getInnerRadius();
rmax[i] = b.getOuterRadius();
- zmin[i] = b.getZMin();
- zmax[i] = b.getZMax();
+ zmin[i] = b.getInnerZ();
+ zmax[i] = b.getOuterZ();
}
else if(s instanceof PolyhedraBarrelCalorimeter)
{
subtype[i] = "PolyhedraBarrelCalorimeter";
PolyhedraBarrelCalorimeter b = (PolyhedraBarrelCalorimeter) s;
- rmin[i] = b.getInnerR();
- rmax[i] = b.getOuterR();
- zmin[i] = b.getZMin();
- zmax[i] = b.getZMax();
+ rmin[i] = b.getInnerRadius();
+ rmax[i] = b.getOuterRadius();
+ zmin[i] = b.getInnerZ();
+ zmax[i] = b.getOuterZ();
nsides[i] = ((AbstractPolyhedraCalorimeter) s).getNumberOfSides();
}
else if(s instanceof PolyhedraBarrelCalorimeter2)
{
subtype[i] = "PolyhedraBarrelCalorimeter";
PolyhedraBarrelCalorimeter2 b = (PolyhedraBarrelCalorimeter2) s;
- rmin[i] = b.getInnerR();
- rmax[i] = b.getOuterR();
- zmin[i] = b.getZMin();
- zmax[i] = b.getZMax();
+ rmin[i] = b.getInnerRadius();
+ rmax[i] = b.getOuterRadius();
+ zmin[i] = b.getInnerZ();
+ zmax[i] = b.getOuterZ();
nsides[i] = ((AbstractPolyhedraCalorimeter) s).getNumberOfSides();
}
else if(s instanceof EcalBarrel)
{
subtype[i] = "EcalBarrel";
EcalBarrel b = (EcalBarrel) s;
- rmin[i] = b.getInnerR();
- rmax[i] = b.getOuterR();
- zmin[i] = b.getZMin();
- zmax[i] = b.getZMax();
+ rmin[i] = b.getInnerRadius();
+ rmax[i] = b.getOuterRadius();
+ zmin[i] = b.getInnerZ();
+ zmax[i] = b.getOuterZ();
nsides[i] = ((AbstractPolyhedraCalorimeter) s).getNumberOfSides();
}
else
@@ -193,27 +207,27 @@
CylindricalEndcapCalorimeter e = (CylindricalEndcapCalorimeter) s;
rmin[i] = e.getInnerRadius();
rmax[i] = e.getOuterRadius();
- zmin[i] = e.getZMin();
- zmax[i] = e.getZMax();
+ zmin[i] = e.getInnerZ();
+ zmax[i] = e.getOuterZ();
}
else if(s instanceof PolyhedraEndcapCalorimeter)
{
subtype[i] = "PolyhedraEndcapCalorimeter";
PolyhedraEndcapCalorimeter e = (PolyhedraEndcapCalorimeter) s;
- rmin[i] = e.getInnerR();
- rmax[i] = e.getOuterR();
- zmin[i] = e.getZMin();
- zmax[i] = e.getZMax();
+ rmin[i] = e.getInnerRadius();
+ rmax[i] = e.getOuterRadius();
+ zmin[i] = e.getInnerZ();
+ zmax[i] = e.getOuterZ();
nsides[i] = ((AbstractPolyhedraCalorimeter) s).getNumberOfSides();
}
else if(s instanceof PolyhedraEndcapCalorimeter2)
{
subtype[i] = "PolyhedraEndcapCalorimeter2";
PolyhedraEndcapCalorimeter2 e = (PolyhedraEndcapCalorimeter2) s;
- rmin[i] = e.getInnerR();
- rmax[i] = e.getOuterR();
- zmin[i] = e.getZMin();
- zmax[i] = e.getZMax();
+ rmin[i] = e.getInnerRadius();
+ rmax[i] = e.getOuterRadius();
+ zmin[i] = e.getInnerZ();
+ zmax[i] = e.getOuterZ();
nsides[i] = ((AbstractPolyhedraCalorimeter) s).getNumberOfSides();
}
else
@@ -229,6 +243,9 @@
subtype[i] = "unknown";
}
}
+
+ if (debug)
+ printOut(System.out);
}
/**
*
@@ -739,4 +756,30 @@
}
return t.get(l).doubleValue();
}
+
+ public void printOut(PrintStream ps)
+ {
+ ps.println();
+ ps.println("---- CalorimeterInformation ----");
+ ps.println();
+ for ( int i = 0; i < ncal; i++)
+ {
+ Calorimeter cal = (Calorimeter)sublist.get(i);
+ ps.println(cal.getCalorimeterType().toString() + " : " + cal.getName());
+
+ /*
+ ps.println(" sysid = " + sysid);
+ ps.println(" nlayers = " + nlayers);
+ ps.println(" nsides = " + nsides);
+ ps.println(" digicoll = " + digicollname[i]);
+ ps.println(" collname = " + digicollname[i]);
+ */
+
+ ps.println(" rmin = " + rmin[i]);
+ ps.println(" rmax = " + rmax[i]);
+ ps.println(" zmin = " + zmin[i]);
+ ps.println(" zmax = " + zmax[i]);
+ ps.println();
+ }
+ }
}