23 m_CurrentValue(other.m_CurrentValue),
24 m_IdMap(other.m_IdMap),
25 m_NameMap(other.m_NameMap)
34 this->
GetEnumIds().insert(std::make_pair(
id, name));
71 return m_CurrentValue;
106 : std::string(
"invalid enum id or enums empty");
118 const auto &other =
static_cast<const Self &
>(property);
121 this->
Size() == other.Size() &&
123 std::equal(this->
Begin(), this->
End(), other.Begin());
128 const auto &other =
static_cast<const Self &
>(property);
133 m_CurrentValue = other.m_CurrentValue;
virtual IdType GetValueAsId() const
virtual bool SetValue(const std::string &name)
virtual EnumIdsContainerType::size_type Size() const
std::string GetValueAsString() const override
bool IsEqual(const BaseProperty &property) const override
bool Assign(const BaseProperty &property) override
virtual IdType GetEnumId(const std::string &name) const
virtual bool AddEnum(const std::string &name, const IdType &id)
const EnumStringsContainerType & GetEnumStrings() const
virtual EnumConstIterator End() const
const EnumIdsContainerType & GetEnumIds() const
Abstract base class for properties.
EnumIdsContainerType::const_iterator EnumConstIterator
std::map< IdType, std::string > EnumIdsContainerType
virtual EnumConstIterator Begin() const
virtual bool IsValidEnumerationValue(const IdType &id) const
std::map< std::string, IdType > EnumStringsContainerType
virtual std::string GetEnumString(const IdType &id) const