CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
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
void preBeginJob(PathsAndConsumesOfModulesBase const &, ProcessContext const &)
const unsigned int lvl1Default_
unsigned int getLvl1IndexDefault() const
const PrescaleTable_t & getPrescaleTable() const
char const * label
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
std::map< std::string, std::vector< unsigned int > > PrescaleTable_t
PrescaleService(ParameterSet const &, ActivityRegistry &)
const VString_t & getLvl1Labels() const
unsigned int getPrescale(std::string const &prescaledPath) const
const std::vector< ParameterSet > vpsetPrescales_
ParameterSetID processParameterSetID_
std::vector< std::string > VString_t
static unsigned int findDefaultIndex(std::string const &label, std::vector< std::string > const &labels)