Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
mitk::BaseDataSource Class Referenceabstract

Superclass of all classes generating some kind of mitk::BaseData. More...

#include <mitkBaseDataSource.h>

Inheritance diagram for mitk::BaseDataSource:
Collaboration diagram for mitk::BaseDataSource:

Public Types

typedef BaseDataSource Self
 
typedef itk::ProcessObject Superclass
 
typedef itk::SmartPointer< SelfPointer
 
typedef itk::SmartPointer< const SelfConstPointer
 
typedef BaseData OutputType
 
typedef itk::DataObject::DataObjectIdentifierType DataObjectIdentifierType
 

Public Member Functions

virtual std::vector< std::string > GetClassHierarchy () const
 
virtual const char * GetClassName () const
 
OutputTypeGetOutput ()
 
const OutputTypeGetOutput () const
 
OutputTypeGetOutput (DataObjectPointerArraySizeType idx)
 
const OutputTypeGetOutput (DataObjectPointerArraySizeType idx) const
 
virtual void GraftOutput (OutputType *output)
 Graft the specified BaseData onto this BaseDataSource's output. More...
 
virtual void GraftOutput (const DataObjectIdentifierType &key, OutputType *output)
 
virtual void GraftNthOutput (unsigned int idx, OutputType *output)
 Graft the specified base data object onto this BaseDataSource's idx'th output. More...
 
virtual DataObjectPointer MakeOutput (DataObjectPointerArraySizeType idx) override=0
 
virtual DataObjectPointer MakeOutput (const DataObjectIdentifierType &name) override=0
 
bool Updating () const
 Access itk::ProcessObject::m_Updating. More...
 

Static Public Member Functions

static const char * GetStaticNameOfClass ()
 

Protected Member Functions

 BaseDataSource ()
 
virtual ~BaseDataSource ()
 

Static Protected Member Functions

static Pointer New ()
 

Detailed Description

Superclass of all classes generating some kind of mitk::BaseData.

Superclass of all classes generating some kind of mitk::BaseData. 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 access of the data stored in the DataObject. This is also true for subclasses of mitk::BaseProcess. But many of the subclasses of mitk::BaseProcess define additional access functions to the generated output that guarantee an up-to-date result, see for example mitk::ImageSource.

Definition at line 75 of file mitkBaseDataSource.h.

Member Typedef Documentation

typedef itk::DataObject::DataObjectIdentifierType mitk::BaseDataSource::DataObjectIdentifierType

Definition at line 81 of file mitkBaseDataSource.h.

typedef itk::ProcessObject mitk::BaseDataSource::Superclass

Definition at line 78 of file mitkBaseDataSource.h.

Constructor & Destructor Documentation

mitk::BaseDataSource::BaseDataSource ( )
protected

Definition at line 20 of file mitkBaseDataSource.cpp.

mitk::BaseDataSource::~BaseDataSource ( )
protectedvirtual

Definition at line 24 of file mitkBaseDataSource.cpp.

Member Function Documentation

OutputType* mitk::BaseDataSource::GetOutput ( )
const OutputType* mitk::BaseDataSource::GetOutput ( ) const
OutputType* mitk::BaseDataSource::GetOutput ( DataObjectPointerArraySizeType  idx)
const OutputType* mitk::BaseDataSource::GetOutput ( DataObjectPointerArraySizeType  idx) const
static const char* mitk::BaseDataSource::GetStaticNameOfClass ( )
inlinestatic

Definition at line 78 of file mitkBaseDataSource.h.

void mitk::BaseDataSource::GraftNthOutput ( unsigned int  idx,
OutputType output 
)
virtual

Graft the specified base data object onto this BaseDataSource's idx'th output.

This is the similar to GraftOutput method except is allows you specify which output is affected. The specified index must be a valid output number (less than ProcessObject::GetNumberOfOutputs()). See the GraftOutput for general usage information.

Definition at line 48 of file mitkBaseDataSource.cpp.

void mitk::BaseDataSource::GraftOutput ( OutputType output)
virtual

Graft the specified BaseData onto this BaseDataSource's output.

This method is used when a process object is implemented using a mini-pipeline which is defined in its GenerateData() method. The usage is:

// setup the mini-pipeline to process the input to this filter
firstFilterInMiniPipeline->SetInput( this->GetInput() );
// setup the mini-pipeline to calculate the correct regions
// and write to the appropriate bulk data block
lastFilterInMiniPipeline->GraftOutput( this->GetOutput(0) );
// execute the mini-pipeline
lastFilterInMiniPipeline->Update();
// graft the mini-pipeline output back onto this filter's output.
// this is needed to get the appropriate regions passed back.
this->GraftOutput( lastFilterInMiniPipeline->GetOutput(0) );

Definition at line 28 of file mitkBaseDataSource.cpp.

void mitk::BaseDataSource::GraftOutput ( const DataObjectIdentifierType key,
OutputType output 
)
virtual

Graft the specified base data object onto this BaseDataSource's named output. This is similar to the GraftOutput method except it allows you to specify which output is affected. See the GraftOutput for general usage information.

Definition at line 33 of file mitkBaseDataSource.cpp.

static Pointer mitk::BaseDataSource::New ( )
staticprotected
bool mitk::BaseDataSource::Updating ( ) const

Access itk::ProcessObject::m_Updating.

m_Updating indicates when the pipeline is executing. It prevents infinite recursion when pipelines have loops.

See also
itk::ProcessObject::m_Updating

Definition at line 59 of file mitkBaseDataSource.cpp.


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