CMS 3D CMS Logo

List of all members | Classes | Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes
EgHLTOfflineSummaryClient Class Reference

#include <EgHLTOfflineSummaryClient.h>

Inheritance diagram for EgHLTOfflineSummaryClient:
edm::EDAnalyzer edm::EDConsumerBase

Classes

struct  SumHistBinData
 

Public Member Functions

void analyze (const edm::Event &, const edm::EventSetup &) override
 
void beginJob () override
 
void beginLuminosityBlock (const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &context) override
 
void beginRun (const edm::Run &run, const edm::EventSetup &c) override
 
 EgHLTOfflineSummaryClient (const edm::ParameterSet &)
 
void endJob () override
 
void endLuminosityBlock (const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &c) override
 
void endRun (const edm::Run &run, const edm::EventSetup &c) override
 
 ~EgHLTOfflineSummaryClient () override
 
- Public Member Functions inherited from edm::EDAnalyzer
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzer ()
 
SerialTaskQueueglobalLuminosityBlocksQueue ()
 
SerialTaskQueueglobalRunsQueue ()
 
ModuleDescription const & moduleDescription () const
 
std::string workerType () const
 
 ~EDAnalyzer () override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
 EDConsumerBase (EDConsumerBase &&)=default
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom (BranchType iType) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
virtual ~EDConsumerBase () noexcept(false)
 

Private Member Functions

 EgHLTOfflineSummaryClient (const EgHLTOfflineSummaryClient &rhs)
 
void getEgHLTFiltersToMon_ (std::vector< std::string > &filterNames) const
 
MonitorElementgetEgHLTSumHist_ ()
 
int getQTestBinData_ (const edm::ParameterSet &)
 
int getQTestResults_ (const std::string &filterName, const std::vector< std::string > &pattern) const
 
EgHLTOfflineSummaryClientoperator= (const EgHLTOfflineSummaryClient &rhs)
 
void runClient_ ()
 
void splitStringsToPairs_ (const std::vector< std::string > &stringsToSplit, std::vector< std::pair< std::string, std::string > > &splitStrings)
 

Static Private Member Functions

static void fillQTestData_ (const edm::ParameterSet &iConfig, std::vector< SumHistBinData > &qTests, const std::string &label)
 

Private Attributes

DQMStoredbe_
 
std::string dirName_
 
std::vector< std::string > egHLTFiltersToMon_
 
std::vector< std::string > egHLTFiltersToMonPaths_
 
std::string egHLTSumHistName_
 
std::vector< SumHistBinDataegHLTSumHistXBins_
 
std::vector< std::string > eleHLTFilterNames_
 
std::vector< std::string > eleHLTFilterNamesForSumBit_
 
std::vector< SumHistBinDataeleQTestsForSumBit_
 
bool filterInactiveTriggers_
 
std::string hltTag_
 
bool isSetup_
 
std::vector< std::string > phoHLTFilterNames_
 
std::vector< std::string > phoHLTFilterNamesForSumBit_
 
std::vector< SumHistBinDataphoQTestsForSumBit_
 
bool runClientEndJob_
 
bool runClientEndLumiBlock_
 
bool runClientEndRun_
 
bool usePathNames_
 

Additional Inherited Members

- Public Types inherited from edm::EDAnalyzer
typedef EDAnalyzer ModuleType
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Static Public Member Functions inherited from edm::EDAnalyzer
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &)
 
static bool wantsGlobalLuminosityBlocks ()
 
static bool wantsGlobalRuns ()
 
static bool wantsStreamLuminosityBlocks ()
 
static bool wantsStreamRuns ()
 
- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 

Detailed Description

Definition at line 33 of file EgHLTOfflineSummaryClient.h.

Constructor & Destructor Documentation

EgHLTOfflineSummaryClient::EgHLTOfflineSummaryClient ( const EgHLTOfflineSummaryClient rhs)
inlineprivate

Definition at line 72 of file EgHLTOfflineSummaryClient.h.

Referenced by operator=().

72 {}
EgHLTOfflineSummaryClient::EgHLTOfflineSummaryClient ( const edm::ParameterSet iConfig)
explicit

Definition at line 18 of file EgHLTOfflineSummaryClient.cc.

References dbe_, dirName_, egHLTSumHistXBins_, eleHLTFilterNames_, eleHLTFilterNamesForSumBit_, eleQTestsForSumBit_, fillQTestData_(), filterInactiveTriggers_, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), hltTag_, Utilities::operator, phoHLTFilterNames_, phoHLTFilterNamesForSumBit_, phoQTestsForSumBit_, runClientEndJob_, runClientEndLumiBlock_, runClientEndRun_, AlCaHLTBitMon_QueryRunRegistry::string, usePathNames_, and ~EgHLTOfflineSummaryClient().

18  :
19  egHLTSumHistName_("egHLTTrigSum"),isSetup_(false)
20 {
21  dirName_=iConfig.getParameter<std::string>("DQMDirName"); //only one chance to get this, if we every have another shot, remember to check isSetup is okay
23  if (!dbe_) {
24  edm::LogError("EgHLTOfflineSummaryClient") << "unable to get DQMStore service, no summary histograms will be produced";
25  }else{
26  if(iConfig.getUntrackedParameter<bool>("DQMStore", false)) {
27  dbe_->setVerbose(0);
28  }
30  }
31 
32  eleHLTFilterNames_ = iConfig.getParameter<std::vector<std::string> >("eleHLTFilterNames");
33  phoHLTFilterNames_ = iConfig.getParameter<std::vector<std::string> >("phoHLTFilterNames");
34  eleHLTFilterNamesForSumBit_ = iConfig.getParameter<std::vector<std::string> >("eleHLTFilterNamesForSumBit");
35  phoHLTFilterNamesForSumBit_ = iConfig.getParameter<std::vector<std::string> >("phoHLTFilterNamesForSumBit");
36 
37 
38  filterInactiveTriggers_ =iConfig.getParameter<bool>("filterInactiveTriggers");
39  hltTag_ = iConfig.getParameter<std::string>("hltTag");
40 
41  usePathNames_ = iConfig.getParameter<bool>("usePathNames");
42 
43 
44  //std::vector<std::string> egHLTSumQTests = iConfig.getParameter<std::vector<std::string> >("egHLTSumQTests");
45  // splitStringsToPairs_(egHLTSumQTests,egHLTSumHistXBins_);
46 
47  fillQTestData_(iConfig,egHLTSumHistXBins_,"egHLTSumQTests");
48  fillQTestData_(iConfig,eleQTestsForSumBit_,"egHLTEleQTestsForSumBit");
49  fillQTestData_(iConfig,phoQTestsForSumBit_,"egHLTPhoQTestsForSumBit");
50 
51 
52 
53  runClientEndLumiBlock_ = iConfig.getParameter<bool>("runClientEndLumiBlock");
54  runClientEndRun_ = iConfig.getParameter<bool>("runClientEndRun");
55  runClientEndJob_ = iConfig.getParameter<bool>("runClientEndJob");
56 
57 
58  //egHLTSumHistXBins_.push_back(std::make_pair("Ele Rel Trig Eff",&EgHLTOfflineSummaryClient::eleTrigRelEffQTestResult_));
59  //egHLTSumHistXBins_.push_back(std::make_pair("Pho Rel Trig Eff",&EgHLTOfflineSummaryClient::phoTrigRelEffQTestResult_));
60  //egHLTSumHistXBins_.push_back(std::make_pair("Ele T&P Trig Eff",&EgHLTOfflineSummaryClient::eleTrigTPEffQTestResult_));
61  //egHLTSumHistXBins_.push_back(std::make_pair("Triggered Ele",&EgHLTOfflineSummaryClient::trigEleQTestResult_));
62  //egHLTSumHistXBins_.push_back(std::make_pair("Triggered Pho",&EgHLTOfflineSummaryClient::trigPhoQTestResult_));
63 }
T getParameter(std::string const &) const
std::vector< std::string > phoHLTFilterNamesForSumBit_
T getUntrackedParameter(std::string const &, T const &) const
std::vector< std::string > eleHLTFilterNamesForSumBit_
std::vector< SumHistBinData > egHLTSumHistXBins_
std::vector< std::string > eleHLTFilterNames_
std::vector< SumHistBinData > eleQTestsForSumBit_
void setVerbose(unsigned level)
Definition: DQMStore.cc:525
std::vector< SumHistBinData > phoQTestsForSumBit_
void setCurrentFolder(std::string const &fullpath)
Definition: DQMStore.cc:565
std::vector< std::string > phoHLTFilterNames_
static void fillQTestData_(const edm::ParameterSet &iConfig, std::vector< SumHistBinData > &qTests, const std::string &label)
EgHLTOfflineSummaryClient::~EgHLTOfflineSummaryClient ( )
overridedefault

Member Function Documentation

void EgHLTOfflineSummaryClient::analyze ( const edm::Event iEvent,
const edm::EventSetup iSetup 
)
override

Definition at line 114 of file EgHLTOfflineSummaryClient.cc.

Referenced by operator=().

115 {
116 
117 }
void EgHLTOfflineSummaryClient::beginJob ( void  )
overridevirtual

Reimplemented from edm::EDAnalyzer.

Definition at line 68 of file EgHLTOfflineSummaryClient.cc.

Referenced by operator=().

69 {
70 
71 
72 }
void EgHLTOfflineSummaryClient::beginLuminosityBlock ( const edm::LuminosityBlock lumiSeg,
const edm::EventSetup context 
)
inlineoverride
void EgHLTOfflineSummaryClient::beginRun ( const edm::Run run,
const edm::EventSetup c 
)
override

Definition at line 79 of file EgHLTOfflineSummaryClient.cc.

References egHLTFiltersToMon_, egHLTFiltersToMonPaths_, eleHLTFilterNames_, eleHLTFilterNamesForSumBit_, egHLT::trigTools::filterInactiveTriggers(), filterInactiveTriggers_, egHLT::trigTools::getActiveFilters(), getEgHLTFiltersToMon_(), hltTag_, HLTConfigProvider::init(), isSetup_, phoHLTFilterNames_, phoHLTFilterNamesForSumBit_, egHLT::trigTools::translateFiltersToPathNames(), and usePathNames_.

Referenced by operator=().

80 {
81  if(!isSetup_){
82  bool changed;
83  HLTConfigProvider hltConfig;
84  hltConfig.init(run,c,hltTag_,changed);
86  std::vector<std::string> activeFilters;
87  std::vector<std::string> activeEleFilters;
88  std::vector<std::string> activeEle2LegFilters;
89  std::vector<std::string> activePhoFilters;
90  std::vector<std::string> activePho2LegFilters;
91 
92  egHLT::trigTools::getActiveFilters(hltConfig,activeFilters,activeEleFilters,activeEle2LegFilters,activePhoFilters,activePho2LegFilters);
93 
98 
99  }
101 
103  isSetup_=true;
104  }
105 }
std::vector< std::string > phoHLTFilterNamesForSumBit_
std::vector< std::string > egHLTFiltersToMonPaths_
void getEgHLTFiltersToMon_(std::vector< std::string > &filterNames) const
std::vector< std::string > eleHLTFilterNamesForSumBit_
std::vector< std::string > eleHLTFilterNames_
std::vector< std::string > egHLTFiltersToMon_
void getActiveFilters(const HLTConfigProvider &hltConfig, std::vector< std::string > &activeFilters, std::vector< std::string > &activeEleFilters, std::vector< std::string > &activeEle2LegFilters, std::vector< std::string > &activePhoFilters, std::vector< std::string > &activePho2LegFilters)
bool init(const edm::Run &iRun, const edm::EventSetup &iSetup, const std::string &processName, bool &changed)
d&#39;tor
std::vector< std::string > phoHLTFilterNames_
void filterInactiveTriggers(std::vector< std::string > &namesToFilter, std::vector< std::string > &activeFilters)
void translateFiltersToPathNames(const HLTConfigProvider &hltConfig, const std::vector< std::string > &filters, std::vector< std::string > &paths)
void EgHLTOfflineSummaryClient::endJob ( void  )
overridevirtual

Reimplemented from edm::EDAnalyzer.

Definition at line 74 of file EgHLTOfflineSummaryClient.cc.

References runClient_(), and runClientEndJob_.

Referenced by operator=().

void EgHLTOfflineSummaryClient::endLuminosityBlock ( const edm::LuminosityBlock lumiSeg,
const edm::EventSetup c 
)
override
void EgHLTOfflineSummaryClient::endRun ( const edm::Run run,
const edm::EventSetup c 
)
override
void EgHLTOfflineSummaryClient::fillQTestData_ ( const edm::ParameterSet iConfig,
std::vector< SumHistBinData > &  qTests,
const std::string &  label 
)
staticprivate

Definition at line 254 of file EgHLTOfflineSummaryClient.cc.

References edm::ParameterSet::getParameter(), diffTwoXMLs::label, and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by beginLuminosityBlock(), and EgHLTOfflineSummaryClient().

255 {
256  std::vector<edm::ParameterSet> qTestPara = iConfig.getParameter<std::vector<edm::ParameterSet> >(label);
257  qTests.resize(qTestPara.size());
258  for(size_t testNr=0;testNr<qTestPara.size();testNr++){
259  qTests[testNr].name = qTestPara[testNr].getParameter<std::string>("name");
260  qTests[testNr].qTestPatterns = qTestPara[testNr].getParameter<std::vector<std::string> >("qTestsToCheck");
261  }
262 }
T getParameter(std::string const &) const
void EgHLTOfflineSummaryClient::getEgHLTFiltersToMon_ ( std::vector< std::string > &  filterNames) const
private

Definition at line 220 of file EgHLTOfflineSummaryClient.cc.

References eleHLTFilterNames_, phoHLTFilterNames_, and edm::swap().

Referenced by beginLuminosityBlock(), and beginRun().

221 {
222  std::set<std::string> filterNameSet;
223  for(auto const & eleHLTFilterName : eleHLTFilterNames_) filterNameSet.insert(eleHLTFilterName);
224  for(auto const & phoHLTFilterName : phoHLTFilterNames_) filterNameSet.insert(phoHLTFilterName);
225 
226  //right all the triggers are inserted once and only once in the set, convert to vector
227  //very lazy, create a new vector so can use the constructor and then use swap to transfer
228  std::vector<std::string>(filterNameSet.begin(),filterNameSet.end()).swap(filterNames);
229 }
std::vector< std::string > eleHLTFilterNames_
void swap(Association< C > &lhs, Association< C > &rhs)
Definition: Association.h:116
std::vector< std::string > phoHLTFilterNames_
MonitorElement * EgHLTOfflineSummaryClient::getEgHLTSumHist_ ( )
private

Definition at line 182 of file EgHLTOfflineSummaryClient.cc.

References DQMStore::book2D(), dbe_, dirName_, egHLTFiltersToMon_, egHLTFiltersToMonPaths_, egHLTSumHistName_, egHLTSumHistXBins_, DQMStore::get(), create_public_lumi_plots::hist, dataset::name, DQMStore::setCurrentFolder(), and usePathNames_.

Referenced by beginLuminosityBlock(), and runClient_().

183 {
184  MonitorElement* egHLTSumHist = dbe_->get(dirName_+"/"+egHLTSumHistName_);
185  if(egHLTSumHist==nullptr){
186  auto* hist = new TH2F(egHLTSumHistName_.c_str(),"E/g HLT Offline Summary",egHLTSumHistXBins_.size(),0.,1.,egHLTFiltersToMon_.size(),0.,1.);
187  for(size_t xBinNr=0;xBinNr<egHLTSumHistXBins_.size();xBinNr++){
188  hist->GetXaxis()->SetBinLabel(xBinNr+1,egHLTSumHistXBins_[xBinNr].name.c_str());
189  }
190 
191  for(size_t yBinNr=0;yBinNr<egHLTFiltersToMon_.size();yBinNr++){
193  hist->GetYaxis()->SetBinLabel(yBinNr+1,egHLTFiltersToMonPaths_[yBinNr].c_str());
194  }else{
195  hist->GetYaxis()->SetBinLabel(yBinNr+1,egHLTFiltersToMon_[yBinNr].c_str());
196  }
197  }
198  for(size_t xBinNr=0;xBinNr<egHLTSumHistXBins_.size();xBinNr++){
199  for(size_t yBinNr=0;yBinNr<egHLTFiltersToMon_.size();yBinNr++){
200  hist->SetBinContent(xBinNr+1,yBinNr+1,-2);
201  }
202  }
203 
205  egHLTSumHist = dbe_->book2D(egHLTSumHistName_,hist);
206  }
207  return egHLTSumHist;
208 
209 }
MonitorElement * book2D(char_string const &name, char_string const &title, int nchX, double lowX, double highX, int nchY, double lowY, double highY)
Book 2D histogram.
Definition: DQMStore.cc:1161
std::vector< std::string > egHLTFiltersToMonPaths_
std::vector< SumHistBinData > egHLTSumHistXBins_
std::vector< std::string > egHLTFiltersToMon_
MonitorElement * get(std::string const &path) const
get ME from full pathname (e.g. "my/long/dir/my_histo")
Definition: DQMStore.cc:1601
void setCurrentFolder(std::string const &fullpath)
Definition: DQMStore.cc:565
int EgHLTOfflineSummaryClient::getQTestBinData_ ( const edm::ParameterSet )
private

Referenced by beginLuminosityBlock().

int EgHLTOfflineSummaryClient::getQTestResults_ ( const std::string &  filterName,
const std::vector< std::string > &  pattern 
) const
private

Definition at line 233 of file EgHLTOfflineSummaryClient.cc.

References dbe_, dirName_, DQMStore::getMatchingContents(), and listBenchmarks::pattern.

Referenced by beginLuminosityBlock(), and runClient_().

234 {
235  int nrFail =0;
236  int nrQTests=0;
237  for(auto const & pattern : patterns){
238  std::vector<MonitorElement*> monElems = dbe_->getMatchingContents(dirName_+"/"+filterName+pattern);
239  // std::cout <<"mon elem "<<dirName_+"/"+filterName+patterns[patternNr]<<"nr monElems "<<monElems.size()<<std::endl;
240  for(auto & monElem : monElems){
241 
242  std::vector<QReport*> qTests = monElem->getQReports();
243  nrQTests+=qTests.size();
244  // std::cout <<monElems[monElemNr]->getName()<<" "<<monElems[monElemNr]->hasError()<<" nr test "<<qTests.size()<<std::endl;
245  if(monElem->hasError()) nrFail++;
246  }
247  }
248  if(nrQTests==0) return -1;
249  else if(nrFail==0) return 1;
250  else return 0;
251 }
std::vector< MonitorElement * > getMatchingContents(std::string const &pattern, lat::Regexp::Syntax syntaxType=lat::Regexp::Wildcard) const
Definition: DQMStore.cc:1801
EgHLTOfflineSummaryClient& EgHLTOfflineSummaryClient::operator= ( const EgHLTOfflineSummaryClient rhs)
inlineprivate
void EgHLTOfflineSummaryClient::runClient_ ( )
private

Definition at line 125 of file EgHLTOfflineSummaryClient.cc.

References DQMStore::bookFloat(), dbe_, egHLTFiltersToMon_, egHLTSumHistXBins_, eleHLTFilterNamesForSumBit_, eleQTestsForSumBit_, MonitorElement::Fill(), DQMStore::get(), getEgHLTSumHist_(), getQTestResults_(), phoHLTFilterNamesForSumBit_, phoQTestsForSumBit_, MonitorElement::setBinContent(), and DQMStore::setCurrentFolder().

Referenced by beginLuminosityBlock(), endJob(), endLuminosityBlock(), and endRun().

126 {
127 
128  MonitorElement* egHLTSumME = getEgHLTSumHist_();
129 
130  for(size_t filterNr=0;filterNr<egHLTFiltersToMon_.size();filterNr++){
131  for(size_t xBinNr=0;xBinNr<egHLTSumHistXBins_.size();xBinNr++){
132  //egHLTSumHist->setBinContent(xBinNr+1,filterNr+1,(*egHLTSumHistXBins_[xBinNr].second)(egHLTFiltersToMon_[filterNr].c_str()));
133  egHLTSumME->setBinContent(xBinNr+1,filterNr+1,
134  getQTestResults_(egHLTFiltersToMon_[filterNr],egHLTSumHistXBins_[xBinNr].qTestPatterns));
135  }
136  }
137 
138  MonitorElement* hltEleSumBit = dbe_->get("HLT/EventInfo/reportSummaryContents/HLT_Electron");
139  MonitorElement* hltPhoSumBit = dbe_->get("HLT/EventInfo/reportSummaryContents/HLT_Photon");
140  dbe_->setCurrentFolder("HLT/EventInfo/reportSummaryContents/");
141  if(hltEleSumBit==nullptr) hltEleSumBit = dbe_->bookFloat("HLT_Electron");
142  if(hltPhoSumBit==nullptr) hltPhoSumBit = dbe_->bookFloat("HLT_Photon");
143 
144 
145  float eleSumBit=1.;
146  for(size_t filterNr=0;filterNr<eleHLTFilterNamesForSumBit_.size() && eleSumBit==1;filterNr++){ //breaks as soon as a test fails
147  for(size_t testNr=0;testNr<eleQTestsForSumBit_.size() && eleSumBit==1;testNr++){
148  if(getQTestResults_(eleHLTFilterNamesForSumBit_[filterNr],eleQTestsForSumBit_[testNr].qTestPatterns)==0) eleSumBit=0;
149 
150  }
151  }
152  hltEleSumBit->Fill(eleSumBit);
153 
154  float phoSumBit=1.;
155  for(size_t filterNr=0;filterNr<phoHLTFilterNamesForSumBit_.size() && phoSumBit==1;filterNr++){ //breaks as soon as a test fails
156  for(size_t testNr=0;testNr<phoQTestsForSumBit_.size() && phoSumBit==1;testNr++){
157  if(getQTestResults_(phoHLTFilterNamesForSumBit_[filterNr],phoQTestsForSumBit_[testNr].qTestPatterns)==0) phoSumBit=0;
158  }
159  }
160  hltPhoSumBit->Fill(phoSumBit);
161 
162 
163 
164 }
std::vector< std::string > phoHLTFilterNamesForSumBit_
void setBinContent(int binx, double content)
set content of bin (1-D)
std::vector< std::string > eleHLTFilterNamesForSumBit_
std::vector< SumHistBinData > egHLTSumHistXBins_
std::vector< SumHistBinData > eleQTestsForSumBit_
std::vector< std::string > egHLTFiltersToMon_
MonitorElement * bookFloat(char_string const &name)
Book float.
Definition: DQMStore.cc:1036
void Fill(long long x)
MonitorElement * get(std::string const &path) const
get ME from full pathname (e.g. "my/long/dir/my_histo")
Definition: DQMStore.cc:1601
std::vector< SumHistBinData > phoQTestsForSumBit_
void setCurrentFolder(std::string const &fullpath)
Definition: DQMStore.cc:565
int getQTestResults_(const std::string &filterName, const std::vector< std::string > &pattern) const
void EgHLTOfflineSummaryClient::splitStringsToPairs_ ( const std::vector< std::string > &  stringsToSplit,
std::vector< std::pair< std::string, std::string > > &  splitStrings 
)
private

Definition at line 165 of file EgHLTOfflineSummaryClient.cc.

References split, and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by beginLuminosityBlock().

166 {
167  splitStrings.clear();
168  splitStrings.reserve(stringsToSplit.size());
169  for(auto const & stringNr : stringsToSplit){
170  std::vector<std::string> tempSplitStrings;
171  boost::split(tempSplitStrings,stringNr,boost::is_any_of(std::string(":")));
172  if(tempSplitStrings.size()==2){
173  splitStrings.push_back(std::make_pair(tempSplitStrings[0],tempSplitStrings[1]));
174  }else{
175  edm::LogWarning("EgHLTOfflineSummaryClient") <<" Error : entry "<<stringNr<<" is not of form A:B, ignoring (ie this quailty test isnt being included in the sumamry hist) ";
176  }
177  }
178 }
double split
Definition: MVATrainer.cc:139

Member Data Documentation

DQMStore* EgHLTOfflineSummaryClient::dbe_
private
std::string EgHLTOfflineSummaryClient::dirName_
private
std::vector<std::string> EgHLTOfflineSummaryClient::egHLTFiltersToMon_
private

Definition at line 48 of file EgHLTOfflineSummaryClient.h.

Referenced by beginRun(), getEgHLTSumHist_(), and runClient_().

std::vector<std::string> EgHLTOfflineSummaryClient::egHLTFiltersToMonPaths_
private

Definition at line 63 of file EgHLTOfflineSummaryClient.h.

Referenced by beginRun(), and getEgHLTSumHist_().

std::string EgHLTOfflineSummaryClient::egHLTSumHistName_
private

Definition at line 44 of file EgHLTOfflineSummaryClient.h.

Referenced by getEgHLTSumHist_().

std::vector<SumHistBinData> EgHLTOfflineSummaryClient::egHLTSumHistXBins_
private
std::vector<std::string> EgHLTOfflineSummaryClient::eleHLTFilterNames_
private
std::vector<std::string> EgHLTOfflineSummaryClient::eleHLTFilterNamesForSumBit_
private

Definition at line 50 of file EgHLTOfflineSummaryClient.h.

Referenced by beginRun(), EgHLTOfflineSummaryClient(), and runClient_().

std::vector<SumHistBinData> EgHLTOfflineSummaryClient::eleQTestsForSumBit_
private

Definition at line 56 of file EgHLTOfflineSummaryClient.h.

Referenced by EgHLTOfflineSummaryClient(), and runClient_().

bool EgHLTOfflineSummaryClient::filterInactiveTriggers_
private

Definition at line 66 of file EgHLTOfflineSummaryClient.h.

Referenced by beginRun(), and EgHLTOfflineSummaryClient().

std::string EgHLTOfflineSummaryClient::hltTag_
private

Definition at line 68 of file EgHLTOfflineSummaryClient.h.

Referenced by beginRun(), and EgHLTOfflineSummaryClient().

bool EgHLTOfflineSummaryClient::isSetup_
private

Definition at line 67 of file EgHLTOfflineSummaryClient.h.

Referenced by beginRun().

std::vector<std::string> EgHLTOfflineSummaryClient::phoHLTFilterNames_
private
std::vector<std::string> EgHLTOfflineSummaryClient::phoHLTFilterNamesForSumBit_
private

Definition at line 51 of file EgHLTOfflineSummaryClient.h.

Referenced by beginRun(), EgHLTOfflineSummaryClient(), and runClient_().

std::vector<SumHistBinData> EgHLTOfflineSummaryClient::phoQTestsForSumBit_
private

Definition at line 57 of file EgHLTOfflineSummaryClient.h.

Referenced by EgHLTOfflineSummaryClient(), and runClient_().

bool EgHLTOfflineSummaryClient::runClientEndJob_
private

Definition at line 61 of file EgHLTOfflineSummaryClient.h.

Referenced by EgHLTOfflineSummaryClient(), and endJob().

bool EgHLTOfflineSummaryClient::runClientEndLumiBlock_
private

Definition at line 59 of file EgHLTOfflineSummaryClient.h.

Referenced by EgHLTOfflineSummaryClient(), and endLuminosityBlock().

bool EgHLTOfflineSummaryClient::runClientEndRun_
private

Definition at line 60 of file EgHLTOfflineSummaryClient.h.

Referenced by EgHLTOfflineSummaryClient(), and endRun().

bool EgHLTOfflineSummaryClient::usePathNames_
private