Commit in projects/lcsim/trunk/detector-framework/src/main/java/org/lcsim/detector/converter/compact on MAIN | |||
HPSTestRunTracker2014Converter.java | +17 | -11 | 3272 -> 3273 |
Fixed subdetector type. Trying to get detector elements correct. Still work in progress.
--- projects/lcsim/trunk/detector-framework/src/main/java/org/lcsim/detector/converter/compact/HPSTestRunTracker2014Converter.java 2014-08-19 05:57:24 UTC (rev 3272) +++ projects/lcsim/trunk/detector-framework/src/main/java/org/lcsim/detector/converter/compact/HPSTestRunTracker2014Converter.java 2014-08-19 05:58:50 UTC (rev 3273) @@ -10,7 +10,6 @@
import org.lcsim.detector.ILogicalVolume; import org.lcsim.detector.IPhysicalVolume; import org.lcsim.detector.DetectorIdentifierHelper.SystemMap;
-import org.lcsim.detector.LogicalVolume;
import org.lcsim.detector.converter.compact.HPSTestRunTracker2014JavaBuilder.GhostJavaBaseGeom; import org.lcsim.detector.converter.compact.HPSTestRunTracker2014JavaBuilder.JavaBaseGeom; import org.lcsim.detector.identifier.ExpandedIdentifier;
@@ -20,15 +19,13 @@
import org.lcsim.detector.identifier.IIdentifierHelper; import org.lcsim.detector.material.IMaterial; import org.lcsim.detector.material.MaterialStore;
-import org.lcsim.detector.solids.Box;
import org.lcsim.detector.tracker.silicon.HpsSiSensor; import org.lcsim.detector.tracker.silicon.SiTrackerIdentifierHelper; import org.lcsim.detector.tracker.silicon.SiTrackerModule; import org.lcsim.geometry.compact.Detector; import org.lcsim.geometry.compact.Subdetector;
-import org.lcsim.geometry.compact.converter.lcdd.HPSTestRunTracker2014;
import org.lcsim.geometry.compact.converter.lcdd.HPSTestRunTracker2014Builder;
-import org.lcsim.geometry.compact.converter.lcdd.util.LCDD;
+import org.lcsim.geometry.subdetector.HPSTestRunTracker2014;
/** * Converters the HPSTestRunTracker2014 compact description into Java runtime objects
@@ -38,7 +35,7 @@
public class HPSTestRunTracker2014Converter extends AbstractSubdetectorConverter { private boolean _debug = true;
- private IMaterial trackingMaterial;
+ private IMaterial trackingMaterial = null;
private static HPSTestRunTracker2014JavaBuilder builder; public IIdentifierHelper makeIdentifierHelper(Subdetector subdetector, SystemMap systemMap) {
@@ -52,8 +49,9 @@
public HPSTestRunTracker2014Converter() { super();
- trackingMaterial = MaterialStore.getInstance().get("Vacuum");
builder = new HPSTestRunTracker2014JavaBuilder(_debug);
+ +
} public void convert(Subdetector subdet, Detector detector) {
@@ -62,6 +60,7 @@
// check tracking material
+ trackingMaterial = MaterialStore.getInstance().get("Vacuum");
if(trackingMaterial==null) { System.out.printf("%s: error the tracking material was not found!\n", this.getClass().getSimpleName()); System.exit(1);
@@ -129,7 +128,7 @@
// are added so I keep track of all the elements in the builder in order // to build a hierarchy.
- if(geometryObject.getClass().isInstance(GhostJavaBaseGeom.class)) {
+ if(GhostJavaBaseGeom.class.isInstance(geometryObject)) {
if(_debug) System.out.printf("%s: %s is a ghost volume, dont create elements or physvol\n", getClass().getSimpleName(),geometryObject.getName());
@@ -165,7 +164,10 @@
System.out.printf("%s: layerDE exists\n", getClass().getSimpleName()); }
+ if(_debug) System.out.printf("%s: layerDE name %s \n", getClass().getSimpleName(),layerDe.getName()); +
+
if(_debug) System.out.printf("%s: create the module detector element\n", getClass().getSimpleName()); // create the "module" detector element
@@ -176,10 +178,14 @@
String half = HPSTestRunTracker2014Builder.getHalfFromName(geometryObject.getName()); if(half.equals("")) throw new RuntimeException("No half found for " + geometryObject.getName()); int moduleNumber = half.equals("top") ? 0 : 1;
- String modulePlacementName = builder.getSubdetector().getName() + "_" + moduleName + "_layer" + layer + "_module" + moduleNumber; - String modulePath = "/" + trackingVolume.getName() + "/" + modulePlacementName; - SiTrackerModule moduleDe = new SiTrackerModule(modulePlacementName, layerDe, modulePath, moduleNumber);
+ //String modulePlacementName = builder.getSubdetector().getName() + "_" + moduleName + "_layer" + layer + "_module" + moduleNumber; + String modulePlacementName = geometryObject.getName();// builder.getSubdetector().getName() + "_" + moduleName + "_layer" + layer + "_module" + moduleNumber; + String modulePath = String.format("/%s/%s", trackingVolume.getName(), modulePlacementName);
+ if(_debug) System.out.printf("%s: create SiTrackerModule with: placementname %s, modulePath %s, moduleNumber %d \n", getClass().getSimpleName(),modulePlacementName, modulePath, moduleNumber); + + SiTrackerModule moduleDe = new SiTrackerModule(modulePlacementName, layerDe, modulePath, moduleNumber); +
//keep track of the module detector element builder.addModuleDetectorElement(moduleDe);
@@ -246,7 +252,7 @@
// ++sensorNumber; } else {
- throw new RuntimeException("I dont this I should reach this?");
+ throw new RuntimeException("I don't think I should reach this? Should " + geometryObject.getName() + " be a ghost?" );
}
Use REPLY-ALL to reply to list
To unsubscribe from the LCDET-SVN list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=LCDET-SVN&A=1