CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
ConversionTrack.h
Go to the documentation of this file.
1 //--------------------------------------------------------------------------------------------------
2 // $Id: ConversionTrack.h,v 1.6 2010/11/22 01:54:46 bendavid Exp $
3 //
4 // ConversionTrack
5 //
6 // Wrapper class holding a pointer to reco::Track plus some various arbitration flags used to
7 // keep track of overlaps in photon conversion reconstruction. This class is intended to be used
8 // to build mixed collections of Track and GsfTracks from different sources and reconstruction
9 // algorithms to be used for inclusive conversion reconstruction.
10 //
11 // Authors: J.Bendavid
12 //--------------------------------------------------------------------------------------------------
13 
14 #ifndef EgammaReco_ConversionTrack_h
15 #define EgammaReco_ConversionTrack_h
16 
18 
19 class Trajectory;
20 namespace reco
21 {
23  {
24  public:
30  virtual ~ConversionTrack() {}
31 
32  const reco::Track *track() const { return track_.get(); }
33  const TrackBaseRef &trackRef() const { return track_; }
34  const edm::Ref<std::vector<Trajectory> > &trajRef() const { return traj_; }
35  void setTrajRef(edm::Ref<std::vector<Trajectory> > tr) { traj_ = tr; }
36  void setIsTrackerOnly(bool b) { isTrackerOnly_ = b; }
40  bool isTrackerOnly() const { return isTrackerOnly_;}
42  bool isArbitratedMerged() const { return isArbitratedMerged_;}
44 
45 
46 
47 
48  private:
49  TrackBaseRef track_; //ptr to track
50  edm::Ref<std::vector<Trajectory> > traj_; //reference to a trajectory
51  bool isTrackerOnly_; //from general tracks collection
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
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
const TrackBaseRef & trackRef() const
value_type const * get() const
Definition: RefToBase.h:212
const reco::Track * track() const
void setIsArbitratedMerged(bool b)