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");
107 putToken_ = produces<FEDRawDataCollection>();
117 cout <<
"Enter in EcalDigiToRaw::produce ... " << endl;
130 params.
lv1_ = counter % (0x1 << 24);
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);
EventNumber_t event() const
T getUntrackedParameter(std::string const &, T const &) const
edm::EDGetTokenT< EESrFlagCollection > labelEESR_
edm::EDGetTokenT< EBDigiCollection > EBDigiToken_
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Ecal readout channel identification [32:20] Unused (so far) [19:13] DCC id [12:6] tower [5:3] strip [...
std::vector< T >::const_iterator const_iterator
int bunchCrossing() const
const_iterator begin() const
int iTT(const EcalTrigTowerDetId &id) const
returns the index of a Trigger Tower within its TCC.
std::pair< int, int > getDCCandSC(EcalScDetId id) const
EcalElectronicsId getElectronicsId(const DetId &id) const
Get the electronics id for this det id.
void produce(edm::StreamID, edm::Event &e, const edm::EventSetup &c) const override
#define DEFINE_FWK_MODULE(type)
const FEDRawData & FEDData(int fedid) const
retrieve data for fed
virtual const DetId & id() const =0
const std::vector< int32_t > listDCCId_
int dccId() const
get the DCC (Ecal Local DCC value not global one) id
const_iterator end() const
edm::EDPutTokenT< FEDRawDataCollection > putToken_
edm::EDGetTokenT< EcalTrigPrimDigiCollection > labelTT_
OrphanHandle< PROD > emplace(EDPutTokenT< PROD > token, Args &&...args)
puts a new product
edm::EDGetTokenT< EEDigiCollection > EEDigiToken_
int DCCid(const EBDetId &id) const
returns the DCC of an EBDetId
boost::transform_iterator< IterHelp, boost::counting_iterator< int > > const_iterator
const_iterator end() const
EcalSubdetector subDet() const
get the subDetector associated to the Trigger Tower
static std::atomic< unsigned int > counter
edm::EDGetTokenT< EBSrFlagCollection > labelEBSR_
EcalDigiToRaw(const edm::ParameterSet &pset)
const BlockFormatter::Config config_
T const * product() const
const_iterator begin() const