8 #include "boost/bind.hpp"
19 parameterHoldingLabels_(label, std::vector<std::string>(), isTracked),
21 isTracked_(isTracked) {
26 parameterHoldingLabels_(label, std::vector<std::string>(), isTracked),
28 isTracked_(isTracked) {
35 std::set<ParameterTypes> & parameterTypes,
36 std::set<ParameterTypes> & wildcardTypes)
const {
44 std::set<std::string> & validatedLabels,
45 bool optional)
const {
49 std::vector<std::string> allowedLabels;
60 boost::ref(validatedLabels)));
67 bool & startWithComma,
69 bool & wroteSomething)
const {
80 if (dfh.
pass() == 1) {
87 if (optional) os <<
" optional";
89 if (!writeToCfi) os <<
" (do not write to cfi)";
91 os <<
" see Section " << dfh.
section() <<
"." << dfh.
counter() <<
"\n";
99 if (optional) os <<
"optional";
100 if (!writeToCfi) os <<
" (do not write to cfi)";
101 if (optional || !writeToCfi) {
106 os <<
"see Section " << dfh.
section() <<
"." << dfh.
counter() <<
"\n";
132 if (!dfh.
brief()) os <<
"\n";
149 <<
" - allowed labels description\n";
151 os <<
"The following parameter contains a list of parameter labels\n";
153 os <<
"which are allowed to be in the PSet\n";
154 if (!dfh.
brief()) os <<
"\n";
161 os <<
"type of allowed parameters:";
162 if (dfh.
brief()) os <<
" ";
186 return exists(pset) ? 1 : 0;
void printNestedContentBase_(std::ostream &os, bool optional, DocFormatHelper &dfh)
T getParameter(std::string const &) const
T getUntrackedParameter(std::string const &, T const &) const
void validate(ParameterSet &pset, std::set< std::string > &validatedLabels, bool optional) const
virtual ~AllowedLabelsDescriptionBase()
virtual bool partiallyExists_(ParameterSet const &pset) const
std::string parameterTypeEnumToString(ParameterTypes iType)
AllowedLabelsDescriptionBase(std::string const &label, ParameterTypes iType, bool isTracked)
Func for_all(ForwardSequence &s, Func f)
wrapper for std::for_each
virtual void checkAndGetLabelsAndTypes_(std::set< std::string > &usedLabels, std::set< ParameterTypes > ¶meterTypes, std::set< ParameterTypes > &wildcardTypes) const
std::string const & comment() const
virtual void validateAllowedLabel_(std::string const &allowedLabel, ParameterSet &pset, std::set< std::string > &validatedLabels) const =0
virtual bool hasNestedContent_()
virtual bool exists_(ParameterSet const &pset) const
static void printSpaces(std::ostream &os, int n)
bool exists(ParameterSet const &pset) const
void print(std::ostream &os, bool optional, bool writeToCfi, DocFormatHelper &dfh)
virtual void validate_(ParameterSet &pset, std::set< std::string > &validatedLabels, bool optional) const
ParameterDescription< std::vector< std::string > > parameterHoldingLabels_
virtual void writeCfi_(std::ostream &os, bool &startWithComma, int indentation, bool &wroteSomething) const
void checkAndGetLabelsAndTypes(std::set< std::string > &usedLabels, std::set< ParameterTypes > ¶meterTypes, std::set< ParameterTypes > &wildcardTypes) const
virtual void printNestedContent_(std::ostream &os, bool optional, DocFormatHelper &dfh)
void writeCfi(std::ostream &os, bool &startWithComma, int indentation, bool &wroteSomething) const
virtual void print_(std::ostream &os, bool optional, bool writeToCfi, DocFormatHelper &dfh)
virtual int howManyXORSubNodesExist_(ParameterSet const &pset) const
ParameterTypes type() const
std::string const & label() const