31 #include "TDirectory.h"
33 #include "boost/tuple/tuple.hpp"
55 virtual void endJob()
override;
59 std::vector<std::string>
stepLabels(
const std::vector<std::string>&);
87 using namespace trigger;
98 hltProcessName_(pset.getParameter<
string>(
"hltProcessName")),
99 hltPathsToCheck_(pset.getParameter<
vstring>(
"hltPathsToCheck"))
112 vector<string>::iterator iter = modules.begin();
114 while (iter != modules.end())
115 if (iter->find(
"Filtered") == string::npos)
116 iter = modules.erase(iter);
126 vector<string>
steps(1,
"All");
127 for (
size_t i = 0;
i < modules.size();
i++) {
128 if (modules[
i].
find(
"IsoFiltered") != string::npos) {
129 if (modules[
i].
find(
"L3") != string::npos)
130 steps.push_back(
"L3Iso");
132 steps.push_back(
"L2Iso");
134 else if (modules[
i].
find(
"L3") != string::npos)
135 steps.push_back(
"L3");
136 else if (modules[
i].
find(
"L2") != string::npos)
137 steps.push_back(
"L2");
138 else if (modules[
i].
find(
"L1") != string::npos)
139 steps.push_back(
"L1");
141 return vector<string>();
143 if (steps.size() < 2 || steps[1] !=
"L1")
144 return vector<string>();
157 LogError(
"HLTMuonVal") <<
"Initialization of HLTConfigProvider failed!!";
172 set<string>::iterator iPath;
173 for (iPath = hltPaths.begin(); iPath != hltPaths.end(); iPath++) {
175 string path = * iPath;
176 string shortpath =
path;
177 if (path.rfind(
"_v") < path.length())
178 shortpath = path.substr(0, path.rfind(
"_v"));
183 if (labels.size() > 0 && steps.size() > 0) {
190 vector<HLTMuonPlotter>::iterator iter;
192 iter->beginRun(iRun, iSetup);
202 vector<HLTMuonPlotter>::iterator iter;
204 iter->analyze(iEvent, iSetup);
#define DEFINE_FWK_MODULE(type)
std::vector< std::string > stepLabels(const std::vector< std::string > &)
const std::vector< std::string > & triggerNames() const
names of trigger paths
virtual void analyze(const edm::Event &, const edm::EventSetup &)
std::vector< HLTMuonPlotter > analyzers_
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
boost::tuple< edm::EDGetTokenT< trigger::TriggerEventWithRefs >, edm::EDGetTokenT< reco::GenParticleCollection >, edm::EDGetTokenT< reco::MuonCollection > > myTokens_
static boost::tuple< edm::EDGetTokenT< trigger::TriggerEventWithRefs >, edm::EDGetTokenT< reco::GenParticleCollection >, edm::EDGetTokenT< reco::MuonCollection > > getTokens(const edm::ParameterSet &, edm::ConsumesCollector &&)
ConsumesCollector consumesCollector()
Use a ConsumesCollector to gather consumes information from helper functions.
std::vector< std::string > moduleLabels(std::string)
const std::vector< std::string > & moduleLabels(unsigned int trigger) const
label(s) of module(s) on a trigger path
virtual void endRun(const edm::Run &, const edm::EventSetup &) override
HLTConfigProvider hltConfig_
virtual void beginRun(const edm::Run &, const edm::EventSetup &)
bool init(const edm::Run &iRun, const edm::EventSetup &iSetup, const std::string &processName, bool &changed)
d'tor
std::string hltProcessName_
virtual void endJob() override
HLTMuonValidator(const edm::ParameterSet &)
std::vector< std::string > hltPathsToCheck_