Commit in GeomConverter/src/org/lcsim/detector/converter/compact on MAIN | |||
HPSTracker2Converter.java | +41 | -47 | 1.1 -> 1.2 |
remove public access where not appropriate
diff -u -r1.1 -r1.2 --- HPSTracker2Converter.java 11 Apr 2012 23:07:34 -0000 1.1 +++ HPSTracker2Converter.java 13 Apr 2012 01:00:29 -0000 1.2 @@ -36,11 +36,17 @@
import org.lcsim.geometry.compact.Subdetector; import org.lcsim.geometry.subdetector.HPSTracker2;
+/** + * Converts an HPSTracker2 XML description into Java runtime objects. + * @author Jeremy McCormick <[log in to unmask]> + * + */
public class HPSTracker2Converter extends AbstractSubdetectorConverter {
- Map<String, ModuleParameters> moduleParameters = new HashMap<String, ModuleParameters>(); - Map<String, LogicalVolume> modules = new HashMap<String, LogicalVolume>(); - IMaterial trackingMaterial;
+ private Map<String, ModuleParameters> moduleParameters = new HashMap<String, ModuleParameters>(); + private Map<String, LogicalVolume> modules = new HashMap<String, LogicalVolume>(); + private IMaterial trackingMaterial; + private static final boolean debug = false;
public Class getSubdetectorType() { return HPSTracker2.class;
@@ -116,13 +122,15 @@
LogicalVolume lv = modules.get(moduleName); IPhysicalVolume modulePhysVol = new PhysicalVolume(new Transform3D(pos,rot), modulePlacementName, lv, trackingVolume, 0);
- System.out.println("made module: " + modulePhysVol.getName());
+ if (debug) + System.out.println("made module: " + modulePhysVol.getName());
// Module DetectorElement. String modulePath = "/" + detector.getTrackingVolume().getName() + "/" + modulePlacementName; SiTrackerModule moduleDe = new SiTrackerModule(modulePlacementName, layerDe, modulePath, moduleNumber);
- System.out.println("created new SiTrackerModule called " + modulePlacementName + " with path: " + modulePath);
+ if (debug) + System.out.println("created new SiTrackerModule called " + modulePlacementName + " with path: " + modulePath);
// Make SiSensor DetectorElements. int sensorNumber = 0;
@@ -151,8 +159,9 @@
// Create the sensor. SiSensor sensor = new SiSensor(sensorNumber, sensorName, moduleDe, sensorPath, sensorId);
- - System.out.println("created sensor " + sensor.getName());
+ + if (debug) + System.out.println("created sensor " + sensor.getName());
// Increment sensor numbering. ++sensorNumber;
@@ -170,8 +179,6 @@
{ double thickness = params.getThickness(); double x, y;
- //x = params.getDimension(0); - //y = params.getDimension(1);
y = params.getDimension(0); // Y is long dimension along world's X axis. x = params.getDimension(1); // X is short dimension along world Y axis.
@@ -185,8 +192,6 @@
private void makeModuleComponents(LogicalVolume moduleVolume, ModuleParameters moduleParameters) {
- //double moduleX = moduleParameters.getDimension(0); - //double moduleY = moduleParameters.getDimension(1);
double moduleY = moduleParameters.getDimension(0); double moduleX = moduleParameters.getDimension(1); Box box = (Box)moduleVolume.getSolid();
@@ -222,18 +227,12 @@
} String sensorName = componentName + "Sensor" + sensorNumber; double sensorX = component.getDimensionY(); // Flipped so X is actually Y.
- //if (sensorX > moduleX) - // throw new RuntimeException("Sensor X dimension " + sensorX + " is too big for module.");
double sensorY = component.getDimensionX(); // Flipped so Y is actually X.
- //if (sensorY > moduleY) - // throw new RuntimeException("Sensor Y dimension " + sensorY + " is too big for module.");
Box sensorBox = new Box(sensorName + "Box", sensorX / 2, sensorY / 2, componentThickness / 2); LogicalVolume sensorVol = new LogicalVolume(sensorName, sensorBox, material); Translation3D sensorPosition = new Translation3D(0, 0, 0); RotationGeant sensorRotation = new RotationGeant(0, 0, zrot);
- //PhysicalVolume sensorPhysVol =
new PhysicalVolume(new Transform3D(sensorPosition, sensorRotation), sensorName, sensorVol, componentVolume, sensorNumber);
- // TODO Could make sensors here?
++sensorNumber; } Translation3D position = new Translation3D(0., 0., posZ);
@@ -244,15 +243,15 @@
} }
- static class ModuleComponentParameters { - protected String materialName; - protected double thickness; - protected boolean sensitive; - protected int componentNumber; - protected String vis; - protected double dimX, dimY;
+ private static class ModuleComponentParameters { + private String materialName; + private double thickness; + private boolean sensitive; + private int componentNumber; + private String vis; + private double dimX, dimY;
- public ModuleComponentParameters(double dimX, double dimY, double thickness, String materialName, int componentNumber, boolean sensitive, String vis) {
+ ModuleComponentParameters(double dimX, double dimY, double thickness, String materialName, int componentNumber, boolean sensitive, String vis) {
this.dimX = dimX; this.dimY = dimY; this.thickness = thickness;
@@ -262,42 +261,42 @@
this.vis = vis; }
- public double getThickness() {
+ double getThickness() {
return thickness; }
- public double getDimensionX() {
+ double getDimensionX() {
return dimX; }
- public double getDimensionY() {
+ double getDimensionY() {
return dimY; }
- public String getMaterialName() {
+ String getMaterialName() {
return materialName; }
- public boolean isSensitive() {
+ boolean isSensitive() {
return sensitive; }
- public int getComponentNumber() {
+ int getComponentNumber() {
return componentNumber; }
- public String getVis() {
+ String getVis() {
return vis; } }
- static class ModuleParameters extends ArrayList<ModuleComponentParameters> { - double thickness; - String name; - double dimensions[] = new double[3]; - String vis;
+ private static class ModuleParameters extends ArrayList<ModuleComponentParameters> { + private double thickness; + private String name; + private double dimensions[] = new double[3]; + private String vis;
- public ModuleParameters(Element element) {
+ ModuleParameters(Element element) {
name = element.getAttributeValue("name"); if (element.getAttribute("vis") != null) this.vis = element.getAttribute("vis").getValue();
@@ -344,7 +343,6 @@
Element dimensions = e.getChild("dimensions"); x = dimensions.getAttribute("x").getDoubleValue(); y = dimensions.getAttribute("y").getDoubleValue();
- // System.out.println("x,y="+x+","+y);
} add(new ModuleComponentParameters(x, y, thickness, materialName, cntr, sensitive, componentVis)); } catch (JDOMException x) {
@@ -355,29 +353,25 @@
calculateThickness(); }
- public void calculateThickness() {
+ void calculateThickness() {
thickness = 0.; // reset thickness for (ModuleComponentParameters p : this) { thickness += p.getThickness(); } }
- public double getThickness() {
+ double getThickness() {
return thickness; }
- public String getName() {
+ String getName() {
return name; }
- public double getDimension(int i) {
+ double getDimension(int i) {
if (i > (dimensions.length - 1) || i < 0) throw new RuntimeException("Invalid dimensions index: " + i); return dimensions[i]; }
- - public String getVis() { - return vis; - }
} }
Use REPLY-ALL to reply to list
To unsubscribe from the LCD-CVS list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=LCD-CVS&A=1