23 template< 
typename ITEM_INDEX, 
int MAX_ORDER > 
class RTreeT;
 
   41 template< 
typename ITEM_INDEX, 
int MAX_ORDER, 
typename FT >
 
   45 template< 
typename ITEM_INDEX, 
int MAX_ORDER, 
typename FT >
 
   48 template< 
typename ITEM_INDEX, 
int MAX_ORDER, 
typename FT >
 
   52 template< 
typename ITEM_INDEX, 
int MAX_ORDER, 
typename FT >
 
   61 template< 
typename ITEM_INDEX, 
int MAX_ORDER, 
typename FT, 
typename QUERY_SHAPE, 
typename ACCEPT_ITEM >
 
   63     ACCEPT_ITEM&& accept_item,
 
   66     const QUERY_SHAPE& query_shape
 
   83 template< 
typename ITEM_INDEX, 
int MAX_ORDER, 
typename FT >
 
   91 template< 
typename ITEM_INDEX_REP, 
int MAX_ORDER >
 
  103 template< 
typename ITEM_INDEX >
 
  106     constexpr 
auto operator()( 
const ITEM_INDEX i ) 
const noexcept
 
  112 template< 
typename ITEM_INDEX >
 
  115 template< 
typename ITEM_INDEX >
 
  126 template< 
typename ITEM_INDEX, 
int MAX_ORDER >
 
  154     ItemIndexRep myNumItems;
 
  156     template< 
typename FT >
 
  160     template< 
typename FT >
 
  163     template< 
typename ALT_ITEM_INDEX, 
int ALT_MAX_ORDER, 
typename FT >
 
  166     template< 
typename ALT_ITEM_INDEX, 
int ALT_MAX_ORDER, 
typename FT >
 
  169     template< 
typename ALT_ITEM_INDEX, 
int ALT_MAX_ORDER, 
typename FT, 
typename QUERY_SHAPE, 
typename ACCEPT_ITEM >
 
  171         ACCEPT_ITEM&& accept_item,
 
  174         const QUERY_SHAPE& query_shape
 
  177     template< 
typename ALT_ITEM_INDEX, 
int ALT_MAX_ORDER, 
typename FT >
 
  185     template< 
typename ALT_ITEM_INDEX, 
int ALT_MAX_ORDER >
 
  189 template< 
typename FT >
 
  197 template< 
typename FT >
 
  208     exint myNodeSlotBoxSize;
 
  213         const exint node_slot_box_size,
 
  222     template< 
typename ITEM_INDEX, 
int MAX_ORDER > 
friend class RTreeT;
 
  225     template< 
typename ITEM_INDEX, 
int MAX_ORDER, 
typename ALT_FT >
 
  228     template< 
typename ITEM_INDEX, 
int MAX_ORDER, 
typename ALT_FT, 
typename QUERY_SHAPE, 
typename ACCEPT_ITEM >
 
  230         ACCEPT_ITEM&& accept_item,
 
  233         const QUERY_SHAPE& query_shape
 
  236     template< 
typename ITEM_INDEX, 
int MAX_ORDER, 
typename ALT_FT >
 
  250 template< 
typename ITEM_INDEX, 
int MAX_ORDER, 
typename FT >
 
  265 template< 
typename QUERY_SHAPE, 
typename ITEM_INDEX, 
int MAX_ORDER, 
typename FT >
 
  270     const QUERY_SHAPE& query_shape
 
  278 template< 
typename QUERY_SHAPE, 
typename ITEM_INDEX, 
int MAX_ORDER, 
typename FT >
 
  282     const QUERY_SHAPE& query_shape, 
 
  283     ITEM_INDEX*
const items_begin
 
  339 template< 
typename FT >
 
  342 template< 
typename FT >
 
  345 template< 
typename FT >
 
  348 template< 
typename FT >
 
  351 template< 
typename FT >
 
  354 template< 
typename FT >
 
  357 template< 
typename FT >
 
  360 template< 
typename FT >
 
  363 template< 
typename FT >
 
  366 template< 
typename FT >
 
  369 template< 
typename FT >
 
  372 template< 
typename FT >
 
  375 template< 
typename FT >
 
  378 template< 
typename FT >
 
  381 template< 
typename FT >
 
  384 template< 
typename FT >
 
  387 template< 
typename FT >
 
  390 template< 
typename FT >
 
  393 template< 
typename FT >
 
  398 #endif // __RTree_H__ 
auto UTmakeUniqueRTree16IntConfiguration(const UT_RTree16Int &tree, const UT_Array< UT_BoxT< FT > > &item_box)
 
UT_BoxT< fpreal64 > RTreeBoxD
 
RTreeT< int, 2 > RTreeInt
 
UT_BoxT< fpreal32 > RTreeBoxF
 
static constexpr int max_order
 
auto UTmakeUniqueRTreeInt(const UT_Array< UT_BoxT< FT > > &item_box)
 
GLboolean GLboolean GLboolean GLboolean a
 
auto UTmakeUniqueRTreeIntConfiguration(const UT_RTreeInt &tree, const UT_Array< UT_BoxT< FT > > &item_box)
 
friend RTreeConfigurationT< ALT_FT > constructRTreeConfiguration(const RTreeT< ITEM_INDEX, MAX_ORDER > &tree, const UT_BoxT< ALT_FT > item_box[], const ITEM_INDEX num_items)
 
exint heapMemoryUsage(const RTreeConfigurationT< FT > &configuration)
 
RTreeConfigurationT< fpreal64 > RTreeConfigurationD
 
std::unique_ptr< T, Deleter > UT_UniquePtr
A smart pointer for unique ownership of dynamically allocated objects. 
 
friend RTreeT< ALT_ITEM_INDEX, ALT_MAX_ORDER > constructRTree(const UT_BoxT< FT > item_box[], const ALT_ITEM_INDEX num_items)
 
friend RTreeConfigurationT< FT > constructRTreeConfiguration(const RTreeT< ALT_ITEM_INDEX, ALT_MAX_ORDER > &tree, const UT_BoxT< FT > item_box[], const ALT_ITEM_INDEX num_items)
 
UT_RTree2IntConfigurationT< FT > UTconstructRTree2IntConfiguration(const UT_RTree2Int &tree, const UT_Array< UT_BoxT< FT > > &item_box)
 
friend void forEachIntersecting(ACCEPT_ITEM &&accept_item, const RTreeT< ITEM_INDEX, MAX_ORDER > &tree, const RTreeConfigurationT< ALT_FT > &configuration, const QUERY_SHAPE &query_shape)
 
auto UTmakeUniqueRTree16Int(const UT_Array< UT_BoxT< FT > > &item_box)
 
RTreeT< ITEM_INDEX, MAX_ORDER > constructRTree(const UT_BoxT< FT > item_box[], const ITEM_INDEX num_items)
 
RTreeConfigurationT< FT > constructRTreeConfiguration(const UT::RTreeT< ITEM_INDEX, MAX_ORDER > &tree, const UT_BoxT< FT > item_box[], const ITEM_INDEX num_items)
 
auto UTmakeUniqueRTree2Int(const UT_Array< UT_BoxT< FT > > &item_box)
 
SYS_RemoveCVRef_t< decltype(ItemIndexUnderlyingInteger< ITEM_INDEX >{}(std::declval< ITEM_INDEX >())) > type
 
friend void updateConfiguration(RTreeConfigurationT< FT > &configuration, const RTreeT< ALT_ITEM_INDEX, ALT_MAX_ORDER > &tree, const UT_BoxT< FT > item_box[], const ALT_ITEM_INDEX num_items)
 
UT_BoxT< fpreal64 > RTreeBox
 
UT_RTree16Int UTconstructRTree16Int(const UT_Array< UT_BoxT< FT > > &item_box)
 
void forEachIntersecting(ACCEPT_ITEM &&accept_item, const RTreeT< ITEM_INDEX, MAX_ORDER > &tree, const RTreeConfigurationT< FT > &configuration, const QUERY_SHAPE &query_shape)
 
auto UTmakeUniqueRTree2IntConfiguration(const UT_RTree2Int &tree, const UT_Array< UT_BoxT< FT > > &item_box)
 
UT_RTree16IntConfigurationT< FT > UTconstructRTree16IntConfiguration(const UT_RTree16Int &tree, const UT_Array< UT_BoxT< FT > > &item_box)
 
void updateConfiguration(RTreeConfigurationT< FT > &configuration, const RTreeT< ITEM_INDEX, MAX_ORDER > &tree, const UT_BoxT< FT > item_box[], const ITEM_INDEX num_items)
 
RTreeT & operator=(const RTreeT &)=delete
 
typename ItemIndex_UnderlyingIntegerType< ITEM_INDEX >::type ItemIndex_UnderlyingIntegerType_t
 
friend void updateConfiguration(RTreeConfigurationT< ALT_FT > &configuration, const RTreeT< ITEM_INDEX, MAX_ORDER > &tree, const UT_BoxT< ALT_FT > item_box[], const ITEM_INDEX num_items)
 
RTreeT< int, 2 > RTree2Int
 
UT_RTreeInt UTconstructRTreeInt(const UT_BoxT< FT > item_box[], const UT_RTreeInt::ItemIndex num_items)
 
RTreeConfigurationT< fpreal32 > RTreeConfigurationF
 
UT_RTree2Int UTconstructRTree2Int(const UT_Array< UT_BoxT< FT > > &item_box)
 
friend void forEachIntersecting(ACCEPT_ITEM &&accept_item, const RTreeT< ALT_ITEM_INDEX, ALT_MAX_ORDER > &tree, const RTreeConfigurationT< FT > &configuration, const QUERY_SHAPE &query_shape)
 
RTreeConfigurationT< fpreal64 > RTreeConfiguration
 
UT_RTreeConfigurationT< FT > UTconstructRTreeConfiguration(const UT_RTree &tree, const UT_Array< UT_BoxT< FT > > &item_box)
 
constexpr auto operator()(const ITEM_INDEX i) const noexcept
 
UT_RTreeIntConfigurationT< FT > UTconstructRTreeIntConfiguration(const UT_RTreeInt &tree, const UT_Array< UT_BoxT< FT > > &item_box)
 
RTreeT< int, 16 > RTree16Int
 
void getIntersecting(UT_Array< ITEM_INDEX > &results, const RTreeT< ITEM_INDEX, MAX_ORDER > &tree, const RTreeConfigurationT< FT > &configuration, const QUERY_SHAPE &query_shape)
 
UT_RTree UTconstructRTree(const UT_BoxT< FT > item_box[], const UT_RTree::ItemIndex num_items)
 
ITEM_INDEX * getIntersectingRaw(const RTreeT< ITEM_INDEX, MAX_ORDER > &tree, const RTreeConfigurationT< FT > &configuration, const QUERY_SHAPE &query_shape, ITEM_INDEX *const items_begin)
 
friend exint heapMemoryUsage(const RTreeT< ALT_ITEM_INDEX, ALT_MAX_ORDER > &tree)