struct
#include <eckit/geo/Search.h>
SearchLonLat
Base classes
-
template<class Traits>class eckit::KDTreeMemory<Traits>
Public types
-
using Point = geo::
PointLonLat -
using Value = SPValue<TT<search::
Traits<Point, Payload>, KDMemory>> - using KDTree = KDTreeX<TT<Traits, KDMemory>>
- using Payload = KDTree::Payload
- using Node = KDNode<TT<Traits, KDMemory>>
- using SPTreeType = SPTree<TT<Traits, KDMemory>, Node>
- using Alloc = Traits::Alloc
- using Ptr = Alloc::Ptr
- using ID = Alloc::Ptr
- using Metadata = SPMetadata<Traits>
- using PointType = Point
- using PayloadType = Payload
- using NodeList = Node::NodeList
- using NodeInfo = SPNodeInfo<Traits, NodeType>
- using iterator = SPIterator<Traits, NodeType>
-
using value_type = std::
pair<Point, Payload>
Public functions
-
void insert(const SearchLonLat::
Value& value) -
template<typename Container>void build(const Container& c)
- auto nearestNeighbour(const Point& p) -> size_t
-
auto findInSphere(const Point& p,
double radius) -> std::
vector<size_t> -
auto kNearestNeighbours(const Point& p,
size_t k) -> std::
vector<size_t> - void build(ITER begin, ITER end)
- void build(Container& c)
- void insert(const Value& value)
- void setMetadata(const Point& offset, const Point& scale)
- auto nodeByID(ID id) -> NodeInfo
- void getMetadata(Point& offset, Point& scale)
- auto nearestNeighbourBruteForce(const Point& p) -> NodeInfo
- auto findInSphereBruteForce(const Point& p, double radius) -> NodeList
- auto kNearestNeighboursBruteForce(const Point& p, size_t k) -> NodeList
-
template<class Visitor>void visit(Visitor& v)
- void statsReset()
-
void statsPrint(std::
ostream& o, bool fancy) const -
void print(std::
ostream& o) const - auto begin() -> iterator
- auto end() -> iterator
- auto empty() const -> bool
- auto size() const -> size_t
Public variables
Typedef documentation
typedef KDTreeX<TT<Traits, KDMemory>> eckit:: geo:: SearchLonLat:: KDTree
#include <eckit/container/KDTree.h>
typedef KDTree::Payload eckit:: geo:: SearchLonLat:: Payload
#include <eckit/container/KDTree.h>
typedef KDNode<TT<Traits, KDMemory>> eckit:: geo:: SearchLonLat:: Node
#include <eckit/container/KDTree.h>
typedef SPTree<TT<Traits, KDMemory>, Node> eckit:: geo:: SearchLonLat:: SPTreeType
#include <eckit/container/KDTree.h>
typedef Traits::Alloc eckit:: geo:: SearchLonLat:: Alloc
#include <eckit/container/KDTree.h>
typedef Alloc::Ptr eckit:: geo:: SearchLonLat:: Ptr
#include <eckit/container/sptree/SPTree.h>
typedef Alloc::Ptr eckit:: geo:: SearchLonLat:: ID
#include <eckit/container/sptree/SPTree.h>
typedef SPMetadata<Traits> eckit:: geo:: SearchLonLat:: Metadata
#include <eckit/container/sptree/SPTree.h>
typedef Point eckit:: geo:: SearchLonLat:: PointType
#include <eckit/container/sptree/SPTree.h>
typedef Payload eckit:: geo:: SearchLonLat:: PayloadType
#include <eckit/container/sptree/SPTree.h>
typedef Node::NodeList eckit:: geo:: SearchLonLat:: NodeList
#include <eckit/container/sptree/SPTree.h>
typedef SPNodeInfo<Traits, NodeType> eckit:: geo:: SearchLonLat:: NodeInfo
#include <eckit/container/sptree/SPTree.h>
typedef SPIterator<Traits, NodeType> eckit:: geo:: SearchLonLat:: iterator
#include <eckit/container/sptree/SPTree.h>
typedef std:: pair<Point, Payload> eckit:: geo:: SearchLonLat:: value_type
#include <eckit/container/sptree/SPTree.h>
Function documentation
void eckit:: geo:: SearchLonLat:: build(ITER begin,
ITER end)
#include <eckit/container/KDTree.h>
ITER must be a random access iterator WARNING: container is changed (sorted)
void eckit:: geo:: SearchLonLat:: build(Container& c)
#include <eckit/container/KDTree.h>
Container must be a random access WARNING: container is changed (sorted)
void eckit:: geo:: SearchLonLat:: insert(const Value& value)
#include <eckit/container/KDTree.h>
void eckit:: geo:: SearchLonLat:: setMetadata(const Point& offset,
const Point& scale)
#include <eckit/container/sptree/SPTree.h>
NodeInfo eckit:: geo:: SearchLonLat:: nodeByID(ID id)
#include <eckit/container/sptree/SPTree.h>
void eckit:: geo:: SearchLonLat:: getMetadata(Point& offset,
Point& scale)
#include <eckit/container/sptree/SPTree.h>
NodeInfo eckit:: geo:: SearchLonLat:: nearestNeighbourBruteForce(const Point& p)
#include <eckit/container/sptree/SPTree.h>
NodeList eckit:: geo:: SearchLonLat:: findInSphereBruteForce(const Point& p,
double radius)
#include <eckit/container/sptree/SPTree.h>
NodeList eckit:: geo:: SearchLonLat:: kNearestNeighboursBruteForce(const Point& p,
size_t k)
#include <eckit/container/sptree/SPTree.h>
#include <eckit/container/sptree/SPTree.h>
template<class Visitor>
void eckit:: geo:: SearchLonLat:: visit(Visitor& v)
void eckit:: geo:: SearchLonLat:: statsReset()
#include <eckit/container/sptree/SPTree.h>
void eckit:: geo:: SearchLonLat:: statsPrint(std:: ostream& o,
bool fancy) const
#include <eckit/container/sptree/SPTree.h>
void eckit:: geo:: SearchLonLat:: print(std:: ostream& o) const
#include <eckit/container/sptree/SPTree.h>
iterator eckit:: geo:: SearchLonLat:: begin()
#include <eckit/container/sptree/SPTree.h>
iterator eckit:: geo:: SearchLonLat:: end()
#include <eckit/container/sptree/SPTree.h>
bool eckit:: geo:: SearchLonLat:: empty() const
#include <eckit/container/sptree/SPTree.h>
size_t eckit:: geo:: SearchLonLat:: size() const
#include <eckit/container/sptree/SPTree.h>
Variable documentation
Ptr eckit:: geo:: SearchLonLat:: root_
#include <eckit/container/sptree/SPTree.h>
Metadata eckit:: geo:: SearchLonLat:: meta_
#include <eckit/container/sptree/SPTree.h>