Author: [log in to unmask]
Date: Thu Oct 8 22:19:56 2015
New Revision: 3676
Log:
Call the initialize method on the subdetector's detector element so setup occurs properly (especially needed for HPS ECal to setup properly).
Modified:
projects/lcsim/trunk/detector-framework/src/main/java/org/lcsim/detector/converter/compact/DetectorConverter.java
Modified: projects/lcsim/trunk/detector-framework/src/main/java/org/lcsim/detector/converter/compact/DetectorConverter.java
=============================================================================
--- projects/lcsim/trunk/detector-framework/src/main/java/org/lcsim/detector/converter/compact/DetectorConverter.java (original)
+++ projects/lcsim/trunk/detector-framework/src/main/java/org/lcsim/detector/converter/compact/DetectorConverter.java Thu Oct 8 22:19:56 2015
@@ -85,7 +85,6 @@
}
public DetectorConverter() {
- //System.out.println("DetectorConverter initializing ...");
}
public void registerSubdetectorConverters() {
@@ -100,7 +99,6 @@
for (Class<? extends AbstractSubdetectorConverter> converter : converters) {
try {
if (!Modifier.isAbstract(converter.getModifiers())) {
- //System.out.println("adding subdet converter: " + converter);
this.addSubdetectorConverter(converter.newInstance());
}
} catch (InstantiationException | IllegalAccessException e) {
@@ -145,19 +143,14 @@
private void convertSubdetectors(Detector detector) {
// Process all Subdetectors in the Detector.
for (Subdetector subdetector : detector.getSubdetectors().values()) {
- // System.out.println("subdetector: " + subdetector.getName());
// Find a converter for this type.
ISubdetectorConverter cnv = getSubdetectorConverter(subdetector.getClass());
if (cnv != null) {
- // System.out.println("found cnv handling: " +
+
// cnv.getSubdetectorType().getCanonicalName());
- DetectorElement subdetectorDE = (DetectorElement) cnv.makeSubdetectorDetectorElement(detector,
- subdetector);
-
- // System.out.println("made subdet DE: " +
- // subdetectorDE.getName());
+ DetectorElement subdetectorDE = (DetectorElement) cnv.makeSubdetectorDetectorElement(detector, subdetector);
// Make the IdentifierHelper for this Subdetector.
IIdentifierHelper helper = cnv.makeIdentifierHelper(subdetector, sysMap);
@@ -169,8 +162,9 @@
throw new RuntimeException(x);
}
- if (subdetectorDE != null)
+ if (subdetectorDE != null) {
subdetectorDE.setIdentifierHelper(helper);
+ }
// Build the Subdetector's geometry and associated
// DetectorElement(s).
@@ -191,19 +185,17 @@
// Make the Subdetector IdentifierHelper from the IDDecoder
// and assign to the Subdetector's DetectorElement.
- if (helper != null && subdetectorDE.getIdentifierHelper() == null)
+ if (helper != null && subdetectorDE.getIdentifierHelper() == null) {
subdetDE.setIdentifierHelper(helper);
+ }
// Make the identifiers for this Subdetector.
cnv.makeIdentifiers(subdetector);
}
- }
- // else
- // {
- // System.out.println("no converter found for " +
- // subdetector.getName());
- // }
- // System.out.println();
+
+ // Initialize the subdetector detector element (no op for most classes).
+ subdetectorDE.initialize();
+ }
}
}
########################################################################
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
|