1#ifndef OPAL_AttributeHandler_HH
2#define OPAL_AttributeHandler_HH
63 virtual const std::string&
getHelp()
const;
66 virtual const std::string&
getName()
const;
71 virtual const std::string&
getType()
const = 0;
111 static std::multimap<OwnerType, std::string>
getOwner(
const std::string& att);
113 const std::string& owner,
const OwnerType& type,
const std::string& name);
137 static std::multimap<std::string, std::pair<OwnerType, std::string> >
Abstract base class for attribute values of different types.
Abstract base class for attribute parsers.
AttributeHandler(const AttributeHandler &)
void setDeferred(bool)
Set or reset defer flag.
const std::string itsHelp
Help text.
virtual AttributeBase * getDefault() const
Return default value.
bool isDeferred() const
Return defer flag.
static void addAttributeOwner(const std::string &owner, const OwnerType &type, const std::string &name)
bool is_deferred
Defer flag.
void setReadOnly(bool)
Set or reset read-only flag.
static std::multimap< std::string, std::pair< OwnerType, std::string > > attributeOwnerDictionary_s
virtual const std::string & getName() const
Return attribute name.
const std::string itsName
Attribute name.
virtual const std::string & getHelp() const
Return help string.
virtual const std::string & getType() const =0
Return attribute type.
virtual void parseComponent(Attribute &a, Statement &s, bool eval, int i) const
Parse component value.
virtual ~AttributeHandler()
bool isReadOnly() const
Return read-only flag.
virtual void parse(Attribute &a, Statement &s, bool eval) const =0
Parse new value.
void operator=(const AttributeHandler &)
static std::multimap< OwnerType, std::string > getOwner(const std::string &att)
bool is_readonly
Read-only flag.
void setPredefinedValues(const std::set< std::string > &, const std::string &)
Add predefined strings values to the help.
std::shared_ptr< AttributeBase > itsDefault
Default value.
A representation of an Object attribute.
Interface for statements.