CMS 3D CMS Logo

PrescaleService.h
Go to the documentation of this file.
1 #ifndef FWCore_PrescaleService_PrescaleService_h
2 #define FWCore_PrescaleService_PrescaleService_h
3 
7 
8 #include <string>
9 #include <vector>
10 #include <map>
11 
12 namespace edm {
13  class ActivityRegistry;
15  class PathsAndConsumesOfModulesBase;
16  class ProcessContext;
17 
18  namespace service {
19 
21  public:
22  //
23  // construction/destruction
24  //
25 
28 
29  //
30  // member functions
31  //
32 
33  unsigned int getPrescale(std::string const& prescaledPath) const;
34  unsigned int getPrescale(unsigned int lvl1Index, std::string const& prescaledPath) const;
35 
36  typedef std::vector<std::string> VString_t;
37  typedef std::map<std::string, std::vector<unsigned int> > PrescaleTable_t;
38  unsigned int getLvl1IndexDefault() const { return lvl1Default_; }
39  const VString_t& getLvl1Labels() const { return lvl1Labels_; }
40  const PrescaleTable_t& getPrescaleTable() const { return prescaleTable_; }
41 
42  static unsigned int findDefaultIndex(std::string const& label, std::vector<std::string> const& labels);
43  static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
44 
45  private:
46  //
47  // private member functions
48  //
50  void postBeginJob();
51 
52  //
53  // member data
54  //
55  const bool forceDefault_;
57  const unsigned int lvl1Default_;
58  const std::vector<ParameterSet> vpsetPrescales_;
61  };
62  } // namespace service
63 } // namespace edm
64 
65 #endif
SummaryClient_cfi.labels
labels
Definition: SummaryClient_cfi.py:61
service
Definition: service.py:1
edm::service::PrescaleService::postBeginJob
void postBeginJob()
Definition: PrescaleService.cc:66
edm::service::PrescaleService::processParameterSetID_
ParameterSetID processParameterSetID_
Definition: PrescaleService.h:60
edm::service::PrescaleService::getPrescale
unsigned int getPrescale(std::string const &prescaledPath) const
Definition: PrescaleService.cc:133
edm::service::PrescaleService::PrescaleTable_t
std::map< std::string, std::vector< unsigned int > > PrescaleTable_t
Definition: PrescaleService.h:37
ActivityRegistry
edm::service::PrescaleService::prescaleTable_
PrescaleTable_t prescaleTable_
Definition: PrescaleService.h:59
edm
HLT enums.
Definition: AlignableModifier.h:19
edm::ProcessContext
Definition: ProcessContext.h:27
edm::service::PrescaleService::vpsetPrescales_
const std::vector< ParameterSet > vpsetPrescales_
Definition: PrescaleService.h:58
edm::service::PrescaleService::lvl1Default_
const unsigned int lvl1Default_
Definition: PrescaleService.h:57
edm::service::PrescaleService::findDefaultIndex
static unsigned int findDefaultIndex(std::string const &label, std::vector< std::string > const &labels)
Definition: PrescaleService.cc:151
edm::service::PrescaleService::fillDescriptions
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
Definition: PrescaleService.cc:161
edm::service::PrescaleService::preBeginJob
void preBeginJob(PathsAndConsumesOfModulesBase const &, ProcessContext const &)
Definition: PrescaleService.cc:60
edm::serviceregistry::SaveConfiguration
Definition: SaveConfiguration.h:30
edm::service::PrescaleService::PrescaleService
PrescaleService(ParameterSet const &, ActivityRegistry &)
Definition: PrescaleService.cc:23
edm::service::PrescaleService::lvl1Labels_
const VString_t lvl1Labels_
Definition: PrescaleService.h:56
edm::ActivityRegistry
Definition: ActivityRegistry.h:134
edm::Hash< ParameterSetType >
edm::service::PrescaleService
Definition: PrescaleService.h:20
edm::ConfigurationDescriptions
Definition: ConfigurationDescriptions.h:28
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
edm::service::PrescaleService::forceDefault_
const bool forceDefault_
Definition: PrescaleService.h:55
edm::service::PrescaleService::getLvl1IndexDefault
unsigned int getLvl1IndexDefault() const
Definition: PrescaleService.h:38
edm::ParameterSet
Definition: ParameterSet.h:47
edm::service::PrescaleService::getLvl1Labels
const VString_t & getLvl1Labels() const
Definition: PrescaleService.h:39
edm::service::PrescaleService::~PrescaleService
~PrescaleService()
Definition: PrescaleService.cc:56
ConfigurationDescriptions
edm::service::PrescaleService::VString_t
std::vector< std::string > VString_t
Definition: PrescaleService.h:36
SaveConfiguration.h
edm::PathsAndConsumesOfModulesBase
Definition: PathsAndConsumesOfModulesBase.h:35
edm::service::PrescaleService::getPrescaleTable
const PrescaleTable_t & getPrescaleTable() const
Definition: PrescaleService.h:40
ParameterSetID.h
ParameterSet.h
label
const char * label
Definition: PFTauDecayModeTools.cc:11