CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
GsfPFRecTrack.h
Go to the documentation of this file.
1 #ifndef DataFormats_ParticleFlowReco_GsfPFRecTrack_h
2 #define DataFormats_ParticleFlowReco_GsfPFRecTrack_h
3 
6 /* #include "DataFormats/Common/interface/RefToBase.h" */
9 #include <iostream>
10 
11 namespace reco {
12 
23  class GsfPFRecTrack : public PFRecTrack
24  {
25 
26  public:
28  GsfPFRecTrack(double charge,
30  int trackId,
31  const reco::GsfTrackRef& gtrackref,
32  const edm::Ref<std::vector<PFRecTrack> >& kfpfrectrackref);
33 
34 
35 
37  const reco::GsfTrackRef&
38  gsfTrackRef() const {return gsfTrackRef_;}
39 
42  kfPFRecTrackRef() const {return kfPFRecTrackRef_;}
44  void addBrem( const reco::PFBrem& brem);
45 
48 
50  const std::vector<reco::PFBrem>& PFRecBrem()const {return pfBremVec_;}
51 
53  int trackId() const {return trackId_;}
54 
55 
57  void addConvBremPFRecTrackRef(const reco::PFRecTrackRef& pfrectracksref);
58 
60  const std::vector<reco::PFRecTrackRef>& convBremPFRecTrackRef() const {return assoPFRecTrack_;}
61 
62  private:
65 
68 
70  std::vector<reco::PFBrem> pfBremVec_;
71 
73  std::vector<reco::PFRecTrackRef> assoPFRecTrack_;
74 
76  int trackId_;
77  };
78 
79 
80 }
81 
82 #endif
const std::vector< reco::PFRecTrackRef > & convBremPFRecTrackRef() const
Definition: GsfPFRecTrack.h:60
reconstructed track used as an input to particle flow
Definition: PFRecTrack.h:22
const std::vector< reco::PFBrem > & PFRecBrem() const
Definition: GsfPFRecTrack.h:50
void addConvBremPFRecTrackRef(const reco::PFRecTrackRef &pfrectracksref)
PFRecTrackRef from conv Brems
void addBrem(const reco::PFBrem &brem)
add a Bremsstrahlung photon
reco::GsfTrackRef gsfTrackRef_
reference to corresponding gsf track
Definition: GsfPFRecTrack.h:64
void calculateBremPositionREP()
calculate posrep_ once and for all for each brem
std::vector< reco::PFRecTrackRef > assoPFRecTrack_
vector of PFRecTrackRef from conv Brems
Definition: GsfPFRecTrack.h:73
const reco::GsfTrackRef & gsfTrackRef() const
Definition: GsfPFRecTrack.h:38
int trackId_
track id
Definition: GsfPFRecTrack.h:76
int trackId() const
Definition: GsfPFRecTrack.h:53
const edm::Ref< std::vector< PFRecTrack > > & kfPFRecTrackRef() const
Definition: GsfPFRecTrack.h:42
AlgoType_t
different types of fitting algorithms
Definition: PFRecTrack.h:27
unsigned int algoType() const
Definition: PFRecTrack.h:47
std::vector< reco::PFBrem > pfBremVec_
vector of PFBrem (empty for KF tracks)
Definition: GsfPFRecTrack.h:70
reco::PFRecTrackRef kfPFRecTrackRef_
ref to the corresponfing PfRecTrack with KF algo (only for PFRecTrack built from GSF track) ...
Definition: GsfPFRecTrack.h:67
double charge() const
Definition: PFTrack.h:87