17 #ifndef PROPERTYLIST_H_HEADER_INCLUDED_C1C77D8D
18 #define PROPERTYLIST_H_HEADER_INCLUDED_C1C77D8D
25 #include <itkObjectFactory.h>
72 itkFactorylessNewMacro(
Self) itkCloneMacro(
Self)
94 void SetProperty(const
std::
string &propertyKey,
BaseProperty *property);
104 void ReplaceProperty(const
std::
string &propertyKey,
BaseProperty *property);
115 template <typename T>
116 bool GetPropertyValue(const
char *propertyKey, T &value)
const
130 bool GetBoolProperty(
const char *propertyKey,
bool &boolValue)
const;
134 bool Get(
const char *propertyKey,
bool &boolValue)
const;
139 void SetBoolProperty(
const char *propertyKey,
bool boolValue);
143 void Set(
const char *propertyKey,
bool boolValue);
148 bool GetIntProperty(
const char *propertyKey,
int &
intValue)
const;
152 bool Get(
const char *propertyKey,
int &
intValue)
const;
157 void SetIntProperty(
const char *propertyKey,
int intValue);
161 void Set(
const char *propertyKey,
int intValue);
166 bool GetFloatProperty(
const char *propertyKey,
float &floatValue)
const;
170 bool Get(
const char *propertyKey,
float &floatValue)
const;
175 void SetFloatProperty(
const char *propertyKey,
float floatValue);
179 void Set(
const char *propertyKey,
float floatValue);
184 bool GetDoubleProperty(
const char *propertyKey,
double &doubleValue)
const;
188 bool Get(
const char *propertyKey,
double &doubleValue)
const;
193 void SetDoubleProperty(
const char *propertyKey,
double doubleValue);
197 void Set(
const char *propertyKey,
double doubleValue);
202 bool GetStringProperty(
const char *propertyKey, std::string &
stringValue)
const;
206 bool Get(
const char *propertyKey, std::string &
stringValue)
const;
211 void SetStringProperty(
const char *propertyKey,
const char *
stringValue);
215 void Set(
const char *propertyKey,
const char *
stringValue);
219 void Set(
const char *propertyKey,
const std::string &
stringValue);
225 virtual unsigned long GetMTime()
const override;
230 bool DeleteProperty(
const std::string &propertyKey);
233 bool IsEmpty()
const {
return m_Properties.empty(); }
234 virtual void Clear();
itk::SmartPointer< Self > Pointer
std::pair< std::string, BaseProperty::Pointer > PropertyMapElementType
DataCollection - Class to facilitate loading/accessing structured data.
Key-value list holding instances of BaseProperty.
Abstract base class for properties.
std::map< std::string, BaseProperty::Pointer > PropertyMap
#define mitkClassMacroItkParent(className, SuperClassName)
PropertyMap m_Properties
Map of properties.
static const char * replace[]
This is a dictionary to replace long names of classes, modules, etc. to shorter versions in the conso...
const PropertyMap * GetMap() const
virtual T GetValue() const