Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:04:38

0001 #ifndef DataFormats_L1Monitor_h
0002 #define DataFormats_L1Monitor_h
0003 
0004 /*\class L1MonitorDigi
0005  *\description L1 trigger generic digi for monitoring 
0006  *\author Nuno Leonardo (CERN)
0007  *\date 08.03
0008  */
0009 
0010 #include <ostream>
0011 #include <string>
0012 #include <utility>
0013 
0014 class L1MonitorDigi {
0015 public:
0016   L1MonitorDigi();
0017   L1MonitorDigi(unsigned sid, unsigned cid, unsigned x1, unsigned x2, unsigned x3, unsigned value, unsigned data);
0018   ~L1MonitorDigi();
0019 
0020   void setSid(int sid) { m_sid = sid; }
0021   void setCid(int cid) { m_cid = cid; }
0022   void setLoc(unsigned x1, unsigned x2, unsigned x3) {
0023     m_location[0] = x1;
0024     m_location[1] = x2;
0025     m_location[2] = x3;
0026   }
0027   void setRaw(unsigned raw) { m_data = raw; }
0028   void setValue(unsigned val) { m_value = val; }
0029 
0030   unsigned sid() const { return m_sid; }
0031   unsigned cid() const { return m_cid; }
0032   unsigned x1() const { return m_location[0]; }
0033   unsigned x2() const { return m_location[1]; }
0034   unsigned x3() const { return m_location[2]; }
0035   unsigned raw() const { return m_data; }
0036   unsigned value() const { return m_value; }
0037 
0038   unsigned reset();
0039   bool empty() const;
0040 
0041 private:
0042   unsigned m_sid;
0043   unsigned m_cid;
0044   unsigned m_location[3];
0045   unsigned m_value;
0046   unsigned m_data;
0047   unsigned m_null;
0048 };
0049 
0050 std::ostream& operator<<(std::ostream&, const L1MonitorDigi&);
0051 
0052 #endif