CMS 3D CMS Logo

ConversionTrack.h
Go to the documentation of this file.
1 //--------------------------------------------------------------------------------------------------
2 //
3 // ConversionTrack
4 //
5 // Wrapper class holding a pointer to reco::Track plus some various arbitration flags used to
6 // keep track of overlaps in photon conversion reconstruction. This class is intended to be used
7 // to build mixed collections of Track and GsfTracks from different sources and reconstruction
8 // algorithms to be used for inclusive conversion reconstruction.
9 //
10 // Authors: J.Bendavid
11 //--------------------------------------------------------------------------------------------------
12 
13 #ifndef EgammaReco_ConversionTrack_h
14 #define EgammaReco_ConversionTrack_h
15 
17 class Trajectory;
18 namespace reco
19 {
21  {
22  public:
28  virtual ~ConversionTrack() {}
29 
30  const reco::Track *track() const { return track_.get(); }
31  const TrackBaseRef &trackRef() const { return track_; }
32  const edm::Ref<std::vector<Trajectory> > &trajRef() const { return traj_; }
33  void setTrajRef(edm::Ref<std::vector<Trajectory> > tr) { traj_ = tr; }
34  void setIsTrackerOnly(bool b) { isTrackerOnly_ = b; }
39  bool isTrackerOnly() const { return isTrackerOnly_;}
41  bool isArbitratedMerged() const { return isArbitratedMerged_;}
43  bool isGsfTrackOpen() const { return isGsfTrackOpen_;}
44 
45 
46 
47  private:
48  TrackBaseRef track_; //ptr to track
49  edm::Ref<std::vector<Trajectory> > traj_; //reference to a trajectory
50  bool isTrackerOnly_; //from general tracks collection
51  bool isGsfTrackOpen_; //from gsf track open sequence for low pt electrons for B
52  bool isArbitratedEcalSeeded_; //from in out or out-in ecal-seeded collections (arbitrated)
53  bool isArbitratedMerged_; //is arbitrated among all input collections
54  bool isArbitratedMergedEcalGeneral_; //is arbitrated among ecal-seeded and generalTracks
55  };
56 }
57 #endif
value_type const * get() const
Definition: RefToBase.h:234
void setIsGsfTrackOpen(bool b)
void setIsArbitratedMergedEcalGeneral(bool b)
bool isArbitratedEcalSeeded() const
void setTrajRef(edm::Ref< std::vector< Trajectory > > tr)
void setIsArbitratedEcalSeeded(bool b)
bool isArbitratedMerged() const
edm::Ref< std::vector< Trajectory > > traj_
const edm::Ref< std::vector< Trajectory > > & trajRef() const
void setIsTrackerOnly(bool b)
bool isArbitratedMergedEcalGeneral() const
ConversionTrack(const TrackBaseRef &trk)
bool isTrackerOnly() const
double b
Definition: hdecay.h:120
fixed size matrix
const TrackBaseRef & trackRef() const
bool isGsfTrackOpen() const
const reco::Track * track() const
void setIsArbitratedMerged(bool b)