CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
GoodSeedProducer.h
Go to the documentation of this file.
1 #ifndef RecoParticleFlow_PFTracking_GoodSeedProducer_H
2 #define RecoParticleFlow_PFTracking_GoodSeedProducer_H
3 // system include files
4 #include <memory>
5 
6 // user include files
7 
20 #include "TMVA/Reader.h"
25 
27 
29 
41 //namespace reco {
42 class PFResolutionMap;
43 // }
44 
45 class PFTrackTransformer;
46 class TrajectoryFitter;
47 class TrajectorySmoother;
48 class TrackerGeometry;
50 
51 
52 class GoodSeedProducer final : public edm::stream::EDProducer<> {
54  public:
55  explicit GoodSeedProducer(const edm::ParameterSet&);
56 
57  private:
58  virtual void beginRun(const edm::Run & run,const edm::EventSetup&) override;
59  virtual void produce(edm::Event&, const edm::EventSetup&) override;
60 
62  int getBin(float,float);
63 
67  // ----------member data ---------------------------
68 
71 
74 
77 
79  std::unique_ptr<TrajectoryFitter> fitter_;
80 
82  std::unique_ptr<TrajectorySmoother> smoother_;
83 
84  // needed by the above
86 
88  std::unique_ptr<PFTrackTransformer> pfTransformer_;
89 
92 
94  double minPt_;
95  double maxPt_;
96  double maxEta_;
97 
103  double minEoverP_;
104  double maxHoverP_;
105 
108 
110  double minEp_;
111  double maxEp_;
112 
115 
118 
121 
124 
126  float thr[150];
127 
128  // ----------access to event data
133  std::vector<edm::EDGetTokenT<std::vector<Trajectory> > > trajContainers_;
134  std::vector<edm::EDGetTokenT<reco::TrackCollection > > tracksContainers_;
135 
140 
141  std::unique_ptr<PFResolutionMap> resMapEtaECAL_;
142  std::unique_ptr<PFResolutionMap> resMapPhiECAL_;
143 
147 
149  std::array<std::unique_ptr<TMVA::Reader>,9> reader{};
150 
154  double Min_dr_;
155 
157  bool useTmva_;
158 
161 
164 
166  std::map<reco::TrackRef,unsigned> refMap_;
167 
169 };
170 #endif
int nHitsInSeed_
Number of hits in the seed;.
std::string preidckf_
Name of the Seed(Ckf) Collection.
edm::EDGetTokenT< reco::PFClusterCollection > pfCLusTagPSLabel_
std::array< std::unique_ptr< TMVA::Reader >, 9 > reader
READER FOR TMVA.
TrackQuality
track quality
Definition: TrackBase.h:133
float eP
VARIABLES NEEDED FOR TMVA.
std::unique_ptr< TrajectorySmoother > smoother_
Smoother.
std::unique_ptr< PFResolutionMap > resMapEtaECAL_
General CMS geometry parameters used during Particle Flow reconstruction or drawing. All methods and members are static.
Definition: PFGeometry.h:23
double EcalStripSumE_minClusEnergy_
float thr[150]
vector of thresholds for different bins of eta and pt
TkClonerImpl hitCloner
int getBin(float, float)
Find the bin in pt and eta.
std::unique_ptr< TrajectoryFitter > fitter_
Fitter.
edm::ParameterSet conf_
std::string method_
TMVA method.
double EcalStripSumE_deltaEta_
double EcalStripSumE_deltaPhiOverQ_minValue_
double EcalStripSumE_deltaPhiOverQ_maxValue_
virtual void produce(edm::Event &, const edm::EventSetup &) override
TrajectoryStateOnSurface TSOS
math::XYZVector B_
B field.
std::string preidname_
Name of the preid Collection (FB)
PFGeometry pfGeometry_
std::string propagatorName_
bool useQuality_
TRACK QUALITY.
void fillPreIdRefValueMap(edm::Handle< reco::TrackCollection > tkhandle, const edm::OrphanHandle< reco::PreIdCollection > &, edm::ValueMap< reco::PreIdRef >::Filler &filler)
double minPt_
Minimum transverse momentum and maximum pseudorapidity.
std::string fitterName_
bool disablePreId_
switch to disable the pre-id
virtual void beginRun(const edm::Run &run, const edm::EventSetup &) override
reco::TrackBase::TrackQuality trackQuality_
double clusThreshold_
Cut on the energy of the clusters.
bool produceCkfseed_
Produce the Seed for Ckf tracks?
bool useTmva_
USE OF TMVA.
XYZVectorD XYZVector
spatial vector with cartesian internal representation
Definition: Vector3D.h:30
std::unique_ptr< PFResolutionMap > resMapPhiECAL_
std::vector< edm::EDGetTokenT< reco::TrackCollection > > tracksContainers_
std::map< reco::TrackRef, unsigned > refMap_
Map used to create the TrackRef, PreIdRef value map.
bool producePreId_
Produce the pre-id debugging collection.
std::unique_ptr< PFTrackTransformer > pfTransformer_
PFTrackTransformer.
GoodSeedProducer(const edm::ParameterSet &)
std::string trackerRecHitBuilderName_
std::string smootherName_
edm::EDGetTokenT< reco::PFClusterCollection > pfCLusTagHCLabel_
Resolution Map (resolution as a function of eta and E)
std::string preidgsf_
Name of the Seed(Gsf) Collection.
edm::EDGetTokenT< reco::PFClusterCollection > pfCLusTagECLabel_
double minEp_
Min and MAx allowed values forEoverP.
std::vector< edm::EDGetTokenT< std::vector< Trajectory > > > trajContainers_
Definition: Run.h:41
double PtThresholdSavePredId_
Threshold to save Pre Idinfo.