39 m_printProviders(iPS.getUntrackedParameter<bool>(
"printProviders"))
63 desc.
addUntracked<
bool>(
"printProviders",
false)->setComment(
64 "If 'true' also print which ES module provides the data");
65 desc.
addUntracked<
bool>(
"checkAfterBeginRun",
false)->setComment(
66 "If 'true' check for retrieved data after each begin run is processed");
67 desc.
addUntracked<
bool>(
"checkAfterBeginLumi",
false)->setComment(
68 "If 'true' check for retrieved data after each begin lumi is processed");
69 desc.
addUntracked<
bool>(
"checkAfterEvent",
true)->setComment(
70 "If 'true' check for retrieved data after an event is processed");
71 descriptions.
add(
"PrintEventSetupDataRetrieval", desc);
72 descriptions.
setComment(
"This service reports when EventSetup data is retrieved by a module in the job.");
110 for(std::vector<eventsetup::EventSetupRecordKey>::const_iterator it =
m_recordKeys.begin(), itEnd =
m_recordKeys.end();
118 itRetrievedData =
m_retrievedDataMap.insert(std::make_pair(*it,std::pair<
unsigned long long, std::map<eventsetup::DataKey,bool> >())).first;
120 std::vector<eventsetup::DataKey>
keys;
122 for(std::vector<eventsetup::DataKey>::const_iterator itData = keys.begin(), itDataEnd = keys.end();
125 itRetrievedData->second.second.insert(std::make_pair(*itData,
false));
131 for(std::map<eventsetup::DataKey,bool>::iterator itDatum = retrievedData.second.second.begin(), itDatumEnd = retrievedData.second.second.end();
132 itDatum != itDatumEnd;
134 itDatum->second =
false;
138 for(std::map<eventsetup::DataKey,bool>::iterator itDatum = retrievedData.second.second.begin(), itDatumEnd = retrievedData.second.second.end();
139 itDatum != itDatumEnd;
141 bool wasGotten = r->
wasGotten(itDatum->first);
143 if(wasGotten != itDatum->second) {
144 itDatum->second = wasGotten;
148 edm::LogSystem(
"PrintEventSetupDataRetrieval")<<
"Retrieved> Record:"<<it->name()<<
" data:"<<itDatum->first.type().name()<<
" '"<<itDatum->first.name().value()
151 edm::LogSystem(
"PrintEventSetupDataRetrieval")<<
"Retrieved> Record:"<<it->name()<<
" data:"<<itDatum->first.type().name()<<
" '"<<itDatum->first.name().value()<<
"'";
void watchPostBeginRun(PostBeginRun::slot_type const &iSlot)
unsigned long long cacheIdentifier() const
T getUntrackedParameter(std::string const &, T const &) const
void fillRegisteredDataKeys(std::vector< DataKey > &oToFill) const
clears the oToFill vector and then fills it with the keys for all registered data keys ...
ParameterDescriptionBase * addUntracked(U const &iLabel, T const &value)
Container::value_type value_type
const eventsetup::EventSetupRecord * find(const eventsetup::EventSetupRecordKey &) const
RetrievedDataMap m_retrievedDataMap
void watchPostProcessEvent(PostProcessEvent::slot_type const &iSlot)
std::vector< eventsetup::EventSetupRecordKey > m_recordKeys
void postBeginLumi(LuminosityBlock const &, EventSetup const &)
void postBeginRun(Run const &, EventSetup const &)
void fillAvailableRecordKeys(std::vector< eventsetup::EventSetupRecordKey > &oToFill) const
clears the oToFill vector and then fills it with the keys for all available records ...
PrintEventSetupDataRetrieval(const ParameterSet &, ActivityRegistry &)
void watchPostBeginLumi(PostBeginLumi::slot_type const &iSlot)
void postProcessEvent(Event const &, EventSetup const &)
void setComment(std::string const &value)
void check(EventSetup const &)
void add(std::string const &label, ParameterSetDescription const &psetDescription)
ComponentDescription const * providerDescription(const DataKey &aKey) const
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
bool wasGotten(const DataKey &aKey) const