CMS 3D CMS Logo

DCCTowerBlock.h
Go to the documentation of this file.
1 // Date : 02/03/2004
2 // Author : N.Almeida (LIP)
3 
4 #ifndef DCCTBTOWERBLOCK_HH
5 #define DCCTBTOWERBLOCK_HH
6 
7 #include <iostream>
8 #include <string>
9 #include <vector>
10 #include <map>
11 #include <utility>
12 
13 #include "DCCBlockPrototype.h"
14 
15 class DCCTBEventBlock;
16 class DCCTBXtalBlock;
17 class DCCTBDataParser;
18 
20 public:
23  const uint32_t *buffer,
24  uint32_t numbBytes,
25  uint32_t wordsToEnd,
26  uint32_t wordEventOffset,
27  uint32_t expectedTowerID);
28 
29  ~DCCTBTowerBlock() override;
30 
31  void parseXtalData();
32  int towerID();
33 
34  std::vector<DCCTBXtalBlock *> &xtalBlocks();
35 
36  std::vector<DCCTBXtalBlock *> xtalBlocksById(uint32_t stripId, uint32_t xtalId);
37 
38 protected:
39  void dataCheck();
40 
41  enum towerFields { BXMASK = 0xFFF, L1MASK = 0xFFF };
42 
43  std::vector<DCCTBXtalBlock *> xtalBlocks_;
45  uint32_t expectedTowerID_;
46 };
47 
48 inline std::vector<DCCTBXtalBlock *> &DCCTBTowerBlock::xtalBlocks() { return xtalBlocks_; }
49 
50 #endif
std::vector< DCCTBXtalBlock * > & xtalBlocks()
Definition: DCCTowerBlock.h:48
~DCCTBTowerBlock() override
std::vector< DCCTBXtalBlock * > xtalBlocks_
Definition: DCCTowerBlock.h:43
uint32_t expectedTowerID_
Definition: DCCTowerBlock.h:45
DCCTBEventBlock * dccBlock_
Definition: DCCTowerBlock.h:44
std::vector< DCCTBXtalBlock * > xtalBlocksById(uint32_t stripId, uint32_t xtalId)
DCCTBTowerBlock(DCCTBEventBlock *dccBlock, DCCTBDataParser *parser, const uint32_t *buffer, uint32_t numbBytes, uint32_t wordsToEnd, uint32_t wordEventOffset, uint32_t expectedTowerID)
Definition: DCCTowerBlock.cc:9