CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
PFElecTkProducer.h
Go to the documentation of this file.
1 #ifndef PFElecTkProducer_H
2 #define PFElecTkProducer_H
3 
18 
19 class PFTrackTransformer;
20 class GsfTrack;
21 class MagneticField;
22 class TrackerGeometry;
24 
26 
36  public:
37 
39  explicit PFElecTkProducer(const edm::ParameterSet&);
40 
43 
44  private:
45  virtual void beginRun(edm::Run&,const edm::EventSetup&) ;
46  virtual void endRun() ;
47 
49  virtual void produce(edm::Event&, const edm::EventSetup&);
50 
51 
52  int FindPfRef(const reco::PFRecTrackCollection & PfRTkColl,
53  reco::GsfTrack, bool);
54 
55  bool isFifthStep(reco::PFRecTrackRef pfKfTrack);
56 
58 
59  bool resolveGsfTracks(const std::vector<reco::GsfPFRecTrack> &GsfPFVec,
60  unsigned int ngsf,
61  std::vector<unsigned int> &secondaries,
62  const reco::PFClusterCollection & theEClus);
63 
64  float minTangDist(const reco::GsfPFRecTrack& primGsf,
65  const reco::GsfPFRecTrack& secGsf);
66 
67  bool isSameEgSC(const reco::ElectronSeedRef& nSeedRef,
68  const reco::ElectronSeedRef& iSeedRef,
69  bool& bothGsfEcalDriven,
70  float& SCEnergy);
71 
72  bool isSharingEcalEnergyWithEgSC(const reco::GsfPFRecTrack& nGsfPFRecTrack,
73  const reco::GsfPFRecTrack& iGsfPFRecTrack,
74  const reco::ElectronSeedRef& nSeedRef,
75  const reco::ElectronSeedRef& iSeedRef,
76  const reco::PFClusterCollection& theEClus,
77  bool& bothGsfTrackerDriven,
78  bool& nEcalDriven,
79  bool& iEcalDriven,
80  float& nEnergy,
81  float& iEnergy);
82 
83  bool isInnerMost(const reco::GsfTrackRef& nGsfTrack,
84  const reco::GsfTrackRef& iGsfTrack,
85  bool& sameLayer);
86 
87  bool isInnerMostWithLostHits(const reco::GsfTrackRef& nGsfTrack,
88  const reco::GsfTrackRef& iGsfTrack,
89  bool& sameLayer);
90 
92  std::vector<reco::GsfPFRecTrack>& gsfPFRecTrackPrimary,
93  const std::map<unsigned int, std::vector<reco::GsfPFRecTrack> >& MapPrimSec);
94 
95  // ----------member data ---------------------------
108  bool useV0_;
112 
118 
119 
121  bool trajinev_;
123  bool applySel_;
128  // bool useFifthStepSec_;
130  double SCEne_;
131  double detaGsfSC_;
132  double dphiGsfSC_;
134 
139 };
140 #endif
bool trajinev_
Trajectory of GSfTracks in the event?
void createGsfPFRecTrackRef(const edm::OrphanHandle< reco::GsfPFRecTrackCollection > &gsfPfHandle, std::vector< reco::GsfPFRecTrack > &gsfPFRecTrackPrimary, const std::map< unsigned int, std::vector< reco::GsfPFRecTrack > > &MapPrimSec)
ConvBremPFTrackFinder * convBremFinder_
std::string path_mvaWeightFileConvBrem_
bool isFifthStep(reco::PFRecTrackRef pfKfTrack)
virtual void endRun()
bool applySelection(reco::GsfTrack)
int FindPfRef(const reco::PFRecTrackCollection &PfRTkColl, reco::GsfTrack, bool)
~PFElecTkProducer()
Destructor.
reco::GsfPFRecTrack secpftrack_
edm::InputTag pfConv_
edm::InputTag gsfTrackLabel_
edm::InputTag primVtxLabel_
PFTrackTransformer * pfTransformer_
PFTrackTransformer.
const MultiTrajectoryStateMode * mtsMode_
edm::InputTag pfV0_
bool isSameEgSC(const reco::ElectronSeedRef &nSeedRef, const reco::ElectronSeedRef &iSeedRef, bool &bothGsfEcalDriven, float &SCEnergy)
PFElecTkProducer(const edm::ParameterSet &)
Constructor.
edm::InputTag pfEcalClusters_
bool isInnerMostWithLostHits(const reco::GsfTrackRef &nGsfTrack, const reco::GsfTrackRef &iGsfTrack, bool &sameLayer)
bool resolveGsfTracks(const std::vector< reco::GsfPFRecTrack > &GsfPFVec, unsigned int ngsf, std::vector< unsigned int > &secondaries, const reco::PFClusterCollection &theEClus)
edm::InputTag pfTrackLabel_
virtual void beginRun(edm::Run &, const edm::EventSetup &)
reco::GsfPFRecTrack pftrack_
bool useConvBremFinder_
Conv Brem Finder.
std::vector< PFCluster > PFClusterCollection
collection of PFCluster objects
Definition: PFClusterFwd.h:9
bool isSharingEcalEnergyWithEgSC(const reco::GsfPFRecTrack &nGsfPFRecTrack, const reco::GsfPFRecTrack &iGsfPFRecTrack, const reco::ElectronSeedRef &nSeedRef, const reco::ElectronSeedRef &iSeedRef, const reco::PFClusterCollection &theEClus, bool &bothGsfTrackerDriven, bool &nEcalDriven, bool &iEcalDriven, float &nEnergy, float &iEnergy)
virtual void produce(edm::Event &, const edm::EventSetup &)
Produce the PFRecTrack collection.
edm::InputTag pfNuclear_
edm::ParameterSet conf_
float minTangDist(const reco::GsfPFRecTrack &primGsf, const reco::GsfPFRecTrack &secGsf)
std::vector< PFRecTrack > PFRecTrackCollection
collection of PFRecTrack objects
Definition: PFRecTrackFwd.h:9
Definition: Run.h:33
MultiTrajectoryStateTransform mtsTransform_
bool isInnerMost(const reco::GsfTrackRef &nGsfTrack, const reco::GsfTrackRef &iGsfTrack, bool &sameLayer)