1 #ifndef CLICPFOSELECTOR_H
2 #define CLICPFOSELECTOR 1
4 #include <EVENT/ReconstructedParticle.h>
9 #include "HelixClass.h"
11 #include "TrackHitPair.h"
13 #include "marlin/Processor.h"
16 using namespace marlin;
27 virtual void processRunHeader(LCRunHeader* run);
28 virtual void processEvent(LCEvent* evt);
29 virtual void check(LCEvent* evt);
40 std::string m_inputPfoCollection{};
41 std::string m_selectedPfoCollection{};
43 int m_displaySelectedPfos = 0;
44 int m_displayRejectedPfos = 0;
45 float m_monitoringPfoEnergyToDisplay = 1.0;
46 int m_correctHitTimesForTimeOfFlight = 0;
47 int m_checkProtonCorrection = 0;
48 int m_checkKaonCorrection = 0;
49 int m_keepKShorts = 1;
50 int m_useNeutronTiming = 0;
51 float m_minimumEnergyForNeutronTiming = 1.0;
53 float m_farForwardCosTheta = 0.975;
54 float m_ptCutForTightTiming = 0.75;
56 float m_photonPtCut = 0.0;
57 float m_photonPtCutForLooseTiming = 4.0;
58 float m_photonLooseTimingCut = 2.0;
59 float m_photonTightTimingCut = 1.0;
61 float m_chargedPfoPtCut = 0.0;
62 float m_chargedPfoPtCutForLooseTiming = 4.0;
63 float m_chargedPfoLooseTimingCut = 3.0;
64 float m_chargedPfoTightTimingCut = 1.5;
65 float m_chargedPfoNegativeLooseTimingCut = -1.0;
66 float m_chargedPfoNegativeTightTimingCut = -0.5;
68 float m_neutralHadronPtCut = 0.0;
69 float m_neutralHadronPtCutForLooseTiming = 8.0;
70 float m_neutralHadronLooseTimingCut = 2.5;
71 float m_neutralHadronTightTimingCut = 1.5;
72 float m_neutralFarForwardLooseTimingCut = 2.0;
73 float m_neutralFarForwardTightTimingCut = 1.0;
74 float m_photonFarForwardLooseTimingCut = 2.0;
75 float m_photonFarForwardTightTimingCut = 1.0;
77 float m_hCalBarrelLooseTimingCut = 20.0;
78 float m_hCalBarrelTightTimingCut = 10.0;
79 float m_hCalEndCapTimingFactor = 1.0;
80 float m_neutralHadronBarrelPtCutForLooseTiming =
83 int m_minECalHitsForTiming = 5;
84 int m_minHCalEndCapHitsForTiming = 5;
86 int m_useClusterLessPfos = 1;
87 float m_minMomentumForClusterLessPfos = 0.5;
88 float m_maxMomentumForClusterLessPfos = 2.0;
89 float m_minPtForClusterLessPfos = 0.5;
90 float m_clusterLessPfoTrackTimeCut = 10.0;
91 float m_forwardCosThetaForHighEnergyNeutralHadrons =
93 float m_forwardHighEnergyNeutralHadronsEnergy =
=== CLICPfoSelector Processor === Processor to select good pfos based on timing ...
virtual Processor * newProcessor()