13 #ifndef mitkBaseData_h
14 #define mitkBaseData_h
16 #include <itkDataObject.h>
50 std::vector<std::string> GetPropertyKeys(
const std::string &contextName =
"",
bool includeDefaultContext =
false)
const override;
51 std::vector<std::string> GetPropertyContextNames()
const override;
54 BaseProperty * GetNonConstProperty(
const std::string &propertyKey,
const std::string &contextName =
"",
bool fallBackOnDefaultContext =
true)
override;
55 void SetProperty(
const std::string &propertyKey,
BaseProperty *property,
const std::string &contextName =
"",
bool fallBackOnDefaultContext =
false)
override;
56 void RemoveProperty(
const std::string &propertyKey,
const std::string &contextName =
"",
bool fallBackOnDefaultContext =
false)
override;
68 return m_TimeGeometry.GetPointer();
98 virtual void Expand(
unsigned int timeSteps);
123 if (m_TimeGeometry.IsNull())
125 return m_TimeGeometry->GetGeometryForTimeStep(t);
143 void UpdateOutputInformation()
override;
150 void SetRequestedRegionToLargestPossibleRegion()
override = 0;
163 bool RequestedRegionIsOutsideOfTheBufferedRegion()
override = 0;
176 bool VerifyRequestedRegion()
override = 0;
189 void CopyInformation(
const itk::DataObject *data)
override;
198 virtual bool IsInitialized()
const;
205 virtual void Clear();
214 virtual bool IsEmptyTimeStep(
unsigned int t)
const;
224 virtual bool IsEmpty()
const;
231 void SetRequestedRegion(
const itk::DataObject *data)
override = 0;
238 void ExecuteOperation(
Operation *operation)
override;
269 virtual void SetClonedGeometry(
const BaseGeometry *aGeometry3D);
276 virtual void SetClonedTimeGeometry(
const TimeGeometry *geometry);
282 virtual void SetClonedGeometry(
const BaseGeometry *aGeometry3D,
unsigned int time);
304 void SetProperty(
const char *propertyKey,
BaseProperty *property);
316 virtual void SetOrigin(
const Point3D &origin);
338 unsigned int GetTimeSteps()
const {
return m_TimeGeometry->CountTimeSteps(); }
342 itk::ModifiedTimeType GetMTime()
const override;
347 void Graft(
const DataObject *)
override;
358 virtual void InitializeTimeGeometry(
unsigned int timeSteps = 1);
362 virtual void ClearData();
369 void PrintSelf(std::ostream &os, itk::Indent indent)
const override;