13 #ifndef mitkVectorProperty_h 14 #define mitkVectorProperty_h 34 static const char *
prefix() {
return "Invalid"; }
51 template <
typename DATATYPE>
65 std::vector<std::string>
GetClassHierarchy()
const override {
return mitk::GetClassHierarchy<Self>(); }
73 return nameOfClass.c_str();
76 const char *
GetNameOfClass()
const override {
return this->GetStaticNameOfClass(); }
77 itkFactorylessNewMacro(Self);
88 std::string GetValueAsString()
const override;
91 virtual const VectorType &GetValue()
const;
94 virtual void SetValue(
const VectorType ¶meter_vector);
101 itk::LightObject::Pointer InternalClone()
const override;
104 bool IsEqual(
const BaseProperty &an_other_property)
const override;
107 bool Assign(
const BaseProperty &an_other_property)
override;
110 VectorType m_PropertyContent;
114 #define MITK_DECLARE_VECTOR_PROPERTY(TYPE, PREFIX) \ 116 typedef VectorProperty<TYPE> PREFIX##VectorProperty; \ 120 struct VectorPropertyDataType<TYPE> \ 122 static const char *prefix() { return #PREFIX; } \ 126 #define MITK_DEFINE_VECTOR_PROPERTY(TYPE) template class VectorProperty<TYPE>;
static const char * prefix()
Helper for VectorProperty to determine a good ITK ClassName.
DataCollection - Class to facilitate loading/accessing structured data.
VectorProperty< DATATYPE > Self
static const char * GetStaticNameOfClass()
const char * GetNameOfClass() const override
Abstract base class for properties.
#define MITK_DECLARE_VECTOR_PROPERTY(TYPE, PREFIX)
This should be used in .h files.
itk::SmartPointer< Self > Pointer
std::vector< DATATYPE > VectorType
Providing a std::vector as property.
itk::SmartPointer< const Self > ConstPointer
std::vector< std::string > GetClassHierarchy() const override