Ponca  03745f3c84c0c8d40cec269af63efe7d3cf77f30
Point Cloud Analysis library
Loading...
Searching...
No Matches
Ponca::KdTreeKNearestIterator< Index, DataPoint, MAX_KNN_SIZE > Class Template Reference

Input iterator to read the KdTreeKNearestQueryBase object. More...

#include <kdTreeKNearestIterator.h>

+ Collaboration diagram for Ponca::KdTreeKNearestIterator< Index, DataPoint, MAX_KNN_SIZE >:

Public Types

using iterator_category = std::input_iterator_tag
 
using difference_type = std::ptrdiff_t
 
using value_type = Index
 
using pointer = Index *
 
using reference = const Index &
 
using Scalar = typename DataPoint::Scalar
 
using Iterator = typename LimitedPriorityQueue< IndexSquaredDistance< Index, Scalar >, MAX_KNN_SIZE >::iterator
 

Public Member Functions

 KdTreeKNearestIterator (const Iterator &iterator)
 
bool operator!= (const KdTreeKNearestIterator &other) const
 Inequality operand.
 
bool operator== (const KdTreeKNearestIterator &other) const
 Equality operand.
 
KdTreeKNearestIteratoroperator++ ()
 Prefix increment.
 
KdTreeKNearestIterator operator++ (int)
 Postfix increment.
 
void operator+= (int i)
 Value increment.
 
reference operator* () const
 Dereference operator.
 

Protected Attributes

Iterator m_iterator
 

Detailed Description

template<typename Index, typename DataPoint, int MAX_KNN_SIZE>
class Ponca::KdTreeKNearestIterator< Index, DataPoint, MAX_KNN_SIZE >

Input iterator to read the KdTreeKNearestQueryBase object.

As this is an input iterator, we don't guarantee anything other than reading the values with it. If you need to operate on the values of this iterator with algorithms that relies on forward iterator functionalities, you should copy the index values in an STL-like container.

Note
This iterator object can be duplicated with no issues.
See also
KdTreeKNearestQueryBase
Template Parameters
MAX_KNN_SIZEMaximum size of the K-neighborhood

Definition at line 30 of file kdTreeKNearestIterator.h.

Member Typedef Documentation

◆ difference_type

template<typename Index , typename DataPoint , int MAX_KNN_SIZE>
using Ponca::KdTreeKNearestIterator< Index, DataPoint, MAX_KNN_SIZE >::difference_type = std::ptrdiff_t

Definition at line 34 of file kdTreeKNearestIterator.h.

◆ Iterator

template<typename Index , typename DataPoint , int MAX_KNN_SIZE>
using Ponca::KdTreeKNearestIterator< Index, DataPoint, MAX_KNN_SIZE >::Iterator = typename LimitedPriorityQueue<IndexSquaredDistance<Index, Scalar>, MAX_KNN_SIZE>::iterator

Definition at line 40 of file kdTreeKNearestIterator.h.

◆ iterator_category

template<typename Index , typename DataPoint , int MAX_KNN_SIZE>
using Ponca::KdTreeKNearestIterator< Index, DataPoint, MAX_KNN_SIZE >::iterator_category = std::input_iterator_tag

Definition at line 33 of file kdTreeKNearestIterator.h.

◆ pointer

template<typename Index , typename DataPoint , int MAX_KNN_SIZE>
using Ponca::KdTreeKNearestIterator< Index, DataPoint, MAX_KNN_SIZE >::pointer = Index*

Definition at line 36 of file kdTreeKNearestIterator.h.

◆ reference

template<typename Index , typename DataPoint , int MAX_KNN_SIZE>
using Ponca::KdTreeKNearestIterator< Index, DataPoint, MAX_KNN_SIZE >::reference = const Index&

Definition at line 37 of file kdTreeKNearestIterator.h.

◆ Scalar

template<typename Index , typename DataPoint , int MAX_KNN_SIZE>
using Ponca::KdTreeKNearestIterator< Index, DataPoint, MAX_KNN_SIZE >::Scalar = typename DataPoint::Scalar

Definition at line 39 of file kdTreeKNearestIterator.h.

◆ value_type

template<typename Index , typename DataPoint , int MAX_KNN_SIZE>
using Ponca::KdTreeKNearestIterator< Index, DataPoint, MAX_KNN_SIZE >::value_type = Index

Definition at line 35 of file kdTreeKNearestIterator.h.

Constructor & Destructor Documentation

◆ KdTreeKNearestIterator()

template<typename Index , typename DataPoint , int MAX_KNN_SIZE>
Ponca::KdTreeKNearestIterator< Index, DataPoint, MAX_KNN_SIZE >::KdTreeKNearestIterator ( const Iterator &  iterator)
inline

Definition at line 43 of file kdTreeKNearestIterator.h.

Member Function Documentation

◆ operator!=()

template<typename Index , typename DataPoint , int MAX_KNN_SIZE>
bool Ponca::KdTreeKNearestIterator< Index, DataPoint, MAX_KNN_SIZE >::operator!= ( const KdTreeKNearestIterator< Index, DataPoint, MAX_KNN_SIZE > &  other) const
inline

Inequality operand.

Definition at line 48 of file kdTreeKNearestIterator.h.

◆ operator*()

template<typename Index , typename DataPoint , int MAX_KNN_SIZE>
reference Ponca::KdTreeKNearestIterator< Index, DataPoint, MAX_KNN_SIZE >::operator* ( ) const
inline

Dereference operator.

Definition at line 78 of file kdTreeKNearestIterator.h.

◆ operator++() [1/2]

template<typename Index , typename DataPoint , int MAX_KNN_SIZE>
KdTreeKNearestIterator & Ponca::KdTreeKNearestIterator< Index, DataPoint, MAX_KNN_SIZE >::operator++ ( )
inline

Prefix increment.

Definition at line 60 of file kdTreeKNearestIterator.h.

◆ operator++() [2/2]

template<typename Index , typename DataPoint , int MAX_KNN_SIZE>
KdTreeKNearestIterator Ponca::KdTreeKNearestIterator< Index, DataPoint, MAX_KNN_SIZE >::operator++ ( int  )
inline

Postfix increment.

Definition at line 67 of file kdTreeKNearestIterator.h.

◆ operator+=()

template<typename Index , typename DataPoint , int MAX_KNN_SIZE>
void Ponca::KdTreeKNearestIterator< Index, DataPoint, MAX_KNN_SIZE >::operator+= ( int  i)
inline

Value increment.

Definition at line 75 of file kdTreeKNearestIterator.h.

◆ operator==()

template<typename Index , typename DataPoint , int MAX_KNN_SIZE>
bool Ponca::KdTreeKNearestIterator< Index, DataPoint, MAX_KNN_SIZE >::operator== ( const KdTreeKNearestIterator< Index, DataPoint, MAX_KNN_SIZE > &  other) const
inline

Equality operand.

Definition at line 54 of file kdTreeKNearestIterator.h.

Member Data Documentation

◆ m_iterator

template<typename Index , typename DataPoint , int MAX_KNN_SIZE>
Iterator Ponca::KdTreeKNearestIterator< Index, DataPoint, MAX_KNN_SIZE >::m_iterator
protected

Definition at line 81 of file kdTreeKNearestIterator.h.