Commit in SlicDiagnostics/src/org/lcsim/slic/diagnostics on MAIN
AbstractPlots.java+130added 1.1
CalorimeterHitPlots.java+32-151.11 -> 1.12
CalorimeterHitPlotsDriver.java+6-101.5 -> 1.6
EventSummaryPlots.java+1-31.6 -> 1.7
EventSummaryPlotsDriver.java+7-61.5 -> 1.6
GenericHitPlots.java+11-111.12 -> 1.13
GenericHitPlotsDriver.java+31-201.5 -> 1.6
MCParticlePlots.java+3-31.10 -> 1.11
MCParticlePlotsDriver.java+8-61.5 -> 1.6
PlotsDriver.java+8-121.1 -> 1.2
SlicDiagnosticsDriver.java-21.9 -> 1.10
TrackerHitPlots.java+2-31.4 -> 1.5
TrackerHitPlotsDriver.java+5-81.2 -> 1.3
PlotsBase.java-1131.5 removed
+244-212
1 added + 1 removed + 12 modified, total 14 files


SlicDiagnostics/src/org/lcsim/slic/diagnostics
AbstractPlots.java added at 1.1
diff -N AbstractPlots.java
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ AbstractPlots.java	24 Aug 2005 07:42:04 -0000	1.1
@@ -0,0 +1,130 @@
+/*
+ * AbstractPlots.java
+ *
+ * Created on July 28, 2005, 6:59 PM
+ */
+package org.lcsim.slic.diagnostics;
+
+import hep.aida.IPlotter;
+import org.lcsim.util.aida.AIDA;
+import hep.aida.ITree;
+import org.lcsim.event.EventHeader;
+import org.lcsim.event.EventHeader.LCMetaData;
+
+/**
+ *
+ * @author jeremym
+ */
+abstract class AbstractPlots
+{
+    protected static AIDA aida = org.lcsim.util.aida.AIDA.defaultInstance();
+    protected static ITree tree = aida.tree();
+    protected EventHeader eventHeader;
+    
+    String name;
+    String dir;
+    
+    public AbstractPlots(LCMetaData meta)
+    {
+        this.name = meta.getName();
+        setupAidaDir();
+    }
+    
+    public AbstractPlots(String name)
+    {
+        this.name = name;
+        setupAidaDir();
+    }
+    
+    public void setEventHeader(EventHeader eventHeader)
+    {
+        this.eventHeader = eventHeader;
+    }
+    
+    public String getName()
+    {
+        return name;
+    }
+    
+    protected String getDir()
+    {
+        return dir;
+    }
+    
+    protected void cd()
+    {
+        tree.cd(this.getDir());
+    }
+    
+    static AIDA aida()
+    {
+        return aida;
+    }
+    
+    static IPlotter plotter()
+    {
+        return aida().analysisFactory().createPlotterFactory().create();
+    }
+    
+    protected void definePlots()
+    {
+        cd();
+    }
+    
+    protected String makePlotName(String plotName)
+    {
+        return getName() + ": " + plotName;
+    }
+    
+    protected void setupAidaDir()
+    {
+        setupAidaDir(name);
+    }
+    
+    /* Create new folder from root. */
+    private final void setupAidaDir(String dir)
+    {
+        tree.cd("/");
+        
+        /* Create if not exists. */
+        try
+        {
+            tree.mkdirs(dir);
+        }
+        catch (Exception e)
+        {
+            System.err.println(e.getMessage());
+        }
+        
+        /* Now it should exist... */
+        try
+        {
+            tree.cd(dir);
+        }
+        /* Otherwise, something bad happened. */
+        catch (Exception e)
+        {
+            throw new RuntimeException("Could not setup AIDA dir: " + dir);
+        }
+        
+        this.dir = "/" + dir;
+        
+        tree.cd("/");
+    }
+    
+    protected void beginEvents()
+    {
+        /* no op */
+    }
+    
+    protected void endEvents(int nevents)
+    {
+        /* no op */
+    }
+    
+    protected void fill(EventHeader event)
+    {
+        this.cd();
+        setEventHeader(event);
+    }
+}
\ No newline at end of file

SlicDiagnostics/src/org/lcsim/slic/diagnostics
CalorimeterHitPlots.java 1.11 -> 1.12
diff -u -r1.11 -r1.12
--- CalorimeterHitPlots.java	23 Aug 2005 00:03:36 -0000	1.11
+++ CalorimeterHitPlots.java	24 Aug 2005 07:42:03 -0000	1.12
@@ -6,7 +6,7 @@
 package org.lcsim.slic.diagnostics;
 
 import java.util.List;
-
+import java.util.Map;
 import hep.aida.ICloud1D;
 import hep.aida.ICloud2D;
 import org.lcsim.event.EventHeader;
@@ -18,29 +18,34 @@
 import org.lcsim.geometry.segmentation.ProjectiveZPlane;
 import org.lcsim.geometry.segmentation.NonprojectiveCylinder;
 import org.lcsim.geometry.IDDecoder;
+import org.lcsim.recon.cluster.cheat.CheatClusterer;
+import org.lcsim.recon.cluster.cheat.CheatCluster;
 
 /**
  *
  * @author jeremym
  */
-class CalorimeterHitPlots extends PlotsBase
+class CalorimeterHitPlots extends AbstractPlots
 {
-    /* cal plots: basic MCP stats */
+    /* plots */
     ICloud1D mcpCountPerHit;
     ICloud1D mcpPDG;
     ICloud1D mcpSingleContribPDG;
     ICloud1D hitCorrectedEnergy;
     ICloud2D hitRawVsCorrectedEnergy;
     ICloud1D mcpMissing;
+    ICloud2D mcpCluster;
     
     String collName;
     
+    static CheatClusterer clusterer = new CheatClusterer();
+    int clusterCount = 0;
     public CalorimeterHitPlots(LCMetaData meta)
     {
-        super(meta.getName());
+        super(meta);
         definePlots();
     }
-        
+    
     protected void definePlots()
     {
         super.definePlots();
@@ -51,6 +56,7 @@
         hitCorrectedEnergy      = aida.cloud1D(makePlotName("Hit Corrected Energy"));
         hitRawVsCorrectedEnergy = aida.cloud2D(makePlotName("Hit Raw vs Corrected Energy"));
         mcpMissing              = aida.cloud1D(makePlotName("Missing MCParticle Contribution"));
+        mcpCluster              = aida.cloud2D(makePlotName("Particle Kinetic Energy vs CheatCluster Energy"));
     }
     
     protected void fill(EventHeader event)
@@ -63,13 +69,11 @@
     {
         if ( hits.size() > 0 )
         {
-            EventHeader.LCMetaData metadata = eventHeader.getMetaData(hits);
-            IDDecoder decoder = metadata.getIDDecoder();
-            SegmentationBase segmentation = (SegmentationBase)decoder;
+            SegmentationBase segmentation = (SegmentationBase)eventHeader.getMetaData(hits).getIDDecoder();
             int mcpMissingCount = 0;
             for ( SimCalorimeterHit hit : hits)
             {
-                decoder.setID(hit.getCellID());
+                segmentation.setID(hit.getCellID());
                 
                 /* missing mcp? */
                 if ( hit.getMCParticleCount() ==  0 )
@@ -83,22 +87,22 @@
                         segmentation instanceof ProjectiveZPlane )
                 {
                     aida.cloud2D(makePlotName("Phi vs Phi Bin")).fill(
-                            decoder.getPhi(),
-                            (double)decoder.getValue("phi")
+                            segmentation.getPhi(),
+                            (double)segmentation.getValue("phi")
                             );
                     
                     if ( segmentation instanceof ProjectiveCylinder ||
                             segmentation instanceof ProjectiveZPlane)
                     {
                         aida.cloud2D(makePlotName("Theta vs Theta Bin")).fill(
-                                decoder.getTheta(),
-                                (double)decoder.getValue("theta"));
+                                segmentation.getTheta(),
+                                (double)segmentation.getValue("theta"));
                     }
                     else if ( segmentation instanceof NonprojectiveCylinder)
                     {
                         aida.cloud2D(makePlotName("Z vs Z Bin")).fill(
-                                decoder.getZ(),
-                                (double)decoder.getValue("z")
+                                segmentation.getZ(),
+                                (double)segmentation.getValue("z")
                                 );
                     }
                 }
@@ -131,6 +135,19 @@
             
             /* missing MCP */
             mcpMissing.fill(mcpMissingCount);
+            
+            /* cheated clusters */
+            if (clusterCount < 9000)
+            {
+                Map<MCParticle, CheatCluster> cheatClusters = clusterer.findClusters(hits);
+                for( MCParticle particle : cheatClusters.keySet() )
+                {
+                    CheatCluster cluster = cheatClusters.get(particle);
+                    double kE = particle.getEnergy() - particle.getMass();
+                    mcpCluster.fill(kE, cluster.getEnergy());
+                    clusterCount += 1;
+                }
+            }
         }
     }
 }
\ No newline at end of file

SlicDiagnostics/src/org/lcsim/slic/diagnostics
CalorimeterHitPlotsDriver.java 1.5 -> 1.6
diff -u -r1.5 -r1.6
--- CalorimeterHitPlotsDriver.java	23 Aug 2005 00:03:36 -0000	1.5
+++ CalorimeterHitPlotsDriver.java	24 Aug 2005 07:42:03 -0000	1.6
@@ -1,22 +1,18 @@
 package org.lcsim.slic.diagnostics;
 
+import hep.aida.ICloud2D;
 import java.util.List;
-import java.util.Map;
-import java.util.HashMap;
-
-import org.lcsim.util.Driver;
 import org.lcsim.event.EventHeader;
 import org.lcsim.event.EventHeader.LCMetaData;
 import org.lcsim.event.SimCalorimeterHit;
+import org.lcsim.util.aida.AIDA;
 
 /**
  *
  * @author jeremym
  */
-public class CalorimeterHitPlotsDriver extends Driver
+public class CalorimeterHitPlotsDriver extends PlotsDriver
 {
-    Map<String, CalorimeterHitPlots> calorimeterHitPlots = new HashMap<String,CalorimeterHitPlots>();
-    
     protected void process(EventHeader event)
     {
         super.process(event);
@@ -33,10 +29,10 @@
     private CalorimeterHitPlots getCalorimeterHitPlots(LCMetaData meta)
     {
         String name = meta.getName();
-        if ( calorimeterHitPlots.get(name) == null )
+        if ( plots.get(name) == null )
         {
-            calorimeterHitPlots.put(name, new CalorimeterHitPlots(meta) );
+            plots.put(name, new CalorimeterHitPlots(meta) );
         }
-        return calorimeterHitPlots.get(name);
+        return (CalorimeterHitPlots)plots.get(name);
     }
 }
\ No newline at end of file

SlicDiagnostics/src/org/lcsim/slic/diagnostics
EventSummaryPlots.java 1.6 -> 1.7
diff -u -r1.6 -r1.7
--- EventSummaryPlots.java	23 Aug 2005 00:03:36 -0000	1.6
+++ EventSummaryPlots.java	24 Aug 2005 07:42:03 -0000	1.7
@@ -9,11 +9,9 @@
 import java.util.List;
 import java.util.Map;
 import java.util.HashMap;
-
 import org.lcsim.util.aida.AIDA;
 import hep.aida.ICloud1D;
 import hep.aida.ITree;
-
 import org.lcsim.util.Driver;
 import org.lcsim.event.EventHeader;
 import org.lcsim.event.SimTrackerHit;
@@ -23,7 +21,7 @@
  *
  * @author jeremym
  */
-class EventSummaryPlots extends PlotsBase
+class EventSummaryPlots extends AbstractPlots
 {
     ICloud1D eventTotalEnergy;
     ICloud1D eventHits;

SlicDiagnostics/src/org/lcsim/slic/diagnostics
EventSummaryPlotsDriver.java 1.5 -> 1.6
diff -u -r1.5 -r1.6
--- EventSummaryPlotsDriver.java	23 Aug 2005 00:03:36 -0000	1.5
+++ EventSummaryPlotsDriver.java	24 Aug 2005 07:42:03 -0000	1.6
@@ -9,11 +9,9 @@
 import java.util.List;
 import java.util.Map;
 import java.util.HashMap;
-
 import org.lcsim.util.aida.AIDA;
 import hep.aida.ICloud1D;
 import hep.aida.ITree;
-
 import org.lcsim.util.Driver;
 import org.lcsim.event.EventHeader;
 import org.lcsim.event.SimTrackerHit;
@@ -23,13 +21,16 @@
  *
  * @author jeremym
  */
-public class EventSummaryPlotsDriver extends Driver
+public class EventSummaryPlotsDriver extends PlotsDriver
 {
-    EventSummaryPlots plots = new EventSummaryPlots();
-
+    EventSummaryPlotsDriver()
+    {
+        plots.put("",new EventSummaryPlots());
+    }
+    
     protected void process(EventHeader event)
     {
         super.process(event);
-        plots.fill(event);
+        plots.get("").fill(event);
     }
 }
\ No newline at end of file

SlicDiagnostics/src/org/lcsim/slic/diagnostics
GenericHitPlots.java 1.12 -> 1.13
diff -u -r1.12 -r1.13
--- GenericHitPlots.java	23 Aug 2005 01:03:42 -0000	1.12
+++ GenericHitPlots.java	24 Aug 2005 07:42:03 -0000	1.13
@@ -10,8 +10,9 @@
 import org.lcsim.event.EventHeader;
 import org.lcsim.event.EventHeader.LCMetaData;
 import org.lcsim.geometry.subdetector.SubdetectorIDDecoder;
+import org.lcsim.util.aida.AIDA;
 
-class GenericHitPlots extends PlotsBase
+class GenericHitPlots extends AbstractPlots
 {
     /* plots */
     ICloud1D energy;
@@ -43,16 +44,15 @@
     /** Creates a new instance of SingleHitCollectionPlots */
     public GenericHitPlots(LCMetaData meta)
     {
-        super(meta.getName());
+        super(meta);
         
         /* set n layers */
         nlayers = ((SubdetectorIDDecoder)meta.getIDDecoder()).getSubdetector().getLayering().getLayerCount();
         
-        /* make layer info for each layer */
+        /* make a LayerInfo for each layer */
         makeLayers();
         
-        /* define plots for this coll */
-        this.definePlots();
+        definePlots();
     }
     
     private void makeLayers()
@@ -71,9 +71,9 @@
         energy           = aida.cloud1D(makePlotName("Hit Energies"));
         hitAvgEnergy     = aida.cloud1D(makePlotName("Hit Average Energy by Event"));
         time             = aida.histogram1D(makePlotName("Hit Time"), 100, 0, 50);
-        thetaPhi         = aida.cloud2D(makePlotName("Hit Theta vs. Phi"));
-        xy               = aida.cloud2D(makePlotName("Hit X vs. Y"));
-        rz               = aida.cloud2D(makePlotName("Hit R vs. Z"));
+        thetaPhi         = aida.cloud2D(makePlotName("Hit Theta vs Phi"));
+        xy               = aida.cloud2D(makePlotName("Hit X vs Y"));
+        rz               = aida.cloud2D(makePlotName("Hit R vs Z"));
         layer            = aida.histogram1D(makePlotName("Hit Layer"), nlayers, 0, nlayers);
         layerEnergy      = aida.histogram1D(makePlotName("Layer Energy"), nlayers, 0, nlayers);
         energyEvent      = aida.cloud1D(makePlotName("Event Total Energy"));
@@ -87,7 +87,8 @@
 //        layerAvgEventE   = aida.histogram2D(makePlotName("Average Event Energy"), nlayers, 0, nlayers);
 //        layerAvgEventNHits = aida.histogram2D(makePlotName("Average Event Hit Count"), nlayers, 0, nlayers);
     }
-    
+ 
+    /* GenericHitPlotsDriver sets hit list for these plots. */
     public void setGenericHitList(List<GenericHit> hits)
     {
         this.hits = hits;
@@ -97,7 +98,6 @@
     {
         super.fill(event);
         
-        /* GenericHitPlotsDriver sets hit list for these plots. */
         fill(this.hits);
     }
     
@@ -195,7 +195,7 @@
                 
                 /* set and fill percent hit count */
                 layerInfo.setPercentNHits(nhits);
-                layerPercentHits.fill(layerInfo.getLayerNumber(), layerInfo.getPercentNHits());                                
+                layerPercentHits.fill(layerInfo.getLayerNumber(), layerInfo.getPercentNHits());
             }
             
             /* reset layers */

SlicDiagnostics/src/org/lcsim/slic/diagnostics
GenericHitPlotsDriver.java 1.5 -> 1.6
diff -u -r1.5 -r1.6
--- GenericHitPlotsDriver.java	23 Aug 2005 00:03:36 -0000	1.5
+++ GenericHitPlotsDriver.java	24 Aug 2005 07:42:03 -0000	1.6
@@ -1,27 +1,24 @@
 package org.lcsim.slic.diagnostics;
 
+import hep.aida.ICloud2D;
 import java.util.List;
 import java.util.ArrayList;
-import java.util.Map;
-import java.util.HashMap;
-
 import org.lcsim.event.EventHeader;
 import org.lcsim.event.EventHeader.LCMetaData;
-import org.lcsim.util.Driver;
 import org.lcsim.event.SimCalorimeterHit;
 import org.lcsim.event.SimTrackerHit;
 import org.lcsim.geometry.IDDecoder;
+import org.lcsim.util.aida.AIDA;
+import hep.aida.IPlotter;
 
 /**
  *
  * @author jeremym
  */
-public class GenericHitPlotsDriver extends Driver
-{           
-    Map<String, GenericHitPlots> genericHitPlots = new HashMap<String,GenericHitPlots>();
-    
+public class GenericHitPlotsDriver extends PlotsDriver
+{
     double trackerHitCount;
-        
+    
     protected void process(EventHeader event)
     {
         super.process(event);
@@ -30,30 +27,30 @@
         processTrackerCollections(event);
         
         /* proc cal colls */
-        processCalorimeterCollections(event);        
+        processCalorimeterCollections(event);
     }
-       
+    
     private GenericHitPlots getGenericHitPlots(LCMetaData meta)
     {
         String name = meta.getName();
-        if ( genericHitPlots.get(name) == null )
+        if ( plots.get(name) == null )
         {
-            genericHitPlots.put(name, new GenericHitPlots(meta) );
+            plots.put(name, new GenericHitPlots(meta) );
         }
         
-        return genericHitPlots.get(name);
-    }    
+        return (GenericHitPlots)plots.get(name);
+    }
     
     private void processTrackerCollections(EventHeader event)
-    {        
+    {
         List<List<SimTrackerHit>> simTrackerHitCollections = event.get(SimTrackerHit.class);
         for ( List<SimTrackerHit> simTrackerHits : simTrackerHitCollections )
-        {            
+        {
             LCMetaData meta = event.getMetaData(simTrackerHits);
             GenericHitPlots plots = getGenericHitPlots(meta);
             List<GenericHit> hits = makeTrackerHits(simTrackerHits, meta);
             plots.setGenericHitList(hits);
-            plots.fill(event);            
+            plots.fill(event);
         }
     }
     
@@ -61,12 +58,12 @@
     {
         List<List<SimCalorimeterHit>> simCalorimeterHitCollections = event.get(SimCalorimeterHit.class);
         for ( List<SimCalorimeterHit> simCalorimeterHits : simCalorimeterHitCollections)
-        {            
+        {
             LCMetaData meta = event.getMetaData(simCalorimeterHits);
             GenericHitPlots plots = getGenericHitPlots(meta);
             List<GenericHit> hits = makeCalorimeterHits(simCalorimeterHits, meta);
             plots.setGenericHitList(hits);
-            plots.fill(event);            
+            plots.fill(event);
         }
     }
     
@@ -123,4 +120,18 @@
                 trackerHit.getTime()
                 );
     }
+//    protected void endOfData()
+//    {
+//        AIDA a = PlotsBase.aida();
+//        IPlotter plotter = PlotsBase.plotter();
+//        for ( PlotsBase p : plots.values() )
+//        {
+//            p.cd();
+//            ICloud2D rz = a.cloud2D("Hit R vs Z");
+//            if ( rz == null )
+//            {
+//                throw new RuntimeException("Hit R vs Z not found for <" + p.getName() + ">.");
+//            }
+//        }
+//    }
 }
\ No newline at end of file

SlicDiagnostics/src/org/lcsim/slic/diagnostics
MCParticlePlots.java 1.10 -> 1.11
diff -u -r1.10 -r1.11
--- MCParticlePlots.java	23 Aug 2005 00:03:36 -0000	1.10
+++ MCParticlePlots.java	24 Aug 2005 07:42:03 -0000	1.11
@@ -11,7 +11,6 @@
 import java.util.Map;
 import java.util.HashMap;
 import static java.lang.Math.sqrt;
-
 import hep.aida.ICloud1D;
 import hep.aida.IHistogram1D;
 import hep.aida.IHistogram2D;
@@ -26,9 +25,10 @@
  *
  * @author jeremym
  */
-class MCParticlePlots extends PlotsBase
+class MCParticlePlots extends AbstractPlots
 {
-    ParticlePropertyProvider mcpLkp = ParticlePropertyManager.getParticlePropertyProvider();
+    static ParticlePropertyProvider mcpLkp 
+            = ParticlePropertyManager.getParticlePropertyProvider();
     
     /* double values for sim status plot */
     public static final double SIMULATION = 1.0;

SlicDiagnostics/src/org/lcsim/slic/diagnostics
MCParticlePlotsDriver.java 1.5 -> 1.6
diff -u -r1.5 -r1.6
--- MCParticlePlotsDriver.java	23 Aug 2005 00:03:36 -0000	1.5
+++ MCParticlePlotsDriver.java	24 Aug 2005 07:42:03 -0000	1.6
@@ -3,7 +3,6 @@
 import java.util.List;
 import java.util.Map;
 import java.util.HashMap;
-
 import org.lcsim.util.Driver;
 import org.lcsim.event.EventHeader;
 import org.lcsim.event.EventHeader.LCMetaData;
@@ -13,13 +12,16 @@
  *
  * @author jeremym
  */
-public class MCParticlePlotsDriver extends Driver
-{
-    MCParticlePlots mcpPlots = new MCParticlePlots();
-        
+public class MCParticlePlotsDriver extends PlotsDriver
+{    
+    MCParticlePlotsDriver()
+    {
+        plots.put("", new MCParticlePlots());
+    }
+    
     protected void process(EventHeader event)
     {
         super.process(event);
-        mcpPlots.fill(event);
+        plots.get("").fill(event);
     }    
 }
\ No newline at end of file

SlicDiagnostics/src/org/lcsim/slic/diagnostics
PlotsDriver.java 1.1 -> 1.2
diff -u -r1.1 -r1.2
--- PlotsDriver.java	23 Aug 2005 00:03:37 -0000	1.1
+++ PlotsDriver.java	24 Aug 2005 07:42:04 -0000	1.2
@@ -16,28 +16,24 @@
  *
  * @author jeremym
  */
-class PlotsDriver extends Driver
+abstract class PlotsDriver extends Driver
 {
-    Map<String, PlotsBase> plots = new HashMap<String, PlotsBase>();
+    protected Map<String, AbstractPlots> plots = new HashMap<String, AbstractPlots>();    
+    protected int nevents = 0;
     
-    int nevents = 0;
-    String name;
-    
-    public PlotsDriver(String name)
-    {
-        this.name=name;
-    }
+    public PlotsDriver()
+    {}
     
     protected void process(EventHeader event)
     {
         super.process(event);        
         ++nevents;        
-        /* Sub-classes are responsible for setting-up and filling their plots. */
+        /* Sub-classes are responsible for setting-up and filling their own plots. */
     }
     
     protected void endOfData()
     {
-        for ( PlotsBase p : plots.values() )
+        for ( AbstractPlots p : plots.values() )
         {
             p.endEvents(nevents);
         }
@@ -45,7 +41,7 @@
     
     protected void startOfData()
     {
-        for ( PlotsBase p : plots.values() )
+        for ( AbstractPlots p : plots.values() )
         {
             p.beginEvents();
         }

SlicDiagnostics/src/org/lcsim/slic/diagnostics
SlicDiagnosticsDriver.java 1.9 -> 1.10
diff -u -r1.9 -r1.10
--- SlicDiagnosticsDriver.java	20 Aug 2005 20:38:46 -0000	1.9
+++ SlicDiagnosticsDriver.java	24 Aug 2005 07:42:04 -0000	1.10
@@ -6,12 +6,10 @@
 package org.lcsim.slic.diagnostics;
 
 import java.io.File;
-
 import org.freehep.application.Application;
 import org.freehep.application.studio.Studio;
 import org.freehep.record.loop.SequentialRecordLoop;
 import org.freehep.record.source.SequentialRecordSource;
-
 import org.lcsim.util.Driver;
 import org.lcsim.event.EventHeader;
 import org.lcsim.event.EventHeader.LCMetaData;

SlicDiagnostics/src/org/lcsim/slic/diagnostics
TrackerHitPlots.java 1.4 -> 1.5
diff -u -r1.4 -r1.5
--- TrackerHitPlots.java	23 Aug 2005 00:03:36 -0000	1.4
+++ TrackerHitPlots.java	24 Aug 2005 07:42:04 -0000	1.5
@@ -6,7 +6,6 @@
 package org.lcsim.slic.diagnostics;
 
 import java.util.List;
-
 import hep.aida.ICloud1D;
 import org.lcsim.event.EventHeader;
 import org.lcsim.event.EventHeader.LCMetaData;
@@ -16,7 +15,7 @@
  *
  * @author jeremym
  */
-class TrackerHitPlots extends PlotsBase
+class TrackerHitPlots extends AbstractPlots
 {    
     String collName;
    
@@ -24,7 +23,7 @@
     
     public TrackerHitPlots(LCMetaData meta)
     {
-        super(meta.getName());
+        super(meta);
         definePlots();
     }
         

SlicDiagnostics/src/org/lcsim/slic/diagnostics
TrackerHitPlotsDriver.java 1.2 -> 1.3
diff -u -r1.2 -r1.3
--- TrackerHitPlotsDriver.java	23 Aug 2005 00:03:36 -0000	1.2
+++ TrackerHitPlotsDriver.java	24 Aug 2005 07:42:04 -0000	1.3
@@ -3,7 +3,6 @@
 import java.util.List;
 import java.util.Map;
 import java.util.HashMap;
-
 import org.lcsim.util.Driver;
 import org.lcsim.event.EventHeader;
 import org.lcsim.event.EventHeader.LCMetaData;
@@ -13,10 +12,8 @@
  *
  * @author jeremym
  */
-public class TrackerHitPlotsDriver extends Driver
-{
-    Map<String, TrackerHitPlots> TrackerHitPlots = new HashMap<String,TrackerHitPlots>();
-    
+public class TrackerHitPlotsDriver extends PlotsDriver
+{    
     protected void process(EventHeader event)
     {
         super.process(event);
@@ -33,10 +30,10 @@
     private TrackerHitPlots getTrackerHitPlots(LCMetaData meta)
     {
         String name = meta.getName();
-        if ( TrackerHitPlots.get(name) == null )
+        if ( plots.get(name) == null )
         {
-            TrackerHitPlots.put(name, new TrackerHitPlots(meta) );
+            plots.put(name, new TrackerHitPlots(meta) );
         }
-        return TrackerHitPlots.get(name);
+        return (TrackerHitPlots)plots.get(name);
     }
 }
\ No newline at end of file

SlicDiagnostics/src/org/lcsim/slic/diagnostics
PlotsBase.java removed after 1.5
diff -N PlotsBase.java
--- PlotsBase.java	23 Aug 2005 00:03:36 -0000	1.5
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,113 +0,0 @@
-/*
- * PlotsBase.java
- *
- * Created on July 28, 2005, 6:59 PM
- */
-
-package org.lcsim.slic.diagnostics;
-
-import org.lcsim.util.aida.AIDA;
-import hep.aida.ITree;
-import org.lcsim.event.EventHeader;
-
-/**
- *
- * @author jeremym
- */
-abstract class PlotsBase
-{
-    protected static AIDA aida = org.lcsim.util.aida.AIDA.defaultInstance();
-    protected static ITree tree = aida.tree();
-    protected EventHeader eventHeader;
-    
-    String name;
-    String dir;
-    
-    public PlotsBase(String name)
-    {
-        this.name = name;
-        setupAidaDir();
-    }
-    
-    public void setEventHeader(EventHeader eventHeader)
-    {
-        this.eventHeader = eventHeader;
-    }
-    
-    public String getName()
-    {
-        return name;
-    }
-    
-    protected String getDir()
-    {
-        return dir;
-    }
-    
-    protected void cd()
-    {
-        tree.cd(this.getDir());
-    }
-    
-    protected void definePlots()
-    {
-        cd();
-    }
-    
-    protected String makePlotName(String plotName)
-    {
-        return getName() + ": " + plotName;
-    }
-    
-    protected void setupAidaDir()
-    {
-        setupAidaDir(name);
-    }
-    
-    /* Create new folder from root. */
-    private final void setupAidaDir(String dir)
-    {
-        tree.cd("/");
-        
-        /* Create if not exists. */
-        try
-        {
-            tree.mkdirs(dir);
-        }
-        catch (Exception e)
-        {
-            System.err.println(e.getMessage());
-        }
-        
-        /* Now it should exist... */
-        try
-        {
-            tree.cd(dir);
-        }
-        /* Otherwise, something bad happened. */
-        catch (Exception e)
-        {
-            throw new RuntimeException("Could not setup AIDA dir: " + dir);
-        }
-        
-        this.dir = "/" + dir;
-        
-        tree.cd("/");
-    }
-    
-    protected void beginEvents()
-    {
-        /* no op */
-    }
-    
-    protected void endEvents(int nevents)
-    {
-        /* no op */
-    }
-    
-    protected void fill(EventHeader event)
-    {
-        this.cd();
-        setEventHeader(event);
-    }
-}
\ No newline at end of file
CVSspam 0.2.8