53 std::vector<edm::EventID>
ids_;
75 : ids_(iConfig.getUntrackedParameter<std::
vector<edm::EventID> >(
"eventSequence")),
77 multiProcessSequentialEvents_(iConfig.getUntrackedParameter<unsigned int>(
"multiProcessSequentialEvents")),
78 numberOfEventsLeftBeforeSearch_(0),
93 struct CompareWithoutLumi {
94 CompareWithoutLumi(
edm::EventID const& iThis) : m_this(iThis) {}
96 return m_this.run() == iOther.
run() && m_this.event() == iOther.
event();
108 std::vector<edm::EventID>::iterator itFind =
109 std::find_if(
ids_.begin() +
index_,
ids_.end(), CompareWithoutLumi(iEvent.
id()));
110 if (itFind ==
ids_.end()) {
111 throw cms::Exception(
"MissedEvent") <<
"The event " << iEvent.
id() <<
"is not in the list.\n";
120 <<
"Was passes " <<
ids_.size() <<
" EventIDs but have processed more events than that\n";
129 <<
"at event expected Run " <<
presentRun_ <<
" but got " << iEvent.
run();
143 <<
"at beginLuminosityBlock expected Run " <<
presentRun_ <<
" but got " << iLumi.
run();
151 <<
"at endLuminosityBlock expected Run " <<
presentRun_ <<
" but got " << iLumi.
run();
173 desc.
addUntracked<std::vector<edm::EventID> >(
"eventSequence");
174 desc.
addUntracked<
unsigned int>(
"multiProcessSequentialEvents", 0U);
175 descriptions.
add(
"eventIDChecker", desc);
EventNumber_t event() const
~EventIDChecker() override
ParameterDescriptionBase * addUntracked(U const &iLabel, T const &value)
#define DEFINE_FWK_MODULE(type)
edm::LuminosityBlockNumber_t luminosityBlock() const
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
unsigned int multiProcessSequentialEvents_
unsigned int LuminosityBlockNumber_t
LuminosityBlockNumber_t luminosityBlock() const
void analyze(edm::Event const &, edm::EventSetup const &) override
void endLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override
edm::RunNumber_t presentRun_
std::vector< edm::EventID > ids_
unsigned int numberOfEventsLeftBeforeSearch_
void add(std::string const &label, ParameterSetDescription const &psetDescription)
EventIDChecker(edm::ParameterSet const &)
void endRun(edm::Run const &, edm::EventSetup const &) override
void beginRun(edm::Run const &, edm::EventSetup const &) override
void beginLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override
edm::LuminosityBlockNumber_t presentLumi_