lcsim/src/org/lcsim/digisim
diff -u -r1.4 -r1.5
--- CalHitMapMgr.java 27 Jun 2005 22:04:24 -0000 1.4
+++ CalHitMapMgr.java 28 Jun 2005 21:55:33 -0000 1.5
@@ -8,6 +8,7 @@
import org.lcsim.event.SimCalorimeterHit;
import org.lcsim.geometry.Detector;
import org.lcsim.geometry.compact.Subdetector;
+import org.lcsim.geometry.compact.Readout;
/**
* Arranges calorimeter hits in maps keyed by cellID. Hits can then
@@ -18,7 +19,7 @@
* = CalHitMapMgr.getInstance().getCollHitMap("colName");
*
* @author Guilherme Lima
- * @version $Id: CalHitMapMgr.java,v 1.4 2005/06/27 22:04:24 lima Exp $
+ * @version $Id: CalHitMapMgr.java,v 1.5 2005/06/28 21:55:33 lima Exp $
*/
public class CalHitMapMgr {
@@ -33,32 +34,32 @@
}
/**
- * Sets current event. This should be always called first, before
- * any hit map can be requested. A driver exists for this
- * purpose, called CalHitMapDriver.
+ * Sets current event and fill subdetectors map. This should be
+ * always called first, before any hit map can be requested. A
+ * driver exists for this purpose, called CalHitMapDriver.
* @see CalHitMapDriver
*/
public void setEvent(EventHeader event) {
- if( _event!=event || event.getEventNumber()!=_evtno
- || event.getRunNumber()!=_runno ) {
- _me.reset();
- _me._event = event;
- _me._runno = event.getRunNumber();
- _me._evtno = event.getEventNumber();
-
- // fill subdetectors map
- Detector det = _event.getDetector();
- for( Subdetector idet : det.getSubdetectors().values() ) {
- _subdets.put( idet.getReadout().getName(), idet );
- }
+ if( _event!=event || event.getEventNumber()!=_evtno
+ || event.getRunNumber()!=_runno ) {
+ _me.reset();
+ _me._event = event;
+ _me._runno = event.getRunNumber();
+ _me._evtno = event.getEventNumber();
+
+ // fill subdetectors map
+ Detector det = _event.getDetector();
+ for( Subdetector idet : det.getSubdetectors().values() ) {
+ Readout ro = idet.getReadout();
+ if( ro != null ) _subdets.put( ro.getName(), idet );
}
+ }
}
public EventHeader getEvent() {
return _event;
}
-
public Detector getDetector() {
return _event.getDetector();
}
@@ -103,7 +104,7 @@
/**
* Fills hit maps using data from current event.
* @param colName name of hit collection to extract the hits from
- * @param hitmap output map containing
+ * @param hitmap output map containing
* @see CalHitMapMgr.setEvent
*/
private void fillHitMap( final String colName,