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

#include <itkNarrowBand.h>

+ Inheritance diagram for itk::NarrowBand< NodeType >:
+ Collaboration diagram for itk::NarrowBand< NodeType >:

Detailed Description

template<typename NodeType>
class itk::NarrowBand< NodeType >

Narrow Band class.

Definition at line 51 of file itkNarrowBand.h.

Classes

struct  RegionStruct
 

Public Types

using ConstIterator = typename NodeContainerType::const_iterator
 
using ConstPointer = SmartPointer< const Self >
 
using Iterator = typename NodeContainerType::iterator
 
using NodeContainerType = std::vector< NodeType >
 
using Pointer = SmartPointer< Self >
 
typedef struct
itk::NarrowBand::RegionStruct 
RegionType
 
using Self = NarrowBand
 
using SizeType = typename NodeContainerType::size_type
 
using Superclass = LightObject
 
- Public Types inherited from itk::LightObject
using ConstPointer = SmartPointer< const Self >
 
using Pointer = SmartPointer< Self >
 
using Self = LightObject
 

Public Member Functions

Iterator Begin ()
 
ConstIterator Begin () const
 
void Clear ()
 
virtual ::itk::LightObject::Pointer CreateAnother () const
 
bool Empty () const
 
Iterator End ()
 
ConstIterator End () const
 
float GetInnerRadius () const
 
virtual const char * GetNameOfClass () const
 
float GetTotalRadius () const
 
NodeType & operator[] (SizeType n)
 
const NodeType & operator[] (SizeType n) const
 
void PopBack ()
 
void PushBack (const NodeType &n)
 
void Reserve (SizeType n)
 
void Resize (SizeType n)
 
void SetInnerRadius (const float &val)
 
void SetTotalRadius (const float &val)
 
SizeType Size () const
 
std::vector< RegionTypeSplitBand (const SizeType &)
 
- 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

 NarrowBand ()
 
- Protected Member Functions inherited from itk::LightObject
virtual LightObject::Pointer InternalClone () const
 
 LightObject ()
 
virtual void PrintHeader (std::ostream &os, Indent indent) const
 
virtual void PrintSelf (std::ostream &os, Indent indent) const
 
virtual void PrintTrailer (std::ostream &os, Indent indent) const
 
virtual ~LightObject ()
 

Protected Attributes

float m_InnerRadius { 0.0 }
 
float m_TotalRadius { 0.0 }
 
- Protected Attributes inherited from itk::LightObject
std::atomic< int > m_ReferenceCount
 

Private Attributes

NodeContainerType m_NodeContainer
 

Member Typedef Documentation

template<typename NodeType >
using itk::NarrowBand< NodeType >::ConstIterator = typename NodeContainerType::const_iterator

Definition at line 70 of file itkNarrowBand.h.

template<typename NodeType >
using itk::NarrowBand< NodeType >::ConstPointer = SmartPointer< const Self >

Definition at line 60 of file itkNarrowBand.h.

template<typename NodeType >
using itk::NarrowBand< NodeType >::Iterator = typename NodeContainerType::iterator

Definition at line 71 of file itkNarrowBand.h.

template<typename NodeType >
using itk::NarrowBand< NodeType >::NodeContainerType = std::vector< NodeType >

Definition at line 68 of file itkNarrowBand.h.

template<typename NodeType >
using itk::NarrowBand< NodeType >::Pointer = SmartPointer< Self >

Definition at line 59 of file itkNarrowBand.h.

template<typename NodeType >
typedef struct itk::NarrowBand::RegionStruct itk::NarrowBand< NodeType >::RegionType

Begin is the first valid iterator position within the region. End is ONE PAST the last valid iterator position in the region.

template<typename NodeType >
using itk::NarrowBand< NodeType >::Self = NarrowBand

Standard class type aliases

Definition at line 57 of file itkNarrowBand.h.

template<typename NodeType >
using itk::NarrowBand< NodeType >::SizeType = typename NodeContainerType::size_type

Definition at line 69 of file itkNarrowBand.h.

template<typename NodeType >
using itk::NarrowBand< NodeType >::Superclass = LightObject

Definition at line 58 of file itkNarrowBand.h.

Constructor & Destructor Documentation

template<typename NodeType >
itk::NarrowBand< NodeType >::NarrowBand ( )
inlineprotected

Definition at line 167 of file itkNarrowBand.h.

Member Function Documentation

template<typename NodeType >
Iterator itk::NarrowBand< NodeType >::Begin ( )
inline

Definition at line 87 of file itkNarrowBand.h.

template<typename NodeType >
ConstIterator itk::NarrowBand< NodeType >::Begin ( ) const
inline

Definition at line 92 of file itkNarrowBand.h.

template<typename NodeType >
void itk::NarrowBand< NodeType >::Clear ( )
inline

Clear the narrow band container.

Definition at line 118 of file itkNarrowBand.h.

template<typename NodeType >
virtual::itk::LightObject::Pointer itk::NarrowBand< NodeType >::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 NodeType >
bool itk::NarrowBand< NodeType >::Empty ( ) const
inline

Definition at line 112 of file itkNarrowBand.h.

template<typename NodeType >
Iterator itk::NarrowBand< NodeType >::End ( )
inline

Definition at line 97 of file itkNarrowBand.h.

template<typename NodeType >
ConstIterator itk::NarrowBand< NodeType >::End ( ) const
inline

Definition at line 102 of file itkNarrowBand.h.

template<typename NodeType >
float itk::NarrowBand< NodeType >::GetInnerRadius ( ) const
inline

Definition at line 164 of file itkNarrowBand.h.

template<typename NodeType >
virtual const char* itk::NarrowBand< NodeType >::GetNameOfClass ( ) const
virtual

Run-time type information (and related methods).

Reimplemented from itk::LightObject.

template<typename NodeType >
float itk::NarrowBand< NodeType >::GetTotalRadius ( ) const
inline

Definition at line 158 of file itkNarrowBand.h.

template<typename NodeType >
static Pointer itk::NarrowBand< NodeType >::New ( )
static

Method for creation through the object factory.

template<typename NodeType >
NodeType& itk::NarrowBand< NodeType >::operator[] ( SizeType  n)
inline

Definition at line 143 of file itkNarrowBand.h.

template<typename NodeType >
const NodeType& itk::NarrowBand< NodeType >::operator[] ( SizeType  n) const
inline

Definition at line 148 of file itkNarrowBand.h.

template<typename NodeType >
void itk::NarrowBand< NodeType >::PopBack ( )
inline

Definition at line 133 of file itkNarrowBand.h.

template<typename NodeType >
void itk::NarrowBand< NodeType >::PushBack ( const NodeType &  n)
inline

Definition at line 128 of file itkNarrowBand.h.

template<typename NodeType >
void itk::NarrowBand< NodeType >::Reserve ( SizeType  n)
inline

Definition at line 123 of file itkNarrowBand.h.

template<typename NodeType >
void itk::NarrowBand< NodeType >::Resize ( SizeType  n)
inline

Definition at line 138 of file itkNarrowBand.h.

template<typename NodeType >
void itk::NarrowBand< NodeType >::SetInnerRadius ( const float &  val)
inline

Set/Get the narrow band inner radius. The inner radius is the safe are where the level set can be computed.

Definition at line 162 of file itkNarrowBand.h.

template<typename NodeType >
void itk::NarrowBand< NodeType >::SetTotalRadius ( const float &  val)
inline

Set/Get the narrow band total radius. The narrow band width will be twice this value (positive and negative distance to the zero level set). The user of the narrow band container should set up this value properly.

Definition at line 156 of file itkNarrowBand.h.

template<typename NodeType >
SizeType itk::NarrowBand< NodeType >::Size ( ) const
inline

Definition at line 107 of file itkNarrowBand.h.

template<typename NodeType >
std::vector< RegionType > itk::NarrowBand< NodeType >::SplitBand ( const SizeType )

Returns an array of RegionStructs which represent contiguous arrays of nodes within the narrow band.

Member Data Documentation

template<typename NodeType >
float itk::NarrowBand< NodeType >::m_InnerRadius { 0.0 }
protected

Definition at line 170 of file itkNarrowBand.h.

template<typename NodeType >
NodeContainerType itk::NarrowBand< NodeType >::m_NodeContainer
private

Definition at line 173 of file itkNarrowBand.h.

template<typename NodeType >
float itk::NarrowBand< NodeType >::m_TotalRadius { 0.0 }
protected

Definition at line 169 of file itkNarrowBand.h.


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