Medical Imaging Interaction Toolkit
2016.11.0
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 Member Functions | |
virtual std::vector< std::string > | GetClassHierarchy () const override |
virtual const char * | GetClassName () const |
itkStaticConstMacro (RegionDimension, unsigned int, 5) | |
virtual void | UpdateOutputInformation () override |
virtual void | PrepareForNewData () override |
virtual void | SetRequestedRegionToLargestPossibleRegion () override |
virtual bool | RequestedRegionIsOutsideOfTheBufferedRegion () override |
virtual bool | VerifyRequestedRegion () override |
Verify that the RequestedRegion is within the LargestPossibleRegion. More... | |
virtual 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 |
virtual 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... | |
virtual 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... | |
virtual 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 | |
const mitk::TimeGeometry * | GetTimeGeometry () const |
Return the TimeGeometry of the data as const pointer. More... | |
const mitk::TimeGeometry * | GetTimeSlicedGeometry () 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... | |
const mitk::TimeGeometry * | GetUpdatedTimeSliceGeometry () |
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 TimeGeometry as TimeGeometry 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... | |
virtual unsigned long | GetMTime () const override |
Get the modified time of the last change of the contents this data object or its geometry. More... | |
virtual void | Graft (const DataObject *) override |
Public Member Functions inherited from mitk::OperationActor | |
itkTypeMacroNoParent (OperationActor) virtual ~OperationActor() | |
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) | |
virtual | ~SlicedData () |
Protected Member Functions inherited from mitk::BaseData | |
BaseData () | |
BaseData (const BaseData &other) | |
~BaseData () | |
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 | InitializeTimeSlicedGeometry (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... | |
virtual void | PrintSelf (std::ostream &os, itk::Indent indent) const override |
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 41 of file mitkSlicedData.h.
typedef itk::SmartPointer<const Self> mitk::SlicedData::ConstPointer |
Definition at line 44 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 52 of file mitkSlicedData.h.
typedef IndexType::IndexValueType mitk::SlicedData::IndexValueType |
Definition at line 53 of file mitkSlicedData.h.
typedef itk::Offset<RegionDimension> mitk::SlicedData::OffsetType |
Offset typedef support. An offset represent relative position between indices.
Definition at line 57 of file mitkSlicedData.h.
typedef OffsetType::OffsetValueType mitk::SlicedData::OffsetValueType |
Definition at line 58 of file mitkSlicedData.h.
Definition at line 44 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 49 of file mitkSlicedData.h.
typedef SlicedData mitk::SlicedData::Self |
Definition at line 44 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 61 of file mitkSlicedData.h.
typedef SizeType::SizeValueType mitk::SlicedData::SizeValueType |
Definition at line 62 of file mitkSlicedData.h.
typedef BaseData mitk::SlicedData::Superclass |
Definition at line 44 of file mitkSlicedData.h.
|
protected |
Definition at line 22 of file mitkSlicedData.cpp.
References m_LargestPossibleRegion.
|
protected |
Definition at line 32 of file mitkSlicedData.cpp.
|
protectedvirtual |
Definition at line 41 of file mitkSlicedData.cpp.
|
overridevirtual |
Definition at line 227 of file mitkSlicedData.cpp.
References GetLargestPossibleRegion().
|
inlineoverridevirtual |
Reimplemented from mitk::BaseData.
Reimplemented in mitk::Image.
Definition at line 44 of file mitkSlicedData.h.
|
virtual |
Reimplemented from mitk::BaseData.
Reimplemented in mitk::Image.
|
inline |
Definition at line 128 of file mitkSlicedData.h.
Referenced by CopyInformation(), mitk::ExtractDirectedPlaneImageFilter::GenerateData(), itk::DftImageFilter< TPixelType >::ThreadedGenerateData(), mitk::ItkImageIO::Write(), and mitk::ImageWriter::WriteByITK().
|
inline |
Get the number of channels.
Definition at line 141 of file mitkSlicedData.h.
Referenced by mitk::ImageToIGTLMessageFilter::GenerateData(), and mitk::HeightFieldSurfaceClipImageFilter::GenerateOutputInformation().
|
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 133 of file mitkSlicedData.h.
Referenced by mitk::ManualSegmentationToSurfaceFilter::GenerateData(), mitk::ImageToSurfaceFilter::GenerateData(), mitk::HeightFieldSurfaceClipImageFilter::GenerateData(), mitk::LabeledImageToSurfaceFilter::GenerateData(), SetRequestedRegion(), and mitk::ImageSource::SplitRequestedRegion().
mitk::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.
Definition at line 258 of file mitkSlicedData.cpp.
Referenced by QmitkSlicesInterpolator::AcceptAllInterpolations(), mitk::SegTool2D::DetermineAffectedImageSlice(), mitk::LabelSetImageVtkMapper2D::GenerateDataForRenderer(), mitk::ImageVtkMapper2D::GenerateDataForRenderer(), mitk::DoseImageVtkMapper2D::GenerateDataForRenderer(), mitk::LabeledImageToSurfaceFilter::GetVolumeForLabel(), and mitk::ItkImageIO::GetWriterConfidenceLevel().
|
inlinestatic |
Definition at line 44 of file mitkSlicedData.h.
const mitk::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).
Definition at line 265 of file mitkSlicedData.cpp.
|
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 | |||
) |
|
overridevirtual |
Definition at line 69 of file mitkSlicedData.cpp.
|
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.
Definition at line 92 of file mitkSlicedData.cpp.
|
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.
Reimplemented in mitk::Image.
Definition at line 274 of file mitkSlicedData.cpp.
References mitk::BaseGeometry::GetExtent(), mitk::ProportionalTimeGeometry::New(), mitk::SlicedGeometry3D::New(), and mitk::PlaneGeometry::New().
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
Definition at line 210 of file mitkSlicedData.cpp.
|
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.
Definition at line 316 of file mitkSlicedData.cpp.
References mitk::SlicedGeometry3D::GetEvenlySpaced(), mitk::SlicedGeometry3D::GetPlaneGeometry(), mitk::SlicedGeometry3D::GetSlices(), mitk::SlicedGeometry3D::InitializeEvenlySpaced(), and mitk::BaseGeometry::SetOrigin().
|
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.
Definition at line 171 of file mitkSlicedData.cpp.
References GetRequestedRegion().
Referenced by mitk::ExtractDirectedPlaneImageFilter::GenerateData().
|
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.
Definition at line 191 of file mitkSlicedData.cpp.
|
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.
Definition at line 77 of file mitkSlicedData.cpp.
Referenced by mitk::MRNormLinearStatisticBasedFilter::GenerateInputRequestedRegion(), mitk::MRNormTwoRegionsBasedFilter::GenerateInputRequestedRegion(), mitk::RGBToRGBACastImageFilter::GenerateInputRequestedRegion(), mitk::MaskImageFilter::GenerateInputRequestedRegion(), mitk::HeightFieldSurfaceClipImageFilter::GenerateInputRequestedRegion(), and mitk::GeometryClipImageFilter::GenerateInputRequestedRegion().
|
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.
Definition at line 348 of file mitkSlicedData.cpp.
References mitk::BaseGeometry::SetSpacing(), and mitk::TimeGeometry::Update().
|
overridevirtual |
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.
Definition at line 45 of file mitkSlicedData.cpp.
Referenced by mitk::LabelSetImageVtkMapper2D::Update(), mitk::RegEvaluationMapper2D::Update(), mitk::ImageVtkMapper2D::Update(), and mitk::DoseImageVtkMapper2D::Update().
|
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.
Definition at line 142 of file mitkSlicedData.cpp.
|
protected |
Definition at line 209 of file mitkSlicedData.h.
|
protected |
Definition at line 204 of file mitkSlicedData.h.
Referenced by SlicedData().
|
mutableprotected |
Definition at line 206 of file mitkSlicedData.h.
|
mutableprotected |
Definition at line 207 of file mitkSlicedData.h.
|
protected |
Definition at line 210 of file mitkSlicedData.h.