00001 // Date : 30/05/2005 00002 // Author : N.Almeida (LIP) 00003 00004 #ifndef DCCTBXTALBLOCK_HH 00005 #define DCCTBXTALBLOCK_HH 00006 00007 #include "DCCBlockPrototype.h" 00008 class DCCTBDataParser; 00009 00010 class DCCTBXtalBlock : public DCCTBBlockPrototype { 00011 00012 public : 00013 00014 DCCTBXtalBlock( 00015 DCCTBDataParser * parser, 00016 uint32_t * buffer, 00017 uint32_t numbBytes, 00018 uint32_t wordsToEnd, 00019 uint32_t wordEventOffset, 00020 uint32_t expectedXtalID , 00021 uint32_t expectedStripID 00022 ); 00023 00024 void dataCheck(); 00025 int xtalID(); 00026 int stripID(); 00027 std::vector<int> xtalDataSamples(); 00028 00029 protected : 00030 00031 void increment(uint32_t numb); 00032 00033 enum xtalBlockFields{ BPOSITION_BLOCKID = 30, BLOCKID = 3}; 00034 00035 uint32_t expectedXtalID_; 00036 uint32_t expectedStripID_; 00037 00038 00039 }; 00040 #endif