CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
ElectronSeed.h
Go to the documentation of this file.
1 #ifndef ElectronSeed_h
2 #define ElectronSeed_h 1
3 
21 
22 #include <vector>
23 #include <limits>
24 
25 namespace reco
26  {
27 
29  {
30  public :
31 
35 
36  static std::string const & name()
37  {
38  static std::string const name_("ElectronSeed") ;
39  return name_;
40  }
41 
43  ElectronSeed() ;
44  ElectronSeed( const TrajectorySeed & ) ;
46  ElectronSeed * clone() const { return new ElectronSeed(*this) ; }
47  virtual ~ElectronSeed() ;
48 
50  void setCtfTrack( const CtfTrackRef & ) ;
51  void setCaloCluster
52  ( const CaloClusterRef &,
53  unsigned char hitsMask =0,
54  int subDet2 =0, int subDet1 =0,
57  void setNegAttributes
62  void setPosAttributes
67 
69  const CtfTrackRef& ctfTrack() const { return ctfTrack_ ; }
70  const CaloClusterRef& caloCluster() const { return caloCluster_ ; }
71  unsigned char hitsMask() const { return hitsMask_ ; }
72  int subDet2() const { return subDet2_ ; }
73  float dRz2() const { return dRz2_ ; }
74  float dPhi2() const { return dPhi2_ ; }
75  float dRz2Pos() const { return dRz2Pos_ ; }
76  float dPhi2Pos() const { return dPhi2Pos_ ; }
77  int subDet1() const { return subDet1_ ; }
78  float dRz1() const { return dRz1_ ; }
79  float dPhi1() const { return dPhi1_ ; }
80  float dRz1Pos() const { return dRz1Pos_ ; }
81  float dPhi1Pos() const { return dPhi1Pos_ ; }
82  float hoe1() const { return hcalDepth1OverEcal_ ; }
83  float hoe2() const { return hcalDepth2OverEcal_ ; }
84 
87 
88  bool isEcalDriven() const { return isEcalDriven_ ; }
89  bool isTrackerDriven() const { return isTrackerDriven_ ; }
90 
91  private:
92 
95  unsigned char hitsMask_ ;
96  int subDet2_ ;
97  float dRz2_ ;
98  float dPhi2_ ;
99  float dRz2Pos_ ;
100  float dPhi2Pos_ ;
101  int subDet1_ ;
102  float dRz1_ ;
103  float dPhi1_ ;
104  float dRz1Pos_ ;
105  float dPhi1Pos_ ;
106  float hcalDepth1OverEcal_ ; // hcal over ecal seed cluster energy using first hcal depth
107  float hcalDepth2OverEcal_ ; // hcal over ecal seed cluster energy using 2nd hcal depth
110 
111  } ;
112 
113  }
114 
115 #endif
void setCaloCluster(const CaloClusterRef &, unsigned char hitsMask=0, int subDet2=0, int subDet1=0, float hoe1=std::numeric_limits< float >::infinity(), float hoe2=std::numeric_limits< float >::infinity())
Definition: ElectronSeed.cc:71
static std::string const & name()
Definition: ElectronSeed.h:36
float dPhi1() const
Definition: ElectronSeed.h:79
ElectronSeed * clone() const
Definition: ElectronSeed.h:46
edm::Ref< TrackCollection > CtfTrackRef
Definition: ElectronSeed.h:34
const CaloClusterRef & caloCluster() const
Definition: ElectronSeed.h:70
float dPhi1Pos() const
Definition: ElectronSeed.h:81
PropagationDirection
edm::OwnVector< TrackingRecHit > RecHitContainer
Definition: ElectronSeed.h:32
void setCtfTrack(const CtfTrackRef &)
Set additional info.
Definition: ElectronSeed.cc:64
static const double pts[33]
Definition: Constants.h:30
unsigned char hitsMask_
Definition: ElectronSeed.h:95
int TrackCharge
Definition: TrackCharge.h:4
float hoe1() const
Definition: ElectronSeed.h:82
float dPhi2() const
Definition: ElectronSeed.h:74
bool isTrackerDriven() const
Definition: ElectronSeed.h:89
float dRz2Pos() const
Definition: ElectronSeed.h:75
float dRz1() const
Definition: ElectronSeed.h:78
ElectronSeed()
Construction of base attributes.
Definition: ElectronSeed.cc:8
const double infinity
void setNegAttributes(float dRz2=std::numeric_limits< float >::infinity(), float dPhi2=std::numeric_limits< float >::infinity(), float dRz1=std::numeric_limits< float >::infinity(), float dPhi1=std::numeric_limits< float >::infinity())
Definition: ElectronSeed.cc:86
float dRz1Pos() const
Definition: ElectronSeed.h:80
CaloClusterRef caloCluster_
Definition: ElectronSeed.h:94
int subDet1() const
Definition: ElectronSeed.h:77
float hoe2() const
Definition: ElectronSeed.h:83
float dRz2() const
Definition: ElectronSeed.h:73
PTrajectoryStateOnDet const & startingState() const
float dPhi2Pos() const
Definition: ElectronSeed.h:76
TrackCharge getCharge() const
Utility.
Definition: ElectronSeed.h:86
edm::RefToBase< CaloCluster > CaloClusterRef
Definition: ElectronSeed.h:33
TrackCharge charge() const
Charge (-1, 0 or 1)
virtual ~ElectronSeed()
int subDet2() const
Definition: ElectronSeed.h:72
dbl *** dir
Definition: mlp_gen.cc:35
void setPosAttributes(float dRz2=std::numeric_limits< float >::infinity(), float dPhi2=std::numeric_limits< float >::infinity(), float dRz1=std::numeric_limits< float >::infinity(), float dPhi1=std::numeric_limits< float >::infinity())
Definition: ElectronSeed.cc:95
CtfTrackRef ctfTrack_
Definition: ElectronSeed.h:93
const LocalTrajectoryParameters & parameters() const
bool isEcalDriven() const
Definition: ElectronSeed.h:88
const CtfTrackRef & ctfTrack() const
Accessors.
Definition: ElectronSeed.h:69
unsigned char hitsMask() const
Definition: ElectronSeed.h:71