Commit in lcsim/src/org/lcsim/util/event on MAIN
BaseLCSimEvent.java+14-21.14 -> 1.15
Quick fix for digisim problem

lcsim/src/org/lcsim/util/event
BaseLCSimEvent.java 1.14 -> 1.15
diff -u -r1.14 -r1.15
--- BaseLCSimEvent.java	2 Aug 2005 17:18:05 -0000	1.14
+++ BaseLCSimEvent.java	18 Aug 2005 23:08:54 -0000	1.15
@@ -8,6 +8,7 @@
 import java.util.Map;
 import org.lcsim.conditions.ConditionsManager;
 import org.lcsim.conditions.ConditionsManager.ConditionsNotFoundException;
+import org.lcsim.event.CalorimeterHit;
 import org.lcsim.event.Cluster;
 import org.lcsim.event.EventHeader;
 import org.lcsim.event.EventHeader.LCMetaData;
@@ -125,12 +126,23 @@
    public void put(String name, List collection, Class type, int flags, String readoutName)
    {
       super.put(name,collection);
-      metaDataMap.put(new ListHolder(collection),new MetaData(name,type,flags,readoutName));
+      LCMetaData meta = new MetaData(name, type, flags, readoutName);
+      metaDataMap.put(new ListHolder(collection),meta);
+      // Fixme: This needs to be generalized
+      System.out.println("type="+type+" "+BaseCalorimeterHit.class.isAssignableFrom(type));
+      if (CalorimeterHit.class.isAssignableFrom(type))
+      {
+         for (Object o : collection)
+         {
+            if (o instanceof BaseCalorimeterHit) ((BaseCalorimeterHit) o).data = meta;
+         }
+      }
    }
    protected void put(String name, List collection, Class type, int flags, Map intMap, Map floatMap, Map stringMap)
    {
       super.put(name,collection);
-      metaDataMap.put(new ListHolder(collection),new MetaData(name, type, flags, intMap, floatMap, stringMap));
+      LCMetaData meta = new MetaData(name, type, flags, intMap, floatMap, stringMap);
+      metaDataMap.put(new ListHolder(collection),meta);
    }
    
    public String getDetectorName()
CVSspam 0.2.8