Medical Imaging Interaction Toolkit
2024.12.99-0da743f6
Medical Imaging Interaction Toolkit
|
Super class of data objects consisting of slices. More...
#include <mitkSlicedData.h>
Public Types | |
typedef SlicedData | Self |
typedef BaseData | Superclass |
typedef itk::SmartPointer< Self > | Pointer |
typedef itk::SmartPointer< const Self > | ConstPointer |
typedef itk::ImageRegion< RegionDimension > | RegionType |
typedef itk::Index< RegionDimension > | IndexType |
typedef IndexType::IndexValueType | IndexValueType |
typedef itk::Offset< RegionDimension > | OffsetType |
typedef OffsetType::OffsetValueType | OffsetValueType |
typedef itk::Size< RegionDimension > | SizeType |
typedef SizeType::SizeValueType | SizeValueType |
Public Types inherited from mitk::BaseData | |
typedef BaseData | Self |
typedef itk::DataObject | Superclass |
typedef itk::SmartPointer< Self > | Pointer |
typedef itk::SmartPointer< const Self > | ConstPointer |
Public Types inherited from mitk::Identifiable | |
using | UIDType = std::string |
Public Member Functions | |
virtual std::vector< std::string > | GetClassHierarchy () const override |
virtual const char * | GetClassName () const |
itkStaticConstMacro (RegionDimension, unsigned int, 5) | |
void | UpdateOutputInformation () override |
void | PrepareForNewData () override |
void | SetRequestedRegionToLargestPossibleRegion () override |
bool | RequestedRegionIsOutsideOfTheBufferedRegion () override |
bool | VerifyRequestedRegion () override |
Verify that the RequestedRegion is within the LargestPossibleRegion. More... | |
void | SetRequestedRegion (const itk::DataObject *data) override |
virtual void | SetRequestedRegion (SlicedData::RegionType *region) |
void | SetLargestPossibleRegion (SlicedData::RegionType *region) |
Sets the largest possible region. The largest possible region is the entire region occupied by the data object. Note that the largest possible region should always be bigger then the requested region of a certain operation. More... | |
const RegionType & | GetLargestPossibleRegion () const |
virtual const RegionType & | GetRequestedRegion () const |
virtual bool | IsSliceSet (int s=0, int t=0, int n=0) const =0 |
virtual bool | IsVolumeSet (int t=0, int n=0) const =0 |
virtual bool | IsChannelSet (int n=0) const =0 |
void | CopyInformation (const itk::DataObject *data) override |
unsigned int | GetNumberOfChannels () const |
Get the number of channels. More... | |
SlicedGeometry3D * | GetSlicedGeometry (unsigned int t=0) const |
Convenience access method for the geometry, which is of type SlicedGeometry3D (or a sub-class of it). More... | |
const SlicedGeometry3D * | GetUpdatedSlicedGeometry (unsigned int t=0) |
Convenience access method for the geometry, which is of type SlicedGeometry3D (or a sub-class of it). More... | |
void | SetGeometry (BaseGeometry *aGeometry3D) override |
Set the BaseGeometry of the data, which will be referenced (not copied!). It has to be a sub-class of SlicedGeometry3D. More... | |
void | SetOrigin (const Point3D &origin) override |
Convenience method for setting the origin of the SlicedGeometry3D instances of all time steps. More... | |
virtual void | SetSpacing (const ScalarType aSpacing[]) |
Convenience method for setting the spacing of the SlicedGeometry3D instances of all time steps. More... | |
virtual void | SetSpacing (mitk::Vector3D aSpacing) |
Convenience method for setting the spacing of the SlicedGeometry3D instances of all time steps. More... | |
Public Member Functions inherited from mitk::BaseData | |
BaseProperty::ConstPointer | GetConstProperty (const std::string &propertyKey, const std::string &contextName="", bool fallBackOnDefaultContext=true) const override |
Get property by its key. More... | |
std::vector< std::string > | GetPropertyKeys (const std::string &contextName="", bool includeDefaultContext=false) const override |
Query keys of existing properties. More... | |
std::vector< std::string > | GetPropertyContextNames () const override |
Query names of existing contexts. More... | |
BaseProperty * | GetNonConstProperty (const std::string &propertyKey, const std::string &contextName="", bool fallBackOnDefaultContext=true) override |
Get property by its key. More... | |
void | SetProperty (const std::string &propertyKey, BaseProperty *property, const std::string &contextName="", bool fallBackOnDefaultContext=false) override |
Add new or change existent property. More... | |
void | RemoveProperty (const std::string &propertyKey, const std::string &contextName="", bool fallBackOnDefaultContext=false) override |
Removes a property. If the property does not exist, nothing will be done. More... | |
const mitk::TimeGeometry * | GetTimeGeometry () const |
Return the TimeGeometry of the data as const pointer. More... | |
mitk::TimeGeometry * | GetTimeGeometry () |
Return the TimeGeometry of the data as pointer. More... | |
const mitk::TimeGeometry * | GetUpdatedTimeGeometry () |
Return the TimeGeometry of the data. More... | |
virtual void | Expand (unsigned int timeSteps) |
Expands the TimeGeometry to a number of TimeSteps. More... | |
const mitk::BaseGeometry * | GetUpdatedGeometry (int t=0) |
Return the BaseGeometry of the data at time t. More... | |
mitk::BaseGeometry * | GetGeometry (int t=0) const |
Return the geometry, which is a TimeGeometry, of the data as non-const pointer. More... | |
void | UpdateOutputInformation () override |
Update the information for this BaseData (the geometry in particular) so that it can be used as an output of a BaseProcess. More... | |
void | CopyInformation (const itk::DataObject *data) override |
Copy information from the specified data set. More... | |
virtual bool | IsInitialized () const |
Check whether the data has been initialized, i.e., at least the Geometry and other header data has been set. More... | |
virtual void | Clear () |
Calls ClearData() and InitializeEmpty();. More... | |
virtual bool | IsEmptyTimeStep (unsigned int t) const |
Check whether object contains data (at a specified time), e.g., a set of points may be empty. More... | |
virtual bool | IsEmpty () const |
Check whether object contains data (at least at one point in time), e.g., a set of points may be empty. More... | |
void | ExecuteOperation (Operation *operation) override |
overwrite if the Data can be called by an Interactor (StateMachine). More... | |
virtual void | SetTimeGeometry (TimeGeometry *geometry) |
Set the TimeGeometry of the data, which will be referenced (not copied!). More... | |
virtual void | SetClonedGeometry (const BaseGeometry *aGeometry3D) |
Set a clone of the provided Geometry as Geometry of the data. Assumes the data object has only 1 time step ( is a 3D object ) and creates a new TimeGeometry. If an TimeGeometry has already been set for the object, it will be replaced after calling this function. More... | |
virtual void | SetClonedTimeGeometry (const TimeGeometry *geometry) |
Set a clone of the provided TimeGeometry as TimeGeometry of the data. More... | |
virtual void | SetClonedGeometry (const BaseGeometry *aGeometry3D, unsigned int time) |
Set a clone of the provided geometry as BaseGeometry of a given time step. More... | |
mitk::PropertyList::Pointer | GetPropertyList () const |
Get the data's property list. More... | |
void | SetPropertyList (PropertyList *propertyList) |
Set the data's property list. More... | |
mitk::BaseProperty::Pointer | GetProperty (const char *propertyKey) const |
Get the property (instance of BaseProperty) with key propertyKey from the PropertyList, and set it to this, respectively;. More... | |
void | SetProperty (const char *propertyKey, BaseProperty *property) |
itk::SmartPointer< mitk::BaseDataSource > | GetSource () const |
Get the process object that generated this data object. More... | |
unsigned int | GetTimeSteps () const |
Get the number of time steps from the TimeGeometry As the base data has not a data vector given by itself, the number of time steps is defined over the time sliced geometry. In sub classes, a better implementation could be over the length of the data vector. More... | |
itk::ModifiedTimeType | GetMTime () const override |
Get the modified time of the last change of the contents this data object or its geometry. More... | |
void | Graft (const DataObject *) override |
Public Member Functions inherited from mitk::OperationActor | |
itkTypeMacroNoParent (OperationActor) virtual ~OperationActor() | |
Public Member Functions inherited from mitk::Identifiable | |
Identifiable () | |
Identifiable (const UIDType &uid) | |
Identifiable (const Identifiable &)=delete | |
Identifiable (Identifiable &&) noexcept | |
virtual | ~Identifiable () |
Identifiable & | operator= (const Identifiable &)=delete |
Identifiable & | operator= (Identifiable &&other) noexcept |
virtual UIDType | GetUID () const |
Get unique ID of an object. More... | |
Public Member Functions inherited from mitk::IPropertyOwner | |
~IPropertyOwner () override | |
Public Member Functions inherited from mitk::IPropertyProvider | |
virtual | ~IPropertyProvider () |
Static Public Member Functions | |
static const char * | GetStaticNameOfClass () |
Static Public Member Functions inherited from mitk::BaseData | |
static const char * | GetStaticNameOfClass () |
Protected Member Functions | |
SlicedData () | |
SlicedData (const SlicedData &other) | |
~SlicedData () override | |
Protected Member Functions inherited from mitk::BaseData | |
BaseData () | |
BaseData (const BaseData &other) | |
~BaseData () override | |
virtual void | InitializeTimeGeometry (unsigned int timeSteps=1) |
Initialize the TimeGeometry for a number of time steps. The TimeGeometry is initialized empty and evenly timed. In many cases it will be necessary to overwrite this in sub-classes. More... | |
virtual void | ClearData () |
reset to non-initialized state, release memory More... | |
virtual void | InitializeEmpty () |
Pure virtual; Must be used in subclasses to get a data object to a valid state. Should at least create one empty object and call Superclass::InitializeTimeGeometry() to ensure an existing valid geometry. More... | |
void | PrintSelf (std::ostream &os, itk::Indent indent) const override |
Protected Member Functions inherited from mitk::Identifiable | |
virtual void | SetUID (const UIDType &uid) |
Protected Attributes | |
RegionType | m_LargestPossibleRegion |
RegionType | m_RequestedRegion |
bool | m_RequestedRegionInitialized |
RegionType | m_BufferedRegion |
bool | m_UseLargestPossibleRegion |
Protected Attributes inherited from mitk::BaseData | |
bool | m_LastRequestedRegionWasOutsideOfTheBufferedRegion |
unsigned int | m_SourceOutputIndexDuplicate |
bool | m_Initialized |
Super class of data objects consisting of slices.
Super class of data objects consisting of slices, e.g., images or a stack of contours. (GetGeometry will return a BaseGeometry containing PlaneGeometry objects).
SlicedData-objects have geometries of type SlicedGeometry3D or sub-classes.
Definition at line 37 of file mitkSlicedData.h.
typedef itk::SmartPointer<const Self> mitk::SlicedData::ConstPointer |
Definition at line 40 of file mitkSlicedData.h.
typedef itk::Index<RegionDimension> mitk::SlicedData::IndexType |
Index typedef support. An index is used to access pixel values.
Definition at line 48 of file mitkSlicedData.h.
typedef IndexType::IndexValueType mitk::SlicedData::IndexValueType |
Definition at line 49 of file mitkSlicedData.h.
typedef itk::Offset<RegionDimension> mitk::SlicedData::OffsetType |
Offset typedef support. An offset represent relative position between indices.
Definition at line 53 of file mitkSlicedData.h.
typedef OffsetType::OffsetValueType mitk::SlicedData::OffsetValueType |
Definition at line 54 of file mitkSlicedData.h.
Definition at line 40 of file mitkSlicedData.h.
typedef itk::ImageRegion<RegionDimension> mitk::SlicedData::RegionType |
Region typedef support. A region is used to specify a subset of a SlicedData.
Definition at line 45 of file mitkSlicedData.h.
typedef SlicedData mitk::SlicedData::Self |
Definition at line 40 of file mitkSlicedData.h.
typedef itk::Size<RegionDimension> mitk::SlicedData::SizeType |
Size typedef support. A size is used to define region bounds.
Definition at line 57 of file mitkSlicedData.h.
typedef SizeType::SizeValueType mitk::SlicedData::SizeValueType |
Definition at line 58 of file mitkSlicedData.h.
typedef BaseData mitk::SlicedData::Superclass |
Definition at line 40 of file mitkSlicedData.h.
|
protected |
|
protected |
|
overrideprotected |
|
override |
|
inlineoverridevirtual |
Reimplemented from mitk::BaseData.
Reimplemented in mitk::Image.
Definition at line 40 of file mitkSlicedData.h.
|
virtual |
Reimplemented from mitk::BaseData.
Reimplemented in mitk::Image.
|
inline |
Definition at line 124 of file mitkSlicedData.h.
|
inline |
Get the number of channels.
Definition at line 137 of file mitkSlicedData.h.
|
inlinevirtual |
Get the region object that defines the size and starting index for the region of the image requested (i.e., the region of the image to be operated on by a filter).
Definition at line 129 of file mitkSlicedData.h.
SlicedGeometry3D* mitk::SlicedData::GetSlicedGeometry | ( | unsigned int | t = 0 | ) | const |
Convenience access method for the geometry, which is of type SlicedGeometry3D (or a sub-class of it).
No update will be called. Normally used in GenerateOutputInformation of subclasses of BaseProcess.
|
inlinestatic |
Definition at line 40 of file mitkSlicedData.h.
const SlicedGeometry3D* mitk::SlicedData::GetUpdatedSlicedGeometry | ( | unsigned int | t = 0 | ) |
Convenience access method for the geometry, which is of type SlicedGeometry3D (or a sub-class of it).
The method does not simply return the value of the m_Geometry3D member. Before doing this, it makes sure that the BaseGeometry is up-to-date before returning it (by setting the update extent appropriately and calling UpdateOutputInformation).
|
pure virtual |
Implemented in mitk::Image.
|
pure virtual |
Implemented in mitk::Image.
|
pure virtual |
Implemented in mitk::Image.
mitk::SlicedData::itkStaticConstMacro | ( | RegionDimension | , |
unsigned int | , | ||
5 | |||
) |
|
override |
|
overridevirtual |
Determine whether the RequestedRegion is outside of the BufferedRegion. This method returns true if the RequestedRegion is outside the BufferedRegion (true if at least one pixel is outside). This is used by the pipeline mechanism to determine whether a filter needs to re-execute in order to satisfy the current request. If the current RequestedRegion is already inside the BufferedRegion from the previous execution (and the current filter is up to date), then a given filter does not need to re-execute
Implements mitk::BaseData.
|
overridevirtual |
Set the BaseGeometry of the data, which will be referenced (not copied!). It has to be a sub-class of SlicedGeometry3D.
Reimplemented from mitk::BaseData.
void mitk::SlicedData::SetLargestPossibleRegion | ( | SlicedData::RegionType * | region | ) |
Sets the largest possible region. The largest possible region is the entire region occupied by the data object. Note that the largest possible region should always be bigger then the requested region of a certain operation.
Documentation
|
overridevirtual |
Convenience method for setting the origin of the SlicedGeometry3D instances of all time steps.
In case the SlicedGeometry3D is evenly spaced, the origin of the first slice is set to origin.
Reimplemented from mitk::BaseData.
|
overridevirtual |
Set the requested region from this data object to match the requested region of the data object passed in as a parameter. This method is implemented in the concrete subclasses of DataObject.
Implements mitk::BaseData.
|
virtual |
Set the requested region from this data object to match the requested region of the data object passed in as a parameter. This method is implemented in the concrete subclasses of DataObject.
|
overridevirtual |
Set the RequestedRegion to the LargestPossibleRegion. This forces a filter to produce all of the output in one execution (i.e. not streaming) on the next call to Update().
Implements mitk::BaseData.
|
virtual |
Convenience method for setting the spacing of the SlicedGeometry3D instances of all time steps.
|
virtual |
Convenience method for setting the spacing of the SlicedGeometry3D instances of all time steps.
|
override |
Update the information for this DataObject so that it can be used as an output of a ProcessObject. This method is used in the pipeline mechanism to propagate information and initialize the meta data associated with a itk::DataObject. Any implementation of this method in a derived class of itk::DataObject is assumed to call its source's ProcessObject::UpdateOutputInformation() which determines modified times, LargestPossibleRegions, and any extra meta data like spacing, origin, etc.
|
overridevirtual |
Verify that the RequestedRegion is within the LargestPossibleRegion.
Verify that the RequestedRegion is within the LargestPossibleRegion. If the RequestedRegion is not within the LargestPossibleRegion, then the filter cannot possibly satisfy the request. This method returns true if the request can be satisfied (even if it will be necessary to process the entire LargestPossibleRegion) and returns false otherwise. This method is used by PropagateRequestedRegion(). PropagateRequestedRegion() throws a InvalidRequestedRegionError exception if the requested region is not within the LargestPossibleRegion.
Implements mitk::BaseData.
|
protected |
Definition at line 205 of file mitkSlicedData.h.
|
protected |
Definition at line 200 of file mitkSlicedData.h.
|
mutableprotected |
Definition at line 202 of file mitkSlicedData.h.
|
mutableprotected |
Definition at line 203 of file mitkSlicedData.h.
|
protected |
Definition at line 206 of file mitkSlicedData.h.