CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
CaloCluster.cc
Go to the documentation of this file.
1 
3 
5  int pt,
6  int eta,
7  int phi)
8  : L1Candidate(p4, pt, eta, phi),
9  m_clusterFlags(0x7FF) // first 11 flags at 1
10 {
11 
12 }
13 
15 {
16 
17 }
18 
20 {
21  if(val)
22  {
23  m_clusterFlags |= (0x1<<flag);
24  }
25  else
26  {
27  m_clusterFlags &= ~(0x1<<flag);
28  }
29 };
30 
32 {
33  m_hwPtEm = pt;
34 }
35 
37 {
38  m_hwPtHad = pt;
39 }
40 
42 {
43  m_hwSeedPt = pt;
44 }
45 
47 {
48  m_fgEta = fgEta;
49 }
50 
52 {
53  m_fgPhi = fgPhi;
54 }
55 
57 {
58  m_hOverE = hOverE;
59 }
60 
62 {
63  m_fgECAL = fgECAL;
64 }
65 
67 {
68  return (m_clusterFlags & (0x1<<flag));
69 };
70 
72 {
73  return ( checkClusterFlag(INCLUDE_SEED) );
74 }
75 
77 {
78  return m_hwPtEm;
79 }
80 
82 {
83  return m_hwPtHad;
84 }
85 
87 {
88  return m_hwSeedPt;
89 }
90 
92 {
93  return m_fgEta;
94 }
95 
97 {
98  return m_fgPhi;
99 }
100 
102 {
103  return m_hOverE;
104 }
105 
107 {
108  return m_fgECAL;
109 }
110 
112 {
113  bool res = false;
114  // Favour high pT
115  if(hwPt()<cl.hwPt()) res = true;
116  else if(hwPt()==cl.hwPt()) {
117  // Favour central clusters
118  if( abs(hwEta())>abs(cl.hwEta()) ) res = true;
119  else if( abs(hwEta())==abs(cl.hwEta()) ){
120  // Favour small phi (arbitrary)
121  if(hwPhi()>cl.hwPhi()) res = true;
122  }
123  }
124  return res;
125 }
int hwPtEm() const
Definition: CaloCluster.cc:76
int fgECAL() const
Definition: CaloCluster.cc:106
int fgPhi() const
Definition: CaloCluster.cc:96
bool isValid() const
Definition: CaloCluster.cc:71
int hwPhi() const
Definition: L1Candidate.cc:79
void setHwSeedPt(int pt)
Definition: CaloCluster.cc:41
bool operator<(const CaloCluster &cl) const
Definition: CaloCluster.cc:111
void setFgECAL(int fgECAL)
Definition: CaloCluster.cc:61
void setHwPtHad(int pt)
Definition: CaloCluster.cc:36
bool checkClusterFlag(ClusterFlag flag) const
Definition: CaloCluster.cc:66
double p4[4]
Definition: TauolaWrapper.h:92
int hOverE() const
Definition: CaloCluster.cc:101
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
int hwEta() const
Definition: L1Candidate.cc:74
int hwSeedPt() const
Definition: CaloCluster.cc:86
void setHOverE(int hOverE)
Definition: CaloCluster.cc:56
void setHwPtEm(int pt)
Definition: CaloCluster.cc:31
int hwPt() const
Definition: L1Candidate.cc:69
int hwPtHad() const
Definition: CaloCluster.cc:81
void setFgPhi(int fgPhi)
Definition: CaloCluster.cc:51
math::XYZTLorentzVector LorentzVector
Lorentz vector.
Definition: Candidate.h:37
Geom::Phi< T > phi() const
void setFgEta(int fgEta)
Definition: CaloCluster.cc:46
void setClusterFlag(ClusterFlag flag, bool val=true)
Definition: CaloCluster.cc:19
int fgEta() const
Definition: CaloCluster.cc:91