KiCad PCB EDA Suite
Loading...
Searching...
No Matches
rtree_node.h File Reference
#include <atomic>
#include <bitset>
#include <cassert>
#include <cstdint>
#include <cstring>
#include <limits>
#include <memory>
#include <vector>

Go to the source code of this file.

Classes

struct  KIRTREE::RTREE_NODE< DATATYPE, ELEMTYPE, NUMDIMS, MAXNODES >
 R-tree node with Structure-of-Arrays bounding box layout. More...
 
class  KIRTREE::SLAB_ALLOCATOR< NODE >
 Pool allocator for R-tree nodes. More...
 
struct  KIRTREE::SLAB_ALLOCATOR< NODE >::PAGE
 

Namespaces

namespace  KIRTREE
 

Functions

uint64_t KIRTREE::HilbertXY2D (int aOrder, uint32_t aX, uint32_t aY)
 Compute a 64-bit Hilbert curve index from 2D unsigned coordinates.
 
template<int NUMDIMS>
uint64_t KIRTREE::HilbertND2D (int aOrder, const uint32_t aCoords[NUMDIMS])
 Compute Hilbert index for N-dimensional coordinates.
 
template<class ELEMTYPE, int FANOUT>
uint32_t KIRTREE::OverlapMask2D (const ELEMTYPE *aBoundsMin0, const ELEMTYPE *aBoundsMax0, const ELEMTYPE *aBoundsMin1, const ELEMTYPE *aBoundsMax1, int aCount, const ELEMTYPE aMin[2], const ELEMTYPE aMax[2])
 Compute a bitmask of which child slots overlap a 2D query rectangle.