#include <eckit/container/BSPTree.h>
template<class Traits, class Partition>
BSPTreeX class
Base classes
-
template<class Traits, class NodeType>class SPTree<Traits, BSPNode<Traits, Partition>>
Public types
- using Alloc = Traits::Alloc
- using Point = Traits::Point
- using Payload = Traits::Payload
- using Ptr = Alloc::Ptr
- using ID = Alloc::Ptr
- using Node = BSPNode<Traits, Partition>
- using Metadata = SPMetadata<Traits>
- using PointType = Point
- using PayloadType = Payload
-
using NodeList = Node::
NodeList - using NodeInfo = SPNodeInfo<Traits, BSPNode<Traits, Partition>>
- using Value = Node::Value
- using iterator = SPIterator<Traits, BSPNode<Traits, Partition>>
-
using value_type = std::
pair <Point, Payload>
Constructors, destructors, conversion operators
- BSPTreeX(Alloc& alloc)
Public functions
-
template<typename Container>void build(Container& nodes)
- void setMetadata(const Point& offset, const Point& scale)
- auto nodeByID(ID id) -> NodeInfo
- void getMetadata(Point& offset, Point& scale)
- auto nearestNeighbour(const Point& p) -> NodeInfo
- auto findInSphere(const Point& p, double radius) -> NodeList
- auto kNearestNeighbours(const Point& p, size_t k) -> NodeList
- auto nearestNeighbourBruteForce(const Point& p) -> NodeInfo
- auto findInSphereBruteForce(const Point& p, double radius) -> NodeList
- auto kNearestNeighboursBruteForce(const Point& p, size_t k) -> NodeList
- 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
#include <eckit/container/sptree/SPTree.h>
template<class Traits, class Partition _2>
typedef Traits::Point eckit::BSPTreeX<Traits, _2>::Point
#include <eckit/container/sptree/SPTree.h>
template<class Traits, class Partition _2>
typedef Traits::Payload eckit::BSPTreeX<Traits, _2>::Payload
#include <eckit/container/sptree/SPTree.h>
template<class Traits, class Partition _2>
typedef Alloc::Ptr eckit::BSPTreeX<Traits, _2>::Ptr
#include <eckit/container/sptree/SPTree.h>
template<class Traits, class Partition _2>
typedef Alloc::Ptr eckit::BSPTreeX<Traits, _2>::ID
#include <eckit/container/sptree/SPTree.h>
template<class Traits, class Partition _2>
typedef BSPNode<Traits, Partition> eckit::BSPTreeX<Traits, _2>::Node
#include <eckit/container/sptree/SPTree.h>
template<class Traits, class Partition _2>
typedef SPMetadata<Traits> eckit::BSPTreeX<Traits, _2>::Metadata
#include <eckit/container/sptree/SPTree.h>
template<class Traits, class Partition _2>
typedef Point eckit::BSPTreeX<Traits, _2>::PointType
#include <eckit/container/sptree/SPTree.h>
template<class Traits, class Partition _2>
typedef Payload eckit::BSPTreeX<Traits, _2>::PayloadType
#include <eckit/container/sptree/SPTree.h>
template<class Traits, class Partition _2>
typedef Node::NodeList eckit::BSPTreeX<Traits, _2>::NodeList
#include <eckit/container/sptree/SPTree.h>
template<class Traits, class Partition _2>
typedef SPNodeInfo<Traits, BSPNode<Traits, Partition>> eckit::BSPTreeX<Traits, _2>::NodeInfo
#include <eckit/container/sptree/SPTree.h>
template<class Traits, class Partition _2>
typedef Node::Value eckit::BSPTreeX<Traits, _2>::Value
#include <eckit/container/sptree/SPTree.h>
template<class Traits, class Partition _2>
typedef SPIterator<Traits, BSPNode<Traits, Partition>> eckit::BSPTreeX<Traits, _2>::iterator
#include <eckit/container/sptree/SPTree.h>
template<class Traits, class Partition _2>
typedef std::pair <Point, Payload> eckit::BSPTreeX<Traits, _2>::value_type
Function documentation
#include <eckit/container/sptree/SPTree.h>
template<class Traits, class Partition _2>
void eckit::BSPTreeX<Traits, _2>:: setMetadata(const Point& offset,
const Point& scale)
#include <eckit/container/sptree/SPTree.h>
template<class Traits, class Partition _2>
NodeInfo eckit::BSPTreeX<Traits, _2>:: nodeByID(ID id)
#include <eckit/container/sptree/SPTree.h>
template<class Traits, class Partition _2>
void eckit::BSPTreeX<Traits, _2>:: getMetadata(Point& offset,
Point& scale)
#include <eckit/container/sptree/SPTree.h>
template<class Traits, class Partition _2>
NodeInfo eckit::BSPTreeX<Traits, _2>:: nearestNeighbour(const Point& p)
#include <eckit/container/sptree/SPTree.h>
template<class Traits, class Partition _2>
NodeList eckit::BSPTreeX<Traits, _2>:: findInSphere(const Point& p,
double radius)
#include <eckit/container/sptree/SPTree.h>
template<class Traits, class Partition _2>
NodeList eckit::BSPTreeX<Traits, _2>:: kNearestNeighbours(const Point& p,
size_t k)
#include <eckit/container/sptree/SPTree.h>
template<class Traits, class Partition _2>
NodeInfo eckit::BSPTreeX<Traits, _2>:: nearestNeighbourBruteForce(const Point& p)
#include <eckit/container/sptree/SPTree.h>
template<class Traits, class Partition _2>
NodeList eckit::BSPTreeX<Traits, _2>:: findInSphereBruteForce(const Point& p,
double radius)
#include <eckit/container/sptree/SPTree.h>
template<class Traits, class Partition _2>
NodeList eckit::BSPTreeX<Traits, _2>:: kNearestNeighboursBruteForce(const Point& p,
size_t k)
#include <eckit/container/sptree/SPTree.h>
template<class Traits, class Partition _2>
void eckit::BSPTreeX<Traits, _2>:: visit(Visitor& v)
#include <eckit/container/sptree/SPTree.h>
template<class Traits, class Partition _2>
void eckit::BSPTreeX<Traits, _2>:: statsReset()
#include <eckit/container/sptree/SPTree.h>
template<class Traits, class Partition _2>
void eckit::BSPTreeX<Traits, _2>:: statsPrint(std::ostream & o,
bool fancy) const
#include <eckit/container/sptree/SPTree.h>
template<class Traits, class Partition _2>
void eckit::BSPTreeX<Traits, _2>:: print(std::ostream & o) const
#include <eckit/container/sptree/SPTree.h>
template<class Traits, class Partition _2>
iterator eckit::BSPTreeX<Traits, _2>:: begin()
#include <eckit/container/sptree/SPTree.h>
template<class Traits, class Partition _2>
iterator eckit::BSPTreeX<Traits, _2>:: end()
#include <eckit/container/sptree/SPTree.h>
template<class Traits, class Partition _2>
bool eckit::BSPTreeX<Traits, _2>:: empty() const
#include <eckit/container/sptree/SPTree.h>
template<class Traits, class Partition _2>
size_t eckit::BSPTreeX<Traits, _2>:: size() const
Variable documentation
#include <eckit/container/sptree/SPTree.h>
template<class Traits, class Partition _2>
Alloc& eckit::BSPTreeX<Traits, _2>::alloc_
#include <eckit/container/sptree/SPTree.h>
template<class Traits, class Partition _2>
Ptr eckit::BSPTreeX<Traits, _2>::root_
#include <eckit/container/sptree/SPTree.h>
template<class Traits, class Partition _2>
Metadata eckit::BSPTreeX<Traits, _2>::meta_