CMS 3D CMS Logo

DCCSCBlock.h
Go to the documentation of this file.
1 #ifndef DCCSCBLOCK_HH
2 #define DCCSCBLOCK_HH
3 
4 #include <iostream>
5 #include <memory>
6 #include <cstdint>
7 #include <string>
8 #include <vector>
9 #include <map>
10 #include <utility>
11 
16 
17 #include "DCCFEBlock.h"
18 
19 class DCCEventBlock;
20 class DCCDataUnpacker;
21 
22 class DCCSCBlock : public DCCFEBlock {
23  //to implement
24 
25 public:
26  DCCSCBlock(DCCDataUnpacker *u, EcalElectronicsMapper *m, DCCEventBlock *e, bool unpack, bool forceToKeepFRdata);
27 
28  void updateCollectors() override;
29 
30 protected:
31  int unpackXtalData(unsigned int stripID, unsigned int xtalID) override;
32  void fillEcalElectronicsError(std::unique_ptr<EcalElectronicsIdCollection> *) override;
33 
36 
37  std::unique_ptr<EEDigiCollection> *digis_;
38 
39  // to restructure as common collections to DCCTowerBlock, to inherit from DCCFEBlock
40  std::unique_ptr<EEDetIdCollection> *invalidGains_;
41  std::unique_ptr<EEDetIdCollection> *invalidGainsSwitch_;
42  std::unique_ptr<EEDetIdCollection> *invalidChIds_;
43 };
44 
45 #endif
EEDataFrame * pDFId_
Definition: DCCSCBlock.h:35
std::unique_ptr< EEDetIdCollection > * invalidGainsSwitch_
Definition: DCCSCBlock.h:41
int unpack(const uint64_t **data, unsigned int *dwToEnd, bool zs, unsigned int expectedTowerID)
Definition: DCCFEBlock.cc:22
void updateCollectors() override
Definition: DCCSCBlock.cc:11
DCCSCBlock(DCCDataUnpacker *u, EcalElectronicsMapper *m, DCCEventBlock *e, bool unpack, bool forceToKeepFRdata)
Definition: DCCSCBlock.cc:7
EEDetId * pDetId_
Definition: DCCSCBlock.h:34
std::unique_ptr< EEDetIdCollection > * invalidChIds_
Definition: DCCSCBlock.h:42
std::unique_ptr< EEDetIdCollection > * invalidGains_
Definition: DCCSCBlock.h:40
int unpackXtalData(unsigned int stripID, unsigned int xtalID) override
Definition: DCCSCBlock.cc:22
std::unique_ptr< EEDigiCollection > * digis_
Definition: DCCSCBlock.h:37
void fillEcalElectronicsError(std::unique_ptr< EcalElectronicsIdCollection > *) override
Definition: DCCSCBlock.cc:269