32 #include "TDirectory.h"
58 std::vector<std::string>
stepLabels(
const std::vector<std::string>&);
82 using namespace trigger;
93 hltProcessName_(pset.getParameter<
string>(
"hltProcessName")),
94 hltPathsToCheck_(pset.getParameter<
vstring>(
"hltPathsToCheck"))
104 vector<string>::iterator iter = modules.begin();
106 while (iter != modules.end())
107 if (iter->find(
"Filtered") == string::npos)
108 iter = modules.erase(iter);
118 vector<string>
steps(1,
"All");
119 for (
size_t i = 0;
i < modules.size();
i++) {
120 if (modules[
i].
find(
"IsoFiltered") != string::npos) {
121 if (modules[
i].
find(
"L3") != string::npos)
122 steps.push_back(
"L3Iso");
124 steps.push_back(
"L2Iso");
126 else if (modules[
i].
find(
"L3") != string::npos)
127 steps.push_back(
"L3");
128 else if (modules[
i].
find(
"L2") != string::npos)
129 steps.push_back(
"L2");
130 else if (modules[
i].
find(
"L1") != string::npos)
131 steps.push_back(
"L1");
133 return vector<string>();
135 if (steps.size() < 2 || steps[1] !=
"L1")
136 return vector<string>();
149 LogError(
"HLTMuonVal") <<
"Initialization of HLTConfigProvider failed!!";
164 set<string>::iterator iPath;
165 for (iPath = hltPaths.begin(); iPath != hltPaths.end(); iPath++) {
167 string path = * iPath;
168 string shortpath =
path;
169 if (path.rfind(
"_v") < path.length())
170 shortpath = path.substr(0, path.rfind(
"_v"));
175 if (labels.size() > 0 && steps.size() > 0) {
182 vector<HLTMuonPlotter>::iterator iter;
184 iter->beginRun(iRun, iSetup);
194 vector<HLTMuonPlotter>::iterator iter;
196 iter->analyze(iEvent, iSetup);
virtual void endRun(const edm::Run &, const edm::EventSetup &)
#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)
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
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_
HLTMuonValidator(const edm::ParameterSet &)
std::vector< std::string > hltPathsToCheck_