51 hasXaxis ? &xaxis :
nullptr,
52 hasYaxis ? &yaxis :
nullptr,
53 hasZaxis ? &zaxis :
nullptr);
57 set =
new MESetChannel(path, otype, btype, kind);
62 new MESetProjection(path, otype, btype, kind, hasYaxis ? &yaxis :
nullptr);
64 unsigned logicalDimensions(-1);
67 logicalDimensions = 0;
71 logicalDimensions = 1;
75 logicalDimensions = 2;
84 logicalDimensions = 1;
86 if (logicalDimensions > 2 || (btype ==
binning::kReport && logicalDimensions != 0))
95 hasXaxis ? &xaxis :
nullptr,
96 hasYaxis ? &yaxis :
nullptr,
97 hasZaxis ? &zaxis :
nullptr);
98 else if (logicalDimensions == 0)
99 set =
new MESetDet0D(path, otype, btype, kind);
100 else if (logicalDimensions == 1)
101 set =
new MESetDet1D(path, otype, btype, kind, hasYaxis ? &yaxis :
nullptr);
102 else if (logicalDimensions == 2)
103 set =
new MESetDet2D(path, otype, btype, kind, hasZaxis ? &zaxis :
nullptr);
107 typedef std::vector<std::string> VString;
110 VString replacementNames(multiParams.getParameterNames());
111 if (replacementNames.empty())
112 throw cms::Exception(
"InvalidConfiguration") <<
"0 multiplicity for MESet at " <<
path;
115 for (
unsigned iD(0); iD != replacementNames.size(); ++iD) {
117 if (multiParams.existsAs<VString>(replacementNames[iD],
false))
118 reps = multiParams.getUntrackedParameter<VString>(replacementNames[iD]);
119 else if (multiParams.existsAs<std::vector<int>>(replacementNames[iD],
false)) {
120 std::vector<int> repInts(multiParams.getUntrackedParameter<std::vector<int>>(replacementNames[iD]));
121 for (
unsigned iR(0); iR != repInts.size(); ++iR)
122 reps.push_back(std::to_string(repInts[iR]));
126 throw cms::Exception(
"InvalidConfiguration") <<
"0 multiplicity for MESet at " <<
path;
128 candidates[replacementNames[iD]] = reps;
136 throw cms::Exception(
"InvalidConfiguration") <<
"MESet " << path <<
" could not be initialized";
T getUntrackedParameter(std::string const &, T const &) const
bool existsAs(std::string const ¶meterName, bool trackiness=true) const
checks if a parameter exists as a given type
ParameterDescriptionBase * addUntracked(U const &iLabel, T const &value)
dqm::impl::MonitorElement MonitorElement
ParameterSet getUntrackedParameterSet(std::string const &name, ParameterSet const &defaultValue) const
ParameterWildcardBase * addWildcardUntracked(U const &pattern)
ObjectType translateObjectType(std::string const &)
std::map< std::string, std::vector< std::string > > ReplCandidates
dqm::legacy::MonitorElement::Kind translateKind(std::string const &)
void fillAxisDescriptions(edm::ParameterSetDescription &)
ParameterDescriptionBase * addOptionalUntracked(U const &iLabel, T const &value)
BinningType translateBinningType(std::string const &)
AxisSpecs formAxis(edm::ParameterSet const &)
MESet * createMESet(edm::ParameterSet const &)
void fillMESetDescriptions(edm::ParameterSetDescription &)