Medical Imaging Interaction Toolkit  2026.06.00
Medical Imaging Interaction Toolkit
mitk::DataNodeSource Class Reference

Superclass of all classes generating DataNode instances as output. More...

#include <mitkDataNodeSource.h>

Inheritance diagram for mitk::DataNodeSource:
Collaboration diagram for mitk::DataNodeSource:

Public Types

typedef mitk::DataNode OutputType
 The output data type (mitk::DataNode). More...
 
typedef OutputType::Pointer OutputTypePointer
 Pointer type for the output. More...
 

Public Member Functions

 mitkClassMacroItkParent (DataNodeSource, itk::ProcessObject)
 
Pointer Clone () const
 
DataObjectPointer MakeOutput (DataObjectPointerArraySizeType idx) override
 Allocate and return a new output object. More...
 
DataObjectPointer MakeOutput (const DataObjectIdentifierType &name) override
 Allocate and return a new output object by name. More...
 
OutputType * GetOutput ()
 Get the primary output DataNode. More...
 
const OutputType * GetOutput () const
 
OutputType * GetOutput (DataObjectPointerArraySizeType idx)
 Get the output DataNode at the given index. More...
 
const OutputType * GetOutput (DataObjectPointerArraySizeType idx) const
 

Static Public Member Functions

static Pointer New ()
 

Protected Member Functions

 DataNodeSource ()
 Constructor. Creates the initial output. More...
 
 ~DataNodeSource () override
 Destructor. More...
 

Detailed Description

Superclass of all classes generating DataNode instances as output.

In ITK and VTK the generated result of a ProcessObject is only guaranteed to be up-to-date when Update() of the ProcessObject or the generated DataObject is called immediately before accessing the stored data. This is also true for subclasses of mitk::DataNodeSource.

See also
DataNode

Definition at line 32 of file mitkDataNodeSource.h.

Member Typedef Documentation

◆ OutputType

The output data type (mitk::DataNode).

Definition at line 42 of file mitkDataNodeSource.h.

◆ OutputTypePointer

typedef OutputType::Pointer mitk::DataNodeSource::OutputTypePointer

Pointer type for the output.

Definition at line 45 of file mitkDataNodeSource.h.

Constructor & Destructor Documentation

◆ DataNodeSource()

mitk::DataNodeSource::DataNodeSource ( )
protected

Constructor. Creates the initial output.

◆ ~DataNodeSource()

mitk::DataNodeSource::~DataNodeSource ( )
overrideprotected

Destructor.

Member Function Documentation

◆ Clone()

Pointer mitk::DataNodeSource::Clone ( ) const

◆ GetOutput() [1/4]

OutputType* mitk::DataNodeSource::GetOutput ( )

Get the primary output DataNode.

Returns
Pointer to the primary output.

◆ GetOutput() [2/4]

const OutputType* mitk::DataNodeSource::GetOutput ( ) const

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

◆ GetOutput() [3/4]

OutputType* mitk::DataNodeSource::GetOutput ( DataObjectPointerArraySizeType  idx)

Get the output DataNode at the given index.

Parameters
idxThe output index.
Returns
Pointer to the requested output.

◆ GetOutput() [4/4]

const OutputType* mitk::DataNodeSource::GetOutput ( DataObjectPointerArraySizeType  idx) const

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

◆ MakeOutput() [1/2]

DataObjectPointer mitk::DataNodeSource::MakeOutput ( const DataObjectIdentifierType &  name)
override

Allocate and return a new output object by name.

Default implementation that creates a new DataNode. If the name corresponds to an indexed output, the indexed version is called.

Parameters
nameThe identifier of the output.
Returns
A smart pointer to the newly created DataNode.

◆ MakeOutput() [2/2]

DataObjectPointer mitk::DataNodeSource::MakeOutput ( DataObjectPointerArraySizeType  idx)
override

Allocate and return a new output object.

Currently the index is not evaluated; a new DataNode is always created.

Parameters
idxThe index of the output for which an object should be created.
Returns
A smart pointer to the newly created DataNode.

◆ mitkClassMacroItkParent()

mitk::DataNodeSource::mitkClassMacroItkParent ( DataNodeSource  ,
itk::ProcessObject   
)

◆ New()

static Pointer mitk::DataNodeSource::New ( )
static

The documentation for this class was generated from the following file: