16 #include <boost/algorithm/string.hpp>
22 using namespace egHLT;
25 nrEventsProcessed_(0),isSetup_(
false)
30 edm::LogInfo(
"EgHLTOfflineSource") <<
"unable to get DQMStore service?";
103 std::vector<std::string> hltFiltersUsed;
105 TrigCodes::setCodes(hltFiltersUsed);
137 bool doTrigTagProbeEff=
false;
138 if(doTrigTagProbeEff){
198 for(
size_t monElemNr=0;monElemNr<
eleMonElems_.size();monElemNr++){
200 for(
size_t eleNr=0;eleNr<eles.size();eleNr++){
205 for(
size_t monElemNr=0;monElemNr<
phoMonElems_.size();monElemNr++){
207 for(
size_t phoNr=0;phoNr<phos.size();phoNr++){
237 std::set<std::string> filterNameSet;
245 if(trigNames.size()!=2)
continue;
246 filterNameSet.insert(trigNames[0]);
247 filterNameSet.insert(trigNames[1]);
252 if(trigNames.size()!=2)
continue;
253 filterNameSet.insert(trigNames[0]);
254 filterNameSet.insert(trigNames[1]);
259 if(trigNames.size()!=2)
continue;
260 filterNameSet.insert(trigNames[0]);
261 filterNameSet.insert(trigNames[1]);
266 if(trigNames.size()!=2)
continue;
267 filterNameSet.insert(trigNames[0]);
268 filterNameSet.insert(trigNames[1]);
272 std::vector<std::string>(filterNameSet.begin(),filterNameSet.end()).
swap(filterNames);
278 std::vector<std::string> activeFilters;
279 std::vector<std::string> activeEleFilters;
280 std::vector<std::string> activeEle2LegFilters;
281 std::vector<std::string> activePhoFilters;
282 std::vector<std::string> activePho2LegFilters;
void swap(ora::Record &rh, ora::Record &lh)
std::vector< std::string > diPhoTightLooseTrigNames_
T getParameter(std::string const &) const
T getUntrackedParameter(std::string const &, T const &) const
egHLT::OffHelper offEvtHelper_
MonitorElement * dqmErrsMonElem_
std::vector< egHLT::EleHLTFilterMon * > eleFilterMonHists_
std::vector< std::string > phoTightLooseTrigNames_
void initTightLooseTrigHists(std::vector< MonElemContainer< OffEle > * > &eleMonElems, const std::vector< std::string > &tightLooseTrigs, const BinData &bins, EgHLTDQMCut< OffEle > *eleCut)
virtual ~EgHLTOfflineSource()
void initTightLooseDiObjTrigHistsTrigCuts(std::vector< MonElemContainer< OffEle > * > &eleMonElems, const std::vector< std::string > &tightLooseTrigs, const BinData &bins)
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
std::vector< std::string > eleHLTFilterNames2Leg_
void setup(const edm::ParameterSet &conf)
std::vector< egHLT::MonElemContainer< egHLT::OffEle > * > eleMonElems_
std::vector< egHLT::PhoHLTFilterMon * > phoFilterMonHists_
void addPhoTrigPath(const std::string &name)
ConsumesCollector consumesCollector()
Use a ConsumesCollector to gather consumes information from helper functions.
void getHLTFilterNamesUsed(std::vector< std::string > &filterNames) const
std::vector< std::string > eleTightLooseTrigNames_
void addEleTrigPath(const std::string &name)
std::vector< egHLT::MonElemContainer< egHLT::OffPho > * > phoMonElems_
const std::vector< OffPho > & phos() const
static const char *const trigNames[]
bool filterInactiveTriggers_
void initTrigTagProbeHist_2Leg(std::vector< MonElemContainer< OffEle > * > &eleMonElems, const std::string filterName, int cutMask, const BinData &bins)
std::vector< std::string > phoHLTFilterNames_
MonitorElement * nrEventsProcessedMonElem_
bool init(const edm::Run &iRun, const edm::EventSetup &iSetup, const std::string &processName, bool &changed)
d'tor
std::vector< std::string > diEleTightLooseTrigNames_
std::vector< std::string > eleHLTFilterNames_
const std::vector< OffEle > & eles() const
void setup(const edm::ParameterSet &conf, edm::ConsumesCollector &&iC)
virtual void analyze(const edm::Event &, const edm::EventSetup &)
void filterTriggers(const HLTConfigProvider &hltConfig)
egHLT::CutMasks cutMasks_
volatile std::atomic< bool > shutdown_flag false
virtual void endRun(const edm::Run &run, const edm::EventSetup &c)
void initTrigTagProbeHist(std::vector< MonElemContainer< OffEle > * > &eleMonElems, const std::string filterName, int cutMask, const BinData &bins)
void setupTriggers(const HLTConfigProvider &config, const std::vector< std::string > &hltFiltersUsed)
EgHLTOfflineSource(const EgHLTOfflineSource &rhs)
int makeOffEvt(const edm::Event &edmEvent, const edm::EventSetup &setup, egHLT::OffEvt &offEvent)
virtual void beginRun(const edm::Run &run, const edm::EventSetup &c)
void setup(const edm::ParameterSet &conf)