ITK  4.1.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes
itk::LabelMapFilter< TInputImage, TOutputImage > Class Template Reference

#include <itkLabelMapFilter.h>

+ Inheritance diagram for itk::LabelMapFilter< TInputImage, TOutputImage >:
+ Collaboration diagram for itk::LabelMapFilter< TInputImage, TOutputImage >:

List of all members.

Public Types

typedef SmartPointer< const SelfConstPointer
typedef
InputImageType::ConstPointer 
InputImageConstPointer
typedef InputImageType::PixelType InputImagePixelType
typedef InputImageType::Pointer InputImagePointer
typedef InputImageType::RegionType InputImageRegionType
typedef TInputImage InputImageType
typedef
InputImageType::LabelObjectType 
LabelObjectType
typedef
OutputImageType::ConstPointer 
OutputImageConstPointer
typedef OutputImageType::PixelType OutputImagePixelType
typedef OutputImageType::Pointer OutputImagePointer
typedef OutputImageType::RegionType OutputImageRegionType
typedef TOutputImage OutputImageType
typedef SmartPointer< SelfPointer
typedef LabelMapFilter Self
typedef ImageToImageFilter
< TInputImage, TOutputImage > 
Superclass

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother (void) const
void GenerateInputRequestedRegion ()
virtual const char * GetNameOfClass () const

Static Public Member Functions

static Pointer New ()

Static Public Attributes

static const unsigned int InputImageDimension = TInputImage::ImageDimension
static const unsigned int OutputImageDimension = TOutputImage::ImageDimension

Protected Member Functions

virtual void AfterThreadedGenerateData ()
virtual void BeforeThreadedGenerateData ()
virtual InputImageTypeGetLabelMap ()
virtual void ThreadedGenerateData (const OutputImageRegionType &outputRegionForThread, ThreadIdType threadId)
virtual void ThreadedProcessLabelObject (LabelObjectType *labelObject)

Protected Attributes

FastMutexLock::Pointer m_LabelObjectContainerLock

Private Member Functions

 LabelMapFilter (const Self &)
void operator= (const Self &)

Private Attributes

InputImageType::Iterator m_LabelObjectIterator
ProgressReporterm_Progress
void EnlargeOutputRequestedRegion (DataObject *)
 LabelMapFilter ()
 ~LabelMapFilter ()

Detailed Description

template<class TInputImage, class TOutputImage>
class itk::LabelMapFilter< TInputImage, TOutputImage >

Base class for filters that take an image as input and overwrite that image as the output.

LabelMapFilter is the base class for all process objects whose are using a LabelMapFilter as input. It manage several threads, and run a method ThreadedGenerateData() for each object in the LabelMapFilter. With that class, the developer doesn't need to take care of iterating over all the objects in the image, or to manage by hand the threads.

Author:
Gaetan Lehmann. Biologie du Developpement et de la Reproduction, INRA de Jouy-en-Josas, France.

This implementation was taken from the Insight Journal paper: http://hdl.handle.net/1926/584 or http://www.insight-journal.org/browse/publication/176

See also:
LabelMapToBinaryImageFilter, LabelMapToLabelImageFilter

Definition at line 58 of file itkLabelMapFilter.h.


Member Typedef Documentation

template<class TInputImage, class TOutputImage>
typedef SmartPointer< const Self > itk::LabelMapFilter< TInputImage, TOutputImage >::ConstPointer

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

Reimplemented in itk::InPlaceLabelMapFilter< TInputImage >, itk::InPlaceLabelMapFilter< TImage >, itk::ObjectByObjectLabelMapFilter< TInputImage, TOutputImage, TInputFilter, TOutputFilter, TInternalInputImage, TInternalOutputImage >, itk::LabelMapContourOverlayImageFilter< TLabelMap, TFeatureImage, TOutputImage >, itk::ChangeRegionLabelMapFilter< TInputImage >, itk::CropLabelMapFilter< TInputImage >, itk::LabelSelectionLabelMapFilter< TImage >, itk::PadLabelMapFilter< TInputImage >, itk::ShapeLabelMapFilter< TImage, TLabelImage >, itk::ShapeLabelMapFilter< TImage, Image< TImage::PixelType,::itk::GetImageDimension< TImage >::ImageDimension > >, itk::AutoCropLabelMapFilter< TInputImage >, itk::MergeLabelMapFilter< TImage >, itk::RegionFromReferenceLabelMapFilter< TInputImage >, itk::LabelMapOverlayImageFilter< TLabelMap, TFeatureImage, TOutputImage >, itk::AttributeSelectionLabelMapFilter< TImage, TAttributeAccessor >, itk::ShapeOpeningLabelMapFilter< TImage >, itk::AttributeSelectionLabelMapFilter< TImage, Functor::LabelLabelObjectAccessor< TImage::LabelObjectType > >, itk::RelabelLabelMapFilter< TImage >, itk::AttributeUniqueLabelMapFilter< TImage, TAttributeAccessor >, itk::LabelMapMaskImageFilter< TInputImage, TOutputImage >, itk::LabelUniqueLabelMapFilter< TImage >, itk::AttributeUniqueLabelMapFilter< TImage, Functor::LabelLabelObjectAccessor< TImage::LabelObjectType > >, itk::LabelMapToBinaryImageFilter< TInputImage, TOutputImage >, itk::LabelMapToLabelImageFilter< TInputImage, TOutputImage >, itk::StatisticsKeepNObjectsLabelMapFilter< TImage >, itk::BinaryReconstructionLabelMapFilter< TImage, TMarkerImage, TAttributeAccessor >, itk::StatisticsOpeningLabelMapFilter< TImage >, itk::StatisticsRelabelLabelMapFilter< TImage >, itk::AggregateLabelMapFilter< TImage >, itk::AttributeOpeningLabelMapFilter< TImage, TAttributeAccessor >, itk::AttributePositionLabelMapFilter< TImage, TAttributeAccessor, VPhysicalPosition >, itk::AttributeRelabelLabelMapFilter< TImage, TAttributeAccessor >, itk::ChangeLabelLabelMapFilter< TImage >, itk::ShapeKeepNObjectsLabelMapFilter< TImage >, itk::ShapeRelabelLabelMapFilter< TImage >, itk::AttributeRelabelLabelMapFilter< TImage, Functor::LabelLabelObjectAccessor< TImage::LabelObjectType > >, itk::AttributeKeepNObjectsLabelMapFilter< TImage, TAttributeAccessor >, itk::ConvertLabelMapFilter< TInputImage, TOutputImage >, itk::ShiftScaleLabelMapFilter< TImage >, itk::LabelMapToRGBImageFilter< TInputImage, TOutputImage >, itk::StatisticsLabelMapFilter< TImage, TFeatureImage >, itk::StatisticsPositionLabelMapFilter< TImage >, itk::ShapeUniqueLabelMapFilter< TImage >, itk::StatisticsUniqueLabelMapFilter< TImage >, and itk::ShapePositionLabelMapFilter< TImage >.

Definition at line 67 of file itkLabelMapFilter.h.

template<class TInputImage, class TOutputImage>
typedef InputImageType::ConstPointer itk::LabelMapFilter< TInputImage, TOutputImage >::InputImageConstPointer
template<class TInputImage, class TOutputImage>
typedef InputImageType::PixelType itk::LabelMapFilter< TInputImage, TOutputImage >::InputImagePixelType
template<class TInputImage, class TOutputImage>
typedef InputImageType::Pointer itk::LabelMapFilter< TInputImage, TOutputImage >::InputImagePointer
template<class TInputImage, class TOutputImage>
typedef InputImageType::RegionType itk::LabelMapFilter< TInputImage, TOutputImage >::InputImageRegionType
template<class TInputImage, class TOutputImage>
typedef TInputImage itk::LabelMapFilter< TInputImage, TOutputImage >::InputImageType
template<class TInputImage, class TOutputImage>
typedef InputImageType::LabelObjectType itk::LabelMapFilter< TInputImage, TOutputImage >::LabelObjectType

Reimplemented in itk::InPlaceLabelMapFilter< TInputImage >, itk::InPlaceLabelMapFilter< TImage >, itk::ObjectByObjectLabelMapFilter< TInputImage, TOutputImage, TInputFilter, TOutputFilter, TInternalInputImage, TInternalOutputImage >, itk::ChangeRegionLabelMapFilter< TInputImage >, itk::CropLabelMapFilter< TInputImage >, itk::PadLabelMapFilter< TInputImage >, itk::AutoCropLabelMapFilter< TInputImage >, itk::RegionFromReferenceLabelMapFilter< TInputImage >, itk::ShapeLabelMapFilter< TImage, TLabelImage >, itk::LabelMapContourOverlayImageFilter< TLabelMap, TFeatureImage, TOutputImage >, itk::ShapeLabelMapFilter< TImage, Image< TImage::PixelType,::itk::GetImageDimension< TImage >::ImageDimension > >, itk::MergeLabelMapFilter< TImage >, itk::LabelMapOverlayImageFilter< TLabelMap, TFeatureImage, TOutputImage >, itk::AttributeSelectionLabelMapFilter< TImage, TAttributeAccessor >, itk::ShapeOpeningLabelMapFilter< TImage >, itk::AttributeSelectionLabelMapFilter< TImage, Functor::LabelLabelObjectAccessor< TImage::LabelObjectType > >, itk::LabelMapMaskImageFilter< TInputImage, TOutputImage >, itk::RelabelLabelMapFilter< TImage >, itk::AttributeUniqueLabelMapFilter< TImage, TAttributeAccessor >, itk::LabelMapToBinaryImageFilter< TInputImage, TOutputImage >, itk::LabelMapToLabelImageFilter< TInputImage, TOutputImage >, itk::AttributeUniqueLabelMapFilter< TImage, Functor::LabelLabelObjectAccessor< TImage::LabelObjectType > >, itk::StatisticsKeepNObjectsLabelMapFilter< TImage >, itk::AttributeOpeningLabelMapFilter< TImage, TAttributeAccessor >, itk::BinaryReconstructionLabelMapFilter< TImage, TMarkerImage, TAttributeAccessor >, itk::StatisticsOpeningLabelMapFilter< TImage >, itk::StatisticsRelabelLabelMapFilter< TImage >, itk::AggregateLabelMapFilter< TImage >, itk::AttributePositionLabelMapFilter< TImage, TAttributeAccessor, VPhysicalPosition >, itk::AttributeRelabelLabelMapFilter< TImage, TAttributeAccessor >, itk::ChangeLabelLabelMapFilter< TImage >, itk::ConvertLabelMapFilter< TInputImage, TOutputImage >, itk::ShapeKeepNObjectsLabelMapFilter< TImage >, itk::ShapeRelabelLabelMapFilter< TImage >, itk::LabelMapToRGBImageFilter< TInputImage, TOutputImage >, itk::AttributeRelabelLabelMapFilter< TImage, Functor::LabelLabelObjectAccessor< TImage::LabelObjectType > >, itk::AttributeKeepNObjectsLabelMapFilter< TImage, TAttributeAccessor >, itk::ShiftScaleLabelMapFilter< TImage >, itk::StatisticsLabelMapFilter< TImage, TFeatureImage >, itk::StatisticsPositionLabelMapFilter< TImage >, itk::ShapeUniqueLabelMapFilter< TImage >, itk::StatisticsUniqueLabelMapFilter< TImage >, and itk::ShapePositionLabelMapFilter< TImage >.

Definition at line 81 of file itkLabelMapFilter.h.

template<class TInputImage, class TOutputImage>
typedef OutputImageType::ConstPointer itk::LabelMapFilter< TInputImage, TOutputImage >::OutputImageConstPointer
template<class TInputImage, class TOutputImage>
typedef OutputImageType::PixelType itk::LabelMapFilter< TInputImage, TOutputImage >::OutputImagePixelType
template<class TInputImage, class TOutputImage>
typedef OutputImageType::Pointer itk::LabelMapFilter< TInputImage, TOutputImage >::OutputImagePointer
template<class TInputImage, class TOutputImage>
typedef OutputImageType::RegionType itk::LabelMapFilter< TInputImage, TOutputImage >::OutputImageRegionType
template<class TInputImage, class TOutputImage>
typedef TOutputImage itk::LabelMapFilter< TInputImage, TOutputImage >::OutputImageType
template<class TInputImage, class TOutputImage>
typedef SmartPointer< Self > itk::LabelMapFilter< TInputImage, TOutputImage >::Pointer

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

Reimplemented in itk::InPlaceLabelMapFilter< TInputImage >, itk::InPlaceLabelMapFilter< TImage >, itk::ObjectByObjectLabelMapFilter< TInputImage, TOutputImage, TInputFilter, TOutputFilter, TInternalInputImage, TInternalOutputImage >, itk::LabelMapContourOverlayImageFilter< TLabelMap, TFeatureImage, TOutputImage >, itk::ChangeRegionLabelMapFilter< TInputImage >, itk::CropLabelMapFilter< TInputImage >, itk::LabelSelectionLabelMapFilter< TImage >, itk::PadLabelMapFilter< TInputImage >, itk::ShapeLabelMapFilter< TImage, TLabelImage >, itk::ShapeLabelMapFilter< TImage, Image< TImage::PixelType,::itk::GetImageDimension< TImage >::ImageDimension > >, itk::AutoCropLabelMapFilter< TInputImage >, itk::MergeLabelMapFilter< TImage >, itk::RegionFromReferenceLabelMapFilter< TInputImage >, itk::LabelMapOverlayImageFilter< TLabelMap, TFeatureImage, TOutputImage >, itk::AttributeSelectionLabelMapFilter< TImage, TAttributeAccessor >, itk::ShapeOpeningLabelMapFilter< TImage >, itk::AttributeSelectionLabelMapFilter< TImage, Functor::LabelLabelObjectAccessor< TImage::LabelObjectType > >, itk::RelabelLabelMapFilter< TImage >, itk::AttributeUniqueLabelMapFilter< TImage, TAttributeAccessor >, itk::LabelMapMaskImageFilter< TInputImage, TOutputImage >, itk::LabelUniqueLabelMapFilter< TImage >, itk::AttributeUniqueLabelMapFilter< TImage, Functor::LabelLabelObjectAccessor< TImage::LabelObjectType > >, itk::LabelMapToBinaryImageFilter< TInputImage, TOutputImage >, itk::LabelMapToLabelImageFilter< TInputImage, TOutputImage >, itk::StatisticsKeepNObjectsLabelMapFilter< TImage >, itk::BinaryReconstructionLabelMapFilter< TImage, TMarkerImage, TAttributeAccessor >, itk::StatisticsOpeningLabelMapFilter< TImage >, itk::StatisticsRelabelLabelMapFilter< TImage >, itk::AggregateLabelMapFilter< TImage >, itk::AttributeOpeningLabelMapFilter< TImage, TAttributeAccessor >, itk::AttributePositionLabelMapFilter< TImage, TAttributeAccessor, VPhysicalPosition >, itk::AttributeRelabelLabelMapFilter< TImage, TAttributeAccessor >, itk::ChangeLabelLabelMapFilter< TImage >, itk::ShapeKeepNObjectsLabelMapFilter< TImage >, itk::ShapeRelabelLabelMapFilter< TImage >, itk::AttributeRelabelLabelMapFilter< TImage, Functor::LabelLabelObjectAccessor< TImage::LabelObjectType > >, itk::AttributeKeepNObjectsLabelMapFilter< TImage, TAttributeAccessor >, itk::ConvertLabelMapFilter< TInputImage, TOutputImage >, itk::ShiftScaleLabelMapFilter< TImage >, itk::LabelMapToRGBImageFilter< TInputImage, TOutputImage >, itk::StatisticsLabelMapFilter< TImage, TFeatureImage >, itk::StatisticsPositionLabelMapFilter< TImage >, itk::ShapeUniqueLabelMapFilter< TImage >, itk::StatisticsUniqueLabelMapFilter< TImage >, and itk::ShapePositionLabelMapFilter< TImage >.

Definition at line 66 of file itkLabelMapFilter.h.

template<class TInputImage, class TOutputImage>
typedef LabelMapFilter itk::LabelMapFilter< TInputImage, TOutputImage >::Self

Standard class typedefs.

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

Reimplemented in itk::InPlaceLabelMapFilter< TInputImage >, itk::InPlaceLabelMapFilter< TImage >, itk::ObjectByObjectLabelMapFilter< TInputImage, TOutputImage, TInputFilter, TOutputFilter, TInternalInputImage, TInternalOutputImage >, itk::LabelMapContourOverlayImageFilter< TLabelMap, TFeatureImage, TOutputImage >, itk::ChangeRegionLabelMapFilter< TInputImage >, itk::CropLabelMapFilter< TInputImage >, itk::PadLabelMapFilter< TInputImage >, itk::ShapeLabelMapFilter< TImage, TLabelImage >, itk::ShapeLabelMapFilter< TImage, Image< TImage::PixelType,::itk::GetImageDimension< TImage >::ImageDimension > >, itk::AutoCropLabelMapFilter< TInputImage >, itk::LabelSelectionLabelMapFilter< TImage >, itk::MergeLabelMapFilter< TImage >, itk::RegionFromReferenceLabelMapFilter< TInputImage >, itk::LabelMapOverlayImageFilter< TLabelMap, TFeatureImage, TOutputImage >, itk::AttributeSelectionLabelMapFilter< TImage, TAttributeAccessor >, itk::ShapeOpeningLabelMapFilter< TImage >, itk::AttributeSelectionLabelMapFilter< TImage, Functor::LabelLabelObjectAccessor< TImage::LabelObjectType > >, itk::AttributeUniqueLabelMapFilter< TImage, TAttributeAccessor >, itk::LabelMapMaskImageFilter< TInputImage, TOutputImage >, itk::AttributeUniqueLabelMapFilter< TImage, Functor::LabelLabelObjectAccessor< TImage::LabelObjectType > >, itk::LabelMapToBinaryImageFilter< TInputImage, TOutputImage >, itk::LabelMapToLabelImageFilter< TInputImage, TOutputImage >, itk::LabelUniqueLabelMapFilter< TImage >, itk::RelabelLabelMapFilter< TImage >, itk::StatisticsKeepNObjectsLabelMapFilter< TImage >, itk::BinaryReconstructionLabelMapFilter< TImage, TMarkerImage, TAttributeAccessor >, itk::StatisticsOpeningLabelMapFilter< TImage >, itk::StatisticsRelabelLabelMapFilter< TImage >, itk::AggregateLabelMapFilter< TImage >, itk::AttributeOpeningLabelMapFilter< TImage, TAttributeAccessor >, itk::AttributePositionLabelMapFilter< TImage, TAttributeAccessor, VPhysicalPosition >, itk::AttributeRelabelLabelMapFilter< TImage, TAttributeAccessor >, itk::ChangeLabelLabelMapFilter< TImage >, itk::ShapeKeepNObjectsLabelMapFilter< TImage >, itk::ShapeRelabelLabelMapFilter< TImage >, itk::AttributeRelabelLabelMapFilter< TImage, Functor::LabelLabelObjectAccessor< TImage::LabelObjectType > >, itk::AttributeKeepNObjectsLabelMapFilter< TImage, TAttributeAccessor >, itk::ConvertLabelMapFilter< TInputImage, TOutputImage >, itk::ShiftScaleLabelMapFilter< TImage >, itk::LabelMapToRGBImageFilter< TInputImage, TOutputImage >, itk::StatisticsLabelMapFilter< TImage, TFeatureImage >, itk::StatisticsPositionLabelMapFilter< TImage >, itk::ShapeUniqueLabelMapFilter< TImage >, itk::StatisticsUniqueLabelMapFilter< TImage >, and itk::ShapePositionLabelMapFilter< TImage >.

Definition at line 64 of file itkLabelMapFilter.h.

template<class TInputImage, class TOutputImage>
typedef ImageToImageFilter< TInputImage, TOutputImage > itk::LabelMapFilter< TInputImage, TOutputImage >::Superclass

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

Reimplemented in itk::InPlaceLabelMapFilter< TInputImage >, itk::InPlaceLabelMapFilter< TImage >, itk::ObjectByObjectLabelMapFilter< TInputImage, TOutputImage, TInputFilter, TOutputFilter, TInternalInputImage, TInternalOutputImage >, itk::LabelMapContourOverlayImageFilter< TLabelMap, TFeatureImage, TOutputImage >, itk::ChangeRegionLabelMapFilter< TInputImage >, itk::CropLabelMapFilter< TInputImage >, itk::LabelSelectionLabelMapFilter< TImage >, itk::PadLabelMapFilter< TInputImage >, itk::ShapeLabelMapFilter< TImage, TLabelImage >, itk::ShapeLabelMapFilter< TImage, Image< TImage::PixelType,::itk::GetImageDimension< TImage >::ImageDimension > >, itk::AutoCropLabelMapFilter< TInputImage >, itk::MergeLabelMapFilter< TImage >, itk::RegionFromReferenceLabelMapFilter< TInputImage >, itk::LabelMapOverlayImageFilter< TLabelMap, TFeatureImage, TOutputImage >, itk::AttributeSelectionLabelMapFilter< TImage, TAttributeAccessor >, itk::ShapeOpeningLabelMapFilter< TImage >, itk::AttributeSelectionLabelMapFilter< TImage, Functor::LabelLabelObjectAccessor< TImage::LabelObjectType > >, itk::RelabelLabelMapFilter< TImage >, itk::AttributeUniqueLabelMapFilter< TImage, TAttributeAccessor >, itk::LabelMapMaskImageFilter< TInputImage, TOutputImage >, itk::LabelUniqueLabelMapFilter< TImage >, itk::AttributeUniqueLabelMapFilter< TImage, Functor::LabelLabelObjectAccessor< TImage::LabelObjectType > >, itk::LabelMapToBinaryImageFilter< TInputImage, TOutputImage >, itk::LabelMapToLabelImageFilter< TInputImage, TOutputImage >, itk::StatisticsKeepNObjectsLabelMapFilter< TImage >, itk::BinaryReconstructionLabelMapFilter< TImage, TMarkerImage, TAttributeAccessor >, itk::StatisticsOpeningLabelMapFilter< TImage >, itk::StatisticsRelabelLabelMapFilter< TImage >, itk::AggregateLabelMapFilter< TImage >, itk::AttributeOpeningLabelMapFilter< TImage, TAttributeAccessor >, itk::AttributePositionLabelMapFilter< TImage, TAttributeAccessor, VPhysicalPosition >, itk::AttributeRelabelLabelMapFilter< TImage, TAttributeAccessor >, itk::ChangeLabelLabelMapFilter< TImage >, itk::ShapeKeepNObjectsLabelMapFilter< TImage >, itk::ShapeRelabelLabelMapFilter< TImage >, itk::AttributeRelabelLabelMapFilter< TImage, Functor::LabelLabelObjectAccessor< TImage::LabelObjectType > >, itk::AttributeKeepNObjectsLabelMapFilter< TImage, TAttributeAccessor >, itk::ConvertLabelMapFilter< TInputImage, TOutputImage >, itk::ShiftScaleLabelMapFilter< TImage >, itk::LabelMapToRGBImageFilter< TInputImage, TOutputImage >, itk::StatisticsLabelMapFilter< TImage, TFeatureImage >, itk::StatisticsPositionLabelMapFilter< TImage >, itk::ShapeUniqueLabelMapFilter< TImage >, itk::StatisticsUniqueLabelMapFilter< TImage >, and itk::ShapePositionLabelMapFilter< TImage >.

Definition at line 65 of file itkLabelMapFilter.h.


Constructor & Destructor Documentation

template<class TInputImage, class TOutputImage>
itk::LabelMapFilter< TInputImage, TOutputImage >::LabelMapFilter ( ) [protected]

LabelMapFilter will produce the entire output.

template<class TInputImage, class TOutputImage>
itk::LabelMapFilter< TInputImage, TOutputImage >::~LabelMapFilter ( ) [protected]

LabelMapFilter will produce the entire output.

template<class TInputImage, class TOutputImage>
itk::LabelMapFilter< TInputImage, TOutputImage >::LabelMapFilter ( const Self ) [private]

Member Function Documentation

template<class TInputImage, class TOutputImage>
virtual void itk::LabelMapFilter< TInputImage, TOutputImage >::AfterThreadedGenerateData ( void  ) [protected, virtual]

If an imaging filter needs to perform processing after all processing threads have completed, the filter can can provide an implementation for AfterThreadedGenerateData(). The execution flow in the default GenerateData() method will be: 1) Allocate the output buffer 2) Call BeforeThreadedGenerateData() 3) Spawn threads, calling ThreadedGenerateData() in each thread. 4) Call AfterThreadedGenerateData() Note that this flow of control is only available if a filter provides a ThreadedGenerateData() method and NOT a GenerateData() method.

Reimplemented from itk::ImageSource< TOutputImage >.

Reimplemented in itk::ShapeLabelMapFilter< TImage, TLabelImage >, and itk::ShapeLabelMapFilter< TImage, Image< TImage::PixelType,::itk::GetImageDimension< TImage >::ImageDimension > >.

template<class TInputImage, class TOutputImage>
virtual void itk::LabelMapFilter< TInputImage, TOutputImage >::BeforeThreadedGenerateData ( void  ) [protected, virtual]
template<class TInputImage, class TOutputImage>
virtual::itk::LightObject::Pointer itk::LabelMapFilter< TInputImage, TOutputImage >::CreateAnother ( void  ) const [virtual]

Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.

Reimplemented from itk::Object.

Reimplemented in itk::ObjectByObjectLabelMapFilter< TInputImage, TOutputImage, TInputFilter, TOutputFilter, TInternalInputImage, TInternalOutputImage >, itk::LabelMapContourOverlayImageFilter< TLabelMap, TFeatureImage, TOutputImage >, itk::LabelMapOverlayImageFilter< TLabelMap, TFeatureImage, TOutputImage >, itk::InPlaceLabelMapFilter< TInputImage >, itk::InPlaceLabelMapFilter< TImage >, itk::LabelMapMaskImageFilter< TInputImage, TOutputImage >, itk::ShapeLabelMapFilter< TImage, TLabelImage >, itk::ShapeLabelMapFilter< TImage, Image< TImage::PixelType,::itk::GetImageDimension< TImage >::ImageDimension > >, itk::LabelSelectionLabelMapFilter< TImage >, itk::LabelMapToRGBImageFilter< TInputImage, TOutputImage >, itk::AttributeSelectionLabelMapFilter< TImage, TAttributeAccessor >, itk::LabelMapToBinaryImageFilter< TInputImage, TOutputImage >, itk::LabelMapToLabelImageFilter< TInputImage, TOutputImage >, itk::AttributeSelectionLabelMapFilter< TImage, Functor::LabelLabelObjectAccessor< TImage::LabelObjectType > >, itk::MergeLabelMapFilter< TImage >, itk::AttributeUniqueLabelMapFilter< TImage, TAttributeAccessor >, itk::BinaryReconstructionLabelMapFilter< TImage, TMarkerImage, TAttributeAccessor >, itk::ConvertLabelMapFilter< TInputImage, TOutputImage >, itk::AttributeUniqueLabelMapFilter< TImage, Functor::LabelLabelObjectAccessor< TImage::LabelObjectType > >, itk::ShapeOpeningLabelMapFilter< TImage >, itk::StatisticsLabelMapFilter< TImage, TFeatureImage >, itk::LabelUniqueLabelMapFilter< TImage >, itk::AttributeOpeningLabelMapFilter< TImage, TAttributeAccessor >, itk::StatisticsKeepNObjectsLabelMapFilter< TImage >, itk::AttributePositionLabelMapFilter< TImage, TAttributeAccessor, VPhysicalPosition >, itk::AttributeRelabelLabelMapFilter< TImage, TAttributeAccessor >, itk::RelabelLabelMapFilter< TImage >, itk::StatisticsOpeningLabelMapFilter< TImage >, itk::StatisticsRelabelLabelMapFilter< TImage >, itk::AttributeRelabelLabelMapFilter< TImage, Functor::LabelLabelObjectAccessor< TImage::LabelObjectType > >, itk::AttributeKeepNObjectsLabelMapFilter< TImage, TAttributeAccessor >, itk::ChangeRegionLabelMapFilter< TInputImage >, itk::CropLabelMapFilter< TInputImage >, itk::PadLabelMapFilter< TInputImage >, itk::ShapeKeepNObjectsLabelMapFilter< TImage >, itk::ShapeRelabelLabelMapFilter< TImage >, itk::RegionFromReferenceLabelMapFilter< TInputImage >, itk::ShapeUniqueLabelMapFilter< TImage >, itk::StatisticsPositionLabelMapFilter< TImage >, itk::AggregateLabelMapFilter< TImage >, itk::ChangeLabelLabelMapFilter< TImage >, itk::ShiftScaleLabelMapFilter< TImage >, itk::StatisticsUniqueLabelMapFilter< TImage >, itk::AutoCropLabelMapFilter< TInputImage >, and itk::ShapePositionLabelMapFilter< TImage >.

template<class TInputImage, class TOutputImage>
void itk::LabelMapFilter< TInputImage, TOutputImage >::EnlargeOutputRequestedRegion ( DataObject ) [virtual]
template<class TInputImage, class TOutputImage>
void itk::LabelMapFilter< TInputImage, TOutputImage >::GenerateInputRequestedRegion ( ) [virtual]
template<class TInputImage, class TOutputImage>
virtual InputImageType* itk::LabelMapFilter< TInputImage, TOutputImage >::GetLabelMap ( ) [inline, protected, virtual]

Return the label collection image to use. This method may be overloaded if the label collection image to use is not the input image.

Reimplemented in itk::LabelMapContourOverlayImageFilter< TLabelMap, TFeatureImage, TOutputImage >, itk::InPlaceLabelMapFilter< TInputImage >, and itk::InPlaceLabelMapFilter< TImage >.

Definition at line 118 of file itkLabelMapFilter.h.

template<class TInputImage, class TOutputImage>
virtual const char* itk::LabelMapFilter< TInputImage, TOutputImage >::GetNameOfClass ( ) const [virtual]

Run-time type information (and related methods).

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

Reimplemented in itk::ObjectByObjectLabelMapFilter< TInputImage, TOutputImage, TInputFilter, TOutputFilter, TInternalInputImage, TInternalOutputImage >, itk::LabelMapContourOverlayImageFilter< TLabelMap, TFeatureImage, TOutputImage >, itk::LabelMapOverlayImageFilter< TLabelMap, TFeatureImage, TOutputImage >, itk::InPlaceLabelMapFilter< TInputImage >, itk::InPlaceLabelMapFilter< TImage >, itk::LabelMapMaskImageFilter< TInputImage, TOutputImage >, itk::ShapeLabelMapFilter< TImage, TLabelImage >, itk::ShapeLabelMapFilter< TImage, Image< TImage::PixelType,::itk::GetImageDimension< TImage >::ImageDimension > >, itk::LabelSelectionLabelMapFilter< TImage >, itk::LabelMapToRGBImageFilter< TInputImage, TOutputImage >, itk::AttributeSelectionLabelMapFilter< TImage, TAttributeAccessor >, itk::AttributeSelectionLabelMapFilter< TImage, Functor::LabelLabelObjectAccessor< TImage::LabelObjectType > >, itk::LabelMapToBinaryImageFilter< TInputImage, TOutputImage >, itk::LabelMapToLabelImageFilter< TInputImage, TOutputImage >, itk::AttributeUniqueLabelMapFilter< TImage, TAttributeAccessor >, itk::BinaryReconstructionLabelMapFilter< TImage, TMarkerImage, TAttributeAccessor >, itk::MergeLabelMapFilter< TImage >, itk::AttributeUniqueLabelMapFilter< TImage, Functor::LabelLabelObjectAccessor< TImage::LabelObjectType > >, itk::ConvertLabelMapFilter< TInputImage, TOutputImage >, itk::StatisticsLabelMapFilter< TImage, TFeatureImage >, itk::LabelUniqueLabelMapFilter< TImage >, itk::ShapeOpeningLabelMapFilter< TImage >, itk::AttributeOpeningLabelMapFilter< TImage, TAttributeAccessor >, itk::StatisticsKeepNObjectsLabelMapFilter< TImage >, itk::AttributePositionLabelMapFilter< TImage, TAttributeAccessor, VPhysicalPosition >, itk::AttributeRelabelLabelMapFilter< TImage, TAttributeAccessor >, itk::StatisticsOpeningLabelMapFilter< TImage >, itk::StatisticsRelabelLabelMapFilter< TImage >, itk::AttributeRelabelLabelMapFilter< TImage, Functor::LabelLabelObjectAccessor< TImage::LabelObjectType > >, itk::AttributeKeepNObjectsLabelMapFilter< TImage, TAttributeAccessor >, itk::RelabelLabelMapFilter< TImage >, itk::ShapeKeepNObjectsLabelMapFilter< TImage >, itk::ShapeRelabelLabelMapFilter< TImage >, itk::ShapeUniqueLabelMapFilter< TImage >, itk::StatisticsPositionLabelMapFilter< TImage >, itk::AggregateLabelMapFilter< TImage >, itk::ChangeLabelLabelMapFilter< TImage >, itk::StatisticsUniqueLabelMapFilter< TImage >, itk::ShiftScaleLabelMapFilter< TImage >, itk::AutoCropLabelMapFilter< TInputImage >, itk::ShapePositionLabelMapFilter< TImage >, itk::ChangeRegionLabelMapFilter< TInputImage >, itk::CropLabelMapFilter< TInputImage >, itk::PadLabelMapFilter< TInputImage >, and itk::RegionFromReferenceLabelMapFilter< TInputImage >.

template<class TInputImage, class TOutputImage>
static Pointer itk::LabelMapFilter< TInputImage, TOutputImage >::New ( ) [static]

Standard New method.

Reimplemented from itk::Object.

Reimplemented in itk::ObjectByObjectLabelMapFilter< TInputImage, TOutputImage, TInputFilter, TOutputFilter, TInternalInputImage, TInternalOutputImage >, itk::LabelMapContourOverlayImageFilter< TLabelMap, TFeatureImage, TOutputImage >, itk::LabelMapOverlayImageFilter< TLabelMap, TFeatureImage, TOutputImage >, itk::InPlaceLabelMapFilter< TInputImage >, itk::InPlaceLabelMapFilter< TImage >, itk::LabelMapMaskImageFilter< TInputImage, TOutputImage >, itk::ShapeLabelMapFilter< TImage, TLabelImage >, itk::ShapeLabelMapFilter< TImage, Image< TImage::PixelType,::itk::GetImageDimension< TImage >::ImageDimension > >, itk::LabelSelectionLabelMapFilter< TImage >, itk::LabelMapToRGBImageFilter< TInputImage, TOutputImage >, itk::AttributeSelectionLabelMapFilter< TImage, TAttributeAccessor >, itk::LabelMapToBinaryImageFilter< TInputImage, TOutputImage >, itk::LabelMapToLabelImageFilter< TInputImage, TOutputImage >, itk::AttributeSelectionLabelMapFilter< TImage, Functor::LabelLabelObjectAccessor< TImage::LabelObjectType > >, itk::MergeLabelMapFilter< TImage >, itk::AttributeUniqueLabelMapFilter< TImage, TAttributeAccessor >, itk::BinaryReconstructionLabelMapFilter< TImage, TMarkerImage, TAttributeAccessor >, itk::ConvertLabelMapFilter< TInputImage, TOutputImage >, itk::AttributeUniqueLabelMapFilter< TImage, Functor::LabelLabelObjectAccessor< TImage::LabelObjectType > >, itk::ShapeOpeningLabelMapFilter< TImage >, itk::StatisticsLabelMapFilter< TImage, TFeatureImage >, itk::LabelUniqueLabelMapFilter< TImage >, itk::AttributeOpeningLabelMapFilter< TImage, TAttributeAccessor >, itk::StatisticsKeepNObjectsLabelMapFilter< TImage >, itk::AttributePositionLabelMapFilter< TImage, TAttributeAccessor, VPhysicalPosition >, itk::AttributeRelabelLabelMapFilter< TImage, TAttributeAccessor >, itk::RelabelLabelMapFilter< TImage >, itk::StatisticsOpeningLabelMapFilter< TImage >, itk::StatisticsRelabelLabelMapFilter< TImage >, itk::AttributeRelabelLabelMapFilter< TImage, Functor::LabelLabelObjectAccessor< TImage::LabelObjectType > >, itk::AttributeKeepNObjectsLabelMapFilter< TImage, TAttributeAccessor >, itk::ChangeRegionLabelMapFilter< TInputImage >, itk::CropLabelMapFilter< TInputImage >, itk::PadLabelMapFilter< TInputImage >, itk::ShapeKeepNObjectsLabelMapFilter< TImage >, itk::ShapeRelabelLabelMapFilter< TImage >, itk::RegionFromReferenceLabelMapFilter< TInputImage >, itk::ShapeUniqueLabelMapFilter< TImage >, itk::StatisticsPositionLabelMapFilter< TImage >, itk::AggregateLabelMapFilter< TImage >, itk::ChangeLabelLabelMapFilter< TImage >, itk::ShiftScaleLabelMapFilter< TImage >, itk::StatisticsUniqueLabelMapFilter< TImage >, itk::AutoCropLabelMapFilter< TInputImage >, and itk::ShapePositionLabelMapFilter< TImage >.

template<class TInputImage, class TOutputImage>
void itk::LabelMapFilter< TInputImage, TOutputImage >::operator= ( const Self ) [private]

PushBackInput(), PushFronInput() in the public section force the input to be the type expected by an ImageToImageFilter. However, these methods end of "hiding" the versions from the superclass (ProcessObject) whose arguments are DataObjects. Here, we re-expose the versions from ProcessObject to avoid warnings about hiding methods from the superclass.

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

Reimplemented in itk::ShapeUniqueLabelMapFilter< TImage >, itk::ObjectByObjectLabelMapFilter< TInputImage, TOutputImage, TInputFilter, TOutputFilter, TInternalInputImage, TInternalOutputImage >, itk::LabelMapContourOverlayImageFilter< TLabelMap, TFeatureImage, TOutputImage >, itk::ShapeKeepNObjectsLabelMapFilter< TImage >, itk::LabelMapMaskImageFilter< TInputImage, TOutputImage >, itk::ShapeRelabelLabelMapFilter< TImage >, itk::InPlaceLabelMapFilter< TInputImage >, itk::ShapeOpeningLabelMapFilter< TImage >, itk::InPlaceLabelMapFilter< TImage >, itk::LabelMapOverlayImageFilter< TLabelMap, TFeatureImage, TOutputImage >, itk::AttributeSelectionLabelMapFilter< TImage, TAttributeAccessor >, itk::AttributeSelectionLabelMapFilter< TImage, Functor::LabelLabelObjectAccessor< TImage::LabelObjectType > >, itk::StatisticsLabelMapFilter< TImage, TFeatureImage >, itk::LabelMapToBinaryImageFilter< TInputImage, TOutputImage >, itk::ShapePositionLabelMapFilter< TImage >, itk::ShapeLabelMapFilter< TImage, TLabelImage >, itk::ShapeLabelMapFilter< TImage, Image< TImage::PixelType,::itk::GetImageDimension< TImage >::ImageDimension > >, itk::AttributeKeepNObjectsLabelMapFilter< TImage, TAttributeAccessor >, itk::BinaryReconstructionLabelMapFilter< TImage, TMarkerImage, TAttributeAccessor >, itk::AttributeRelabelLabelMapFilter< TImage, TAttributeAccessor >, itk::AttributeRelabelLabelMapFilter< TImage, Functor::LabelLabelObjectAccessor< TImage::LabelObjectType > >, itk::LabelSelectionLabelMapFilter< TImage >, itk::RegionFromReferenceLabelMapFilter< TInputImage >, itk::CropLabelMapFilter< TInputImage >, itk::PadLabelMapFilter< TInputImage >, itk::ChangeRegionLabelMapFilter< TInputImage >, itk::MergeLabelMapFilter< TImage >, itk::AttributeOpeningLabelMapFilter< TImage, TAttributeAccessor >, itk::AttributeUniqueLabelMapFilter< TImage, TAttributeAccessor >, itk::AttributeUniqueLabelMapFilter< TImage, Functor::LabelLabelObjectAccessor< TImage::LabelObjectType > >, itk::AutoCropLabelMapFilter< TInputImage >, itk::ChangeLabelLabelMapFilter< TImage >, itk::ShiftScaleLabelMapFilter< TImage >, itk::AttributePositionLabelMapFilter< TImage, TAttributeAccessor, VPhysicalPosition >, itk::StatisticsKeepNObjectsLabelMapFilter< TImage >, itk::LabelMapToLabelImageFilter< TInputImage, TOutputImage >, itk::LabelUniqueLabelMapFilter< TImage >, itk::RelabelLabelMapFilter< TImage >, itk::LabelMapToRGBImageFilter< TInputImage, TOutputImage >, itk::StatisticsOpeningLabelMapFilter< TImage >, itk::StatisticsRelabelLabelMapFilter< TImage >, itk::AggregateLabelMapFilter< TImage >, itk::StatisticsPositionLabelMapFilter< TImage >, itk::StatisticsUniqueLabelMapFilter< TImage >, and itk::ConvertLabelMapFilter< TInputImage, TOutputImage >.

template<class TInputImage, class TOutputImage>
virtual void itk::LabelMapFilter< TInputImage, TOutputImage >::ThreadedGenerateData ( const OutputImageRegionType outputRegionForThread,
ThreadIdType  threadId 
) [protected, virtual]

If an imaging filter can be implemented as a multithreaded algorithm, the filter will provide an implementation of ThreadedGenerateData(). This superclass will automatically split the output image into a number of pieces, spawn multiple threads, and call ThreadedGenerateData() in each thread. Prior to spawning threads, the BeforeThreadedGenerateData() method is called. After all the threads have completed, the AfterThreadedGenerateData() method is called. If an image processing filter cannot support threading, that filter should provide an implementation of the GenerateData() method instead of providing an implementation of ThreadedGenerateData(). If a filter provides a GenerateData() method as its implementation, then the filter is responsible for allocating the output data. If a filter provides a ThreadedGenerateData() method as its implementation, then the output memory will allocated automatically by this superclass. The ThreadedGenerateData() method should only produce the output specified by "outputThreadRegion" parameter. ThreadedGenerateData() cannot write to any other portion of the output image (as this is responsibility of a different thread).

See also:
GenerateData(), SplitRequestedRegion()

Reimplemented from itk::ImageSource< TOutputImage >.

Reimplemented in itk::LabelMapContourOverlayImageFilter< TLabelMap, TFeatureImage, TOutputImage >, itk::LabelMapMaskImageFilter< TInputImage, TOutputImage >, itk::LabelMapOverlayImageFilter< TLabelMap, TFeatureImage, TOutputImage >, and itk::LabelMapToBinaryImageFilter< TInputImage, TOutputImage >.

template<class TInputImage, class TOutputImage>
virtual void itk::LabelMapFilter< TInputImage, TOutputImage >::ThreadedProcessLabelObject ( LabelObjectType labelObject) [protected, virtual]

Member Data Documentation

template<class TInputImage, class TOutputImage>
const unsigned int itk::LabelMapFilter< TInputImage, TOutputImage >::InputImageDimension = TInputImage::ImageDimension [static]
template<class TInputImage, class TOutputImage>
FastMutexLock::Pointer itk::LabelMapFilter< TInputImage, TOutputImage >::m_LabelObjectContainerLock [protected]

Definition at line 123 of file itkLabelMapFilter.h.

template<class TInputImage, class TOutputImage>
InputImageType::Iterator itk::LabelMapFilter< TInputImage, TOutputImage >::m_LabelObjectIterator [private]

Definition at line 129 of file itkLabelMapFilter.h.

template<class TInputImage, class TOutputImage>
ProgressReporter* itk::LabelMapFilter< TInputImage, TOutputImage >::m_Progress [private]

Reimplemented from itk::ProcessObject.

Definition at line 131 of file itkLabelMapFilter.h.

template<class TInputImage, class TOutputImage>
const unsigned int itk::LabelMapFilter< TInputImage, TOutputImage >::OutputImageDimension = TOutputImage::ImageDimension [static]

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