17 #ifndef MITKTEMPOROSPATIALSTRINGPROPERTY_H_HEADER
18 #define MITKTEMPOROSPATIALSTRINGPROPERTY_H_HEADER
20 #include <itkConfigure.h>
33 #pragma warning(disable : 4522)
53 ValueType GetValue() const;
57 const IndexValueType &zSlice,
58 bool allowCloseTime = false,
59 bool allowCloseSlice = false) const;
60 ValueType GetValueBySlice(const IndexValueType &zSlice,
bool allowClose = false) const;
61 ValueType GetValueByTimeStep(const
TimeStepType &timeStep,
bool allowClose = false) const;
63 bool HasValue() const;
65 const IndexValueType &zSlice,
66 bool allowCloseTime = false,
67 bool allowCloseSlice = false) const;
68 bool HasValueBySlice(const IndexValueType &zSlice,
bool allowClose = false) const;
69 bool HasValueByTimeStep(const
TimeStepType &timeStep,
bool allowClose = false) const;
71 std::vector<IndexValueType> GetAvailableSlices(const
TimeStepType &timeStep) const;
74 void SetValue(const
TimeStepType &timeStep, const IndexValueType &zSlice, const ValueType &value);
76 void SetValue(const ValueType &value);
78 virtual
std::
string GetValueAsString() const override;
88 TemporoSpatialStringProperty(const
char *
string =
nullptr);
89 TemporoSpatialStringProperty(const
std::
string &s);
91 TemporoSpatialStringProperty(const TemporoSpatialStringProperty &);
93 std::pair<
bool, ValueType> CheckValue(const TimeStepType &timeStep,
94 const IndexValueType &zSlice,
95 bool allowCloseTime = false,
96 bool allowCloseSlice = false) const;
100 TemporoSpatialStringProperty &operator=(const TemporoSpatialStringProperty &);
102 itk::LightObject::
Pointer InternalClone() const override;
104 virtual
bool IsEqual(const
BaseProperty &property) const override;
105 virtual
bool Assign(const
BaseProperty &property) override;
108 namespace PropertyPersistenceSerialization
114 namespace PropertyPersistenceDeserialization
MITKCORE_EXPORT::std::string serializeTemporoSpatialStringPropertyToJSON(const mitk::BaseProperty *prop)
#define mitkNewMacro1Param(classname, type)
DataCollection - Class to facilitate loading/accessing structured data.
Abstract base class for properties.
std::map< TimeStepType, SliceMapType > TimeMapType
#define mitkClassMacro(className, SuperClassName)
std::vcl_size_t TimeStepType
std::map< IndexValueType, std::string > SliceMapType
MITKCORE_EXPORT mitk::BaseProperty::Pointer deserializeJSONToTemporoSpatialStringProperty(const std::string &value)
::itk::IndexValueType IndexValueType
Property for time and space resolved string values.