35 <<
" elements, but has " << iGot <<
" elements in the configuration.\n";
43 if (!nameOfTracked.empty()) {
45 LogInfo(
"ParameterSet") <<
"Warning: You have added a new tracked parameter\n" 46 <<
"'" << nameOfTracked <<
"' to a previously registered parameter set.\n" 47 <<
"This is a bad idea because the new parameter(s) will not be recorded.\n" 48 <<
"Use the forthcoming ParameterSetDescription facility instead.\n" 49 <<
"A warning is given only for the first such parameter in a pset.\n";
67 <<
"The encoded configuration string " 68 <<
"passed to a ParameterSet during construction is invalid:\n" 77 : tbl_(), psetTable_(), vpsetTable_(), id_(
id) {
80 <<
"The encoded configuration string " 81 <<
"passed to a ParameterSet during construction is invalid:\n" 125 auto pset = std::make_unique<ParameterSet>();
143 if (
pset.isRegistered()) {
144 it->second.setIsTracked(
false);
154 std::vector<ParameterSet> vpset;
164 if (!
pset.isRegistered()) {
167 item.second.updateID();
172 i->second.registerPsetsAndUpdateIDs();
193 <<
"before ParameterSet::registerIt() has been called.\n";
212 <<
"The required parameter '" <<
name <<
"' was not specified.\n";
216 template <
typename T,
typename U>
221 template <
typename T,
typename U>
233 if (
it->second.isTracked() ==
false) {
234 if (
name[0] ==
'@') {
236 <<
"Framework Error: Parameter '" <<
name <<
"' is incorrectly designated as tracked in the framework.";
239 <<
"Parameter '" <<
name <<
"' is designated as tracked in the code,\n" 240 <<
"but is designated as untracked in the configuration file.\n" 241 <<
"Please remove 'untracked' from the configuration file for parameter '" <<
name <<
"'.";
254 if (
it->second.isTracked()) {
255 if (
name[0] ==
'@') {
257 <<
"Framework Error: Parameter '" <<
name <<
"' is incorrectly designated as untracked in the framework.";
260 <<
"Parameter '" <<
name <<
"' is designated as untracked in the code,\n" 261 <<
"but is not designated as untracked in the configuration file.\n" 262 <<
"Please change the configuration file to 'untracked <type> " <<
name <<
"'.";
273 if (
it->second.isTracked() ==
false) {
274 if (
name[0] ==
'@') {
276 <<
"Framework Error: ParameterSet '" <<
name <<
"' is incorrectly designated as tracked in the framework.";
279 <<
"ParameterSet '" <<
name <<
"' is designated as tracked in the code,\n" 280 <<
"but is designated as untracked in the configuration file.\n" 281 <<
"Please remove 'untracked' from the configuration file for parameter '" <<
name <<
"'.";
292 if (
it->second.isTracked()) {
293 if (
name[0] ==
'@') {
295 <<
"Framework Error: ParameterSet '" <<
name 296 <<
"' is incorrectly designated as untracked in the framework.";
299 <<
"ParameterSet '" <<
name <<
"' is designated as untracked in the code,\n" 300 <<
"but is not designated as untracked in the configuration file.\n" 301 <<
"Please change the configuration file to 'untracked <type> " <<
name <<
"'.";
312 if (
it->second.isTracked() ==
false) {
314 <<
"VParameterSet '" <<
name <<
"' is designated as tracked in the code,\n" 315 <<
"but is designated as untracked in the configuration file.\n" 316 <<
"Please remove 'untracked' from the configuration file for parameter '" <<
name <<
"'.";
326 if (
it->second.isTracked()) {
328 <<
"VParameterSet '" <<
name <<
"' is designated as untracked in the code,\n" 329 <<
"but is not designated as untracked in the configuration file.\n" 330 <<
"Please change the configuration file to 'untracked <type> " <<
name <<
"'.";
365 if (existsAs<ParameterSet>(
name)) {
367 }
else if (
existsAs<std::vector<ParameterSet> >(
name)) {
373 <<
"Cannot find parameter " <<
name <<
" in " << *
this;
392 }
else if (okay_to_replace) {
405 }
else if (okay_to_replace) {
420 <<
"cannot insert " <<
name <<
" into a VParameterSet\n";
421 }
else if (okay_to_replace) {
433 for (table::const_iterator
b = from.
tbl_.begin(),
e = from.
tbl_.end();
b !=
e; ++
b) {
434 this->
insert(
false,
b->first,
b->second);
448 }
else if (from.
existsAs<std::vector<ParameterSet> >(
name)) {
463 isTracked =
it->second.isTracked();
464 return &
it->second.psetForUpdate();
490 for (table::const_iterator
b =
tbl_.begin(),
e =
tbl_.end();
b !=
e; ++
b) {
491 if (useAll ||
b->second.isTracked()) {
493 size +=
b->first.size();
494 size +=
b->second.sizeOfString();
498 if (useAll ||
b->second.isTracked()) {
500 size +=
b->first.size();
501 size +=
b->first.size();
502 size +=
b->first.size();
507 if (useAll ||
b->second.isTracked()) {
509 size +=
b->first.size();
514 rep.reserve(
rep.size() + size);
518 for (table::const_iterator
b =
tbl_.begin(),
e =
tbl_.end();
b !=
e; ++
b) {
519 if (useAll ||
b->second.isTracked()) {
523 b->second.toString(
rep);
528 if (useAll ||
b->second.isTracked()) {
532 b->second.toString(
rep);
537 if (useAll ||
b->second.isTracked()) {
541 b->second.toString(
rep);
551 bool started =
false;
552 for (table::const_iterator
b =
tbl_.begin(),
e =
tbl_.end();
b !=
e; ++
b) {
553 if (
b->second.isTracked()) {
558 b->second.toDigest(digest);
563 if (
b->second.isTracked()) {
568 b->second.toDigest(digest);
573 if (
b->second.isTracked()) {
578 b->second.toDigest(digest);
594 if (from.size() < 2
or from.front() !=
'<' or from.back() !=
'>') {
598 std::string_view remaining = from;
599 remaining = remaining.substr(1, from.size() - 2);
602 while (not remaining.empty()) {
604 auto q = remaining.find_first_of(
'=');
605 if (
q == remaining.npos)
608 auto name = remaining.substr(0,
q);
612 remaining = remaining.substr(
q + 1);
613 std::string_view
rep = remaining.substr(0, remaining.find_first_of(
';'));
620 }
else if (
rep[1] ==
'q') {
631 remaining = remaining.substr(
bounds.size());
632 if (not remaining.empty() and remaining.front() !=
';') {
641 }
else if (
rep[1] ==
'p') {
652 auto newStart = remaining.find_first_of(
';');
653 if (newStart == remaining.npos)
655 remaining = remaining.substr(newStart + 1);
663 if (from.size() < 2
or from.front() !=
'<') {
667 std::string_view remaining = from;
668 remaining.remove_prefix(1);
669 while (not remaining.empty() and remaining[0] !=
'>') {
670 auto start_index = remaining.find_first_of(
'=');
671 if (remaining.npos == start_index) {
674 remaining.remove_prefix(start_index + 1);
675 auto end_index = remaining.find_first_of(
";>");
676 if (remaining.npos == end_index) {
683 remaining.remove_prefix(
bounds.size());
684 if (not remaining.empty() and remaining[0] ==
';') {
685 remaining.remove_prefix(1);
688 if (remaining.empty()) {
691 from.remove_suffix(remaining.size() - 1);
699 table::const_iterator
it =
tbl_.begin();
700 table::const_iterator end =
tbl_.end();
703 if (
e.typeCode() ==
'F') {
705 output.push_back(
e.getFileInPath());
713 using std::placeholders::_1;
714 std::vector<std::string> returnValue;
717 back_inserter(returnValue),
721 back_inserter(returnValue),
725 back_inserter(returnValue),
737 for (table::const_iterator tblItr =
tbl_.begin(); tblItr !=
tbl_.end(); ++tblItr) {
738 if (tblItr->second.isTracked()) {
739 result.tbl_.insert(*tblItr);
742 for (psettable::const_iterator psetItr =
psetTable_.begin(); psetItr !=
psetTable_.end(); ++psetItr) {
743 if (psetItr->second.isTracked()) {
744 result.addParameter<
ParameterSet>(psetItr->first, psetItr->second.pset().trackedPart());
747 for (vpsettable::const_iterator vpsetItr =
vpsetTable_.begin(); vpsetItr !=
vpsetTable_.end(); ++vpsetItr) {
748 if (vpsetItr->second.isTracked()) {
750 std::vector<ParameterSet>
const& this_vpset = vpsetItr->second.vpset();
752 typedef std::vector<ParameterSet>::const_iterator Iter;
753 for (Iter
i = this_vpset.begin(),
e = this_vpset.end();
i !=
e; ++
i) {
754 vresult.push_back(
i->trackedPart());
774 for (psettable::const_iterator psetItr =
psetTable_.begin(); psetItr !=
psetTable_.end(); ++psetItr) {
775 if (psetItr->second.isTracked() == trackiness) {
776 output.push_back(psetItr->first);
783 for (vpsettable::const_iterator vpsetItr =
vpsetTable_.begin(); vpsetItr !=
vpsetTable_.end(); ++vpsetItr) {
784 if (vpsetItr->second.isTracked() == trackiness) {
785 output.push_back(vpsetItr->first);
806 table::const_iterator
it =
tbl_.begin();
807 table::const_iterator end =
tbl_.end();
810 if (
e.typeCode() == code &&
e.isTracked() == trackiness) {
820 std::vector<std::string> ParameterSet::getParameterNamesForType<FileInPath>(
bool trackiness)
const {
821 std::vector<std::string>
result;
822 getNamesByCode_(
'F', trackiness,
result);
827 if (
a.isRegistered() &&
b.isRegistered()) {
828 return (
a.id() ==
b.id());
834 if (
a.tbl().size() !=
b.tbl().size()) {
837 if (
a.psetTable().size() !=
b.psetTable().size()) {
840 if (
a.vpsetTable().size() !=
b.vpsetTable().size()) {
843 typedef ParameterSet::table::const_iterator Ti;
844 for (Ti
i =
a.tbl().begin(),
e =
a.tbl().end(),
j =
b.tbl().begin(),
f =
b.tbl().end();
i !=
e &&
j !=
f;
850 typedef ParameterSet::psettable::const_iterator
Pi;
851 for (
Pi i =
a.psetTable().begin(),
e =
a.psetTable().end(),
j =
b.psetTable().begin(),
f =
b.psetTable().end();
854 if (
i->first !=
j->first) {
857 if (
i->second.isTracked() !=
j->second.isTracked()) {
864 typedef ParameterSet::vpsettable::const_iterator PVi;
865 for (PVi
i =
a.vpsetTable().begin(),
e =
a.vpsetTable().end(),
j =
b.vpsetTable().begin(),
f =
b.vpsetTable().end();
868 if (
i->first !=
j->first) {
871 if (
i->second.isTracked() !=
j->second.isTracked()) {
874 std::vector<ParameterSet>
const&
iv =
i->second.vpset();
875 std::vector<ParameterSet>
const& jv =
j->second.vpset();
876 if (
iv.size() != jv.size()) {
879 for (
size_t k = 0;
k <
iv.size(); ++
k) {
889 std::ostringstream
os;
892 os <<
"{" << std::endl;
893 for (table::const_iterator
i =
tbl_.begin(),
e =
tbl_.end();
i !=
e; ++
i) {
894 os <<
indentation <<
" " <<
i->first <<
": " <<
i->second << std::endl;
931 LogWarning(
"Configuration") <<
"Warning:\n\tstring " <<
name <<
" = \"" <<
label <<
"\"\nis deprecated, " 932 <<
"please update your config file to use\n\tInputTag " <<
name <<
" = " <<
label;
941 return retrieve(
name).getBool();
949 return retrieve(
name).getInt32();
953 std::vector<int> ParameterSet::getParameter<std::vector<int> >(
std::string const&
name)
const {
954 return retrieve(
name).getVInt32();
962 return retrieve(
name).getInt64();
966 std::vector<long long> ParameterSet::getParameter<std::vector<long long> >(
std::string const&
name)
const {
967 return retrieve(
name).getVInt64();
974 unsigned int ParameterSet::getParameter<unsigned int>(
std::string const&
name)
const {
975 return retrieve(
name).getUInt32();
979 std::vector<unsigned int> ParameterSet::getParameter<std::vector<unsigned int> >(
std::string const&
name)
const {
980 return retrieve(
name).getVUInt32();
987 unsigned long long ParameterSet::getParameter<unsigned long long>(
std::string const&
name)
const {
988 return retrieve(
name).getUInt64();
992 std::vector<unsigned long long> ParameterSet::getParameter<std::vector<unsigned long long> >(
994 return retrieve(
name).getVUInt64();
1002 return retrieve(
name).getDouble();
1006 std::vector<double> ParameterSet::getParameter<std::vector<double> >(
std::string const&
name)
const {
1007 return retrieve(
name).getVDouble();
1015 return retrieve(
name).getString();
1019 std::vector<std::string> ParameterSet::getParameter<std::vector<std::string> >(
std::string const&
name)
const {
1020 return retrieve(
name).getVString();
1028 return retrieve(
name).getFileInPath();
1056 <<
"type of " <<
name <<
" is expected to be InputTag or string (deprecated)";
1063 std::vector<InputTag> ParameterSet::getParameter<std::vector<InputTag> >(
std::string const&
name)
const {
1064 return retrieve(
name).getVInputTag();
1072 return retrieve(
name).getESInputTag();
1079 std::vector<ESInputTag> ParameterSet::getParameter<std::vector<ESInputTag> >(
std::string const&
name)
const {
1080 return retrieve(
name).getVESInputTag();
1088 return retrieve(
name).getEventID();
1095 std::vector<EventID> ParameterSet::getParameter<std::vector<EventID> >(
std::string const&
name)
const {
1096 return retrieve(
name).getVEventID();
1104 return retrieve(
name).getLuminosityBlockID();
1111 std::vector<LuminosityBlockID> ParameterSet::getParameter<std::vector<LuminosityBlockID> >(
1113 return retrieve(
name).getVLuminosityBlockID();
1121 return retrieve(
name).getEventRange();
1128 std::vector<EventRange> ParameterSet::getParameter<std::vector<EventRange> >(
std::string const&
name)
const {
1129 return retrieve(
name).getVEventRange();
1137 return retrieve(
name).getLuminosityBlockRange();
1144 std::vector<LuminosityBlockRange> ParameterSet::getParameter<std::vector<LuminosityBlockRange> >(
1146 return retrieve(
name).getVLuminosityBlockRange();
1159 return getParameterSetVector(
name);
1169 Entry const* entryPtr = retrieveUntracked(
name);
1175 return getEntryPointerOrThrow_(
name)->getBool();
1183 Entry const* entryPtr = retrieveUntracked(
name);
1189 return getEntryPointerOrThrow_(
name)->getInt32();
1193 std::vector<int> ParameterSet::getUntrackedParameter<std::vector<int> >(
std::string const&
name,
1195 Entry const* entryPtr = retrieveUntracked(
name);
1200 std::vector<int> ParameterSet::getUntrackedParameter<std::vector<int> >(
std::string const&
name)
const {
1201 return getEntryPointerOrThrow_(
name)->getVInt32();
1210 Entry const* entryPtr = retrieveUntracked(
name);
1215 unsigned int ParameterSet::getUntrackedParameter<unsigned int>(
std::string const&
name)
const {
1216 return getEntryPointerOrThrow_(
name)->getUInt32();
1220 std::vector<unsigned int> ParameterSet::getUntrackedParameter<std::vector<unsigned int> >(
1222 Entry const* entryPtr = retrieveUntracked(
name);
1227 std::vector<unsigned int> ParameterSet::getUntrackedParameter<std::vector<unsigned int> >(
1229 return getEntryPointerOrThrow_(
name)->getVUInt32();
1236 unsigned long long ParameterSet::getUntrackedParameter<unsigned long long>(
1238 Entry const* entryPtr = retrieveUntracked(
name);
1243 unsigned long long ParameterSet::getUntrackedParameter<unsigned long long>(
std::string const&
name)
const {
1244 return getEntryPointerOrThrow_(
name)->getUInt64();
1248 std::vector<unsigned long long> ParameterSet::getUntrackedParameter<std::vector<unsigned long long> >(
1250 Entry const* entryPtr = retrieveUntracked(
name);
1255 std::vector<unsigned long long> ParameterSet::getUntrackedParameter<std::vector<unsigned long long> >(
1257 return getEntryPointerOrThrow_(
name)->getVUInt64();
1266 Entry const* entryPtr = retrieveUntracked(
name);
1272 return getEntryPointerOrThrow_(
name)->getInt64();
1276 std::vector<long long> ParameterSet::getUntrackedParameter<std::vector<long long> >(
1278 Entry const* entryPtr = retrieveUntracked(
name);
1283 std::vector<long long> ParameterSet::getUntrackedParameter<std::vector<long long> >(
std::string const&
name)
const {
1284 return getEntryPointerOrThrow_(
name)->getVInt64();
1292 Entry const* entryPtr = retrieveUntracked(
name);
1298 return getEntryPointerOrThrow_(
name)->getDouble();
1302 std::vector<double> ParameterSet::getUntrackedParameter<std::vector<double> >(
1304 Entry const* entryPtr = retrieveUntracked(
name);
1309 std::vector<double> ParameterSet::getUntrackedParameter<std::vector<double> >(
std::string const&
name)
const {
1310 return getEntryPointerOrThrow_(
name)->getVDouble();
1319 Entry const* entryPtr = retrieveUntracked(
name);
1325 return getEntryPointerOrThrow_(
name)->getString();
1329 std::vector<std::string> ParameterSet::getUntrackedParameter<std::vector<std::string> >(
1331 Entry const* entryPtr = retrieveUntracked(
name);
1336 std::vector<std::string> ParameterSet::getUntrackedParameter<std::vector<std::string> >(
1338 return getEntryPointerOrThrow_(
name)->getVString();
1347 Entry const* entryPtr = retrieveUntracked(
name);
1353 return getEntryPointerOrThrow_(
name)->getFileInPath();
1361 Entry const* entryPtr = retrieveUntracked(
name);
1367 return getEntryPointerOrThrow_(
name)->getInputTag();
1371 std::vector<InputTag> ParameterSet::getUntrackedParameter<std::vector<InputTag> >(
1373 Entry const* entryPtr = retrieveUntracked(
name);
1378 std::vector<InputTag> ParameterSet::getUntrackedParameter<std::vector<InputTag> >(
std::string const&
name)
const {
1379 return getEntryPointerOrThrow_(
name)->getVInputTag();
1388 Entry const* entryPtr = retrieveUntracked(
name);
1394 return getEntryPointerOrThrow_(
name)->getESInputTag();
1398 std::vector<ESInputTag> ParameterSet::getUntrackedParameter<std::vector<ESInputTag> >(
1400 Entry const* entryPtr = retrieveUntracked(
name);
1405 std::vector<ESInputTag> ParameterSet::getUntrackedParameter<std::vector<ESInputTag> >(
std::string const&
name)
const {
1406 return getEntryPointerOrThrow_(
name)->getVESInputTag();
1414 Entry const* entryPtr = retrieveUntracked(
name);
1420 return getEntryPointerOrThrow_(
name)->getEventID();
1424 std::vector<EventID> ParameterSet::getUntrackedParameter<std::vector<EventID> >(
1426 Entry const* entryPtr = retrieveUntracked(
name);
1431 std::vector<EventID> ParameterSet::getUntrackedParameter<std::vector<EventID> >(
std::string const&
name)
const {
1432 return getEntryPointerOrThrow_(
name)->getVEventID();
1441 Entry const* entryPtr = retrieveUntracked(
name);
1447 return getEntryPointerOrThrow_(
name)->getLuminosityBlockID();
1451 std::vector<LuminosityBlockID> ParameterSet::getUntrackedParameter<std::vector<LuminosityBlockID> >(
1453 Entry const* entryPtr = retrieveUntracked(
name);
1458 std::vector<LuminosityBlockID> ParameterSet::getUntrackedParameter<std::vector<LuminosityBlockID> >(
1460 return getEntryPointerOrThrow_(
name)->getVLuminosityBlockID();
1469 Entry const* entryPtr = retrieveUntracked(
name);
1475 return getEntryPointerOrThrow_(
name)->getEventRange();
1479 std::vector<EventRange> ParameterSet::getUntrackedParameter<std::vector<EventRange> >(
1481 Entry const* entryPtr = retrieveUntracked(
name);
1486 std::vector<EventRange> ParameterSet::getUntrackedParameter<std::vector<EventRange> >(
std::string const&
name)
const {
1487 return getEntryPointerOrThrow_(
name)->getVEventRange();
1496 Entry const* entryPtr = retrieveUntracked(
name);
1502 return getEntryPointerOrThrow_(
name)->getLuminosityBlockRange();
1506 std::vector<LuminosityBlockRange> ParameterSet::getUntrackedParameter<std::vector<LuminosityBlockRange> >(
1508 Entry const* entryPtr = retrieveUntracked(
name);
1513 std::vector<LuminosityBlockRange> ParameterSet::getUntrackedParameter<std::vector<LuminosityBlockRange> >(
1515 return getEntryPointerOrThrow_(
name)->getVLuminosityBlockRange();
1523 bool ParameterSet::getParameter<bool>(
char const*
name)
const {
1524 return retrieve(
name).getBool();
1531 int ParameterSet::getParameter<int>(
char const*
name)
const {
1532 return retrieve(
name).getInt32();
1536 std::vector<int> ParameterSet::getParameter<std::vector<int> >(
char const*
name)
const {
1537 return retrieve(
name).getVInt32();
1544 long long ParameterSet::getParameter<long long>(
char const*
name)
const {
1545 return retrieve(
name).getInt64();
1549 std::vector<long long> ParameterSet::getParameter<std::vector<long long> >(
char const*
name)
const {
1550 return retrieve(
name).getVInt64();
1557 unsigned int ParameterSet::getParameter<unsigned int>(
char const*
name)
const {
1558 return retrieve(
name).getUInt32();
1562 std::vector<unsigned int> ParameterSet::getParameter<std::vector<unsigned int> >(
char const*
name)
const {
1563 return retrieve(
name).getVUInt32();
1570 unsigned long long ParameterSet::getParameter<unsigned long long>(
char const*
name)
const {
1571 return retrieve(
name).getUInt64();
1575 std::vector<unsigned long long> ParameterSet::getParameter<std::vector<unsigned long long> >(
char const*
name)
const {
1576 return retrieve(
name).getVUInt64();
1583 double ParameterSet::getParameter<double>(
char const*
name)
const {
1584 return retrieve(
name).getDouble();
1588 std::vector<double> ParameterSet::getParameter<std::vector<double> >(
char const*
name)
const {
1589 return retrieve(
name).getVDouble();
1597 return retrieve(
name).getString();
1601 std::vector<std::string> ParameterSet::getParameter<std::vector<std::string> >(
char const*
name)
const {
1602 return retrieve(
name).getVString();
1610 return retrieve(
name).getFileInPath();
1638 <<
"type of " <<
name <<
" is expected to be InputTag or string (deprecated)";
1645 std::vector<InputTag> ParameterSet::getParameter<std::vector<InputTag> >(
char const*
name)
const {
1646 return retrieve(
name).getVInputTag();
1654 return retrieve(
name).getESInputTag();
1661 std::vector<ESInputTag> ParameterSet::getParameter<std::vector<ESInputTag> >(
char const*
name)
const {
1662 return retrieve(
name).getVESInputTag();
1670 return retrieve(
name).getEventID();
1677 std::vector<EventID> ParameterSet::getParameter<std::vector<EventID> >(
char const*
name)
const {
1678 return retrieve(
name).getVEventID();
1686 return retrieve(
name).getLuminosityBlockID();
1693 std::vector<LuminosityBlockID> ParameterSet::getParameter<std::vector<LuminosityBlockID> >(
char const*
name)
const {
1694 return retrieve(
name).getVLuminosityBlockID();
1702 return retrieve(
name).getEventRange();
1709 std::vector<EventRange> ParameterSet::getParameter<std::vector<EventRange> >(
char const*
name)
const {
1710 return retrieve(
name).getVEventRange();
1718 return retrieve(
name).getLuminosityBlockRange();
1725 std::vector<LuminosityBlockRange> ParameterSet::getParameter<std::vector<LuminosityBlockRange> >(
1726 char const*
name)
const {
1727 return retrieve(
name).getVLuminosityBlockRange();
1740 return getParameterSetVector(
name);
1749 bool ParameterSet::getUntrackedParameter<bool>(
char const*
name,
bool const&
defaultValue)
const {
1750 Entry const* entryPtr = retrieveUntracked(
name);
1755 bool ParameterSet::getUntrackedParameter<bool>(
char const*
name)
const {
1756 return getEntryPointerOrThrow_(
name)->getBool();
1763 int ParameterSet::getUntrackedParameter<int>(
char const*
name,
int const&
defaultValue)
const {
1764 Entry const* entryPtr = retrieveUntracked(
name);
1769 int ParameterSet::getUntrackedParameter<int>(
char const*
name)
const {
1770 return getEntryPointerOrThrow_(
name)->getInt32();
1774 std::vector<int> ParameterSet::getUntrackedParameter<std::vector<int> >(
char const*
name,
1776 Entry const* entryPtr = retrieveUntracked(
name);
1781 std::vector<int> ParameterSet::getUntrackedParameter<std::vector<int> >(
char const*
name)
const {
1782 return getEntryPointerOrThrow_(
name)->getVInt32();
1789 unsigned int ParameterSet::getUntrackedParameter<unsigned int>(
char const*
name,
1791 Entry const* entryPtr = retrieveUntracked(
name);
1796 unsigned int ParameterSet::getUntrackedParameter<unsigned int>(
char const*
name)
const {
1797 return getEntryPointerOrThrow_(
name)->getUInt32();
1801 std::vector<unsigned int> ParameterSet::getUntrackedParameter<std::vector<unsigned int> >(
1803 Entry const* entryPtr = retrieveUntracked(
name);
1808 std::vector<unsigned int> ParameterSet::getUntrackedParameter<std::vector<unsigned int> >(
char const*
name)
const {
1809 return getEntryPointerOrThrow_(
name)->getVUInt32();
1816 unsigned long long ParameterSet::getUntrackedParameter<unsigned long long>(
1818 Entry const* entryPtr = retrieveUntracked(
name);
1823 unsigned long long ParameterSet::getUntrackedParameter<unsigned long long>(
char const*
name)
const {
1824 return getEntryPointerOrThrow_(
name)->getUInt64();
1828 std::vector<unsigned long long> ParameterSet::getUntrackedParameter<std::vector<unsigned long long> >(
1829 char const*
name, std::vector<unsigned long long>
const&
defaultValue)
const {
1830 Entry const* entryPtr = retrieveUntracked(
name);
1835 std::vector<unsigned long long> ParameterSet::getUntrackedParameter<std::vector<unsigned long long> >(
1836 char const*
name)
const {
1837 return getEntryPointerOrThrow_(
name)->getVUInt64();
1844 long long ParameterSet::getUntrackedParameter<long long>(
char const*
name,
long long const&
defaultValue)
const {
1845 Entry const* entryPtr = retrieveUntracked(
name);
1850 long long ParameterSet::getUntrackedParameter<long long>(
char const*
name)
const {
1851 return getEntryPointerOrThrow_(
name)->getInt64();
1855 std::vector<long long> ParameterSet::getUntrackedParameter<std::vector<long long> >(
1857 Entry const* entryPtr = retrieveUntracked(
name);
1862 std::vector<long long> ParameterSet::getUntrackedParameter<std::vector<long long> >(
char const*
name)
const {
1863 return getEntryPointerOrThrow_(
name)->getVInt64();
1870 double ParameterSet::getUntrackedParameter<double>(
char const*
name,
double const&
defaultValue)
const {
1871 Entry const* entryPtr = retrieveUntracked(
name);
1876 double ParameterSet::getUntrackedParameter<double>(
char const*
name)
const {
1877 return getEntryPointerOrThrow_(
name)->getDouble();
1881 std::vector<double> ParameterSet::getUntrackedParameter<std::vector<double> >(
1883 Entry const* entryPtr = retrieveUntracked(
name);
1888 std::vector<double> ParameterSet::getUntrackedParameter<std::vector<double> >(
char const*
name)
const {
1889 return getEntryPointerOrThrow_(
name)->getVDouble();
1898 Entry const* entryPtr = retrieveUntracked(
name);
1904 return getEntryPointerOrThrow_(
name)->getString();
1908 std::vector<std::string> ParameterSet::getUntrackedParameter<std::vector<std::string> >(
1910 Entry const* entryPtr = retrieveUntracked(
name);
1915 std::vector<std::string> ParameterSet::getUntrackedParameter<std::vector<std::string> >(
char const*
name)
const {
1916 return getEntryPointerOrThrow_(
name)->getVString();
1924 Entry const* entryPtr = retrieveUntracked(
name);
1930 return getEntryPointerOrThrow_(
name)->getFileInPath();
1938 Entry const* entryPtr = retrieveUntracked(
name);
1943 InputTag ParameterSet::getUntrackedParameter<InputTag>(
char const*
name)
const {
1944 return getEntryPointerOrThrow_(
name)->getInputTag();
1948 std::vector<InputTag> ParameterSet::getUntrackedParameter<std::vector<InputTag> >(
1950 Entry const* entryPtr = retrieveUntracked(
name);
1955 std::vector<InputTag> ParameterSet::getUntrackedParameter<std::vector<InputTag> >(
char const*
name)
const {
1956 return getEntryPointerOrThrow_(
name)->getVInputTag();
1964 Entry const* entryPtr = retrieveUntracked(
name);
1970 return getEntryPointerOrThrow_(
name)->getESInputTag();
1974 std::vector<ESInputTag> ParameterSet::getUntrackedParameter<std::vector<ESInputTag> >(
1976 Entry const* entryPtr = retrieveUntracked(
name);
1981 std::vector<ESInputTag> ParameterSet::getUntrackedParameter<std::vector<ESInputTag> >(
char const*
name)
const {
1982 return getEntryPointerOrThrow_(
name)->getVESInputTag();
1990 Entry const* entryPtr = retrieveUntracked(
name);
1995 EventID ParameterSet::getUntrackedParameter<EventID>(
char const*
name)
const {
1996 return getEntryPointerOrThrow_(
name)->getEventID();
2000 std::vector<EventID> ParameterSet::getUntrackedParameter<std::vector<EventID> >(
2002 Entry const* entryPtr = retrieveUntracked(
name);
2007 std::vector<EventID> ParameterSet::getUntrackedParameter<std::vector<EventID> >(
char const*
name)
const {
2008 return getEntryPointerOrThrow_(
name)->getVEventID();
2017 Entry const* entryPtr = retrieveUntracked(
name);
2023 return getEntryPointerOrThrow_(
name)->getLuminosityBlockID();
2027 std::vector<LuminosityBlockID> ParameterSet::getUntrackedParameter<std::vector<LuminosityBlockID> >(
2028 char const*
name, std::vector<LuminosityBlockID>
const&
defaultValue)
const {
2029 Entry const* entryPtr = retrieveUntracked(
name);
2034 std::vector<LuminosityBlockID> ParameterSet::getUntrackedParameter<std::vector<LuminosityBlockID> >(
2035 char const*
name)
const {
2036 return getEntryPointerOrThrow_(
name)->getVLuminosityBlockID();
2044 Entry const* entryPtr = retrieveUntracked(
name);
2050 return getEntryPointerOrThrow_(
name)->getEventRange();
2054 std::vector<EventRange> ParameterSet::getUntrackedParameter<std::vector<EventRange> >(
2056 Entry const* entryPtr = retrieveUntracked(
name);
2061 std::vector<EventRange> ParameterSet::getUntrackedParameter<std::vector<EventRange> >(
char const*
name)
const {
2062 return getEntryPointerOrThrow_(
name)->getVEventRange();
2071 Entry const* entryPtr = retrieveUntracked(
name);
2077 return getEntryPointerOrThrow_(
name)->getLuminosityBlockRange();
2081 std::vector<LuminosityBlockRange> ParameterSet::getUntrackedParameter<std::vector<LuminosityBlockRange> >(
2082 char const*
name, std::vector<LuminosityBlockRange>
const&
defaultValue)
const {
2083 Entry const* entryPtr = retrieveUntracked(
name);
2088 std::vector<LuminosityBlockRange> ParameterSet::getUntrackedParameter<std::vector<LuminosityBlockRange> >(
2089 char const*
name)
const {
2090 return getEntryPointerOrThrow_(
name)->getVLuminosityBlockRange();
2122 return getUntrackedParameterSet(
name);
2127 return getUntrackedParameterSetVector(
name);
2132 return getUntrackedParameterSet(
name);
2137 return getUntrackedParameterSetVector(
name);
2145 invalidateRegistration(
name);
2151 invalidateRegistration(
name);
2157 invalidateRegistration(
name);
2163 invalidateRegistration(
name);
2191 std::vector<std::string> ParameterSet::getParameterNamesForType<ParameterSet>(
bool trackiness)
const {
2192 std::vector<std::string>
output;
2193 getParameterSetNames(
output, trackiness);
2198 std::vector<std::string> ParameterSet::getParameterNamesForType<VParameterSet>(
bool trackiness)
const {
2199 std::vector<std::string>
output;
2200 getParameterSetVectorNames(
output, trackiness);
2218 if (entryPtr ==
nullptr) {
2221 return entryPtr->
pset();
2232 <<
"The required ParameterSet '" <<
name <<
"' was not specified.\n";
2263 <<
"The required ParameterSetVector '" <<
name <<
"' was not specified.\n";
constexpr bool operator==(ELseverityLevel const &e1, ELseverityLevel const &e2) noexcept
std::vector< unsigned > getVUInt32() const
void setID(ParameterSetID const &id)
std::vector< std::string > getVString() const
std::unique_ptr< ParameterSet > popParameterSet(std::string const &name)
std::vector< InputTag > getVInputTag() const
std::vector< ParameterSet > VParameterSet
std::string toString() const
void toStringImp(std::string &, bool useAll) const
bool exists(std::string const ¶meterName) const
checks if a parameter exists
int exceptions(int argc, char *argv[])
ParameterSet const & getParameterSet(std::string const &) const
size_t getParameterSetVectorNames(std::vector< std::string > &output, bool trackiness=true) const
ParameterSet trackedPart() const
VParameterSetEntry const * retrieveUntrackedVParameterSet(std::string const &) const
VParameterSetEntry const & retrieveVParameterSet(std::string const &) const
void insert(bool ok_to_replace, char const *, Entry const &)
ParameterSet getUntrackedParameterSet(std::string const &name, ParameterSet const &defaultValue) const
std::vector< ParameterSet > const & vpset() const
returns the VPSet
void swap(Hash< I > &other)
std::string toString() const
bool existsAs(std::string const ¶meterName, bool trackiness=true) const
checks if a parameter exists as a given type
ParameterSetID const & mainParameterSetID() const
ParameterSet const & pset() const
returns the PSet
std::string toString() const
void swap(Association< C > &lhs, Association< C > &rhs)
static std::string_view extent(std::string_view)
unsigned long long getUInt64() const
size_t getParameterSetNames(std::vector< std::string > &output, bool trackiness=true) const
std::vector< EventRange > getVEventRange() const
Entry const * retrieveUntracked(char const *) const
void augment(ParameterSet const &from)
void eraseOrSetUntrackedParameterSet(std::string const &name)
void swap(ParameterSet &other)
void allToString(std::string &result) const
U second(std::pair< T, U > const &p)
std::vector< EventID > getVEventID() const
ParameterSetID id() const
VParameterSet getUntrackedParameterSetVector(std::string const &name, VParameterSet const &defaultValue) const
void copyFrom(ParameterSet const &from, std::string const &name)
ParameterSet const & registerIt()
std::vector< int > getVInt32() const
LuminosityBlockID getLuminosityBlockID() const
std::vector< FileInPath >::size_type getAllFileInPaths(std::vector< FileInPath > &output) const
std::string dump(unsigned int indent=0) const
VParameterSetEntry * getPSetVectorForUpdate(std::string const &name)
Entry const & retrieve(char const *) const
std::vector< ESInputTag > getVESInputTag() const
std::string toString() const
The Signals That Services Can Subscribe To This is based on ActivityRegistry and is current per Services can connect to the signals distributed by the ActivityRegistry in order to monitor the activity of the application Each possible callback has some defined which we here list in angle e< void, edm::EventID const &, edm::Timestamp const & > We also list in braces which AR_WATCH_USING_METHOD_ is used for those or
bool fromString(std::string_view)
void insertVParameterSet(bool okay_to_replace, std::string const &name, VParameterSetEntry const &entry)
VParameterSetEntry const * retrieveUnknownVParameterSet(std::string const &) const
ParameterSetEntry const * retrieveUntrackedParameterSet(std::string const &) const
bool insertMapped(value_type const &v, bool forceUpdate=false)
static std::string_view bounds(std::string_view, std::size_t iEndHint)
unsigned getUInt32() const
void eraseSimpleParameter(std::string const &name)
void copyForModify(ParameterSet const &other)
Hash< ParameterSetType > ParameterSetID
void invalidateRegistration(std::string const &nameOfTracked)
size_t getNamesByCode_(char code, bool trackiness, std::vector< std::string > &output) const
ParameterSet const & getProcessParameterSetContainingModule(ModuleDescription const &moduleDescription)
InputTag getInputTag() const
Log< level::Info, false > LogInfo
static void registerFromString(std::string const &rep)
ESInputTag getESInputTag() const
std::vector< LuminosityBlockID > getVLuminosityBlockID() const
Entry const * retrieveUnknown(char const *) const
std::string getString() const
void insertParameterSet(bool okay_to_replace, std::string const &name, ParameterSetEntry const &entry)
void deprecatedInputTagWarning(std::string const &name, std::string const &label) const
ParameterSetEntry const * retrieveUnknownParameterSet(std::string const &) const
FileInPath getFileInPath() const
ParameterSet const & getParameterSet(ParameterSetID const &id)
std::string dump(unsigned int indent=0) const
EventID getEventID() const
std::vector< ParameterSet > popVParameterSet(std::string const &name)
VParameterSet const & getParameterSetVector(std::string const &name) const
EventRange getEventRange() const
std::vector< unsigned long long > getVUInt64() const
std::string dump(unsigned int indent=0) const
std::string getParameterAsString(std::string const &name) const
bool isRegistered() const
Entry const * getEntryPointerOrThrow_(std::string const &name) const
long long getInt64() const
Log< level::Warning, false > LogWarning
void throwWrongNumberOfElements(std::string const &iParameterName, size_t iExpected, size_t iGot)
T first(std::pair< T, U > const &p)
std::ostream & operator<<(std::ostream &ost, const HLTGlobalStatus &hlt)
Formatted printout of trigger table.
static ParameterSetID emptyParameterSetID()
ParameterSetEntry const & retrieveParameterSet(std::string const &) const
void toDigest(cms::Digest &digest) const
std::vector< std::string > getParameterNames() const
std::string toString() const
bool isTransientEqual(ParameterSet const &a, ParameterSet const &b)
LuminosityBlockRange getLuminosityBlockRange() const
std::vector< LuminosityBlockRange > getVLuminosityBlockRange() const
static Registry * instance()
std::vector< long long > getVInt64() const
void append(std::string const &s)
ParameterSet * getPSetForUpdate(std::string const &name, bool &isTracked)
std::vector< double > getVDouble() const