CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
DCCEventBlock.h
Go to the documentation of this file.
1 // Date : 30/05/2005
2 // Author : N.Almeida (LIP)
3 // falta fazer o update dos block sizes
4 
5 #ifndef DCCTBEVENTBLOCK_HH
6 #define DCCTBEVENTBLOCK_HH
7 
8 
9 #include "DCCBlockPrototype.h"
10 
11 class DCCTBTowerBlock;
12 class DCCTBDataParser;
13 class DCCTBTrailerBlock;
14 class DCCTBTCCBlock;
15 class DCCTBSRPBlock;
16 
18 
19  public :
20 
23  uint32_t * buffer,
24  uint32_t numbBytes,
25  uint32_t wordsToEnd,
26  uint32_t wordBufferOffset = 0 ,
27  uint32_t wordEventOffset = 0
28  );
29 
31 
32  void dataCheck();
33 
34  std::vector< DCCTBTowerBlock * > & towerBlocks();
35  std::vector< DCCTBTCCBlock * > & tccBlocks();
38  std::vector< DCCTBTowerBlock * > towerBlocksById(uint32_t towerId);
39  std::pair<bool,std::string> compare(DCCTBEventBlock * );
40 
41  bool eventHasErrors();
42  std::string eventErrorString();
43  void displayEvent(std::ostream & os=std::cout);
44 
45 
46  protected :
47  enum dccFields{
48 
53 
58 
59  SR_NREAD = 0,
60 
61 
62  BOE = 0x5,
63 
65 
68 
69 
70  };
71 
72  std::vector< DCCTBTowerBlock * > towerBlocks_ ;
73  std::vector< DCCTBTCCBlock * > tccBlocks_ ;
77  bool emptyEvent;
78 };
79 
80 
81 inline std::vector< DCCTBTowerBlock * > & DCCTBEventBlock::towerBlocks() { return towerBlocks_; }
82 inline std::vector< DCCTBTCCBlock * > & DCCTBEventBlock::tccBlocks() { return tccBlocks_; }
85 
86 #endif
std::vector< DCCTBTCCBlock * > tccBlocks_
Definition: DCCEventBlock.h:73
DCCTBSRPBlock * srpBlock()
Definition: DCCEventBlock.h:83
void displayEvent(std::ostream &os=std::cout)
unsigned towerId(const DetId &)
DCCTBTrailerBlock * trailerBlock()
Definition: DCCEventBlock.h:84
std::vector< DCCTBTCCBlock * > & tccBlocks()
Definition: DCCEventBlock.h:82
DCCTBEventBlock(DCCTBDataParser *parser, uint32_t *buffer, uint32_t numbBytes, uint32_t wordsToEnd, uint32_t wordBufferOffset=0, uint32_t wordEventOffset=0)
std::vector< DCCTBTowerBlock * > & towerBlocks()
Definition: DCCEventBlock.h:81
std::pair< bool, std::string > compare(DCCTBEventBlock *)
std::vector< DCCTBTowerBlock * > towerBlocksById(uint32_t towerId)
std::vector< DCCTBTowerBlock * > towerBlocks_
Definition: DCCEventBlock.h:72
std::string eventErrorString()
DCCTBTrailerBlock * dccTrailerBlock_
Definition: DCCEventBlock.h:74
tuple cout
Definition: gather_cfg.py:121
DCCTBSRPBlock * srpBlock_
Definition: DCCEventBlock.h:75
uint32_t wordBufferOffset_
Definition: DCCEventBlock.h:76