ITK 6.0.0
Insight Toolkit
 
Loading...
Searching...
No Matches
itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier > Class Template Reference

#include <itkPriorityQueueContainer.h>

Detailed Description

template<typename TElementWrapper, typename TElementWrapperInterface, typename TElementPriority = double, typename TElementIdentifier = IdentifierType>
class itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >

Definition at line 193 of file itkPriorityQueueContainer.h.

+ Inheritance diagram for itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >:
+ Collaboration diagram for itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >:

Public Types

using ConstPointer = SmartPointer<const Self>
 
using ElementIdentifierType = TElementIdentifier
 
using ElementInterfaceType = TElementWrapperInterface
 
using ElementWrapperType = TElementWrapper
 
using Pointer = SmartPointer<Self>
 
using Self = PriorityQueueContainer
 
using Superclass = VectorContainer<TElementIdentifier, TElementWrapper>
 
- Public Types inherited from itk::detail::VectorContainer< std::conditional_t< std::is_void_v< T2 >, SizeValueType, T1 >, std::conditional_t< std::is_void_v< T2 >, T1, T2 > >
using ConstPointer
 
using Element
 
using ElementIdentifier
 
using Pointer
 
using Self
 
using STLContainerType
 
using Superclass
 
- Public Types inherited from itk::Object
using ConstPointer = SmartPointer<const Self>
 
using Pointer = SmartPointer<Self>
 
using Self = Object
 
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 Clear ()
 
virtual::itk::LightObject::Pointer CreateAnother () const
 
bool DeleteElement (const ElementWrapperType &element)
 
bool Empty () const
 
const char * GetNameOfClass () const override
 
const ElementWrapperTypePeek () const
 
void Pop ()
 
 PriorityQueueContainer ()=default
 
template<typename TInputIterator>
 PriorityQueueContainer (TInputIterator first, TInputIterator last)
 
void Push (ElementWrapperType element)
 
bool Update (const ElementWrapperType &element)
 
 ~PriorityQueueContainer () override=default
 
- Public Member Functions inherited from itk::detail::VectorContainer< std::conditional_t< std::is_void_v< T2 >, SizeValueType, T1 >, std::conditional_t< std::is_void_v< T2 >, T1, T2 > >
Iterator Begin ()
 
Iterator Begin ()
 
ConstIterator Begin () const
 
ConstIterator Begin () const
 
const STLContainerTypeCastToSTLConstContainer () const noexcept
 
const STLContainerTypeCastToSTLConstContainer () const noexcept
 
STLContainerTypeCastToSTLContainer () noexcept
 
STLContainerTypeCastToSTLContainer () noexcept
 
virtual::itk::LightObject::Pointer CreateAnother () const
 
virtual::itk::LightObject::Pointer CreateAnother () const
 
reference CreateElementAt (ElementIdentifier)
 
reference CreateElementAt (ElementIdentifier)
 
void CreateIndex (ElementIdentifier)
 
void CreateIndex (ElementIdentifier)
 
void DeleteIndex (ElementIdentifier)
 
void DeleteIndex (ElementIdentifier)
 
reference ElementAt (ElementIdentifier)
 
reference ElementAt (ElementIdentifier)
 
const_reference ElementAt (ElementIdentifier) const
 
const_reference ElementAt (ElementIdentifier) const
 
Iterator End ()
 
Iterator End ()
 
ConstIterator End () const
 
ConstIterator End () const
 
Element GetElement (ElementIdentifier) const
 
Element GetElement (ElementIdentifier) const
 
bool GetElementIfIndexExists (ElementIdentifier, Element *) const
 
bool GetElementIfIndexExists (ElementIdentifier, Element *) const
 
const char * GetNameOfClass () const override
 
const char * GetNameOfClass () const override
 
bool IndexExists (ElementIdentifier) const
 
bool IndexExists (ElementIdentifier) const
 
void Initialize ()
 
void Initialize ()
 
void InsertElement (ElementIdentifier, Element)
 
void InsertElement (ElementIdentifier, Element)
 
void Reserve (ElementIdentifier)
 
void Reserve (ElementIdentifier)
 
void SetElement (ElementIdentifier, Element)
 
void SetElement (ElementIdentifier, Element)
 
ElementIdentifier Size () const
 
ElementIdentifier Size () const
 
void Squeeze ()
 
void Squeeze ()
 
- Public Member Functions inherited from itk::Object
unsigned long AddObserver (const EventObject &event, Command *cmd) const
 
unsigned long AddObserver (const EventObject &event, std::function< void(const EventObject &)> function) const
 
virtual void DebugOff () const
 
virtual void DebugOn () const
 
CommandGetCommand (unsigned long tag)
 
bool GetDebug () const
 
MetaDataDictionaryGetMetaDataDictionary ()
 
const MetaDataDictionaryGetMetaDataDictionary () const
 
virtual ModifiedTimeType GetMTime () const
 
virtual const TimeStampGetTimeStamp () const
 
bool HasObserver (const EventObject &event) const
 
void InvokeEvent (const EventObject &)
 
void InvokeEvent (const EventObject &) const
 
virtual void Modified () const
 
void Register () const override
 
void RemoveAllObservers ()
 
void RemoveObserver (unsigned long tag) const
 
void SetDebug (bool debugFlag) const
 
void SetReferenceCount (int) override
 
void UnRegister () const noexcept override
 
void SetMetaDataDictionary (const MetaDataDictionary &rhs)
 
void SetMetaDataDictionary (MetaDataDictionary &&rrhs)
 
virtual void SetObjectName (std::string _arg)
 
virtual const std::string & GetObjectName () const
 
- Public Member Functions inherited from itk::LightObject
Pointer Clone () const
 
virtual void Delete ()
 
virtual int GetReferenceCount () const
 
void Print (std::ostream &os, Indent indent=0) const
 

Static Public Member Functions

static Pointer New ()
 
- Static Public Member Functions inherited from itk::detail::VectorContainer< std::conditional_t< std::is_void_v< T2 >, SizeValueType, T1 >, std::conditional_t< std::is_void_v< T2 >, T1, T2 > >
static Pointer New ()
 
static Pointer New ()
 
- Static Public Member Functions inherited from itk::Object
static bool GetGlobalWarningDisplay ()
 
static void GlobalWarningDisplayOff ()
 
static void GlobalWarningDisplayOn ()
 
static Pointer New ()
 
static void SetGlobalWarningDisplay (bool val)
 
- Static Public Member Functions inherited from itk::LightObject
static void BreakOnError ()
 
static Pointer New ()
 

Static Public Attributes

static const ElementIdentifierType m_ElementNotFound
 

Protected Member Functions

ElementWrapperTypeGetElementAtLocation (const ElementIdentifierType &identifier)
 
const ElementWrapperTypeGetElementAtLocation (const ElementIdentifierType &identifier) const
 
ElementIdentifierType GetLeft (const ElementIdentifierType &identifier) const
 
ElementIdentifierType GetParent (const ElementIdentifierType &identifier) const
 
ElementIdentifierType GetRight (const ElementIdentifierType &identifier) const
 
bool HasParent (const ElementIdentifierType &iId) const
 
void SetElementAtLocation (const ElementIdentifierType &identifier, ElementWrapperType &element)
 
void UpdateDownTree (const ElementIdentifierType &identifier)
 
void UpdateUpTree (const ElementIdentifierType &identifier)
 
- Protected Member Functions inherited from itk::detail::VectorContainer< std::conditional_t< std::is_void_v< T2 >, SizeValueType, T1 >, std::conditional_t< std::is_void_v< T2 >, T1, T2 > >
 VectorContainer ()=default
 
 VectorContainer (size_type n)
 
 VectorContainer (size_type n, const Element &x)
 
 VectorContainer (const Self &r)
 
 VectorContainer (TInputIterator first, TInputIterator last)
 
 VectorContainer ()=default
 
 VectorContainer (size_type n)
 
 VectorContainer (size_type n, const Element &x)
 
 VectorContainer (const Self &r)
 
 VectorContainer (TInputIterator first, TInputIterator last)
 
- Protected Member Functions inherited from itk::Object
 Object ()
 
bool PrintObservers (std::ostream &os, Indent indent) const
 
void PrintSelf (std::ostream &os, Indent indent) const override
 
virtual void SetTimeStamp (const TimeStamp &timeStamp)
 
 ~Object () 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

ElementInterfaceType m_Interface {}
 
- Protected Attributes inherited from itk::LightObject
std::atomic< int > m_ReferenceCount {}
 

Member Typedef Documentation

◆ ConstPointer

template<typename TElementWrapper, typename TElementWrapperInterface, typename TElementPriority = double, typename TElementIdentifier = IdentifierType>
using itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >::ConstPointer = SmartPointer<const Self>

Definition at line 199 of file itkPriorityQueueContainer.h.

◆ ElementIdentifierType

template<typename TElementWrapper, typename TElementWrapperInterface, typename TElementPriority = double, typename TElementIdentifier = IdentifierType>
using itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >::ElementIdentifierType = TElementIdentifier

Definition at line 201 of file itkPriorityQueueContainer.h.

◆ ElementInterfaceType

template<typename TElementWrapper, typename TElementWrapperInterface, typename TElementPriority = double, typename TElementIdentifier = IdentifierType>
using itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >::ElementInterfaceType = TElementWrapperInterface

Definition at line 203 of file itkPriorityQueueContainer.h.

◆ ElementWrapperType

template<typename TElementWrapper, typename TElementWrapperInterface, typename TElementPriority = double, typename TElementIdentifier = IdentifierType>
using itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >::ElementWrapperType = TElementWrapper

Definition at line 202 of file itkPriorityQueueContainer.h.

◆ Pointer

template<typename TElementWrapper, typename TElementWrapperInterface, typename TElementPriority = double, typename TElementIdentifier = IdentifierType>
using itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >::Pointer = SmartPointer<Self>

Definition at line 198 of file itkPriorityQueueContainer.h.

◆ Self

template<typename TElementWrapper, typename TElementWrapperInterface, typename TElementPriority = double, typename TElementIdentifier = IdentifierType>
using itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >::Self = PriorityQueueContainer

Definition at line 196 of file itkPriorityQueueContainer.h.

◆ Superclass

template<typename TElementWrapper, typename TElementWrapperInterface, typename TElementPriority = double, typename TElementIdentifier = IdentifierType>
using itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >::Superclass = VectorContainer<TElementIdentifier, TElementWrapper>

Definition at line 197 of file itkPriorityQueueContainer.h.

Constructor & Destructor Documentation

◆ PriorityQueueContainer() [1/2]

template<typename TElementWrapper, typename TElementWrapperInterface, typename TElementPriority = double, typename TElementIdentifier = IdentifierType>
itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >::PriorityQueueContainer ( )
default

◆ ~PriorityQueueContainer()

template<typename TElementWrapper, typename TElementWrapperInterface, typename TElementPriority = double, typename TElementIdentifier = IdentifierType>
itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >::~PriorityQueueContainer ( )
overridedefault

◆ PriorityQueueContainer() [2/2]

template<typename TElementWrapper, typename TElementWrapperInterface, typename TElementPriority = double, typename TElementIdentifier = IdentifierType>
template<typename TInputIterator>
itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >::PriorityQueueContainer ( TInputIterator first,
TInputIterator last )
inline

Definition at line 212 of file itkPriorityQueueContainer.h.

Member Function Documentation

◆ Clear()

template<typename TElementWrapper, typename TElementWrapperInterface, typename TElementPriority = double, typename TElementIdentifier = IdentifierType>
void itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >::Clear ( )

◆ CreateAnother()

template<typename TElementWrapper, typename TElementWrapperInterface, typename TElementPriority = double, typename TElementIdentifier = IdentifierType>
virtual::itk::LightObject::Pointer itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >::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::Object.

◆ DeleteElement()

template<typename TElementWrapper, typename TElementWrapperInterface, typename TElementPriority = double, typename TElementIdentifier = IdentifierType>
bool itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >::DeleteElement ( const ElementWrapperType & element)

Delete element in the container.

Returns
true if the element is in the priority queue
false else

◆ Empty()

template<typename TElementWrapper, typename TElementWrapperInterface, typename TElementPriority = double, typename TElementIdentifier = IdentifierType>
bool itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >::Empty ( ) const

◆ GetElementAtLocation() [1/2]

template<typename TElementWrapper, typename TElementWrapperInterface, typename TElementPriority = double, typename TElementIdentifier = IdentifierType>
ElementWrapperType & itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >::GetElementAtLocation ( const ElementIdentifierType & identifier)
inlineprotected

Definition at line 260 of file itkPriorityQueueContainer.h.

◆ GetElementAtLocation() [2/2]

template<typename TElementWrapper, typename TElementWrapperInterface, typename TElementPriority = double, typename TElementIdentifier = IdentifierType>
const ElementWrapperType & itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >::GetElementAtLocation ( const ElementIdentifierType & identifier) const
inlineprotected

Definition at line 266 of file itkPriorityQueueContainer.h.

◆ GetLeft()

template<typename TElementWrapper, typename TElementWrapperInterface, typename TElementPriority = double, typename TElementIdentifier = IdentifierType>
ElementIdentifierType itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >::GetLeft ( const ElementIdentifierType & identifier) const
inlineprotected

Definition at line 285 of file itkPriorityQueueContainer.h.

◆ GetNameOfClass()

template<typename TElementWrapper, typename TElementWrapperInterface, typename TElementPriority = double, typename TElementIdentifier = IdentifierType>
const char * itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >::GetNameOfClass ( ) const
overridevirtual
See also
LightObject::GetNameOfClass()

Reimplemented from itk::Object.

◆ GetParent()

template<typename TElementWrapper, typename TElementWrapperInterface, typename TElementPriority = double, typename TElementIdentifier = IdentifierType>
ElementIdentifierType itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >::GetParent ( const ElementIdentifierType & identifier) const
inlineprotected

Definition at line 279 of file itkPriorityQueueContainer.h.

◆ GetRight()

template<typename TElementWrapper, typename TElementWrapperInterface, typename TElementPriority = double, typename TElementIdentifier = IdentifierType>
ElementIdentifierType itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >::GetRight ( const ElementIdentifierType & identifier) const
inlineprotected

Definition at line 291 of file itkPriorityQueueContainer.h.

◆ HasParent()

template<typename TElementWrapper, typename TElementWrapperInterface, typename TElementPriority = double, typename TElementIdentifier = IdentifierType>
bool itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >::HasParent ( const ElementIdentifierType & iId) const
inlineprotected

Definition at line 297 of file itkPriorityQueueContainer.h.

◆ New()

template<typename TElementWrapper, typename TElementWrapperInterface, typename TElementPriority = double, typename TElementIdentifier = IdentifierType>
static Pointer itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >::New ( )
static

◆ Peek()

template<typename TElementWrapper, typename TElementWrapperInterface, typename TElementPriority = double, typename TElementIdentifier = IdentifierType>
const ElementWrapperType & itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >::Peek ( ) const

◆ Pop()

template<typename TElementWrapper, typename TElementWrapperInterface, typename TElementPriority = double, typename TElementIdentifier = IdentifierType>
void itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >::Pop ( )

◆ Push()

template<typename TElementWrapper, typename TElementWrapperInterface, typename TElementPriority = double, typename TElementIdentifier = IdentifierType>
void itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >::Push ( ElementWrapperType element)

◆ SetElementAtLocation()

template<typename TElementWrapper, typename TElementWrapperInterface, typename TElementPriority = double, typename TElementIdentifier = IdentifierType>
void itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >::SetElementAtLocation ( const ElementIdentifierType & identifier,
ElementWrapperType & element )
inlineprotected

Definition at line 272 of file itkPriorityQueueContainer.h.

◆ Update()

template<typename TElementWrapper, typename TElementWrapperInterface, typename TElementPriority = double, typename TElementIdentifier = IdentifierType>
bool itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >::Update ( const ElementWrapperType & element)

Update element in container.

Returns
true if the element is in the priority queue
false else

◆ UpdateDownTree()

template<typename TElementWrapper, typename TElementWrapperInterface, typename TElementPriority = double, typename TElementIdentifier = IdentifierType>
void itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >::UpdateDownTree ( const ElementIdentifierType & identifier)
protected

◆ UpdateUpTree()

template<typename TElementWrapper, typename TElementWrapperInterface, typename TElementPriority = double, typename TElementIdentifier = IdentifierType>
void itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >::UpdateUpTree ( const ElementIdentifierType & identifier)
protected

Member Data Documentation

◆ m_ElementNotFound

template<typename TElementWrapper, typename TElementWrapperInterface, typename TElementPriority = double, typename TElementIdentifier = IdentifierType>
const ElementIdentifierType itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >::m_ElementNotFound
static

Definition at line 205 of file itkPriorityQueueContainer.h.

◆ m_Interface

template<typename TElementWrapper, typename TElementWrapperInterface, typename TElementPriority = double, typename TElementIdentifier = IdentifierType>
ElementInterfaceType itk::PriorityQueueContainer< TElementWrapper, TElementWrapperInterface, TElementPriority, TElementIdentifier >::m_Interface {}
protected

Definition at line 257 of file itkPriorityQueueContainer.h.


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