Author: [log in to unmask] Date: Wed Apr 22 15:22:24 2015 New Revision: 2790 Log: Save all plots to a root file when the run ends. Modified: java/trunk/users/src/main/java/org/hps/users/omoreno/SvtHitCorrelations.java Modified: java/trunk/users/src/main/java/org/hps/users/omoreno/SvtHitCorrelations.java ============================================================================= --- java/trunk/users/src/main/java/org/hps/users/omoreno/SvtHitCorrelations.java (original) +++ java/trunk/users/src/main/java/org/hps/users/omoreno/SvtHitCorrelations.java Wed Apr 22 15:22:24 2015 @@ -7,7 +7,9 @@ import hep.aida.IPlotterFactory; import hep.aida.IPlotterStyle; import hep.aida.ITree; - +import hep.aida.ref.rootwriter.RootFileStore; + +import java.io.IOException; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -50,6 +52,7 @@ // Detector Name private static final String SUBDETECTOR_NAME = "Tracker"; + private int runNumber = -1; boolean enableTopAxialAxial = false; boolean enableTopAxialStereo = false; @@ -178,7 +181,9 @@ } public void process(EventHeader event){ - + + if (runNumber == -1) runNumber = event.getRunNumber(); + if(!event.hasCollection(RawTrackerHit.class, rawTrackerHitCollectionName)) return; List<RawTrackerHit> rawHits = event.get(RawTrackerHit.class, rawTrackerHitCollectionName); @@ -223,6 +228,20 @@ } } + public void endOfData() { + + String rootFile = "run" + runNumber + "_svt_hit_correlations.root"; + RootFileStore store = new RootFileStore(rootFile); + try { + store.open(); + store.add(tree); + store.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + + private int getLayerNumber(HpsSiSensor sensor) { return (int) Math.ceil(((double) sensor.getLayerNumber())/2); }