Jet  v1.3.3
nearest_neighbor_query_engine3.h
Go to the documentation of this file.
1 // Copyright (c) 2018 Doyub Kim
2 //
3 // I am making my contributions/submissions to this project solely in my
4 // personal capacity and am not conveying any rights to any intellectual
5 // property of any third parties.
6 
7 #ifndef INCLUDE_JET_NEAREST_NEIGHBOR_QUERY_ENGINE3_H_
8 #define INCLUDE_JET_NEAREST_NEIGHBOR_QUERY_ENGINE3_H_
9 
10 #include <jet/constants.h>
11 #include <jet/vector3.h>
12 
13 #include <functional>
14 
15 namespace jet {
16 
18 template <typename T>
20  const T* item = nullptr;
21  double distance = kMaxD;
22 };
23 
25 template <typename T>
27  std::function<double(const T&, const Vector3D&)>;
28 
30 template <typename T>
32  public:
36  const Vector3D& pt,
37  const NearestNeighborDistanceFunc3<T>& distanceFunc) const = 0;
38 };
39 
40 } // namespace jet
41 
42 #endif // INCLUDE_JET_NEAREST_NEIGHBOR_QUERY_ENGINE3_H_
jet::NearestNeighborQueryEngine3::nearest
virtual NearestNeighborQueryResult3< T > nearest(const Vector3D &pt, const NearestNeighborDistanceFunc3< T > &distanceFunc) const =0
jet::NearestNeighborQueryResult3::distance
double distance
Definition: nearest_neighbor_query_engine3.h:21
jet::NearestNeighborQueryResult3
Nearest neighbor query result.
Definition: nearest_neighbor_query_engine3.h:19
jet::NearestNeighborQueryResult3::item
const T * item
Definition: nearest_neighbor_query_engine3.h:20
jet
Definition: advection_solver2.h:18
jet::kMaxD
constexpr double kMaxD
Max double.
Definition: constants.h:88
vector3.h
constants.h
jet::Vector< T, 3 >
3-D vector class.
Definition: vector3.h:25
jet::NearestNeighborDistanceFunc3
std::function< double(const T &, const Vector3D &)> NearestNeighborDistanceFunc3
Nearest neighbor distance measure function.
Definition: nearest_neighbor_query_engine3.h:27
jet::NearestNeighborQueryEngine3
Abstract base class for 3-D nearest neigbor query engine.
Definition: nearest_neighbor_query_engine3.h:31