Ponca
624fc013d41bc7b7ad27159d1c16f7ce57f5a2e4
Point Cloud Analysis library
Loading...
Searching...
No Matches
kdTreeRangeIterator.h
1
/*
2
This Source Code Form is subject to the terms of the Mozilla Public
3
License, v. 2.0. If a copy of the MPL was not distributed with this
4
file, You can obtain one at http://mozilla.org/MPL/2.0/.
5
*/
6
7
#pragma once
8
9
namespace
Ponca
{
10
11
template
<
typename
Index,
typename
DataPo
int
,
typename
QueryT_>
12
class
KdTreeRangeIterator
13
{
14
protected
:
15
friend
QueryT_;
16
17
public
:
18
using
Scalar =
typename
DataPoint::Scalar;
19
using
QueryType = QueryT_;
20
21
inline
KdTreeRangeIterator
() =
default
;
22
inline
KdTreeRangeIterator
(QueryType* query, Index index = -1) :
23
m_query(query), m_index(index), m_start(0), m_end(0) {}
24
25
inline
bool
operator !=(
const
KdTreeRangeIterator
& other)
const
26
{
return
m_index != other.m_index;}
27
inline
void
operator ++(
int
) {m_query->advance(*
this
);}
28
inline
KdTreeRangeIterator
& operator++() {m_query->advance(*
this
);
return
*
this
;}
29
inline
Index operator *()
const
{
return
m_index;}
30
31
protected
:
32
QueryType* m_query {
nullptr
};
33
Index m_index {-1};
34
Index m_start {0};
35
Index m_end {0};
36
};
37
}
// namespace ponca
Ponca::KdTreeRangeIterator
Definition
kdTreeRangeIterator.h:13
Ponca
This Source Code Form is subject to the terms of the Mozilla Public License, v.
Definition
limitedPriorityQueue.h:14
src
Ponca
src
SpatialPartitioning
KdTree
Iterator
kdTreeRangeIterator.h
Generated on Thu Jun 12 2025 14:13:45 for Ponca by
1.9.8