ITK  5.0.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
itk::SpeedFunctionPathInformation< TPoint > Class Template Reference

#include <itkSpeedFunctionPathInformation.h>

+ Inheritance diagram for itk::SpeedFunctionPathInformation< TPoint >:
+ Collaboration diagram for itk::SpeedFunctionPathInformation< TPoint >:

Detailed Description

template<typename TPoint>
class itk::SpeedFunctionPathInformation< TPoint >

PathInfo class for encapsulating information about a path for a SpeedFunctionToPathFilter Object. The points are stored as follows: end, start, way0, way1, ..., wayN. Each element of a path can be a set of points - e.g. "end" may be derived from a segmentation mask. Alternatively start and end may be the left and right sides of a 2d image, producing a minimal path across the image. Fronts are propagated in reverse order: wayN, ..., way1, way0, start. (NOTE: a front is never propagated from end).

The user must provide at least one PathInfo object using SpeedFunctionToPathFilter::AddPathInfo(). If multiple PathInfo objects are added, multiple paths are extracted and saved to separate filter outputs.

Author
Dan Mueller, Queensland University of Technology, dan.muel[at]gmail.com
See Also
LightObject

Definition at line 52 of file itkSpeedFunctionPathInformation.h.

Public Types

using ConstPointer = SmartPointer< const Self >
 
using Pointer = SmartPointer< Self >
 
using PointsContainerType = std::vector< PointType >
 
using PointType = TPoint
 
using Self = SpeedFunctionPathInformation
 
using Superclass = LightObject
 
- Public Types inherited from itk::LightObject
using ConstPointer = SmartPointer< const Self >
 
using Pointer = SmartPointer< Self >
 
using Self = LightObject
 

Public Member Functions

void AddWayPoint (const PointType &way)
 
void AddWayPoint (const PointsContainerType &way)
 
void Advance ()
 
void ClearInfo ()
 
virtual ::itk::LightObject::Pointer CreateAnother () const
 
const PointsContainerTypeGetCurrentFrontAndAdvance ()
 
const PointsContainerTypeGetEndPoint () const
 
virtual const char * GetNameOfClass () const
 
unsigned int GetNumberOfPoints () const
 
const PointsContainerTypeGetStartPoint () const
 
const PointsContainerTypeGetWayPoint (SizeValueType i) const
 
bool HasNextFront () const
 
const PointsContainerTypePeekCurrentFront () const
 
const PointsContainerTypePeekNextFront () const
 
const PointsContainerTypePeekPreviousFront () const
 
void SetCurrent (const PointsContainerType &newcurrent)
 
void SetCurrent (const PointType &current)
 
void SetEndPoint (const PointType &end)
 
void SetEndPoint (const PointsContainerType &end)
 
void SetNext (const PointsContainerType &newnext)
 
void SetNext (const PointType &newnext)
 
void SetPrevious (const PointsContainerType &newprevious)
 
void SetPrevious (const PointType &newprevious)
 
void SetStartPoint (const PointType &start)
 
void SetStartPoint (const PointsContainerType &start)
 
- Public Member Functions inherited from itk::LightObject
virtual void Delete ()
 
virtual int GetReferenceCount () const
 
 itkCloneMacro (Self)
 
void Print (std::ostream &os, Indent indent=0) const
 
virtual void Register () const
 
virtual void SetReferenceCount (int)
 
virtual void UnRegister () const noexcept
 

Static Public Member Functions

static Pointer New ()
 
- Static Public Member Functions inherited from itk::LightObject
static void BreakOnError ()
 
static Pointer New ()
 

Protected Member Functions

void PrintSelf (std::ostream &os, Indent indent) const override
 
PointsContainerType PtoPVec (const PointType &P)
 
 SpeedFunctionPathInformation ()
 
 ~SpeedFunctionPathInformation () override
 
- Protected Member Functions inherited from itk::LightObject
virtual LightObject::Pointer InternalClone () const
 
 LightObject ()
 
virtual void PrintHeader (std::ostream &os, Indent indent) const
 
virtual void PrintTrailer (std::ostream &os, Indent indent) const
 
virtual ~LightObject ()
 

Protected Attributes

SizeValueType m_Front
 
std::vector< PointsContainerTypem_Information
 
- Protected Attributes inherited from itk::LightObject
std::atomic< int > m_ReferenceCount
 

Member Typedef Documentation

template<typename TPoint >
using itk::SpeedFunctionPathInformation< TPoint >::ConstPointer = SmartPointer<const Self>

Definition at line 62 of file itkSpeedFunctionPathInformation.h.

template<typename TPoint >
using itk::SpeedFunctionPathInformation< TPoint >::Pointer = SmartPointer<Self>

Definition at line 61 of file itkSpeedFunctionPathInformation.h.

template<typename TPoint >
using itk::SpeedFunctionPathInformation< TPoint >::PointsContainerType = std::vector< PointType >

Definition at line 73 of file itkSpeedFunctionPathInformation.h.

template<typename TPoint >
using itk::SpeedFunctionPathInformation< TPoint >::PointType = TPoint

Some point type alias.

Definition at line 72 of file itkSpeedFunctionPathInformation.h.

template<typename TPoint >
using itk::SpeedFunctionPathInformation< TPoint >::Self = SpeedFunctionPathInformation

Standard class type alias.

Definition at line 59 of file itkSpeedFunctionPathInformation.h.

template<typename TPoint >
using itk::SpeedFunctionPathInformation< TPoint >::Superclass = LightObject

Definition at line 60 of file itkSpeedFunctionPathInformation.h.

Constructor & Destructor Documentation

template<typename TPoint >
itk::SpeedFunctionPathInformation< TPoint >::SpeedFunctionPathInformation ( )
protected
template<typename TPoint >
itk::SpeedFunctionPathInformation< TPoint >::~SpeedFunctionPathInformation ( )
overrideprotected

Member Function Documentation

template<typename TPoint >
void itk::SpeedFunctionPathInformation< TPoint >::AddWayPoint ( const PointType way)
template<typename TPoint >
void itk::SpeedFunctionPathInformation< TPoint >::AddWayPoint ( const PointsContainerType way)
template<typename TPoint >
void itk::SpeedFunctionPathInformation< TPoint >::Advance ( )
template<typename TPoint >
void itk::SpeedFunctionPathInformation< TPoint >::ClearInfo ( )
template<typename TPoint >
virtual::itk::LightObject::Pointer itk::SpeedFunctionPathInformation< TPoint >::CreateAnother ( ) 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::LightObject.

template<typename TPoint >
const PointsContainerType& itk::SpeedFunctionPathInformation< TPoint >::GetCurrentFrontAndAdvance ( )
template<typename TPoint >
const PointsContainerType& itk::SpeedFunctionPathInformation< TPoint >::GetEndPoint ( ) const
template<typename TPoint >
virtual const char* itk::SpeedFunctionPathInformation< TPoint >::GetNameOfClass ( ) const
virtual

Run-time type information (and related methods).

Reimplemented from itk::LightObject.

template<typename TPoint >
unsigned int itk::SpeedFunctionPathInformation< TPoint >::GetNumberOfPoints ( ) const
template<typename TPoint >
const PointsContainerType& itk::SpeedFunctionPathInformation< TPoint >::GetStartPoint ( ) const
template<typename TPoint >
const PointsContainerType& itk::SpeedFunctionPathInformation< TPoint >::GetWayPoint ( SizeValueType  i) const
template<typename TPoint >
bool itk::SpeedFunctionPathInformation< TPoint >::HasNextFront ( ) const
template<typename TPoint >
static Pointer itk::SpeedFunctionPathInformation< TPoint >::New ( )
static

Method for creation through the object factory.

template<typename TPoint >
const PointsContainerType& itk::SpeedFunctionPathInformation< TPoint >::PeekCurrentFront ( ) const
template<typename TPoint >
const PointsContainerType& itk::SpeedFunctionPathInformation< TPoint >::PeekNextFront ( ) const
template<typename TPoint >
const PointsContainerType& itk::SpeedFunctionPathInformation< TPoint >::PeekPreviousFront ( ) const
template<typename TPoint >
void itk::SpeedFunctionPathInformation< TPoint >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const
overrideprotectedvirtual

Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from itk::LightObject.

template<typename TPoint >
PointsContainerType itk::SpeedFunctionPathInformation< TPoint >::PtoPVec ( const PointType P)
inlineprotected

Definition at line 131 of file itkSpeedFunctionPathInformation.h.

template<typename TPoint >
void itk::SpeedFunctionPathInformation< TPoint >::SetCurrent ( const PointsContainerType newcurrent)
template<typename TPoint >
void itk::SpeedFunctionPathInformation< TPoint >::SetCurrent ( const PointType current)
template<typename TPoint >
void itk::SpeedFunctionPathInformation< TPoint >::SetEndPoint ( const PointType end)
template<typename TPoint >
void itk::SpeedFunctionPathInformation< TPoint >::SetEndPoint ( const PointsContainerType end)
template<typename TPoint >
void itk::SpeedFunctionPathInformation< TPoint >::SetNext ( const PointsContainerType newnext)
template<typename TPoint >
void itk::SpeedFunctionPathInformation< TPoint >::SetNext ( const PointType newnext)
template<typename TPoint >
void itk::SpeedFunctionPathInformation< TPoint >::SetPrevious ( const PointsContainerType newprevious)
template<typename TPoint >
void itk::SpeedFunctionPathInformation< TPoint >::SetPrevious ( const PointType newprevious)
template<typename TPoint >
void itk::SpeedFunctionPathInformation< TPoint >::SetStartPoint ( const PointType start)
template<typename TPoint >
void itk::SpeedFunctionPathInformation< TPoint >::SetStartPoint ( const PointsContainerType start)

Methods for adding extended path components

Member Data Documentation

template<typename TPoint >
SizeValueType itk::SpeedFunctionPathInformation< TPoint >::m_Front
protected

Definition at line 128 of file itkSpeedFunctionPathInformation.h.

template<typename TPoint >
std::vector< PointsContainerType > itk::SpeedFunctionPathInformation< TPoint >::m_Information
protected

Definition at line 127 of file itkSpeedFunctionPathInformation.h.


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