CMS 3D CMS Logo

L1GctHtMiss.h
Go to the documentation of this file.
1 #ifndef L1GCTHTMISS_H
2 #define L1GCTHTMISS_H
3 
4 #include <ostream>
5 #include <cstdint>
6 
13 
16 class L1GctHtMiss {
17  public:
18 
24  enum numberOfBits {
34  };
35 
36  L1GctHtMiss();
37 
39  L1GctHtMiss(uint32_t rawData);
40 
42  L1GctHtMiss(uint32_t rawData, int16_t bx);
43 
44  L1GctHtMiss(unsigned et, unsigned phi, bool oflow);
45 
46  L1GctHtMiss(unsigned et, unsigned phi, bool oflow, int16_t bx);
47 
48  virtual ~L1GctHtMiss();
49 
51  std::string name() const { return "HtMiss"; }
52 
54  bool empty() const { return false; }
55 
57  uint32_t raw() const { return m_data; }
58 
60  unsigned et() const { return (m_data >> kHtMissMagShift) & kHtMissMagMask; }
61 
63  bool overFlow() const { return (m_data & kHtMissOFlowBit)!=0; }
64 
66  unsigned phi() const { return (m_data >> kHtMissPhiShift) & kHtMissPhiMask; }
67 
69  int16_t bx() const { return m_bx; }
70 
72  int operator==(const L1GctHtMiss& e) const { return m_data==e.raw(); }
73 
75  int operator!=(const L1GctHtMiss& e) const { return !(*this == e); }
76 
77  private:
78 
79  uint32_t m_data;
80  int16_t m_bx;
81 
82 };
83 
85 std::ostream& operator<<(std::ostream& s, const L1GctHtMiss& c);
86 
87 
88 #endif
uint32_t raw() const
get the data
Definition: L1GctHtMiss.h:57
int operator!=(const L1GctHtMiss &e) const
inequality operator
Definition: L1GctHtMiss.h:75
std::string name() const
name method
Definition: L1GctHtMiss.h:51
int16_t m_bx
Definition: L1GctHtMiss.h:80
bool overFlow() const
get the overflow
Definition: L1GctHtMiss.h:63
int16_t bx() const
get bunch-crossing index
Definition: L1GctHtMiss.h:69
int operator==(const L1GctHtMiss &e) const
equality operator
Definition: L1GctHtMiss.h:72
unsigned et() const
get the magnitude
Definition: L1GctHtMiss.h:60
virtual ~L1GctHtMiss()
Definition: L1GctHtMiss.cc:41
Persistable copy of missing Et measured at Level-1.
Definition: L1GctHtMiss.h:16
bool empty() const
empty method (= false; missing Et is always calculated)
Definition: L1GctHtMiss.h:54
uint32_t m_data
Definition: L1GctHtMiss.h:79
std::ostream & operator<<(std::ostream &s, const L1GctHtMiss &c)
Pretty-print operator for L1GctHtMiss.
Definition: L1GctHtMiss.cc:44
unsigned phi() const
get the Et
Definition: L1GctHtMiss.h:66