ITK  4.0.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Private Member Functions | Private Attributes
itk::ChainCodePath< VDimension > Class Template Reference

Represent a path as a sequence of connected image index offsets. More...

#include <itkChainCodePath.h>

Inheritance diagram for itk::ChainCodePath< VDimension >:
Collaboration diagram for itk::ChainCodePath< VDimension >:

List of all members.

Public Types

typedef ChainCodeType::size_type ChainCodeSizeType
typedef std::vector< OffsetTypeChainCodeType
typedef SmartPointer< const SelfConstPointer
typedef Index< VDimension > IndexType
typedef Superclass::InputType InputType
typedef OutputType OffsetType
typedef Superclass::OutputType OutputType
typedef SmartPointer< SelfPointer
typedef ChainCodePath< VDimension > Self
typedef Path< unsigned int,
Offset< VDimension >
, VDimension > 
Superclass

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother (void) const
virtual InputType EndOfInput () const
virtual OutputType Evaluate (const InputType &input) const
virtual IndexType EvaluateToIndex (const InputType &input) const
virtual const char * GetNameOfClass () const
virtual OffsetType IncrementInput (InputType &input) const
virtual ChainCodeSizeType NumberOfSteps () const
virtual void SetStart (IndexType _arg)
virtual const IndexTypeGetStart ()
virtual void InsertStep (InputType position, OffsetType step)
virtual void ChangeStep (InputType position, OffsetType step)
virtual void Clear ()
virtual void Initialize (void)

Static Public Member Functions

static Pointer New ()

Static Public Attributes

static const unsigned int Dimension = VDimension

Protected Member Functions

 ChainCodePath ()
void PrintSelf (std::ostream &os, Indent indent) const
 ~ChainCodePath ()

Private Member Functions

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

Private Attributes

ChainCodeType m_Chain
IndexType m_Start

Detailed Description

template<unsigned int VDimension>
class itk::ChainCodePath< VDimension >

Represent a path as a sequence of connected image index offsets.

This class is intended to represent sequences of connected indices in an image. It does so by storing the offset of each index from its immediately preceeding, connected, index. The only image index stored directly is that of the first index. ChainCodePath maps a 1D integer input (step number) to an ND interger output (either an offset or an image index, depending on whether Evaluate or EvaluateToIndex is called).

See also:
ChainCodePath2D
ParametricPath
Path
Index
Offset

Definition at line 49 of file itkChainCodePath.h.


Member Typedef Documentation

template<unsigned int VDimension>
typedef ChainCodeType::size_type itk::ChainCodePath< VDimension >::ChainCodeSizeType

Reimplemented in itk::ChainCodePath2D.

Definition at line 76 of file itkChainCodePath.h.

template<unsigned int VDimension>
typedef std::vector< OffsetType > itk::ChainCodePath< VDimension >::ChainCodeType

Reimplemented in itk::ChainCodePath2D.

Definition at line 74 of file itkChainCodePath.h.

template<unsigned int VDimension>
typedef SmartPointer< const Self > itk::ChainCodePath< VDimension >::ConstPointer

Reimplemented from itk::Path< unsigned int, Offset< VDimension >, VDimension >.

Reimplemented in itk::ChainCodePath2D.

Definition at line 61 of file itkChainCodePath.h.

template<unsigned int VDimension>
typedef Index< VDimension > itk::ChainCodePath< VDimension >::IndexType

All paths must be mapable to index space

Reimplemented from itk::Path< unsigned int, Offset< VDimension >, VDimension >.

Reimplemented in itk::ChainCodePath2D.

Definition at line 72 of file itkChainCodePath.h.

template<unsigned int VDimension>
typedef Superclass::InputType itk::ChainCodePath< VDimension >::InputType

Input type

Reimplemented from itk::Path< unsigned int, Offset< VDimension >, VDimension >.

Reimplemented in itk::ChainCodePath2D.

Definition at line 68 of file itkChainCodePath.h.

template<unsigned int VDimension>
typedef OutputType itk::ChainCodePath< VDimension >::OffsetType

The output type of this function is an Index

Reimplemented from itk::Path< unsigned int, Offset< VDimension >, VDimension >.

Reimplemented in itk::ChainCodePath2D.

Definition at line 71 of file itkChainCodePath.h.

template<unsigned int VDimension>
typedef Superclass::OutputType itk::ChainCodePath< VDimension >::OutputType

OutputType typedef support.

Reimplemented from itk::Path< unsigned int, Offset< VDimension >, VDimension >.

Reimplemented in itk::ChainCodePath2D.

Definition at line 64 of file itkChainCodePath.h.

template<unsigned int VDimension>
typedef SmartPointer< Self > itk::ChainCodePath< VDimension >::Pointer

Reimplemented from itk::Path< unsigned int, Offset< VDimension >, VDimension >.

Reimplemented in itk::ChainCodePath2D.

Definition at line 60 of file itkChainCodePath.h.

template<unsigned int VDimension>
typedef ChainCodePath< VDimension > itk::ChainCodePath< VDimension >::Self

Standard class typedefs.

Reimplemented from itk::Path< unsigned int, Offset< VDimension >, VDimension >.

Reimplemented in itk::ChainCodePath2D.

Definition at line 57 of file itkChainCodePath.h.

template<unsigned int VDimension>
typedef Path< unsigned int, Offset< VDimension >, VDimension > itk::ChainCodePath< VDimension >::Superclass

Reimplemented from itk::Path< unsigned int, Offset< VDimension >, VDimension >.

Reimplemented in itk::ChainCodePath2D.

Definition at line 58 of file itkChainCodePath.h.


Constructor & Destructor Documentation

template<unsigned int VDimension>
itk::ChainCodePath< VDimension >::ChainCodePath ( ) [protected]
template<unsigned int VDimension>
itk::ChainCodePath< VDimension >::~ChainCodePath ( ) [inline, protected]

Definition at line 149 of file itkChainCodePath.h.

template<unsigned int VDimension>
itk::ChainCodePath< VDimension >::ChainCodePath ( const Self ) [private]

Member Function Documentation

template<unsigned int VDimension>
virtual void itk::ChainCodePath< VDimension >::ChangeStep ( InputType  position,
OffsetType  step 
) [inline, virtual]

Change the direction of a step in the chaincode

Reimplemented in itk::ChainCodePath2D.

Definition at line 118 of file itkChainCodePath.h.

template<unsigned int VDimension>
virtual void itk::ChainCodePath< VDimension >::Clear ( void  ) [inline, virtual]

Remove all steps from the chain code

Reimplemented in itk::ChainCodePath2D.

Definition at line 126 of file itkChainCodePath.h.

template<unsigned int VDimension>
virtual::itk::LightObject::Pointer itk::ChainCodePath< VDimension >::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::ChainCodePath2D.

template<unsigned int VDimension>
virtual InputType itk::ChainCodePath< VDimension >::EndOfInput ( ) const [inline, virtual]

Where does the path end (what is the last valid input value)?

Reimplemented from itk::Path< unsigned int, Offset< VDimension >, VDimension >.

Definition at line 96 of file itkChainCodePath.h.

template<unsigned int VDimension>
virtual OutputType itk::ChainCodePath< VDimension >::Evaluate ( const InputType input) const [inline, virtual]

Evaluate the chaincode for the offset at the specified path-position.

Reimplemented in itk::ChainCodePath2D.

Definition at line 81 of file itkChainCodePath.h.

template<unsigned int VDimension>
virtual IndexType itk::ChainCodePath< VDimension >::EvaluateToIndex ( const InputType input) const [virtual]

Like Evaluate(), but returns the index at the specified path-position.

Reimplemented in itk::ChainCodePath2D.

template<unsigned int VDimension>
virtual const char* itk::ChainCodePath< VDimension >::GetNameOfClass ( ) const [virtual]

Run-time type information (and related methods).

Reimplemented from itk::Path< unsigned int, Offset< VDimension >, VDimension >.

Reimplemented in itk::ChainCodePath2D.

template<unsigned int VDimension>
virtual const IndexType& itk::ChainCodePath< VDimension >::GetStart ( ) [virtual]

Set/Get the index associated with the initial position of the path

template<unsigned int VDimension>
virtual OffsetType itk::ChainCodePath< VDimension >::IncrementInput ( InputType input) const [virtual]

Increment the input variable passed by reference and then return the offset stored at the new path-position. If the chaincode is unable to be incremented, input is not changed and an offset of zero is returned, which may be used to check for the end of the chain code.

Reimplemented in itk::ChainCodePath2D.

template<unsigned int VDimension>
virtual void itk::ChainCodePath< VDimension >::Initialize ( void  ) [inline, virtual]

Needed for Pipelining

Reimplemented from itk::DataObject.

Definition at line 140 of file itkChainCodePath.h.

template<unsigned int VDimension>
virtual void itk::ChainCodePath< VDimension >::InsertStep ( InputType  position,
OffsetType  step 
) [inline, virtual]

Insert a new step into the chaincode at a specified position

Reimplemented in itk::ChainCodePath2D.

Definition at line 110 of file itkChainCodePath.h.

template<unsigned int VDimension>
static Pointer itk::ChainCodePath< VDimension >::New ( ) [static]

New() method for dynamic construction

Reimplemented from itk::Object.

Reimplemented in itk::ChainCodePath2D.

template<unsigned int VDimension>
virtual ChainCodeSizeType itk::ChainCodePath< VDimension >::NumberOfSteps ( ) const [inline, virtual]

How many steps in the chaincode?

Reimplemented in itk::ChainCodePath2D.

Definition at line 134 of file itkChainCodePath.h.

template<unsigned int VDimension>
void itk::ChainCodePath< VDimension >::operator= ( const Self ) [private]
template<unsigned int VDimension>
void itk::ChainCodePath< VDimension >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const [protected, virtual]

Method for grafting the content of one data object into another one. This method is intended to be overloaded by derived classes. Each one of them should use dynamic_casting in order to verify that the grafted object is actually of the same type as the class on which the Graft() method was invoked.

Reimplemented from itk::Path< unsigned int, Offset< VDimension >, VDimension >.

Reimplemented in itk::ChainCodePath2D.

template<unsigned int VDimension>
virtual void itk::ChainCodePath< VDimension >::SetStart ( IndexType  _arg) [virtual]

Set/Get the index associated with the initial position of the path


Member Data Documentation

template<unsigned int VDimension>
const unsigned int itk::ChainCodePath< VDimension >::Dimension = VDimension [static]

Dimension underlying input image.

Reimplemented in itk::ChainCodePath2D.

Definition at line 54 of file itkChainCodePath.h.

template<unsigned int VDimension>
ChainCodeType itk::ChainCodePath< VDimension >::m_Chain [private]

Definition at line 157 of file itkChainCodePath.h.

template<unsigned int VDimension>
IndexType itk::ChainCodePath< VDimension >::m_Start [private]

Definition at line 156 of file itkChainCodePath.h.


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