34 #define BEG_DCC_FED_ID 0
35 #define END_DCC_FED_ID 35
36 #define BEG_DCC_FED_ID_GLOBAL 600
37 #define END_DCC_FED_ID_GLOBAL 670
39 #define ECAL_SUPERVISOR_FED_ID 40
40 #define TBCAMAC_FED_ID 41
41 #define TABLE_FED_ID 42
42 #define MATACQ_FED_ID 43
53 produces<EBDigiCollection>(
"ebDigis");
54 produces<EcalMatacqDigiCollection>();
55 produces<EcalPnDiodeDigiCollection>();
56 produces<EcalRawDataCollection>();
57 produces<EcalTrigPrimDigiCollection>(
"EBTT");
60 produces<EcalTBHodoscopeRawInfo>();
61 produces<EcalTBTDCRawInfo>();
62 produces<EcalTBEventHeader>();
65 produces<EBDetIdCollection>(
"EcalIntegrityDCCSizeErrors");
66 produces<EcalElectronicsIdCollection>(
"EcalIntegrityTTIdErrors");
67 produces<EcalElectronicsIdCollection>(
"EcalIntegrityBlockSizeErrors");
68 produces<EBDetIdCollection>(
"EcalIntegrityChIdErrors");
69 produces<EBDetIdCollection>(
"EcalIntegrityGainErrors");
70 produces<EBDetIdCollection>(
"EcalIntegrityGainSwitchErrors");
73 produces<EcalElectronicsIdCollection>(
"EcalIntegrityMemTtIdErrors");
74 produces<EcalElectronicsIdCollection>(
"EcalIntegrityMemBlockSize");
75 produces<EcalElectronicsIdCollection>(
"EcalIntegrityMemChIdErrors");
76 produces<EcalElectronicsIdCollection>(
"EcalIntegrityMemGainErrors");
178 (*productHeader).setSmInBeam(
id);
182 *productTTId, *productBlockSize,
183 *productChId, *productGain, *productGainSwitch,
184 *productMemTtId, *productMemBlockSize,
185 *productMemGain, *productMemChIdErrors,
186 *productTriggerPrimitives);
187 int runType = (*productDCCHeader)[0].getRunType();
189 (*productHeader).setTriggerMask(0x1);
190 else if ( runType == 4 || runType == 5 || runType == 6 )
191 (*productHeader).setTriggerMask(0x2000);
192 else if ( runType == 9 || runType == 10 || runType == 11 )
193 (*productHeader).setTriggerMask(0x800);
194 LogDebug(
"EcalDCCTBUnpackingModule") <<
"Event type is " << (*productHeader).eventType() <<
" dbEventType " << (*productHeader).dbEventType();
210 e.
put(productEb,
"ebDigis");
211 e.
put(productMatacq);
212 e.
put(productDCCHeader);
213 e.
put(productTriggerPrimitives,
"EBTT");
215 e.
put(productDCCSize,
"EcalIntegrityDCCSizeErrors");
216 e.
put(productTTId,
"EcalIntegrityTTIdErrors");
217 e.
put(productBlockSize,
"EcalIntegrityBlockSizeErrors");
218 e.
put(productChId,
"EcalIntegrityChIdErrors");
219 e.
put(productGain,
"EcalIntegrityGainErrors");
220 e.
put(productGainSwitch,
"EcalIntegrityGainSwitchErrors");
222 e.
put(productMemTtId,
"EcalIntegrityMemTtIdErrors");
223 e.
put(productMemBlockSize,
"EcalIntegrityMemBlockSize");
224 e.
put(productMemChIdErrors,
"EcalIntegrityMemChIdErrors");
225 e.
put(productMemGain,
"EcalIntegrityMemGainErrors");
229 e.
put(productHeader);
232 std::cout <<
"[EcalDCCTBUnpackingModule] " << e.
what() << std::endl;
234 std::cout <<
"[EcalDCCTBUnpackingModule] " << e.
what() << std::endl;
236 std::cout <<
"[EcalDCCTBUnpackingModule] " << e.
what() << std::endl;
238 std::cout <<
"[EcalDCCTBUnpackingModule] Unknown exception ..." << std::endl;
virtual char const * what() const
const char * what() const
edm::SortedCollection< EcalMatacqDigi > EcalMatacqDigiCollection
void produce(edm::Event &e, const edm::EventSetup &c)
Produce digis out of raw data.
bool getByType(Handle< PROD > &result) const
MatacqTBDataFormatter * matacqFormatter_
size_t size() const
Lenght of the data buffer in bytes.
EcalDCCTBUnpackingModule(const edm::ParameterSet &pset)
Constructor.
TableDataFormatter * tableFormatter_
OrphanHandle< PROD > put(std::auto_ptr< PROD > product)
Put a new product.
EcalSupervisorTBDataFormatter * ecalSupervisorFormatter_
virtual ~EcalDCCTBUnpackingModule()
Destructor.
EcalTBDaqFormatter * formatter_
#define BEG_DCC_FED_ID_GLOBAL
CamacTBDataFormatter * camacTBformatter_
char data[epos_bytes_allocation]
const char * what() const
#define ECAL_SUPERVISOR_FED_ID
#define END_DCC_FED_ID_GLOBAL