Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions

mitk::ImageToImageFilter Class Reference
[Process Classes]

Superclass of all classes having one or more Images as input and generating Images as output. More...

#include <mitkImageToImageFilter.h>

Inheritance diagram for mitk::ImageToImageFilter:
Inheritance graph
[legend]
Collaboration diagram for mitk::ImageToImageFilter:
Collaboration graph
[legend]

List of all members.

Public Types

typedef
Superclass::OutputImageRegionType 
OutputImageRegionType
typedef mitk::Image InputImageType
typedef InputImageType::Pointer InputImagePointer
typedef
InputImageType::ConstPointer 
InputImageConstPointer
typedef SlicedData::RegionType InputImageRegionType

Public Member Functions

 mitkClassMacro (ImageToImageFilter, ImageSource)
virtual void SetInput (const InputImageType *image)
virtual void SetInput (unsigned int, const InputImageType *image)
const InputImageTypeGetInput (void)
const InputImageTypeGetInput (unsigned int idx)

Static Public Member Functions

static Pointer New ()

Protected Member Functions

 ImageToImageFilter ()
virtual ~ImageToImageFilter ()
virtual void PrintSelf (std::ostream &os, itk::Indent indent) const
virtual void GenerateInputRequestedRegion ()

Detailed Description

Superclass of all classes having one or more Images as input and generating Images as output.

Definition at line 31 of file mitkImageToImageFilter.h.


Member Typedef Documentation

Definition at line 45 of file mitkImageToImageFilter.h.

Definition at line 44 of file mitkImageToImageFilter.h.

Definition at line 46 of file mitkImageToImageFilter.h.

Some convenient typedefs.

Definition at line 43 of file mitkImageToImageFilter.h.

typedef Superclass::OutputImageRegionType mitk::ImageToImageFilter::OutputImageRegionType

Superclass typedefs.

Reimplemented from mitk::ImageSource.

Definition at line 37 of file mitkImageToImageFilter.h.


Constructor & Destructor Documentation

mitk::ImageToImageFilter::ImageToImageFilter (  ) [protected]

Definition at line 21 of file mitkImageToImageFilter.cpp.

{
  // Modify superclass default values, can be overridden by subclasses
  this->SetNumberOfRequiredInputs(1);
}
mitk::ImageToImageFilter::~ImageToImageFilter (  ) [protected, virtual]

Definition at line 27 of file mitkImageToImageFilter.cpp.

{
}

Member Function Documentation

void mitk::ImageToImageFilter::GenerateInputRequestedRegion (  ) [protected, virtual]

What is the input requested region that is required to produce the output requested region? The base assumption for image processing filters is that the input requested region can be set to match the output requested region. If a filter requires more input (for instance a filter that uses neighborhoods needs more input than output to avoid introducing artificial boundary conditions) or less input (for instance a magnify filter) will have to override this method. In doing so, it should call its superclass' implementation as its first step. Note that this imaging filters operate differently than the classes to this point in the class hierachy. Up till now, the base assumption has been that the largest possible region will be requested of the input.

See also:
ProcessObject::GenerateInputRequestedRegion(), ImageSource::GenerateInputRequestedRegion()

Reimplemented in mitk::ImageChannelSelector, mitk::ImageSliceSelector, mitk::ImageTimeSelector, mitk::RGBToRGBACastImageFilter, mitk::AngleCorrectByPointFilter, mitk::AutoCropImageFilter, mitk::BoundingObjectCutter, mitk::CylindricToCartesianFilter, mitk::DopplerToStrainRateFilter, mitk::ExtractImageFilter, mitk::GeometryClipImageFilter, mitk::HeightFieldSurfaceClipImageFilter, and mitk::MaskImageFilter.

Definition at line 85 of file mitkImageToImageFilter.cpp.

References mitk::SlicedData::SetRequestedRegion().

{
  Superclass::GenerateInputRequestedRegion();

  for (unsigned int idx = 0; idx < this->GetNumberOfInputs(); ++idx)
  {
    if (this->GetInput(idx))
    {
      mitk::ImageToImageFilter::InputImagePointer input =
        const_cast< mitk::ImageToImageFilter::InputImageType * > ( this->GetInput(idx) );

      // Use the function object RegionCopier to copy the output region
      // to the input.  The default region copier has default implementations
      // to handle the cases where the input and output are the same
      // dimension, the input a higher dimension than the output, and the
      // input a lower dimension than the output.
      InputImageRegionType inputRegion;
      //      this->CallCopyRegion(inputRegion, this->GetOutput()->GetRequestedRegion()); @FIXME  ??
      //      input->SetRequestedRegion( inputRegion ); @FIXME ??
      input->SetRequestedRegion( this->GetOutput() ); // ersatz. @FIXME ??
    }
  }  
}
const mitk::ImageToImageFilter::InputImageType * mitk::ImageToImageFilter::GetInput ( void   )
const mitk::ImageToImageFilter::InputImageType * mitk::ImageToImageFilter::GetInput ( unsigned int  idx )

Definition at line 75 of file mitkImageToImageFilter.cpp.

{
  return static_cast< const mitk::ImageToImageFilter::InputImageType * >
    (this->ProcessObject::GetInput(idx));
}
mitk::ImageToImageFilter::mitkClassMacro ( ImageToImageFilter  ,
ImageSource   
)
static Pointer mitk::ImageToImageFilter::New (  ) [static]
void mitk::ImageToImageFilter::PrintSelf ( std::ostream &  os,
itk::Indent  indent 
) const [protected, virtual]

Definition at line 109 of file mitkImageToImageFilter.cpp.

{
  Superclass::PrintSelf(os, indent);
}
void mitk::ImageToImageFilter::SetInput ( unsigned int  index,
const InputImageType image 
) [virtual]

Connect one of the operands for pixel-wise addition

Definition at line 45 of file mitkImageToImageFilter.cpp.

{
  if( index+1 > this->GetNumberOfInputs() )
  {
    this->SetNumberOfRequiredInputs( index + 1 );
  }
  // Process object is not const-correct so the const_cast is required here
  this->ProcessObject::SetNthInput(index, 
    const_cast< mitk::ImageToImageFilter::InputImageType *>( image ) );
}
void mitk::ImageToImageFilter::SetInput ( const InputImageType image ) [virtual]

Set/Get the image input of this process object.

Definition at line 34 of file mitkImageToImageFilter.cpp.

Referenced by mitk::Image::GetTimeSelector(), mitkOverwriteSliceImageFilterTestClass::Test2D(), mitkExtractImageFilterTestClass::Test2D(), mitkOverwriteSliceImageFilterTestClass::Test3D(), mitkExtractImageFilterTestClass::Test3D(), mitkExtractImageFilterTestClass::Test4D(), mitkOverwriteSliceImageFilterTestClass::TestOtherD(), and mitkExtractImageFilterTestClass::TestOtherD().

{
  // Process object is not const-correct so the const_cast is required here
  this->ProcessObject::SetNthInput(0, 
    const_cast< mitk::ImageToImageFilter::InputImageType * >( input ) );
}

The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines