CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_10_patch2/src/EventFilter/GctRawToDigi/src/GctBlockHeader.h

Go to the documentation of this file.
00001 #ifndef GctBlockHeader_h_
00002 #define GctBlockHeader_h_
00003 
00004 
00014 // C++ headers
00015 #include <ostream>
00016 #include <stdint.h>
00017 
00018 class GctBlockHeader
00019 {
00020 public:
00021  
00022    /* PUBLIC METHODS */
00023  
00025 
00026   GctBlockHeader(uint32_t blockId,
00027                  uint32_t blockLength,
00028                  uint32_t nSamples,
00029                  uint32_t bxId,
00030                  uint32_t eventId,
00031                  bool valid);
00032   
00034   ~GctBlockHeader() {};
00035   
00037   uint32_t blockId() const { return m_blockId; }
00038 
00040   uint32_t blockLength() const { return m_blockLength; }
00041 
00043   uint32_t nSamples() const { return m_nSamples; }
00044   
00046   uint32_t bxId() const { return m_bxId; }
00047 
00049   uint32_t eventId() const { return m_eventId; }
00050 
00052   bool valid() const { return m_valid; }
00053 
00054 
00055 private:
00056 
00057   /* PRIVATE METHODS */  
00058 
00059 
00060 
00061   /* PRIVATE MEMBER DATA */
00062   
00063   uint32_t m_blockId;  
00064   
00065   uint32_t m_blockLength;  
00066 
00067   uint32_t m_nSamples;  
00068   
00069   uint32_t m_bxId;  
00070   
00071   uint32_t m_eventId;  
00072   
00073   bool m_valid; 
00074 
00075 };
00076 
00077 #include <vector>
00078 typedef std::vector<GctBlockHeader> GctBlockHeaderCollection;
00079 
00080 std::ostream& operator<<(std::ostream& os, const GctBlockHeader& h);
00081 
00082 #endif /* GctBlockHeader_h_ */