53 inline void updateProperty(
const std::string& name,
const T& value,
const bool triggerCallback =
true)
56 const auto oldValue = propMap.getProperty<T>(name, value);
59 propMap.updateProperty(name, value);
87 return hasProperty(name) ? getProperty<T>(name) : val;
119 types.push_back(i.first);
130 const auto& key = kv.first;
131 const auto& properties = kv.second.getProperties();
134 for (
const auto& property : properties)
void _updateValue(T &member, const T &newValue, const bool triggerCallback=true)
void markModified(const bool triggerCallback=true)
bool _isEqual(const T &a, const T &b, typename std::enable_if< std::is_floating_point< T >::value >::type *=0)
void setProperty(const Property &newProperty)
void updateProperty(const std::string &name, const T &value, const bool triggerCallback=true)
void setCurrentType(const std::string &type)
const auto & getPropertyMap() const
void updateProperties(const PropertyMap &properties)
bool hasProperty(const std::string &name) const
void setProperties(const std::string &type, const PropertyMap &properties)
const std::string & getCurrentType() const
T getProperty(const std::string &name) const
void setProperties(const PropertyMap &properties)
T getPropertyOrValue(const std::string &name, T val) const
void clonePropertiesFrom(const PropertyObject &obj)
const auto & getPropertyMap(const std::string &type) const
std::map< std::string, PropertyMap > _properties