Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:10:23

0001 //_______________________________________
0002 //
0003 //  Class for TMB Logic Analyzer Data
0004 //  CSCTMBScope 9/11/03  B.Mohr
0005 //_______________________________________
0006 //
0007 
0008 #ifndef EventFilter_CSCRawToDigi_CSCTMBScope_h
0009 #define EventFilter_CSCRawToDigi_CSCTMBScope_h
0010 
0011 #ifndef LOCAL_UNPACK
0012 #include <atomic>
0013 #endif
0014 
0015 class CSCTMBScope {
0016 public:
0017   CSCTMBScope() { size_ = 0; }  //default constructor
0018   CSCTMBScope(const uint16_t *buf, int b05Line, int e05Line);
0019   static unsigned short sizeInWords() { return 1538; }
0020   static void setDebug(const bool value) { debug = value; };
0021 
0022   unsigned int data[52];  //scope data for ntuple
0023                           //public for now -- better way?
0024 private:
0025   int UnpackScope(const uint16_t *buf, int b05Line, int e05Line);
0026   int GetPretrig(int ich);
0027 
0028   unsigned int scope_ram[256][6];  //stores all scope data
0029   unsigned short size_;
0030 #ifdef LOCAL_UNPACK
0031   static bool debug;
0032 #else
0033   static std::atomic<bool> debug;
0034 #endif
0035 };
0036 
0037 #endif