CMS 3D CMS Logo

HistDefinition.cc
Go to the documentation of this file.
3 #include <algorithm>
4 
5 namespace dqmoffline {
6  namespace l1t {
7 
8  typedef std::vector<double> vdouble;
9 
11  : name("name"), title("title"), nbinsX(0), nbinsY(0), xmin(0), xmax(0), ymin(0), ymax(0), binsX(), binsY() {}
12 
14  : name(ps.getUntrackedParameter<std::string>("name")),
15  title(ps.getUntrackedParameter<std::string>("title")),
16  nbinsX(ps.getUntrackedParameter<unsigned int>("nbinsX", 0)),
17  nbinsY(ps.getUntrackedParameter<unsigned int>("nbinsY", 0)),
18  xmin(ps.getUntrackedParameter<double>("xmin", 0)),
19  xmax(ps.getUntrackedParameter<double>("xmax", 0)),
20  ymin(ps.getUntrackedParameter<double>("ymin", 0)),
21  ymax(ps.getUntrackedParameter<double>("ymax", 0)),
22  binsXtmp(ps.getUntrackedParameter<vdouble>("binsX", vdouble())),
23  binsYtmp(ps.getUntrackedParameter<vdouble>("binsY", vdouble())),
26 
28 
30  const std::map<std::string, unsigned int> &mapping) {
32  std::vector<std::string> names = ps.getParameterNames();
33  std::vector<unsigned int> map_values;
34 
35  for (auto const &imap : mapping) {
36  map_values.push_back(imap.second);
37  }
38  unsigned int max_size = *std::max_element(map_values.begin(), map_values.end());
39  max_size = std::max(max_size, (unsigned int)mapping.size());
40  definitions.resize(max_size);
41 
42  for (auto name : names) {
43  if (mapping.find(name) != mapping.end()) {
45  definitions[mapping.at(name)] = HistDefinition(hd);
46  } else {
47  edm::LogError("HistDefinition::readHistDefinitions")
48  << "Could not find histogram definition for '" << name << "'" << std::endl;
49  }
50  }
51  return definitions;
52  }
53  } // namespace l1t
54 } // namespace dqmoffline
std::vector< float > binsX
std::vector< double > binsYtmp
T getParameter(std::string const &) const
std::vector< HistDefinition > HistDefinitions
delete x;
Definition: CaloConfig.h:22
const std::string names[nVars_]
#define end
Definition: vmac.h:39
std::vector< std::string > getParameterNames() const
std::vector< double > vdouble
HistDefinitions readHistDefinitions(const edm::ParameterSet &ps, const std::map< std::string, unsigned int > &mapping)
std::vector< float > binsY
#define begin
Definition: vmac.h:32
std::vector< double > binsXtmp