|
void | analyze (const edm::Event &, const edm::EventSetup &) override |
|
| GEMPadDigiReader (const edm::ParameterSet &pset) |
|
| ~GEMPadDigiReader () override |
|
| EDAnalyzer ()=default |
|
| EDAnalyzer (const EDAnalyzer &)=delete |
|
SerialTaskQueue * | globalLuminosityBlocksQueue () final |
|
SerialTaskQueue * | globalRunsQueue () final |
|
const EDAnalyzer & | operator= (const EDAnalyzer &)=delete |
|
bool | wantsGlobalLuminosityBlocks () const noexcept final |
|
bool | wantsGlobalRuns () const noexcept final |
|
bool | wantsInputProcessBlocks () const noexcept final |
|
bool | wantsProcessBlocks () const noexcept final |
|
void | callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func) |
|
| EDAnalyzerBase () |
|
ModuleDescription const & | moduleDescription () const |
|
bool | wantsStreamLuminosityBlocks () const noexcept |
|
bool | wantsStreamRuns () const noexcept |
|
| ~EDAnalyzerBase () override |
|
std::vector< ConsumesInfo > | consumesInfo () const |
|
void | convertCurrentProcessAlias (std::string const &processName) |
| Convert "@currentProcess" in InputTag process names to the actual current process name. More...
|
|
| EDConsumerBase () |
|
| EDConsumerBase (EDConsumerBase const &)=delete |
|
| EDConsumerBase (EDConsumerBase &&)=default |
|
ESResolverIndex const * | esGetTokenIndices (edm::Transition iTrans) const |
|
std::vector< ESResolverIndex > 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::array< std::vector< ModuleDescription const *> *, NumBranchTypes > &modulesAll, std::vector< ModuleProcessName > &modulesInPreviousProcesses, ProductRegistry const &preg, std::map< std::string, ModuleDescription const *> const &labelsToDesc, std::string const &processName) const |
|
EDConsumerBase const & | operator= (EDConsumerBase const &)=delete |
|
EDConsumerBase & | operator= (EDConsumerBase &&)=default |
|
bool | registeredToConsume (ProductResolverIndex, bool, BranchType) const |
|
void | selectInputProcessBlocks (ProductRegistry const &productRegistry, ProcessBlockHelperBase const &processBlockHelperBase) |
|
ProductResolverIndexAndSkipBit | uncheckedIndexFrom (EDGetToken) const |
|
void | updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet) |
|
void | updateLookup (eventsetup::ESRecordsToProductResolverIndices const &) |
|
virtual | ~EDConsumerBase () noexcept(false) |
|
|
typedef EDAnalyzerBase | ModuleType |
|
typedef ProductLabels | Labels |
|
static const std::string & | baseType () |
|
static void | fillDescriptions (ConfigurationDescriptions &descriptions) |
|
static void | prevalidate (ConfigurationDescriptions &descriptions) |
|
template<typename ProductType , BranchType B = InEvent> |
EDGetTokenT< ProductType > | consumes (edm::InputTag const &tag) |
|
template<BranchType B = InEvent> |
EDConsumerBaseAdaptor< B > | consumes (edm::InputTag tag) noexcept |
|
EDGetToken | consumes (const TypeToGet &id, edm::InputTag const &tag) |
|
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 ESProduct , typename ESRecord , Transition Tr = Transition::Event> |
auto | esConsumes () |
|
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event> |
auto | esConsumes (ESInputTag const &tag) |
|
template<Transition Tr = Transition::Event> |
constexpr auto | esConsumes () |
|
template<Transition Tr = Transition::Event> |
auto | esConsumes (ESInputTag tag) |
|
template<Transition Tr = Transition::Event> |
ESGetTokenGeneric | esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey) |
| Used with EventSetupRecord::doGet. More...
|
|
template<typename ProductType , BranchType B = InEvent> |
EDGetTokenT< ProductType > | mayConsume (edm::InputTag const &tag) |
|
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
|
template<BranchType B> |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
|
void | resetItemsToGetFrom (BranchType iType) |
|
Definition at line 26 of file GEMPadDigiReader.cc.
Implements edm::one::EDAnalyzerBase.
Definition at line 45 of file GEMPadDigiReader.cc.
References filterCSVwithJSON::copy, gather_cfg::cout, ztail::d, options_cfi::eventSetup, gemDigiToken_, gemPadToken_, geomToken_, AlCaHLTBitMon_ParallelJobs::p, nano_mu_digi_cff::roll, alignCSCRings::s, and DigiDM_cff::strips.
56 if (pads->begin() == pads->end())
59 for (
auto pad_range_it = pads->begin(); pad_range_it != pads->end(); ++pad_range_it) {
60 const auto&
id = (*pad_range_it).first;
64 cout <<
"--------------" << endl;
68 std::map<std::pair<int, int>,
72 auto digis_in_det = digis->get(
id);
73 cout <<
"strip digis in detid: ";
74 for (
auto d = digis_in_det.first;
d != digis_in_det.second; ++
d) {
75 int pad_num = 1 +
static_cast<int>(
roll->padOfStrip(
d->strip()));
76 digi_map[{pad_num,
d->bx()}].push_back(
d->strip());
77 cout <<
" (" <<
d->strip() <<
"," <<
d->bx() <<
") -> " << pad_num;
82 auto pads_range = (*pad_range_it).second;
83 for (
auto p = pads_range.first;
p != pads_range.second; ++
p) {
84 int first_strip =
roll->firstStripInPad(
p->pad());
85 int last_strip =
roll->lastStripInPad(
p->pad());
87 if (
p->pad() < 1 ||
p->pad() >
roll->npads()) {
88 cout <<
" XXXXXXXXXXXXX Problem! " <<
id <<
" has pad digi with too large pad# = " <<
p->pad() << endl;
91 auto&
strips = digi_map[{
p->pad(),
p->bx()}];
92 std::vector<int> pads_strips;
94 strips.begin(),
strips.end(), inserter(pads_strips, pads_strips.end()), [first_strip, last_strip](
int s) {
95 return s < first_strip || s > last_strip;
97 cout <<
id <<
" paddigi(pad,bx) " << *
p <<
" has " << pads_strips.size() <<
" strip digis strips in range [" 98 << first_strip <<
"," << last_strip <<
"]: ";
99 copy(pads_strips.begin(), pads_strips.end(), ostream_iterator<int>(
cout,
" "));
edm::EDGetTokenT< GEMPadDigiCollection > gemPadToken_
edm::EDGetTokenT< GEMDigiCollection > gemDigiToken_
edm::ESGetToken< GEMGeometry, MuonGeometryRecord > geomToken_
strips
#turn off noise in all subdetectors simHcalUnsuppressedDigis.doNoise = False mix.digitizers.hcal.doNoise = False simEcalUnsuppressedDigis.doNoise = False mix.digitizers.ecal.doNoise = False simEcalUnsuppressedDigis.doESNoise = False simSiPixelDigis.AddNoise = False mix.digitizers.pixel.AddNoise = False simSiStripDigis.Noise = False mix.digitizers.strip.AddNoise = False