/
CSCDCCUnpacker.h
53 lines (38 loc) · 1.39 KB
/
CSCDCCUnpacker.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#ifndef CSCDCCUnpacker_h
#define CSCDCCUnpacker_h
/** \class CSCDCCUnpacker
*
*
* \author Alex Tumanov
*/
#include <FWCore/Framework/interface/ConsumesCollector.h>
#include <FWCore/Framework/interface/EDProducer.h>
#include "FWCore/ParameterSet/interface/ParameterSet.h"
#include <FWCore/ParameterSet/interface/ParameterSet.h>
#include "DataFormats/FEDRawData/interface/FEDRawDataCollection.h"
class CSCMonitorInterface;
class CSCDCCUnpacker: public edm::EDProducer {
public:
/// Constructor
CSCDCCUnpacker(const edm::ParameterSet & pset);
/// Destructor
virtual ~CSCDCCUnpacker();
/// Produce digis out of raw data
void produce(edm::Event & e, const edm::EventSetup& c);
/// Visualization of raw data in FED-less events (Robert Harr and Alexander Sakharov)
void visual_raw(int hl,int id, int run, int event, bool fedshort, bool fDump, short unsigned int* buf) const;
private:
bool debug, printEventNumber, goodEvent, useExaminer, unpackStatusDigis;
bool useSelectiveUnpacking, useFormatStatus;
/// Visualization of raw data
bool visualFEDInspect, visualFEDShort, formatedEventDump;
/// Suppress zeros LCTs
bool SuppressZeroLCT;
int numOfEvents;
unsigned int errorMask, examinerMask;
bool instantiateDQM;
CSCMonitorInterface * monitor;
/// Token for consumes interface & access to data
edm::EDGetTokenT<FEDRawDataCollection> i_token;
};
#endif