|
|
Go to the documentation of this file.
86 iConfig.getUntrackedParameter<
bool>(
"debug"),
87 iConfig.getUntrackedParameter<
bool>(
"DoBarrel"),
88 iConfig.getUntrackedParameter<
bool>(
"DoEndCap"),
89 iConfig.getUntrackedParameter<
bool>(
"WriteTCCBlock"),
90 iConfig.getUntrackedParameter<
bool>(
"WriteSRFlags"),
91 iConfig.getUntrackedParameter<
bool>(
"WriteTowerBlock")} {
92 auto label = iConfig.getParameter<
string>(
"Label");
93 auto instanceNameEB = iConfig.getParameter<
string>(
"InstanceEB");
94 auto instanceNameEE = iConfig.getParameter<
string>(
"InstanceEE");
99 EBDigiToken_ = consumes<EBDigiCollection>(EBlabel);
100 EEDigiToken_ = consumes<EEDigiCollection>(EElabel);
102 labelTT_ = consumes<EcalTrigPrimDigiCollection>(iConfig.getParameter<
edm::InputTag>(
"labelTT"));
104 labelEBSR_ = consumes<EBSrFlagCollection>(iConfig.getParameter<
edm::InputTag>(
"labelEBSRFlags"));
105 labelEESR_ = consumes<EESrFlagCollection>(iConfig.getParameter<
edm::InputTag>(
"labelEESRFlags"));
107 putToken_ = produces<FEDRawDataCollection>();
117 cout <<
"Enter in EcalDigiToRaw::produce ... " << endl;
138 Headerblockformatter.
DigiToRaw(&productRawData);
149 cout <<
"Creation of the TCC block " << endl;
163 int iDCC = TheMapping->
DCCid(detid);
169 TCCblockformatter.
DigiToRaw(trigprim, rawdata, TheMapping);
177 cout <<
" Process the SR flags " << endl;
188 int Dccid = TheMapping->
DCCid(
id);
189 int DCC_Channel = TheMapping->
iTT(
id);
193 cout <<
"will process SRblockformatter_ for FEDid " <<
dec << FEDid << endl;
196 Headerblockformatter.
print(rawdata);
197 SRblockformatter.
DigiToRaw(Dccid, DCC_Channel,
flag, rawdata);
210 int Dccid = ind.first;
211 int DCC_Channel = ind.second;
215 SRblockformatter.
DigiToRaw(Dccid, DCC_Channel,
flag, rawdata);
229 cout <<
"Creation of the TowerBlock ... Barrel case " << endl;
233 const EBDetId& ebdetid = it->id();
234 int DCCid = TheMapping->
DCCid(ebdetid);
237 Towerblockformatter.
DigiToRaw(dataframe, rawdata, TheMapping);
243 cout <<
"Creation of the TowerBlock ... EndCap case " << endl;
247 const EEDetId& eedetid = it->id();
249 int DCCid = elid.
dccId();
252 Towerblockformatter.
DigiToRaw(dataframe, rawdata, TheMapping);
260 map<int, map<int, int> >& FEDorder = Towerblockformatter.
GetFEDorder();
262 Headerblockformatter.
CleanUp(&productRawData, &FEDorder);
272 Towerblockformatter.
EndEvent(&productRawData);
T const * product() const
std::vector< T >::const_iterator const_iterator
boost::transform_iterator< IterHelp, boost::counting_iterator< int > > const_iterator
int iTT(const EcalTrigTowerDetId &id) const
returns the index of a Trigger Tower within its TCC.
edm::EDGetTokenT< EBSrFlagCollection > labelEBSR_
EcalDigiToRaw(const edm::ParameterSet &pset)
edm::EDGetTokenT< EEDigiCollection > EEDigiToken_
edm::EDGetTokenT< EBDigiCollection > EBDigiToken_
T getUntrackedParameter(std::string const &, T const &) const
int dccId() const
get the DCC (Ecal Local DCC value not global one) id
#define DEFINE_FWK_MODULE(type)
const_iterator begin() const
EcalElectronicsId getElectronicsId(const DetId &id) const
Get the electronics id for this det id.
Ecal readout channel identification [32:20] Unused (so far) [19:13] DCC id [12:6] tower [5:3] strip [...
const FEDRawData & FEDData(int fedid) const
retrieve data for fed
std::pair< int, int > getDCCandSC(EcalScDetId id) const
virtual const DetId & id() const =0
const_iterator end() const
const_iterator begin() const
The iterator returned can not safely be used across threads.
int DCCid(const EBDetId &id) const
returns the DCC of an EBDetId
static std::atomic< unsigned int > counter
EcalSubdetector subDet() const
get the subDetector associated to the Trigger Tower
const std::vector< int32_t > listDCCId_
void produce(edm::StreamID, edm::Event &e, const edm::EventSetup &c) const override
const BlockFormatter::Config config_
edm::EDPutTokenT< FEDRawDataCollection > putToken_
const_iterator end() const
edm::EDGetTokenT< EESrFlagCollection > labelEESR_
edm::EDGetTokenT< EcalTrigPrimDigiCollection > labelTT_