CMS 3D CMS Logo

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
List of all members | Public Member Functions | Static Public Member Functions | Private Attributes | Static Private Attributes
HcalDigiToRawuHTR Class Reference
Inheritance diagram for HcalDigiToRawuHTR:
edm::global::EDProducer<> edm::global::EDProducerBase edm::ProducerBase edm::EDConsumerBase edm::ProductRegistryHelper

Public Member Functions

 HcalDigiToRawuHTR (const edm::ParameterSet &)
 
void produce (edm::StreamID, edm::Event &, const edm::EventSetup &) const override
 
 ~HcalDigiToRawuHTR () override
 
- Public Member Functions inherited from edm::global::EDProducer<>
 EDProducer ()=default
 
 EDProducer (const EDProducer &)=delete
 
bool hasAbilityToProduceInBeginLumis () const final
 
bool hasAbilityToProduceInBeginProcessBlocks () const final
 
bool hasAbilityToProduceInBeginRuns () const final
 
bool hasAbilityToProduceInEndLumis () const final
 
bool hasAbilityToProduceInEndProcessBlocks () const final
 
bool hasAbilityToProduceInEndRuns () const final
 
EDProduceroperator= (const EDProducer &)=delete
 
bool wantsGlobalLuminosityBlocks () const final
 
bool wantsGlobalRuns () const final
 
bool wantsInputProcessBlocks () const final
 
bool wantsProcessBlocks () const final
 
bool wantsStreamLuminosityBlocks () const final
 
bool wantsStreamRuns () const final
 
- Public Member Functions inherited from edm::global::EDProducerBase
 EDProducerBase ()
 
ModuleDescription const & moduleDescription () const
 
 ~EDProducerBase () override
 
- Public Member Functions inherited from edm::ProducerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
std::vector< edm::ProductResolverIndex > const & indiciesForPutProducts (BranchType iBranchType) const
 
 ProducerBase ()
 
std::vector< edm::ProductResolverIndex > const & putTokenIndexToProductResolverIndex () const
 
std::vector< bool > const & recordProvenanceList () const
 
void registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &)
 
std::function< void(BranchDescription const &)> registrationCallback () const
 used by the fwk to register list of products More...
 
void resolvePutIndicies (BranchType iBranchType, ModuleToResolverIndicies const &iIndicies, std::string const &moduleLabel)
 
TypeLabelList const & typeLabelList () const
 used by the fwk to register the list of products of this module More...
 
 ~ProducerBase () noexcept(false) override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase &&)=default
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
ESProxyIndex const * esGetTokenIndices (edm::Transition iTrans) const
 
std::vector< ESProxyIndex > const & esGetTokenIndicesVector (edm::Transition iTrans) const
 
std::vector< ESRecordIndex > const & esGetTokenRecordIndicesVector (edm::Transition iTrans) const
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom (BranchType iType) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &)
 
virtual ~EDConsumerBase () noexcept(false)
 

Static Public Member Functions

static void fillDescriptions (edm::ConfigurationDescriptions &descriptions)
 
- Static Public Member Functions inherited from edm::global::EDProducerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 

Private Attributes

int _verbosity
 
std::string electronicsMapLabel_
 
bool packHBTDC_
 
bool premix_
 
int tdc1_
 
int tdc2_
 
edm::ESGetToken< HcalElectronicsMap, HcalElectronicsMapRcdtok_electronicsMap_
 
edm::EDGetTokenT< HBHEDigiCollectiontok_HBHEDigiCollection_
 
edm::EDGetTokenT< HFDigiCollectiontok_HFDigiCollection_
 
edm::EDGetTokenT< HcalDataFrameContainer< QIE10DataFrame > > tok_QIE10DigiCollection_
 
edm::EDGetTokenT< HcalDataFrameContainer< QIE11DataFrame > > tok_QIE11DigiCollection_
 
edm::EDGetTokenT< HcalTrigPrimDigiCollectiontok_TPDigiCollection_
 

Static Private Attributes

static constexpr int tdcmax_ = 49
 

Additional Inherited Members

- Public Types inherited from edm::global::EDProducerBase
typedef EDProducerBase ModuleType
 
- Public Types inherited from edm::ProducerBase
using ModuleToResolverIndicies = std::unordered_multimap< std::string, std::tuple< edm::TypeID const *, const char *, edm::ProductResolverIndex > >
 
typedef ProductRegistryHelper::TypeLabelList TypeLabelList
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Protected Member Functions inherited from edm::ProducerBase
template<class ProductType >
BranchAliasSetterT< ProductType > produces ()
 declare what type of product will make and with which optional label More...
 
template<typename ProductType , BranchType B>
BranchAliasSetterT< ProductType > produces ()
 
template<typename ProductType , Transition B>
BranchAliasSetterT< ProductType > produces ()
 
BranchAliasSetter produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
 
template<BranchType B>
BranchAliasSetter produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
 
template<Transition B>
BranchAliasSetter produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
 
template<typename ProductType , Transition B>
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
template<class ProductType >
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
template<typename ProductType , BranchType B>
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
ProducesCollector producesCollector ()
 
- Protected Member Functions inherited from edm::EDConsumerBase
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
template<BranchType B = InEvent>
EDConsumerBaseAdaptor< B > consumes (edm::InputTag tag) noexcept
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes ()
 
template<Transition Tr = Transition::Event>
constexpr auto esConsumes () noexcept
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
template<Transition Tr = Transition::Event>
auto esConsumes (ESInputTag tag) noexcept
 
template<Transition Tr = Transition::Event>
ESGetTokenGeneric esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey)
 Used with EventSetupRecord::doGet. More...
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 

Detailed Description

Definition at line 43 of file HcalDigiToRawuHTR.cc.

Constructor & Destructor Documentation

◆ HcalDigiToRawuHTR()

HcalDigiToRawuHTR::HcalDigiToRawuHTR ( const edm::ParameterSet iConfig)
explicit

Definition at line 70 of file HcalDigiToRawuHTR.cc.

71  : _verbosity(iConfig.getUntrackedParameter<int>("Verbosity", 0)),
72  tdc1_(iConfig.getParameter<int>("tdc1")),
73  tdc2_(iConfig.getParameter<int>("tdc2")),
74  packHBTDC_(iConfig.getParameter<bool>("packHBTDC")),
75  electronicsMapLabel_(iConfig.getParameter<std::string>("ElectronicsMap")),
80  tok_HBHEDigiCollection_(consumes<HBHEDigiCollection>(iConfig.getParameter<edm::InputTag>("HBHEqie8"))),
81  tok_HFDigiCollection_(consumes<HFDigiCollection>(iConfig.getParameter<edm::InputTag>("HFqie8"))),
82  tok_TPDigiCollection_(consumes<HcalTrigPrimDigiCollection>(iConfig.getParameter<edm::InputTag>("TP"))),
84  esConsumes<HcalElectronicsMap, HcalElectronicsMapRcd>(edm::ESInputTag("", electronicsMapLabel_))),
85  premix_(iConfig.getParameter<bool>("premix")) {
86  produces<FEDRawDataCollection>("");
87  if (!(tdc1_ >= 0 && tdc1_ <= tdc2_ && tdc2_ <= tdcmax_))
88  edm::LogWarning("HcalDigiToRawuHTR") << " incorrect TDC ranges " << tdc1_ << ", " << tdc2_ << ", " << tdcmax_;
89 }

References tdc1_, tdc2_, and tdcmax_.

◆ ~HcalDigiToRawuHTR()

HcalDigiToRawuHTR::~HcalDigiToRawuHTR ( )
override

Definition at line 91 of file HcalDigiToRawuHTR.cc.

91 {}

Member Function Documentation

◆ fillDescriptions()

void HcalDigiToRawuHTR::fillDescriptions ( edm::ConfigurationDescriptions descriptions)
static

Definition at line 286 of file HcalDigiToRawuHTR.cc.

286  {
287  //The following says we do not know what parameters are allowed so do no validation
288  // Please change this to state exactly what you do use, even if it is no parameters
290  desc.addUntracked<int>("Verbosity", 0);
291  desc.add<int>("tdc1", 4);
292  desc.add<int>("tdc2", 20);
293  desc.add<bool>("packHBTDC", false);
294  desc.add<std::string>("ElectronicsMap", "");
295  desc.add<edm::InputTag>("QIE10", edm::InputTag("simHcalDigis", "HFQIE10DigiCollection"));
296  desc.add<edm::InputTag>("QIE11", edm::InputTag("simHcalDigis", "HBHEQIE11DigiCollection"));
297  desc.add<edm::InputTag>("HBHEqie8", edm::InputTag("simHcalDigis"));
298  desc.add<edm::InputTag>("HFqie8", edm::InputTag("simHcalDigis"));
299  desc.add<edm::InputTag>("TP", edm::InputTag("simHcalTriggerPrimitiveDigis"));
300  desc.add<bool>("premix", false);
301  descriptions.add("hcalDigiToRawuHTR", desc);
302  descriptions.addDefault(desc);
303 }

References edm::ConfigurationDescriptions::add(), edm::ConfigurationDescriptions::addDefault(), submitPVResolutionJobs::desc, HLT_FULL_cff::InputTag, and AlCaHLTBitMon_QueryRunRegistry::string.

◆ produce()

void HcalDigiToRawuHTR::produce ( edm::StreamID  id,
edm::Event iEvent,
const edm::EventSetup iSetup 
) const
overridevirtual

Implements edm::global::EDProducerBase.

Definition at line 93 of file HcalDigiToRawuHTR.cc.

93  {
94  using namespace edm;
95 
97  const HcalElectronicsMap* readoutMap = item.product();
98 
99  //collection to be inserted into event
100  std::unique_ptr<FEDRawDataCollection> fed_buffers(new FEDRawDataCollection());
101 
102  //
103  // Extracting All the Collections containing useful Info
104  edm::Handle<QIE10DigiCollection> qie10DigiCollection;
105  edm::Handle<QIE11DigiCollection> qie11DigiCollection;
106  edm::Handle<HBHEDigiCollection> hbheDigiCollection;
107  edm::Handle<HFDigiCollection> hfDigiCollection;
109  iEvent.getByToken(tok_QIE10DigiCollection_, qie10DigiCollection);
110  iEvent.getByToken(tok_QIE11DigiCollection_, qie11DigiCollection);
111  iEvent.getByToken(tok_HBHEDigiCollection_, hbheDigiCollection);
112  iEvent.getByToken(tok_HFDigiCollection_, hfDigiCollection);
114 
115  // first argument is the fedid (minFEDID+crateId)
116  map<int, unique_ptr<HCalFED> > fedMap;
117 
118  // - - - - - - - - - - - - - - - - - - - - - - - - - - -
119  // QIE10 precision data
120  // - - - - - - - - - - - - - - - - - - - - - - - - - - -
121  UHTRpacker uhtrs;
122  // loop over each digi and allocate memory for each
123  if (qie10DigiCollection.isValid()) {
124  const QIE10DigiCollection& qie10dc = *(qie10DigiCollection);
125  for (unsigned int j = 0; j < qie10dc.size(); j++) {
126  QIE10DataFrame qiedf = static_cast<QIE10DataFrame>(qie10dc[j]);
127  DetId detid = qiedf.detid();
128  HcalElectronicsId eid(readoutMap->lookup(detid));
129  int crateId = eid.crateId();
130  int slotId = eid.slot();
131  int uhtrIndex = ((slotId & 0xF) << 8) | (crateId & 0xFF);
132  int presamples = qiedf.presamples();
133 
134  /* Defining a custom index that will encode only
135  the information about the crate and slot of a
136  given channel: crate: bits 0-7
137  slot: bits 8-12 */
138 
139  if (!uhtrs.exist(uhtrIndex)) {
140  uhtrs.newUHTR(uhtrIndex, presamples);
141  }
142  uhtrs.addChannel(uhtrIndex, qiedf, readoutMap, _verbosity);
143  }
144  }
145  // - - - - - - - - - - - - - - - - - - - - - - - - - - -
146  // QIE11 precision data
147  // - - - - - - - - - - - - - - - - - - - - - - - - - - -
148  //UHTRpacker uhtrs;
149  // loop over each digi and allocate memory for each
150  if (qie11DigiCollection.isValid()) {
151  const QIE11DigiCollection& qie11dc = *(qie11DigiCollection);
152  for (unsigned int j = 0; j < qie11dc.size(); j++) {
153  QIE11DataFrame qiedf = static_cast<QIE11DataFrame>(qie11dc[j]);
154  DetId detid = qiedf.detid();
155  HcalElectronicsId eid(readoutMap->lookup(detid));
156  int crateId = eid.crateId();
157  int slotId = eid.slot();
158  int uhtrIndex = ((slotId & 0xF) << 8) | (crateId & 0xFF);
159  int presamples = qiedf.presamples();
160 
161  // convert to hb qie data if hb
162  if (packHBTDC_ && HcalDetId(detid.rawId()).subdet() == HcalSubdetector::HcalBarrel)
163  qiedf = convertHB(qiedf, tdc1_, tdc2_, tdcmax_);
164 
165  if (!uhtrs.exist(uhtrIndex)) {
166  uhtrs.newUHTR(uhtrIndex, presamples);
167  }
168  uhtrs.addChannel(uhtrIndex, qiedf, readoutMap, _verbosity);
169  }
170  }
171  // - - - - - - - - - - - - - - - - - - - - - - - - - - -
172  // HF (QIE8) precision data
173  // - - - - - - - - - - - - - - - - - - - - - - - - - - -
174  // loop over each digi and allocate memory for each
175  if (hfDigiCollection.isValid()) {
176  const HFDigiCollection& qie8hfdc = *(hfDigiCollection);
177  for (HFDigiCollection::const_iterator qiedf = qie8hfdc.begin(); qiedf != qie8hfdc.end(); qiedf++) {
178  DetId detid = qiedf->id();
179 
180  HcalElectronicsId eid(readoutMap->lookup(detid));
181  int crateId = eid.crateId();
182  int slotId = eid.slot();
183  int uhtrIndex = (crateId & 0xFF) | ((slotId & 0xF) << 8);
184  int presamples = qiedf->presamples();
185 
186  if (!uhtrs.exist(uhtrIndex)) {
187  uhtrs.newUHTR(uhtrIndex, presamples);
188  }
189  uhtrs.addChannel(uhtrIndex, qiedf, readoutMap, premix_, _verbosity);
190  }
191  }
192  // - - - - - - - - - - - - - - - - - - - - - - - - - - -
193  // HBHE (QIE8) precision data
194  // - - - - - - - - - - - - - - - - - - - - - - - - - - -
195  // loop over each digi and allocate memory for each
196  if (hbheDigiCollection.isValid()) {
197  const HBHEDigiCollection& qie8hbhedc = *(hbheDigiCollection);
198  for (HBHEDigiCollection::const_iterator qiedf = qie8hbhedc.begin(); qiedf != qie8hbhedc.end(); qiedf++) {
199  DetId detid = qiedf->id();
200 
201  HcalElectronicsId eid(readoutMap->lookup(detid));
202  int crateId = eid.crateId();
203  int slotId = eid.slot();
204  int uhtrIndex = (crateId & 0xFF) | ((slotId & 0xF) << 8);
205  int presamples = qiedf->presamples();
206 
207  if (!uhtrs.exist(uhtrIndex)) {
208  uhtrs.newUHTR(uhtrIndex, presamples);
209  }
210  uhtrs.addChannel(uhtrIndex, qiedf, readoutMap, premix_, _verbosity);
211  }
212  }
213  // - - - - - - - - - - - - - - - - - - - - - - - - - - -
214  // TP data
215  // - - - - - - - - - - - - - - - - - - - - - - - - - - -
216  // loop over each digi and allocate memory for each
217  if (tpDigiCollection.isValid()) {
218  const HcalTrigPrimDigiCollection& qietpdc = *(tpDigiCollection);
219  for (HcalTrigPrimDigiCollection::const_iterator qiedf = qietpdc.begin(); qiedf != qietpdc.end(); qiedf++) {
220  DetId detid = qiedf->id();
221  HcalElectronicsId eid(readoutMap->lookupTrigger(detid));
222 
223  int crateId = eid.crateId();
224  int slotId = eid.slot();
225  int uhtrIndex = (crateId & 0xFF) | ((slotId & 0xF) << 8);
226  int ilink = eid.fiberIndex();
227  int itower = eid.fiberChanId();
228  int channelid = (itower & 0xF) | ((ilink & 0xF) << 4);
229  int presamples = qiedf->presamples();
230 
231  if (!uhtrs.exist(uhtrIndex)) {
232  uhtrs.newUHTR(uhtrIndex, presamples);
233  }
234  uhtrs.addChannel(uhtrIndex, qiedf, channelid, _verbosity);
235  }
236  }
237  // -----------------------------------------------------
238  // -----------------------------------------------------
239  // loop over each uHTR and format data
240  // -----------------------------------------------------
241  // -----------------------------------------------------
242  // loop over each uHTR and format data
243  int idxuhtr = -1;
244  for (UHTRpacker::UHTRMap::iterator uhtr = uhtrs.uhtrs.begin(); uhtr != uhtrs.uhtrs.end(); ++uhtr) {
245  idxuhtr++;
246 
247  uint64_t crateId = (uhtr->first) & 0xFF;
248  uint64_t slotId = (uhtr->first & 0xF00) >> 8;
249 
250  uhtrs.finalizeHeadTail(&(uhtr->second), _verbosity);
251  int fedId = FEDNumbering::MINHCALuTCAFEDID + crateId;
252  if (fedMap.find(fedId) == fedMap.end()) {
253  /* QUESTION: where should the orbit number come from? */
254  fedMap[fedId] =
255  std::make_unique<HCalFED>(fedId, iEvent.id().event(), iEvent.orbitNumber(), iEvent.bunchCrossing());
256  }
257  fedMap[fedId]->addUHTR(uhtr->second, crateId, slotId);
258  } // end loop over uhtr containers
259 
260  /* ------------------------------------------------------
261  ------------------------------------------------------
262  putting together the FEDRawDataCollection
263  ------------------------------------------------------
264  ------------------------------------------------------ */
265  for (map<int, unique_ptr<HCalFED> >::iterator fed = fedMap.begin(); fed != fedMap.end(); ++fed) {
266  int fedId = fed->first;
267 
268  auto& rawData = fed_buffers->FEDData(fedId);
269  fed->second->formatFEDdata(rawData);
270 
271  FEDHeader hcalFEDHeader(rawData.data());
272  hcalFEDHeader.set(rawData.data(), 1, iEvent.id().event(), iEvent.bunchCrossing(), fedId);
273  FEDTrailer hcalFEDTrailer(rawData.data() + (rawData.size() - 8));
274  hcalFEDTrailer.set(rawData.data() + (rawData.size() - 8),
275  rawData.size() / 8,
276  evf::compute_crc(rawData.data(), rawData.size()),
277  0,
278  0);
279 
280  } // end loop over FEDs with data
281 
282  iEvent.put(std::move(fed_buffers));
283 }

References _verbosity, UHTRpacker::addChannel(), edm::SortedCollection< T, SORT >::begin(), evf::compute_crc(), convertHB(), QIE11DataFrame::detid(), QIE10DataFrame::detid(), runTauDisplay::eid, edm::SortedCollection< T, SORT >::end(), UHTRpacker::exist(), l1tstage2_dqm_sourceclient-live_cfg::fedId, EcalFEDMonitor_cfi::FEDRawDataCollection, UHTRpacker::finalizeHeadTail(), edm::EventSetup::getHandle(), HcalBarrel, iEvent, edm::HandleBase::isValid(), B2GTnPMonitor_cfi::item, dqmiolumiharvest::j, HcalElectronicsMap::lookup(), HcalElectronicsMap::lookupTrigger(), genParticles_cff::map, FEDNumbering::MINHCALuTCAFEDID, eostools::move(), UHTRpacker::newUHTR(), packHBTDC_, premix_, hcalTTPDigis_cfi::presamples, QIE11DataFrame::presamples(), QIE10DataFrame::presamples(), l1tstage2_dqm_sourceclient-live_cfg::rawData, DetId::rawId(), FEDHeader::set(), FEDTrailer::set(), edm::DataFrameContainer::size(), tdc1_, tdc2_, tdcmax_, tok_electronicsMap_, tok_HBHEDigiCollection_, tok_HFDigiCollection_, tok_QIE10DigiCollection_, tok_QIE11DigiCollection_, tok_TPDigiCollection_, EcalDeadCellTriggerPrimitiveFilter_cfi::tpDigiCollection, and UHTRpacker::uhtrs.

Member Data Documentation

◆ _verbosity

int HcalDigiToRawuHTR::_verbosity
private

Definition at line 53 of file HcalDigiToRawuHTR.cc.

Referenced by produce().

◆ electronicsMapLabel_

std::string HcalDigiToRawuHTR::electronicsMapLabel_
private

Definition at line 58 of file HcalDigiToRawuHTR.cc.

◆ packHBTDC_

bool HcalDigiToRawuHTR::packHBTDC_
private

Definition at line 56 of file HcalDigiToRawuHTR.cc.

Referenced by produce().

◆ premix_

bool HcalDigiToRawuHTR::premix_
private

Definition at line 67 of file HcalDigiToRawuHTR.cc.

Referenced by produce().

◆ tdc1_

int HcalDigiToRawuHTR::tdc1_
private

Definition at line 54 of file HcalDigiToRawuHTR.cc.

Referenced by HcalDigiToRawuHTR(), and produce().

◆ tdc2_

int HcalDigiToRawuHTR::tdc2_
private

Definition at line 55 of file HcalDigiToRawuHTR.cc.

Referenced by HcalDigiToRawuHTR(), and produce().

◆ tdcmax_

constexpr int HcalDigiToRawuHTR::tdcmax_ = 49
staticconstexprprivate

Definition at line 57 of file HcalDigiToRawuHTR.cc.

Referenced by HcalDigiToRawuHTR(), and produce().

◆ tok_electronicsMap_

edm::ESGetToken<HcalElectronicsMap, HcalElectronicsMapRcd> HcalDigiToRawuHTR::tok_electronicsMap_
private

Definition at line 65 of file HcalDigiToRawuHTR.cc.

Referenced by produce().

◆ tok_HBHEDigiCollection_

edm::EDGetTokenT<HBHEDigiCollection> HcalDigiToRawuHTR::tok_HBHEDigiCollection_
private

Definition at line 62 of file HcalDigiToRawuHTR.cc.

Referenced by produce().

◆ tok_HFDigiCollection_

edm::EDGetTokenT<HFDigiCollection> HcalDigiToRawuHTR::tok_HFDigiCollection_
private

Definition at line 63 of file HcalDigiToRawuHTR.cc.

Referenced by produce().

◆ tok_QIE10DigiCollection_

edm::EDGetTokenT<HcalDataFrameContainer<QIE10DataFrame> > HcalDigiToRawuHTR::tok_QIE10DigiCollection_
private

Definition at line 60 of file HcalDigiToRawuHTR.cc.

Referenced by produce().

◆ tok_QIE11DigiCollection_

edm::EDGetTokenT<HcalDataFrameContainer<QIE11DataFrame> > HcalDigiToRawuHTR::tok_QIE11DigiCollection_
private

Definition at line 61 of file HcalDigiToRawuHTR.cc.

Referenced by produce().

◆ tok_TPDigiCollection_

edm::EDGetTokenT<HcalTrigPrimDigiCollection> HcalDigiToRawuHTR::tok_TPDigiCollection_
private

Definition at line 64 of file HcalDigiToRawuHTR.cc.

Referenced by produce().

HcalDigiToRawuHTR::tok_QIE11DigiCollection_
edm::EDGetTokenT< HcalDataFrameContainer< QIE11DataFrame > > tok_QIE11DigiCollection_
Definition: HcalDigiToRawuHTR.cc:61
HcalDigiToRawuHTR::tok_electronicsMap_
edm::ESGetToken< HcalElectronicsMap, HcalElectronicsMapRcd > tok_electronicsMap_
Definition: HcalDigiToRawuHTR.cc:65
edm::ESInputTag
Definition: ESInputTag.h:87
edm::SortedCollection::const_iterator
std::vector< T >::const_iterator const_iterator
Definition: SortedCollection.h:80
HcalDataFrameContainer
Definition: HcalDigiCollections.h:35
QIE11DataFrame::presamples
constexpr int presamples() const
for backward compatibility
Definition: QIE11DataFrame.h:79
edm
HLT enums.
Definition: AlignableModifier.h:19
QIE10DataFrame::presamples
constexpr int presamples() const
for backward compatibility
Definition: QIE10DataFrame.h:88
HcalDigiToRawuHTR::tdcmax_
static constexpr int tdcmax_
Definition: HcalDigiToRawuHTR.cc:57
HLT_FULL_cff.InputTag
InputTag
Definition: HLT_FULL_cff.py:89353
edm::ParameterSetDescription
Definition: ParameterSetDescription.h:52
l1tstage2_dqm_sourceclient-live_cfg.rawData
rawData
Definition: l1tstage2_dqm_sourceclient-live_cfg.py:162
edm::SortedCollection
Definition: SortedCollection.h:49
edm::ParameterSet::getUntrackedParameter
T getUntrackedParameter(std::string const &, T const &) const
HcalBarrel
Definition: HcalAssistant.h:33
edm::Handle
Definition: AssociativeIterator.h:50
edm::LogWarning
Log< level::Warning, false > LogWarning
Definition: MessageLogger.h:122
HcalElectronicsMap::lookupTrigger
const DetId lookupTrigger(HcalElectronicsId fId) const
brief lookup the trigger logical detid associated with the given electronics id
Definition: HcalElectronicsMap.cc:80
HcalDigiToRawuHTR::tok_HFDigiCollection_
edm::EDGetTokenT< HFDigiCollection > tok_HFDigiCollection_
Definition: HcalDigiToRawuHTR.cc:63
DetId
Definition: DetId.h:17
edm::ConfigurationDescriptions::add
void add(std::string const &label, ParameterSetDescription const &psetDescription)
Definition: ConfigurationDescriptions.cc:57
QIE10DataFrame::detid
constexpr DetId detid() const
Get the detector id.
Definition: QIE10DataFrame.h:76
edm::SortedCollection::begin
const_iterator begin() const
Definition: SortedCollection.h:262
convertHB
QIE11DataFrame convertHB(QIE11DataFrame qiehe, int tdc1, int tdc2, int tdcmax)
Definition: PackerHelp.h:619
edm::ESHandle
Definition: DTSurvey.h:22
HcalElectronicsId
Readout chain identification for Hcal.
Definition: HcalElectronicsId.h:32
EcalDeadCellTriggerPrimitiveFilter_cfi.tpDigiCollection
tpDigiCollection
Definition: EcalDeadCellTriggerPrimitiveFilter_cfi.py:14
hcalTTPDigis_cfi.presamples
presamples
Definition: hcalTTPDigis_cfi.py:9
EcalFEDMonitor_cfi.FEDRawDataCollection
FEDRawDataCollection
Definition: EcalFEDMonitor_cfi.py:6
HcalDigiToRawuHTR::premix_
bool premix_
Definition: HcalDigiToRawuHTR.cc:67
evf::compute_crc
unsigned short compute_crc(unsigned char *buffer, unsigned int bufSize)
Definition: CRC16.h:46
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
UHTRpacker::uhtrs
UHTRMap uhtrs
Definition: PackerHelp.h:315
FEDTrailer
Definition: FEDTrailer.h:14
edm::SortedCollection::end
const_iterator end() const
Definition: SortedCollection.h:267
QIE11DataFrame::id
constexpr edm::DataFrame::id_type id() const
Definition: QIE11DataFrame.h:68
HcalDigiToRawuHTR::tdc2_
int tdc2_
Definition: HcalDigiToRawuHTR.cc:55
HcalDetId
Definition: HcalDetId.h:12
HcalDigiToRawuHTR::tok_QIE10DigiCollection_
edm::EDGetTokenT< HcalDataFrameContainer< QIE10DataFrame > > tok_QIE10DigiCollection_
Definition: HcalDigiToRawuHTR.cc:60
iEvent
int iEvent
Definition: GenABIO.cc:224
runTauDisplay.eid
eid
Definition: runTauDisplay.py:298
HcalDigiToRawuHTR::electronicsMapLabel_
std::string electronicsMapLabel_
Definition: HcalDigiToRawuHTR.cc:58
edm::EventSetup::getHandle
ESHandle< T > getHandle(const ESGetToken< T, R > &iToken) const
Definition: EventSetup.h:148
B2GTnPMonitor_cfi.item
item
Definition: B2GTnPMonitor_cfi.py:147
l1tstage2_dqm_sourceclient-live_cfg.fedId
fedId
Definition: l1tstage2_dqm_sourceclient-live_cfg.py:88
QIE11DataFrame::detid
constexpr DetId detid() const
Get the detector id.
Definition: QIE11DataFrame.h:67
FEDNumbering::MINHCALuTCAFEDID
Definition: FEDNumbering.h:103
HcalElectronicsMap
Definition: HcalElectronicsMap.h:31
submitPVResolutionJobs.desc
string desc
Definition: submitPVResolutionJobs.py:251
eostools.move
def move(src, dest)
Definition: eostools.py:511
DetId::rawId
constexpr uint32_t rawId() const
get the raw id
Definition: DetId.h:57
HcalDigiToRawuHTR::tdc1_
int tdc1_
Definition: HcalDigiToRawuHTR.cc:54
HcalElectronicsMap::lookup
const DetId lookup(HcalElectronicsId fId) const
lookup the logical detid associated with the given electronics id
Definition: HcalElectronicsMap.cc:70
HcalDigiToRawuHTR::_verbosity
int _verbosity
Definition: HcalDigiToRawuHTR.cc:53
QIE10DataFrame
Definition: QIE10DataFrame.h:11
QIE11DataFrame
Definition: QIE11DataFrame.h:11
FEDHeader::set
static void set(unsigned char *header, uint8_t triggerType, uint32_t lvl1ID, uint16_t bxID, uint16_t sourceID, uint8_t version=0, bool moreHeaders=false)
Set all fields in the header.
Definition: FEDHeader.cc:25
UHTRpacker
Definition: PackerHelp.h:310
UHTRpacker::exist
bool exist(int uhtrIndex)
Definition: PackerHelp.h:346
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
UHTRpacker::newUHTR
uhtrData * newUHTR(int uhtrIndex, int ps=0, int orn=0, int bcn=0, uint64_t evt=0)
Definition: PackerHelp.h:443
cond::uint64_t
unsigned long long uint64_t
Definition: Time.h:13
HcalDigiToRawuHTR::packHBTDC_
bool packHBTDC_
Definition: HcalDigiToRawuHTR.cc:56
genParticles_cff.map
map
Definition: genParticles_cff.py:11
edm::EDConsumerBase::consumes
EDGetTokenT< ProductType > consumes(edm::InputTag const &tag)
Definition: EDConsumerBase.h:153
dqmiolumiharvest.j
j
Definition: dqmiolumiharvest.py:66
edm::HandleBase::isValid
bool isValid() const
Definition: HandleBase.h:70
FEDHeader
Definition: FEDHeader.h:14
edm::ConfigurationDescriptions::addDefault
void addDefault(ParameterSetDescription const &psetDescription)
Definition: ConfigurationDescriptions.cc:99
edm::InputTag
Definition: InputTag.h:15
HcalDigiToRawuHTR::tok_HBHEDigiCollection_
edm::EDGetTokenT< HBHEDigiCollection > tok_HBHEDigiCollection_
Definition: HcalDigiToRawuHTR.cc:62
edm::DataFrameContainer::size
size_type size() const
Definition: DataFrameContainer.h:162
HcalDigiToRawuHTR::tok_TPDigiCollection_
edm::EDGetTokenT< HcalTrigPrimDigiCollection > tok_TPDigiCollection_
Definition: HcalDigiToRawuHTR.cc:64
UHTRpacker::finalizeHeadTail
void finalizeHeadTail(uhtrData *uhtr, bool verbosity)
Definition: PackerHelp.h:483
UHTRpacker::addChannel
void addChannel(int uhtrIndex, edm::SortedCollection< HFDataFrame >::const_iterator &qiedf, const HcalElectronicsMap *readoutMap, bool premix, int verbosity=0)
Definition: PackerHelp.h:505