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; }
38  bool isTrackerOnly() const { return isTrackerOnly_;}
40  bool isArbitratedMerged() const { return isArbitratedMerged_;}
42 
43 
44 
45 
46  private:
47  TrackBaseRef track_; //ptr to track
48  edm::Ref<std::vector<Trajectory> > traj_; //reference to a trajectory
49  bool isTrackerOnly_; //from general tracks collection
50  bool isArbitratedEcalSeeded_; //from in out or out-in ecal-seeded collections (arbitrated)
51  bool isArbitratedMerged_; //is arbitrated among all input collections
52  bool isArbitratedMergedEcalGeneral_; //is arbitrated among ecal-seeded and generalTracks
53  };
54 }
55 #endif
value_type const * get() const
Definition: RefToBase.h:234
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
const reco::Track * track() const
void setIsArbitratedMerged(bool b)