Author: [log in to unmask] Date: Wed Aug 5 18:39:29 2015 New Revision: 3343 Log: user=mgraham analysis stuff Added: java/trunk/steering-files/src/main/resources/org/hps/steering/users/mgraham/ReconOnReconFile.lcsim - copied, changed from r3255, java/trunk/steering-files/src/main/resources/org/hps/steering/users/mgraham/TrackAlignmentStudy.lcsim java/trunk/steering-files/src/main/resources/org/hps/steering/users/mgraham/SkimCleanTracks.lcsim - copied, changed from r3326, java/trunk/steering-files/src/main/resources/org/hps/steering/users/mgraham/TrackAlignmentStudy.lcsim java/trunk/users/src/main/java/org/hps/users/mgraham/RemoveCollectionsFromEvent.java Modified: java/trunk/steering-files/src/main/resources/org/hps/steering/users/mgraham/StraightTrackRecon.lcsim java/trunk/steering-files/src/main/resources/org/hps/steering/users/mgraham/TrackAlignmentStudy.lcsim java/trunk/users/src/main/java/org/hps/users/mgraham/MyLCIOWriterDriver.java Copied: java/trunk/steering-files/src/main/resources/org/hps/steering/users/mgraham/ReconOnReconFile.lcsim (from r3255, java/trunk/steering-files/src/main/resources/org/hps/steering/users/mgraham/TrackAlignmentStudy.lcsim) ============================================================================= --- java/trunk/steering-files/src/main/resources/org/hps/steering/users/mgraham/TrackAlignmentStudy.lcsim (original) +++ java/trunk/steering-files/src/main/resources/org/hps/steering/users/mgraham/ReconOnReconFile.lcsim Wed Aug 5 18:39:29 2015 @@ -7,39 +7,42 @@ <execute> <driver name="EventMarkerDriver" /> <!-- Standard Reconstruction --> + <driver name="RawTrackerHitSensorSetup"/> <driver name="RawTrackerHitFitterDriver" /> <driver name="TrackerHitDriver"/> <driver name="HelicalTrackHitDriver"/> <driver name="FullTrackerReconDriver"/> - <driver name="EcalRunningPedestal"/> - <driver name="EcalRawConverter" /> - <driver name="ReconClusterer" /> - <driver name="ReconParticle" /> - <driver name="SplitHitsOnTrack"/> + <driver name="GBLOutputDriver"/> + <driver name="GBLDriver"/> +<!-- <driver name="SplitHitsOnTrack"/> <driver name="TrackerL1to3ReconDriver"/> - <driver name="TrackerL4to6ReconDriver"/> - <driver name="ReconParticleL1to3" /> - <driver name="ReconParticleL4to6" /> + <driver name="TrackerL4to6ReconDriver"/> --> +<!-- <driver name="ReconParticleGBL" />--> +<!-- <driver name="ReconParticleL1to3" /> + <driver name="ReconParticleL4to6" />--> <driver name="SVTAlignment"/> <driver name="TrackingMonitoringSingles1DQM" /> +<!-- <driver name="GBLTrackMonitoringSingles1DQM" /> <driver name="TrackingMonitoringL1to3Singles1DQM"/> <driver name="TrackingMonitoringL4to6Singles1DQM"/> + <driver name="FinalStateGBLDQMSingles1"/> <driver name="FinalStateL1to3DQMSingles1"/> - <driver name="FinalStateL4to6DQMSingles1"/> - <driver name="FinalStateDQMSingles1"/> + <driver name="FinalStateL4to6DQMSingles1"/>--> +<!-- <driver name="FinalStateDQMSingles1"/>--> <driver name="AidaSaveDriver"/> - <driver name="LCIOWriter"/> <driver name="CleanupDriver" /> </execute> <drivers> <driver name="EventMarkerDriver" type="org.lcsim.job.EventMarkerDriver"> - <eventInterval>1000</eventInterval> - </driver> - <driver name="RawTrackerHitSensorSetup" type="org.lcsim.recon.tracking.digitization.sisim.config.RawTrackerHitSensorSetup" /> + <eventInterval>1</eventInterval> + </driver> + <driver name="RawTrackerHitSensorSetup" type="org.lcsim.recon.tracking.digitization.sisim.config.RawTrackerHitSensorSetup"> + <readoutCollections>SVTRawTrackerHits</readoutCollections> + </driver> <driver name="SplitHitsOnTrack" type="org.hps.users.mgraham.SplitHitsOnTracks"> </driver> <driver name="TrackerL1to3ReconDriver" type="org.hps.recon.tracking.TrackerReconDriver"> - <debug>false</debug> + <debug>true</debug> <inputHitCollectionName>OnTrackHits</inputHitCollectionName> <trackCollectionName>L1to3Tracks</trackCollectionName> <strategyResource>/org/hps/recon/tracking/strategies/HPS-Full-L1-3.xml</strategyResource> @@ -50,7 +53,7 @@ <inputHitCollectionName>OnTrackHits</inputHitCollectionName> <strategyResource>/org/hps/recon/tracking/strategies/HPS-Full-L4-6.xml</strategyResource> </driver> - <driver name="TrackerL134ReconDriver" type="org.hps.recon.tracking.TrackerReconDriver"> + <driver name="TrackerL134ReconDriver" type="org.hps.recon.tracking.TrackerReconDriver"> <debug>false</debug> <trackCollectionName>L134Tracks</trackCollectionName> <inputHitCollectionName>OnTrackHits</inputHitCollectionName> @@ -59,6 +62,20 @@ <driver name="TrackDataDriver" type="org.hps.recon.tracking.TrackDataDriver"> </driver> <driver name="ReconParticle" type="org.hps.recon.particle.HpsReconParticleDriver"> + <debug>true</debug> + <dxCut>50</dxCut> + <dyCut>50</dyCut> + </driver> + + <driver name="ReconParticleGBL" type="org.hps.recon.particle.HpsReconParticleDriver"> + <trackCollectionName>GBLTracks</trackCollectionName> + <targetConV0VerticesColName>TargetConstrainedV0CandidatesGBL</targetConV0VerticesColName> + <finalStateParticlesColName>FinalStateParticlesGBL</finalStateParticlesColName> + <unconstrainedV0CandidatesColName>UnconstrainedV0CandidatesGBL</unconstrainedV0CandidatesColName> + <beamConV0CandidatesColName>BeamspotConstrainedV0CandidatesGBL</beamConV0CandidatesColName> + <unconstrainedV0VerticesColName>UnconstrainedV0VerticesGBL</unconstrainedV0VerticesColName> + <beamConV0VerticesColName>BeamspotConstrainedV0VerticesGBL</beamConV0VerticesColName> + <targetConV0VerticesColName>TargetConstrainedV0VerticesGBL</targetConV0VerticesColName> <debug>false</debug> <dxCut>50</dxCut> <dyCut>50</dyCut> @@ -77,6 +94,7 @@ <dxCut>50</dxCut> <dyCut>50</dyCut> </driver> + <driver name="ReconParticleL4to6" type="org.hps.recon.particle.HpsReconParticleDriver"> <trackCollectionName>L4to6Tracks</trackCollectionName> <targetConV0VerticesColName>TargetConstrainedV0CandidatesL4to6</targetConV0VerticesColName> @@ -91,7 +109,7 @@ <dyCut>50</dyCut> </driver> - <driver name="ReconParticleL134" type="org.hps.recon.particle.HpsReconParticleDriver"> + <driver name="ReconParticleL134" type="org.hps.recon.particle.HpsReconParticleDriver"> <trackCollectionName>L134Tracks</trackCollectionName> <targetConV0VerticesColName>TargetConstrainedV0CandidatesL134</targetConV0VerticesColName> <finalStateParticlesColName>FinalStateParticlesL134</finalStateParticlesColName> @@ -107,7 +125,7 @@ <!-- EngineeringRun2015FullRecon from Sho --> <driver name="RawTrackerHitFitterDriver" type="org.hps.recon.tracking.RawTrackerHitFitterDriver"> - <fitAlgorithm>Pileup</fitAlgorithm> + <fitAlgorithm>Pileup</fitAlgorithm> <useTimestamps>false</useTimestamps> <correctTimeOffset>true</correctTimeOffset> <correctT0Shift>true</correctT0Shift> @@ -121,14 +139,14 @@ <neighborDeltaT>8.0</neighborDeltaT> </driver> <driver name="HelicalTrackHitDriver" type="org.hps.recon.tracking.HelicalTrackHitDriver"> - <debug>false</debug> + <debug>true</debug> <clusterTimeCut>12.0</clusterTimeCut> <maxDt>16.0</maxDt> <clusterAmplitudeCut>400.0</clusterAmplitudeCut> </driver> <driver name="FullTrackerReconDriver" type="org.hps.recon.tracking.TrackerReconDriver"> <strategyResource>HPS-Full.xml</strategyResource> - <debug>false</debug> + <debug>true</debug> <rmsTimeCut>8.0</rmsTimeCut> </driver> <driver name="EcalRunningPedestal" type="org.hps.recon.ecal.EcalRunningPedestalDriver"> @@ -177,28 +195,47 @@ </driver> + <driver name="GBLOutputDriver" type="org.hps.recon.tracking.gbl.GBLOutputDriver"> + <debug>0</debug> + <isMC>false</isMC> + <gblFileName>gbl.out</gblFileName> + </driver> + + <driver name="GBLDriver" type="org.hps.recon.tracking.gbl.HpsGblRefitter"> + <debug>false</debug> + <logLevel>WARNING</logLevel> + <milleBinaryFileName>milleTest.bin</milleBinaryFileName> + <writeMilleBinary>true</writeMilleBinary> + </driver> + <driver name="TrackingMonitoringDQM" type="org.hps.analysis.dataquality.TrackingMonitoring"> <overwriteDB>false</overwriteDB> <printDQMStrings>false</printDQMStrings> </driver> - <driver name="TrackingMonitoringL1to3Singles1DQM" type="org.hps.analysis.dataquality.TrackingMonitoring"> - <trackCollectionName>L1to3Tracks</trackCollectionName> - <overwriteDB>false</overwriteDB> - <printDQMStrings>false</printDQMStrings> - </driver> - <driver name="TrackingMonitoringL4to6Singles1DQM" type="org.hps.analysis.dataquality.TrackingMonitoring"> - <trackCollectionName>L4to6Tracks</trackCollectionName> - <overwriteDB>false</overwriteDB> - <printDQMStrings>false</printDQMStrings> - </driver> - - <driver name="TrackingMonitoringL134Singles1DQM" type="org.hps.analysis.dataquality.TrackingMonitoring"> - <trackCollectionName>L134Tracks</trackCollectionName> - <overwriteDB>false</overwriteDB> - <printDQMStrings>false</printDQMStrings> - </driver> - + <driver name="TrackingMonitoringL1to3Singles1DQM" type="org.hps.analysis.dataquality.TrackingMonitoring"> + <trackCollectionName>L1to3Tracks</trackCollectionName> + <overwriteDB>false</overwriteDB> + <printDQMStrings>false</printDQMStrings> + </driver> + <driver name="TrackingMonitoringL4to6Singles1DQM" type="org.hps.analysis.dataquality.TrackingMonitoring"> + <trackCollectionName>L4to6Tracks</trackCollectionName> + <overwriteDB>false</overwriteDB> + <printDQMStrings>false</printDQMStrings> + </driver> + + <driver name="TrackingMonitoringL134Singles1DQM" type="org.hps.analysis.dataquality.TrackingMonitoring"> + <trackCollectionName>L134Tracks</trackCollectionName> + <overwriteDB>false</overwriteDB> + <printDQMStrings>false</printDQMStrings> + </driver> + + <driver name="GBLTrackMonitoringSingles1DQM" type="org.hps.analysis.dataquality.TrackingMonitoring"> + <trackCollectionName>GblTracks</trackCollectionName> + <overwriteDB>false</overwriteDB> + <printDQMStrings>false</printDQMStrings> + <triggerType>singles1</triggerType> + </driver> <driver name="TrackingMonitoringSingles1DQM" type="org.hps.analysis.dataquality.TrackingMonitoring"> <overwriteDB>false</overwriteDB> @@ -233,14 +270,21 @@ <printDQMStrings>false</printDQMStrings> <triggerType>singles1</triggerType> </driver> - + + <driver name="FinalStateGBLDQMSingles1" type="org.hps.analysis.dataquality.FinalStateMonitoring"> + <finalStateParticlesColName>FinalStateParticlesGBL</finalStateParticlesColName> + <overwriteDB>false</overwriteDB> + <printDQMStrings>false</printDQMStrings> + <triggerType>singles1</triggerType> + </driver> + <driver name="FinalStateL4to6DQMSingles1" type="org.hps.analysis.dataquality.FinalStateMonitoring"> <finalStateParticlesColName>FinalStateParticlesL4to6</finalStateParticlesColName> <overwriteDB>false</overwriteDB> <printDQMStrings>false</printDQMStrings> <triggerType>singles1</triggerType> </driver> - <driver name="FinalStateL134DQMSingles1" type="org.hps.analysis.dataquality.FinalStateMonitoring"> + <driver name="FinalStateL134DQMSingles1" type="org.hps.analysis.dataquality.FinalStateMonitoring"> <finalStateParticlesColName>FinalStateParticlesL134</finalStateParticlesColName> <overwriteDB>false</overwriteDB> <printDQMStrings>false</printDQMStrings> Copied: java/trunk/steering-files/src/main/resources/org/hps/steering/users/mgraham/SkimCleanTracks.lcsim (from r3326, java/trunk/steering-files/src/main/resources/org/hps/steering/users/mgraham/TrackAlignmentStudy.lcsim) ============================================================================= --- java/trunk/steering-files/src/main/resources/org/hps/steering/users/mgraham/TrackAlignmentStudy.lcsim (original) +++ java/trunk/steering-files/src/main/resources/org/hps/steering/users/mgraham/SkimCleanTracks.lcsim Wed Aug 5 18:39:29 2015 @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <lcsim xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="http://www.lcsim.org/schemas/lcsim/1.0/lcsim.xsd"> <!-- - Steering file for tracking and v0 reconstruction monitoring + Steering file to skim events from evio->lcio @author Matt Graham <[log in to unmask]> --> <execute> @@ -11,24 +11,12 @@ <driver name="TrackerHitDriver"/> <driver name="HelicalTrackHitDriver"/> <driver name="FullTrackerReconDriver"/> + <driver name="TrackDataDriver" /> <driver name="EcalRunningPedestal"/> <driver name="EcalRawConverter" /> <driver name="ReconClusterer" /> - <driver name="ReconParticle" /> - <driver name="SplitHitsOnTrack"/> - <driver name="TrackerL1to3ReconDriver"/> - <driver name="TrackerL4to6ReconDriver"/> - <driver name="ReconParticleL1to3" /> - <driver name="ReconParticleL4to6" /> - <driver name="SVTAlignment"/> - <driver name="TrackingMonitoringSingles1DQM" /> - <driver name="TrackingMonitoringL1to3Singles1DQM"/> - <driver name="TrackingMonitoringL4to6Singles1DQM"/> - <driver name="FinalStateL1to3DQMSingles1"/> - <driver name="FinalStateL4to6DQMSingles1"/> - <driver name="FinalStateDQMSingles1"/> <driver name="AidaSaveDriver"/> - <driver name="LCIOWriter"/> + <driver name="MyLCIOWriter"/> <driver name="CleanupDriver" /> </execute> <drivers> @@ -36,26 +24,6 @@ <eventInterval>1000</eventInterval> </driver> <driver name="RawTrackerHitSensorSetup" type="org.lcsim.recon.tracking.digitization.sisim.config.RawTrackerHitSensorSetup" /> - <driver name="SplitHitsOnTrack" type="org.hps.users.mgraham.SplitHitsOnTracks"> - </driver> - <driver name="TrackerL1to3ReconDriver" type="org.hps.recon.tracking.TrackerReconDriver"> - <debug>false</debug> - <inputHitCollectionName>OnTrackHits</inputHitCollectionName> - <trackCollectionName>L1to3Tracks</trackCollectionName> - <strategyResource>/org/hps/recon/tracking/strategies/HPS-Full-L1-3.xml</strategyResource> - </driver> - <driver name="TrackerL4to6ReconDriver" type="org.hps.recon.tracking.TrackerReconDriver"> - <debug>false</debug> - <trackCollectionName>L4to6Tracks</trackCollectionName> - <inputHitCollectionName>OnTrackHits</inputHitCollectionName> - <strategyResource>/org/hps/recon/tracking/strategies/HPS-Full-L4-6.xml</strategyResource> - </driver> - <driver name="TrackerL134ReconDriver" type="org.hps.recon.tracking.TrackerReconDriver"> - <debug>false</debug> - <trackCollectionName>L134Tracks</trackCollectionName> - <inputHitCollectionName>OnTrackHits</inputHitCollectionName> - <strategyResource>/org/hps/recon/tracking/strategies/HPS-Full-L134.xml</strategyResource> - </driver> <driver name="TrackDataDriver" type="org.hps.recon.tracking.TrackDataDriver"> </driver> <driver name="ReconParticle" type="org.hps.recon.particle.HpsReconParticleDriver"> @@ -64,50 +32,11 @@ <dyCut>50</dyCut> </driver> - <driver name="ReconParticleL1to3" type="org.hps.recon.particle.HpsReconParticleDriver"> - <trackCollectionName>L1to3Tracks</trackCollectionName> - <targetConV0VerticesColName>TargetConstrainedV0CandidatesL1to3</targetConV0VerticesColName> - <finalStateParticlesColName>FinalStateParticlesL1to3</finalStateParticlesColName> - <unconstrainedV0CandidatesColName>UnconstrainedV0CandidatesL1to3</unconstrainedV0CandidatesColName> - <beamConV0CandidatesColName>BeamspotConstrainedV0CandidatesL1to3</beamConV0CandidatesColName> - <unconstrainedV0VerticesColName>UnconstrainedV0VerticesL1to3</unconstrainedV0VerticesColName> - <beamConV0VerticesColName>BeamspotConstrainedV0VerticesL1to3</beamConV0VerticesColName> - <targetConV0VerticesColName>TargetConstrainedV0VerticesL1to3</targetConV0VerticesColName> - <debug>false</debug> - <dxCut>50</dxCut> - <dyCut>50</dyCut> - </driver> - <driver name="ReconParticleL4to6" type="org.hps.recon.particle.HpsReconParticleDriver"> - <trackCollectionName>L4to6Tracks</trackCollectionName> - <targetConV0VerticesColName>TargetConstrainedV0CandidatesL4to6</targetConV0VerticesColName> - <finalStateParticlesColName>FinalStateParticlesL4to6</finalStateParticlesColName> - <unconstrainedV0CandidatesColName>UnconstrainedV0CandidatesL4to6</unconstrainedV0CandidatesColName> - <beamConV0CandidatesColName>BeamspotConstrainedV0CandidatesL4to6</beamConV0CandidatesColName> - <unconstrainedV0VerticesColName>UnconstrainedV0VerticesL4to6</unconstrainedV0VerticesColName> - <beamConV0VerticesColName>BeamspotConstrainedV0VerticesL4to6</beamConV0VerticesColName> - <targetConV0VerticesColName>TargetConstrainedV0VerticesL4to6</targetConV0VerticesColName> - <debug>false</debug> - <dxCut>50</dxCut> - <dyCut>50</dyCut> - </driver> - <driver name="ReconParticleL134" type="org.hps.recon.particle.HpsReconParticleDriver"> - <trackCollectionName>L134Tracks</trackCollectionName> - <targetConV0VerticesColName>TargetConstrainedV0CandidatesL134</targetConV0VerticesColName> - <finalStateParticlesColName>FinalStateParticlesL134</finalStateParticlesColName> - <unconstrainedV0CandidatesColName>UnconstrainedV0CandidatesL134</unconstrainedV0CandidatesColName> - <beamConV0CandidatesColName>BeamspotConstrainedV0CandidatesL134</beamConV0CandidatesColName> - <unconstrainedV0VerticesColName>UnconstrainedV0VerticesL134</unconstrainedV0VerticesColName> - <beamConV0VerticesColName>BeamspotConstrainedV0VerticesL134</beamConV0VerticesColName> - <targetConV0VerticesColName>TargetConstrainedV0VerticesL134</targetConV0VerticesColName> - <debug>false</debug> - <dxCut>50</dxCut> - <dyCut>50</dyCut> - </driver> <!-- EngineeringRun2015FullRecon from Sho --> <driver name="RawTrackerHitFitterDriver" type="org.hps.recon.tracking.RawTrackerHitFitterDriver"> - <fitAlgorithm>Pileup</fitAlgorithm> + <fitAlgorithm>Pileup</fitAlgorithm> <useTimestamps>false</useTimestamps> <correctTimeOffset>true</correctTimeOffset> <correctT0Shift>true</correctT0Shift> @@ -125,6 +54,7 @@ <clusterTimeCut>12.0</clusterTimeCut> <maxDt>16.0</maxDt> <clusterAmplitudeCut>400.0</clusterAmplitudeCut> + <rejectGhostHits>true</rejectGhostHits> </driver> <driver name="FullTrackerReconDriver" type="org.hps.recon.tracking.TrackerReconDriver"> <strategyResource>HPS-Full.xml</strategyResource> @@ -162,146 +92,18 @@ <timeWindow>25.0</timeWindow> <useTimeCut>true</useTimeCut> <writeRejectedHitCollection>false</writeRejectedHitCollection> - </driver> - - <driver name="TrackingMonitoring" type="org.hps.monitoring.drivers.trackrecon.TrackingReconPlots"> - </driver> - <driver name="TrackingResiduals" type="org.hps.monitoring.drivers.trackrecon.TrackResiduals"> - </driver> - <driver name="V0Monitoring" type="org.hps.monitoring.drivers.trackrecon.V0ReconPlots"> - </driver> - - <driver name="SVTAlignment" type="org.hps.analysis.dataquality.SVTOpeningStudies"> - </driver> - <driver name="TrackTime" type="org.hps.monitoring.drivers.trackrecon.TrackTimePlots"> - - </driver> - - <driver name="TrackingMonitoringDQM" type="org.hps.analysis.dataquality.TrackingMonitoring"> - <overwriteDB>false</overwriteDB> - <printDQMStrings>false</printDQMStrings> - </driver> - - <driver name="TrackingMonitoringL1to3Singles1DQM" type="org.hps.analysis.dataquality.TrackingMonitoring"> - <trackCollectionName>L1to3Tracks</trackCollectionName> - <overwriteDB>false</overwriteDB> - <printDQMStrings>false</printDQMStrings> - </driver> - <driver name="TrackingMonitoringL4to6Singles1DQM" type="org.hps.analysis.dataquality.TrackingMonitoring"> - <trackCollectionName>L4to6Tracks</trackCollectionName> - <overwriteDB>false</overwriteDB> - <printDQMStrings>false</printDQMStrings> - </driver> - - <driver name="TrackingMonitoringL134Singles1DQM" type="org.hps.analysis.dataquality.TrackingMonitoring"> - <trackCollectionName>L134Tracks</trackCollectionName> - <overwriteDB>false</overwriteDB> - <printDQMStrings>false</printDQMStrings> - </driver> - - - <driver name="TrackingMonitoringSingles1DQM" type="org.hps.analysis.dataquality.TrackingMonitoring"> - <overwriteDB>false</overwriteDB> - <printDQMStrings>false</printDQMStrings> - <triggerType>singles1</triggerType> - </driver> - <driver name="TrackingMonitoringPairs1DQM" type="org.hps.analysis.dataquality.TrackingMonitoring"> - <overwriteDB>false</overwriteDB> - <printDQMStrings>false</printDQMStrings> - <triggerType>pairs1</triggerType> - </driver> - - <driver name="TrackingResidualsPairs1DQM" type="org.hps.analysis.dataquality.TrackingResiduals"> - <overwriteDB>false</overwriteDB> - <printDQMStrings>false</printDQMStrings> - <triggerType>pairs1</triggerType> - </driver> - <driver name="TrackingResidualsSingles1DQM" type="org.hps.analysis.dataquality.TrackingResiduals"> - <overwriteDB>false</overwriteDB> - <printDQMStrings>false</printDQMStrings> - <triggerType>singles1</triggerType> - </driver> - <driver name="FinalStateDQM" type="org.hps.analysis.dataquality.FinalStateMonitoring"> - <overwriteDB>false</overwriteDB> - <printDQMStrings>false</printDQMStrings> - <triggerType>all</triggerType> - </driver> - - <driver name="FinalStateL1to3DQMSingles1" type="org.hps.analysis.dataquality.FinalStateMonitoring"> - <finalStateParticlesColName>FinalStateParticlesL1to3</finalStateParticlesColName> - <overwriteDB>false</overwriteDB> - <printDQMStrings>false</printDQMStrings> - <triggerType>singles1</triggerType> - </driver> - - <driver name="FinalStateL4to6DQMSingles1" type="org.hps.analysis.dataquality.FinalStateMonitoring"> - <finalStateParticlesColName>FinalStateParticlesL4to6</finalStateParticlesColName> - <overwriteDB>false</overwriteDB> - <printDQMStrings>false</printDQMStrings> - <triggerType>singles1</triggerType> - </driver> - <driver name="FinalStateL134DQMSingles1" type="org.hps.analysis.dataquality.FinalStateMonitoring"> - <finalStateParticlesColName>FinalStateParticlesL134</finalStateParticlesColName> - <overwriteDB>false</overwriteDB> - <printDQMStrings>false</printDQMStrings> - <triggerType>singles1</triggerType> - </driver> - <driver name="FinalStateDQMPairs1" type="org.hps.analysis.dataquality.FinalStateMonitoring"> - <overwriteDB>false</overwriteDB> - <printDQMStrings>false</printDQMStrings> - <triggerType>pairs1</triggerType> - </driver> - - - <driver name="FinalStateDQMSingles1" type="org.hps.analysis.dataquality.FinalStateMonitoring"> - <overwriteDB>false</overwriteDB> - <printDQMStrings>false</printDQMStrings> - <triggerType>singles1</triggerType> - </driver> - - <driver name="V0DQM" type="org.hps.analysis.dataquality.V0Monitoring"> - <overwriteDB>false</overwriteDB> - <printDQMStrings>false</printDQMStrings> - <triggerType>all</triggerType> - </driver> - - <driver name="V0DQMPairs1" type="org.hps.analysis.dataquality.V0Monitoring"> - <overwriteDB>false</overwriteDB> - <printDQMStrings>false</printDQMStrings> - <triggerType>pairs1</triggerType> - </driver> - - <driver name="V0DQMSingles1" type="org.hps.analysis.dataquality.V0Monitoring"> - <overwriteDB>false</overwriteDB> - <printDQMStrings>false</printDQMStrings> - <triggerType>singles1</triggerType> - </driver> - - <driver name="SVTMonitoring" type="org.hps.analysis.dataquality.SvtMonitoring"> - <triggerType>all</triggerType> - </driver> - - <driver name="TridentMonitoringPairs1" type="org.hps.analysis.dataquality.TridentMonitoring"> - <triggerType>pairs1</triggerType> - </driver> - - <driver name="PositronDebug" type="org.hps.users.mgraham.PositronDebug"> - </driver> + </driver> <driver name="AidaSaveDriver" type="org.lcsim.job.AidaSaveDriver"> <outputFileName>./${outputFile}.root</outputFileName> </driver> + <driver name="MyLCIOWriter" type="org.hps.users.mgraham.MyLCIOWriterDriver"> + <outputFilePath>${outputFile}.slcio</outputFilePath> + </driver> + <driver name="LCIOWriter" type="org.lcsim.util.loop.LCIODriver"> <outputFilePath>${outputFile}.slcio</outputFilePath> </driver> <driver name="CleanupDriver" type="org.lcsim.recon.tracking.digitization.sisim.config.ReadoutCleanupDriver" /> - <driver name="GTPOnlineClusterer" type="org.hps.recon.ecal.cluster.ClusterDriver"> - <logLevel>WARNING</logLevel> - <clustererName>GTPOnlineClusterer</clustererName> - <outputClusterCollectionName>EcalClustersGTP</outputClusterCollectionName> - <!-- seedMinEnergy --> - <cuts>0.100</cuts> - </driver> - </drivers> </lcsim> Modified: java/trunk/steering-files/src/main/resources/org/hps/steering/users/mgraham/StraightTrackRecon.lcsim ============================================================================= --- java/trunk/steering-files/src/main/resources/org/hps/steering/users/mgraham/StraightTrackRecon.lcsim (original) +++ java/trunk/steering-files/src/main/resources/org/hps/steering/users/mgraham/StraightTrackRecon.lcsim Wed Aug 5 18:39:29 2015 @@ -15,7 +15,9 @@ <driver name="EcalRunningPedestal"/> <driver name="EcalRawConverter" /> <driver name="ReconClusterer" /> - <driver name="ReconParticle" /> + <driver name="CopyCluster" /> + <driver name="ReconParticle" /> + <driver name="TrackDataDriver" /> <driver name="TrackingMonitoringSingles1DQM" /> <driver name="FinalStateDQMSingles1"/> <driver name="AidaSaveDriver"/> @@ -28,28 +30,31 @@ </driver> <driver name="RawTrackerHitSensorSetup" type="org.lcsim.recon.tracking.digitization.sisim.config.RawTrackerHitSensorSetup" /> - <driver name="TrackDataDriver" type="org.hps.recon.tracking.TrackDataDriver"> - </driver> <driver name="ReconParticle" type="org.hps.recon.particle.HpsReconParticleDriver"> <debug>false</debug> <dxCut>50</dxCut> <dyCut>50</dyCut> </driver> - <driver name="StraightTrackReconDriver" type="org.hps.recon.tracking.straighttracks.StraightTrackReconDriver"> + <driver name="StraightTrackReconDriver" type="org.hps.recon.tracking.straighttracks.StraightTrackReconDriver"> <debug>false</debug> <strategyResource>/org/hps/recon/tracking/strategies/HPS-Full-StraightTracks.xml</strategyResource> <trackCollectionName>MatchedTracks</trackCollectionName> </driver> <driver name="StraightTrackAnalysis" type="org.hps.users.mgraham.StraightTrackAnalysis"> - <trackCollectionName>MatchedTracks</trackCollectionName> - </driver> - + <trackCollectionName>MatchedTracks</trackCollectionName> + </driver> + + <driver name="CopyCluster" type="org.hps.recon.ecal.cluster.CopyClusterCollectionDriver"> + <inputCollectionName>EcalClusters</inputCollectionName> + <outputCollectionName>EcalClustersCorr</outputCollectionName> + <storeHits>true</storeHits> + </driver> <!-- EngineeringRun2015FullRecon from Sho --> <driver name="RawTrackerHitFitterDriver" type="org.hps.recon.tracking.RawTrackerHitFitterDriver"> - <fitAlgorithm>Pileup</fitAlgorithm> + <fitAlgorithm>Pileup</fitAlgorithm> <useTimestamps>false</useTimestamps> <correctTimeOffset>true</correctTimeOffset> <correctT0Shift>true</correctT0Shift> @@ -204,6 +209,6 @@ <!-- seedMinEnergy --> <cuts>0.100</cuts> </driver> - + <driver name="TrackDataDriver" type="org.hps.recon.tracking.TrackDataDriver" /> </drivers> </lcsim> Modified: java/trunk/steering-files/src/main/resources/org/hps/steering/users/mgraham/TrackAlignmentStudy.lcsim ============================================================================= --- java/trunk/steering-files/src/main/resources/org/hps/steering/users/mgraham/TrackAlignmentStudy.lcsim (original) +++ java/trunk/steering-files/src/main/resources/org/hps/steering/users/mgraham/TrackAlignmentStudy.lcsim Wed Aug 5 18:39:29 2015 @@ -6,36 +6,57 @@ --> <execute> <driver name="EventMarkerDriver" /> - <!-- Standard Reconstruction --> + <!-- <driver name="ReconCleanupDriver" /> --> + <driver name="RawTrackerHitSensorSetup"/> + <!-- Standard Reconstruction --> <driver name="RawTrackerHitFitterDriver" /> <driver name="TrackerHitDriver"/> + <driver name="EcalRunningPedestal"/> + <driver name="EcalRawConverter" /> + <driver name="ReconClusterer" /> <driver name="HelicalTrackHitDriver"/> <driver name="FullTrackerReconDriver"/> - <driver name="EcalRunningPedestal"/> - <driver name="EcalRawConverter" /> - <driver name="ReconClusterer" /> <driver name="ReconParticle" /> - <driver name="SplitHitsOnTrack"/> + <driver name="TrackDataDriver" /> + <driver name="GBLOutputDriver"/> + <driver name="GBLDriver"/> + <driver name="SplitHitsOnTrack"/> <driver name="TrackerL1to3ReconDriver"/> <driver name="TrackerL4to6ReconDriver"/> + <!-- <driver name="ReconParticleGBL" />--> <driver name="ReconParticleL1to3" /> <driver name="ReconParticleL4to6" /> <driver name="SVTAlignment"/> + <driver name="SVTAlignmentSingles1"/> + <driver name="SVTAlignmentPairs1"/> <driver name="TrackingMonitoringSingles1DQM" /> + <driver name="TrackingMonitoringPairs1DQM" /> + <!-- <driver name="GBLTrackMonitoringSingles1DQM" /> --> <driver name="TrackingMonitoringL1to3Singles1DQM"/> <driver name="TrackingMonitoringL4to6Singles1DQM"/> + <driver name="TrackingMonitoringL1to3Pairs1DQM"/> + <driver name="TrackingMonitoringL4to6Pairs1DQM"/> + <!-- <driver name="FinalStateGBLDQMSingles1"/> --> <driver name="FinalStateL1to3DQMSingles1"/> <driver name="FinalStateL4to6DQMSingles1"/> <driver name="FinalStateDQMSingles1"/> + <driver name="FinalStateL1to3DQMPairs1"/> + <driver name="FinalStateL4to6DQMPairs1"/> + <driver name="FinalStateDQMPairs1"/> <driver name="AidaSaveDriver"/> - <driver name="LCIOWriter"/> + <driver name="MyLCIOWriter"/> <driver name="CleanupDriver" /> </execute> <drivers> + <driver name="ReconCleanupDriver" type="org.hps.users.mgraham.RemoveCollectionsFromEvent" > + <collectionNames>SVTShapeFitParameters SVTFittedRawTrackerHits StripClusterer_SiTrackerHitStrip1D HelicalTrackHits HelicalTrackHitRelations HelicalTrackHitMCRelations RotatedHelicalTrackHits RotatedHelicalTrackHitRelations RotatedHelicalTrackHitMCRelations MatchedTracks TrackData TrackDataRelations TrackResiduals TrackResidualsRelations EcalClusters</collectionNames> + </driver> <driver name="EventMarkerDriver" type="org.lcsim.job.EventMarkerDriver"> <eventInterval>1000</eventInterval> </driver> - <driver name="RawTrackerHitSensorSetup" type="org.lcsim.recon.tracking.digitization.sisim.config.RawTrackerHitSensorSetup" /> + <driver name="RawTrackerHitSensorSetup" type="org.lcsim.recon.tracking.digitization.sisim.config.RawTrackerHitSensorSetup"> + <readoutCollections>SVTRawTrackerHits</readoutCollections> + </driver> <driver name="SplitHitsOnTrack" type="org.hps.users.mgraham.SplitHitsOnTracks"> </driver> <driver name="TrackerL1to3ReconDriver" type="org.hps.recon.tracking.TrackerReconDriver"> @@ -50,7 +71,7 @@ <inputHitCollectionName>OnTrackHits</inputHitCollectionName> <strategyResource>/org/hps/recon/tracking/strategies/HPS-Full-L4-6.xml</strategyResource> </driver> - <driver name="TrackerL134ReconDriver" type="org.hps.recon.tracking.TrackerReconDriver"> + <driver name="TrackerL134ReconDriver" type="org.hps.recon.tracking.TrackerReconDriver"> <debug>false</debug> <trackCollectionName>L134Tracks</trackCollectionName> <inputHitCollectionName>OnTrackHits</inputHitCollectionName> @@ -59,6 +80,20 @@ <driver name="TrackDataDriver" type="org.hps.recon.tracking.TrackDataDriver"> </driver> <driver name="ReconParticle" type="org.hps.recon.particle.HpsReconParticleDriver"> + <debug>false</debug> + <dxCut>50</dxCut> + <dyCut>50</dyCut> + </driver> + + <driver name="ReconParticleGBL" type="org.hps.recon.particle.HpsReconParticleDriver"> + <trackCollectionName>GBLTracks</trackCollectionName> + <targetConV0VerticesColName>TargetConstrainedV0CandidatesGBL</targetConV0VerticesColName> + <finalStateParticlesColName>FinalStateParticlesGBL</finalStateParticlesColName> + <unconstrainedV0CandidatesColName>UnconstrainedV0CandidatesGBL</unconstrainedV0CandidatesColName> + <beamConV0CandidatesColName>BeamspotConstrainedV0CandidatesGBL</beamConV0CandidatesColName> + <unconstrainedV0VerticesColName>UnconstrainedV0VerticesGBL</unconstrainedV0VerticesColName> + <beamConV0VerticesColName>BeamspotConstrainedV0VerticesGBL</beamConV0VerticesColName> + <targetConV0VerticesColName>TargetConstrainedV0VerticesGBL</targetConV0VerticesColName> <debug>false</debug> <dxCut>50</dxCut> <dyCut>50</dyCut> @@ -77,6 +112,7 @@ <dxCut>50</dxCut> <dyCut>50</dyCut> </driver> + <driver name="ReconParticleL4to6" type="org.hps.recon.particle.HpsReconParticleDriver"> <trackCollectionName>L4to6Tracks</trackCollectionName> <targetConV0VerticesColName>TargetConstrainedV0CandidatesL4to6</targetConV0VerticesColName> @@ -91,7 +127,7 @@ <dyCut>50</dyCut> </driver> - <driver name="ReconParticleL134" type="org.hps.recon.particle.HpsReconParticleDriver"> + <driver name="ReconParticleL134" type="org.hps.recon.particle.HpsReconParticleDriver"> <trackCollectionName>L134Tracks</trackCollectionName> <targetConV0VerticesColName>TargetConstrainedV0CandidatesL134</targetConV0VerticesColName> <finalStateParticlesColName>FinalStateParticlesL134</finalStateParticlesColName> @@ -107,7 +143,7 @@ <!-- EngineeringRun2015FullRecon from Sho --> <driver name="RawTrackerHitFitterDriver" type="org.hps.recon.tracking.RawTrackerHitFitterDriver"> - <fitAlgorithm>Pileup</fitAlgorithm> + <fitAlgorithm>Pileup</fitAlgorithm> <useTimestamps>false</useTimestamps> <correctTimeOffset>true</correctTimeOffset> <correctT0Shift>true</correctT0Shift> @@ -125,6 +161,7 @@ <clusterTimeCut>12.0</clusterTimeCut> <maxDt>16.0</maxDt> <clusterAmplitudeCut>400.0</clusterAmplitudeCut> + <rejectGhostHits>true</rejectGhostHits> </driver> <driver name="FullTrackerReconDriver" type="org.hps.recon.tracking.TrackerReconDriver"> <strategyResource>HPS-Full.xml</strategyResource> @@ -173,32 +210,76 @@ <driver name="SVTAlignment" type="org.hps.analysis.dataquality.SVTOpeningStudies"> </driver> + + <driver name="SVTAlignmentPairs1" type="org.hps.analysis.dataquality.SVTOpeningStudies"> + <triggerType>pairs1</triggerType> + </driver> + + <driver name="SVTAlignmentSingles1" type="org.hps.analysis.dataquality.SVTOpeningStudies"> + <triggerType>singles1</triggerType> + </driver> + <driver name="TrackTime" type="org.hps.monitoring.drivers.trackrecon.TrackTimePlots"> </driver> + <driver name="GBLOutputDriver" type="org.hps.recon.tracking.gbl.GBLOutputDriver"> + <debug>0</debug> + <isMC>false</isMC> + <gblFileName>gbl.out</gblFileName> + </driver> + + <driver name="GBLDriver" type="org.hps.recon.tracking.gbl.HpsGblRefitter"> + <debug>false</debug> + <logLevel>WARNING</logLevel> + <milleBinaryFileName>milleTest.bin</milleBinaryFileName> + <writeMilleBinary>true</writeMilleBinary> + </driver> + <driver name="TrackingMonitoringDQM" type="org.hps.analysis.dataquality.TrackingMonitoring"> <overwriteDB>false</overwriteDB> <printDQMStrings>false</printDQMStrings> </driver> - <driver name="TrackingMonitoringL1to3Singles1DQM" type="org.hps.analysis.dataquality.TrackingMonitoring"> - <trackCollectionName>L1to3Tracks</trackCollectionName> - <overwriteDB>false</overwriteDB> - <printDQMStrings>false</printDQMStrings> - </driver> - <driver name="TrackingMonitoringL4to6Singles1DQM" type="org.hps.analysis.dataquality.TrackingMonitoring"> - <trackCollectionName>L4to6Tracks</trackCollectionName> - <overwriteDB>false</overwriteDB> - <printDQMStrings>false</printDQMStrings> - </driver> - - <driver name="TrackingMonitoringL134Singles1DQM" type="org.hps.analysis.dataquality.TrackingMonitoring"> - <trackCollectionName>L134Tracks</trackCollectionName> - <overwriteDB>false</overwriteDB> - <printDQMStrings>false</printDQMStrings> - </driver> - + <driver name="TrackingMonitoringL1to3Singles1DQM" type="org.hps.analysis.dataquality.TrackingMonitoring"> + <trackCollectionName>L1to3Tracks</trackCollectionName> + <overwriteDB>false</overwriteDB> + <printDQMStrings>false</printDQMStrings> + <triggerType>singles1</triggerType> + </driver> + <driver name="TrackingMonitoringL4to6Singles1DQM" type="org.hps.analysis.dataquality.TrackingMonitoring"> + <trackCollectionName>L4to6Tracks</trackCollectionName> + <overwriteDB>false</overwriteDB> + <printDQMStrings>false</printDQMStrings> + <triggerType>singles1</triggerType> + </driver> + + + <driver name="TrackingMonitoringL1to3Pairs1DQM" type="org.hps.analysis.dataquality.TrackingMonitoring"> + <trackCollectionName>L1to3Tracks</trackCollectionName> + <overwriteDB>false</overwriteDB> + <printDQMStrings>false</printDQMStrings> + <triggerType>pairs1</triggerType> + </driver> + <driver name="TrackingMonitoringL4to6Pairs1DQM" type="org.hps.analysis.dataquality.TrackingMonitoring"> + <trackCollectionName>L4to6Tracks</trackCollectionName> + <overwriteDB>false</overwriteDB> + <printDQMStrings>false</printDQMStrings> + <triggerType>pairs1</triggerType> + </driver> + + <driver name="TrackingMonitoringL134Singles1DQM" type="org.hps.analysis.dataquality.TrackingMonitoring"> + <trackCollectionName>L134Tracks</trackCollectionName> + <overwriteDB>false</overwriteDB> + <printDQMStrings>false</printDQMStrings> + </driver> + + <driver name="GBLTrackMonitoringSingles1DQM" type="org.hps.analysis.dataquality.TrackingMonitoring"> + <trackCollectionName>GblTracks</trackCollectionName> + <overwriteDB>false</overwriteDB> + <printDQMStrings>false</printDQMStrings> + <triggerType>singles1</triggerType> + </driver> <driver name="TrackingMonitoringSingles1DQM" type="org.hps.analysis.dataquality.TrackingMonitoring"> <overwriteDB>false</overwriteDB> @@ -234,13 +315,35 @@ <triggerType>singles1</triggerType> </driver> + <driver name="FinalStateL1to3DQMPairs1" type="org.hps.analysis.dataquality.FinalStateMonitoring"> + <finalStateParticlesColName>FinalStateParticlesL1to3</finalStateParticlesColName> + <overwriteDB>false</overwriteDB> + <printDQMStrings>false</printDQMStrings> + <triggerType>pairs1</triggerType> + </driver> + + <driver name="FinalStateGBLDQMSingles1" type="org.hps.analysis.dataquality.FinalStateMonitoring"> + <finalStateParticlesColName>FinalStateParticlesGBL</finalStateParticlesColName> + <overwriteDB>false</overwriteDB> + <printDQMStrings>false</printDQMStrings> + <triggerType>singles1</triggerType> + </driver> + <driver name="FinalStateL4to6DQMSingles1" type="org.hps.analysis.dataquality.FinalStateMonitoring"> <finalStateParticlesColName>FinalStateParticlesL4to6</finalStateParticlesColName> <overwriteDB>false</overwriteDB> <printDQMStrings>false</printDQMStrings> <triggerType>singles1</triggerType> </driver> - <driver name="FinalStateL134DQMSingles1" type="org.hps.analysis.dataquality.FinalStateMonitoring"> + + <driver name="FinalStateL4to6DQMPairs1" type="org.hps.analysis.dataquality.FinalStateMonitoring"> + <finalStateParticlesColName>FinalStateParticlesL4to6</finalStateParticlesColName> + <overwriteDB>false</overwriteDB> + <printDQMStrings>false</printDQMStrings> + <triggerType>pairs1</triggerType> + </driver> + + <driver name="FinalStateL134DQMSingles1" type="org.hps.analysis.dataquality.FinalStateMonitoring"> <finalStateParticlesColName>FinalStateParticlesL134</finalStateParticlesColName> <overwriteDB>false</overwriteDB> <printDQMStrings>false</printDQMStrings> @@ -290,8 +393,16 @@ <driver name="AidaSaveDriver" type="org.lcsim.job.AidaSaveDriver"> <outputFileName>./${outputFile}.root</outputFileName> </driver> + <driver name="MyLCIOWriter" type="org.hps.users.mgraham.MyLCIOWriterDriver"> + <outputFilePath>${outputFile}.slcio</outputFilePath> + <d0Cut>2.0</d0Cut> + <z0Cut>0.5</z0Cut> + <pCutMin>0.7</pCutMin> + </driver> + <driver name="LCIOWriter" type="org.lcsim.util.loop.LCIODriver"> <outputFilePath>${outputFile}.slcio</outputFilePath> + </driver> <driver name="CleanupDriver" type="org.lcsim.recon.tracking.digitization.sisim.config.ReadoutCleanupDriver" /> Modified: java/trunk/users/src/main/java/org/hps/users/mgraham/MyLCIOWriterDriver.java ============================================================================= --- java/trunk/users/src/main/java/org/hps/users/mgraham/MyLCIOWriterDriver.java (original) +++ java/trunk/users/src/main/java/org/hps/users/mgraham/MyLCIOWriterDriver.java Wed Aug 5 18:39:29 2015 @@ -1,6 +1,7 @@ package org.hps.users.mgraham; import java.io.IOException; +import java.util.List; import org.lcsim.event.EventHeader; import org.lcsim.event.Track; @@ -18,6 +19,11 @@ private String outputFile; private LCIOWriter writer; private String trackCollectionName = "MatchedTracks"; + private int nTracks = 1; //only ==# tracks for now...change this later... + private double d0Cut = 9999; + private double z0Cut = 9999; + private double pCutMin = -9999; + private double pCutMax = 9999; public MyLCIOWriterDriver() { } @@ -25,14 +31,34 @@ public void setOutputFilePath(String output) { this.outputFile = output; } - - public void setTrackCollectionNamePath(String trackCollection) { + + public void setNTracks(int ntrk) { + this.nTracks = ntrk; + } + + public void setD0Cut(double cut) { + this.d0Cut = cut; + } + + public void setZ0Cut(double cut) { + this.z0Cut = cut; + } + + public void setPCutMax(double cut) { + this.pCutMax = cut; + } + + public void setPCutMin(double cut) { + this.pCutMin = cut; + } + + public void setTrackCollectionNamePath(String trackCollection) { this.trackCollectionName = trackCollection; } private void setupWriter() { // Cleanup existing writer. - if (writer != null) { + if (writer != null) try { writer.flush(); writer.close(); @@ -40,7 +66,6 @@ } catch (IOException x) { System.err.println(x.getMessage()); } - } // Setup new writer. try { @@ -48,7 +73,6 @@ } catch (IOException x) { throw new RuntimeException("Error creating writer", x); } - try { writer.reOpen(); @@ -70,15 +94,29 @@ } protected void process(EventHeader event) { - if (event.get(Track.class, trackCollectionName).size()>1) { - System.out.println("found a two track event...writing to lcio file"); - try { - - writer.write(event); - } catch (IOException x) { - throw new RuntimeException("Error writing LCIO file", x); - } + if (event.get(Track.class, trackCollectionName).size() != nTracks) + return; + + List<Track> tracks = event.get(Track.class, trackCollectionName); + + for (Track trk : tracks) { + //if any of the tracks fail the cuts, return... + if (Math.abs(trk.getTrackStates().get(0).getD0()) > d0Cut) + return; + if (Math.abs(trk.getTrackStates().get(0).getZ0()) > z0Cut) + return; + if (Math.abs(trk.getTrackStates().get(0).getMomentum()[0]) < pCutMin) + return; + if (Math.abs(trk.getTrackStates().get(0).getMomentum()[0]) > pCutMax) + return; } + //if I got here I want to save the event. + try { + writer.write(event); + } catch (IOException x) { + throw new RuntimeException("Error writing LCIO file", x); + } + } protected void suspend() { Added: java/trunk/users/src/main/java/org/hps/users/mgraham/RemoveCollectionsFromEvent.java ============================================================================= --- java/trunk/users/src/main/java/org/hps/users/mgraham/RemoveCollectionsFromEvent.java (added) +++ java/trunk/users/src/main/java/org/hps/users/mgraham/RemoveCollectionsFromEvent.java Wed Aug 5 18:39:29 2015 @@ -0,0 +1,34 @@ +package org.hps.users.mgraham; + +import java.util.Arrays; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import org.lcsim.event.EventHeader; +import org.lcsim.util.Driver; + +/** + * + * @author mgraham + */ +public class RemoveCollectionsFromEvent extends Driver { + + protected Set<String> collections = new HashSet<String>(); + + public RemoveCollectionsFromEvent() { + } + + public void RemoveCollectionsFromEvent(String[] collectionNames) { + this.collections = new HashSet<String>(Arrays.asList(collectionNames)); + } + + public void setCollectionNames(String[] collectionNames) { + this.collections = new HashSet<String>(Arrays.asList(collectionNames)); + } + + protected void process(EventHeader event) { + for (String col : collections) + if (event.hasItem(col)) + event.remove(col); + } +}