HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
UT_RTree.h File Reference
#include "UT_API.h"
#include "UT_RTreeBox.h"
#include "UT_Array.h"
#include <memory>
#include "UT_RTreeImpl.h"
+ Include dependency graph for UT_RTree.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  UT::RTreeT< ITEM_INDEX, MAX_ORDER >
 
class  UT::RTreeConfigurationT< FT >
 
class  UT::RNodeT< ITEM_INDEX_REP, MAX_ORDER >
 
struct  UT::ItemIndexUnderlyingInteger< ITEM_INDEX >
 
struct  UT::ItemIndex_UnderlyingIntegerType< ITEM_INDEX >
 
class  UT::RTreeT< ITEM_INDEX, MAX_ORDER >
 
class  UT::RTreeConfigurationT< FT >
 

Namespaces

 UT
 

Typedefs

template<typename ITEM_INDEX >
using UT::ItemIndex_UnderlyingIntegerType_t = typename ItemIndex_UnderlyingIntegerType< ITEM_INDEX >::type
 
using UT::RTree16Int = RTreeT< int, 16 >
 
using UT::RTree2Int = RTreeT< int, 2 >
 
using UT::RTreeInt = RTreeT< int, 2 >
 
using UT::RTree = RTreeT< exint, 2 >
 
using UT::RTreeConfigurationF = RTreeConfigurationT< fpreal32 >
 
using UT::RTreeConfigurationD = RTreeConfigurationT< fpreal64 >
 
using UT::RTreeConfiguration = RTreeConfigurationT< fpreal64 >
 
using UT::RTreeBoxF = UT_BoxT< fpreal32 >
 
using UT::RTreeBoxD = UT_BoxT< fpreal64 >
 
using UT::RTreeBox = UT_BoxT< fpreal64 >
 
using UT_RTree16Int = UT::RTree16Int
 
using UT_RTree2Int = UT::RTree2Int
 
using UT_RTreeInt = UT::RTreeInt
 
using UT_RTree = UT::RTree
 
template<typename FT >
using UT_RTree2IntConfigurationT = UT::RTreeConfigurationT< FT >
 
template<typename FT >
using UT_RTree16IntConfigurationT = UT::RTreeConfigurationT< FT >
 
template<typename FT >
using UT_RTreeIntConfigurationT = UT::RTreeConfigurationT< FT >
 
template<typename FT >
using UT_RTreeConfigurationT = UT::RTreeConfigurationT< FT >
 
using UT_RTree2IntConfigurationF = UT_RTree16IntConfigurationT< fpreal32 >
 
using UT_RTree16IntConfigurationF = UT_RTree16IntConfigurationT< fpreal32 >
 
using UT_RTreeIntConfiguration = UT_RTreeIntConfigurationT< fpreal64 >
 
using UT_RTreeConfigurationF = UT::RTreeConfigurationF
 
using UT_RTreeConfigurationD = UT::RTreeConfigurationD
 
using UT_RTreeConfiguration = UT::RTreeConfiguration
 
using UT_BoxF = UT::RTreeBoxF
 
using UT_BoxD = UT::RTreeBoxD
 
using UT_Box = UT::RTreeBox
 

Functions

template<typename ITEM_INDEX , int MAX_ORDER, typename FT >
RTreeT< ITEM_INDEX, MAX_ORDER > UT::constructRTree (const UT_BoxT< FT > item_box[], const ITEM_INDEX num_items)
 
template<typename ITEM_INDEX , int MAX_ORDER, typename FT >
RTreeT< ITEM_INDEX, MAX_ORDER > UT::constructRTree (const UT_Array< UT_BoxT< FT > > &item_box)
 
template<typename ITEM_INDEX , int MAX_ORDER, typename FT >
RTreeConfigurationT< FT > UT::constructRTreeConfiguration (const UT::RTreeT< ITEM_INDEX, MAX_ORDER > &tree, const UT_BoxT< FT > item_box[], const ITEM_INDEX num_items)
 
template<typename ITEM_INDEX , int MAX_ORDER, typename FT >
RTreeConfigurationT< FT > UT::constructRTreeConfiguration (const RTreeT< ITEM_INDEX, MAX_ORDER > &tree, const UT_Array< UT_BoxT< FT > > &item_box)
 
template<typename ITEM_INDEX , int MAX_ORDER, typename FT , typename QUERY_SHAPE , typename ACCEPT_ITEM >
void UT::forEachIntersecting (ACCEPT_ITEM &&accept_item, const RTreeT< ITEM_INDEX, MAX_ORDER > &tree, const RTreeConfigurationT< FT > &configuration, const QUERY_SHAPE &query_shape)
 
template<typename ITEM_INDEX , int MAX_ORDER, typename FT >
void UT::updateConfiguration (RTreeConfigurationT< FT > &configuration, const RTreeT< ITEM_INDEX, MAX_ORDER > &tree, const UT_BoxT< FT > item_box[], const ITEM_INDEX num_items)
 
template<typename FT >
exint UT::heapMemoryUsage (const RTreeConfigurationT< FT > &configuration)
 
template<typename ITEM_INDEX , int MAX_ORDER, typename FT >
void UT::updateConfiguration (RTreeConfigurationT< FT > &configuration, const RTreeT< ITEM_INDEX, MAX_ORDER > &tree, const UT_Array< UT_BoxT< FT > > &item_box)
 
template<typename QUERY_SHAPE , typename ITEM_INDEX , int MAX_ORDER, typename FT >
void UT::getIntersecting (UT_Array< ITEM_INDEX > &results, const RTreeT< ITEM_INDEX, MAX_ORDER > &tree, const RTreeConfigurationT< FT > &configuration, const QUERY_SHAPE &query_shape)
 
template<typename QUERY_SHAPE , typename ITEM_INDEX , int MAX_ORDER, typename FT >
ITEM_INDEX * UT::getIntersectingRaw (const RTreeT< ITEM_INDEX, MAX_ORDER > &tree, const RTreeConfigurationT< FT > &configuration, const QUERY_SHAPE &query_shape, ITEM_INDEX *const items_begin)
 
template<typename FT >
UT_RTree16Int UTconstructRTree16Int (const UT_Array< UT_BoxT< FT > > &item_box)
 
template<typename FT >
UT_RTree2Int UTconstructRTree2Int (const UT_Array< UT_BoxT< FT > > &item_box)
 
template<typename FT >
UT_RTreeInt UTconstructRTreeInt (const UT_BoxT< FT > item_box[], const UT_RTreeInt::ItemIndex num_items)
 
template<typename FT >
UT_RTreeInt UTconstructRTreeInt (const UT_Array< UT_BoxT< FT > > &item_box)
 
template<typename FT >
UT_RTree UTconstructRTree (const UT_BoxT< FT > item_box[], const UT_RTree::ItemIndex num_items)
 
template<typename FT >
UT_RTree UTconstructRTree (const UT_Array< UT_BoxT< FT > > &item_box)
 
template<typename FT >
UT_RTree2IntConfigurationT< FT > UTconstructRTree2IntConfiguration (const UT_RTree2Int &tree, const UT_Array< UT_BoxT< FT > > &item_box)
 
template<typename FT >
UT_RTree16IntConfigurationT< FT > UTconstructRTree16IntConfiguration (const UT_RTree16Int &tree, const UT_Array< UT_BoxT< FT > > &item_box)
 
template<typename FT >
UT_RTreeIntConfigurationT< FT > UTconstructRTreeIntConfiguration (const UT_RTreeInt &tree, const UT_Array< UT_BoxT< FT > > &item_box)
 
template<typename FT >
UT_RTreeIntConfigurationT< FT > UTconstructRTreeIntConfiguration (const UT_RTreeInt &tree, const UT_BoxT< FT > item_box[], const UT_RTree::ItemIndex num_items)
 
template<typename FT >
UT_RTreeConfigurationT< FT > UTconstructRTreeConfiguration (const UT_RTree &tree, const UT_Array< UT_BoxT< FT > > &item_box)
 
template<typename FT >
auto UTmakeUniqueRTree2Int (const UT_Array< UT_BoxT< FT > > &item_box)
 
template<typename FT >
auto UTmakeUniqueRTree16Int (const UT_Array< UT_BoxT< FT > > &item_box)
 
template<typename FT >
auto UTmakeUniqueRTreeInt (const UT_Array< UT_BoxT< FT > > &item_box)
 
template<typename FT >
auto UTmakeUniqueRTreeInt (const UT_BoxT< FT > item_box[], const UT_RTree::ItemIndex num_items)
 
template<typename FT >
auto UTmakeUniqueRTree2IntConfiguration (const UT_RTree2Int &tree, const UT_Array< UT_BoxT< FT > > &item_box)
 
template<typename FT >
auto UTmakeUniqueRTree16IntConfiguration (const UT_RTree16Int &tree, const UT_Array< UT_BoxT< FT > > &item_box)
 
template<typename FT >
auto UTmakeUniqueRTreeIntConfiguration (const UT_RTreeInt &tree, const UT_Array< UT_BoxT< FT > > &item_box)
 
template<typename FT >
auto UTmakeUniqueRTreeIntConfiguration (const UT_RTreeInt &tree, const UT_BoxT< FT > item_box[], const UT_RTree::ItemIndex num_items)
 

Typedef Documentation

Definition at line 339 of file UT_RTree.h.

Definition at line 338 of file UT_RTree.h.

Definition at line 337 of file UT_RTree.h.

Definition at line 322 of file UT_RTree.h.

Definition at line 318 of file UT_RTree.h.

template<typename FT >
using UT_RTree16IntConfigurationT = UT::RTreeConfigurationT< FT >

Definition at line 325 of file UT_RTree.h.

Definition at line 319 of file UT_RTree.h.

template<typename FT >
using UT_RTree2IntConfigurationT = UT::RTreeConfigurationT< FT >

Definition at line 324 of file UT_RTree.h.

Definition at line 335 of file UT_RTree.h.

Definition at line 334 of file UT_RTree.h.

Definition at line 333 of file UT_RTree.h.

template<typename FT >
using UT_RTreeConfigurationT = UT::RTreeConfigurationT< FT >

Definition at line 327 of file UT_RTree.h.

Definition at line 320 of file UT_RTree.h.

template<typename FT >
using UT_RTreeIntConfigurationT = UT::RTreeConfigurationT< FT >

Definition at line 326 of file UT_RTree.h.

Function Documentation

template<typename FT >
UT_RTree UTconstructRTree ( const UT_BoxT< FT >  item_box[],
const UT_RTree::ItemIndex  num_items 
)
inline

Definition at line 990 of file UT_RTreeImpl.h.

template<typename FT >
UT_RTree UTconstructRTree ( const UT_Array< UT_BoxT< FT > > &  item_box)
inline

Definition at line 996 of file UT_RTreeImpl.h.

template<typename FT >
UT_RTree16Int UTconstructRTree16Int ( const UT_Array< UT_BoxT< FT > > &  item_box)
inline

Definition at line 966 of file UT_RTreeImpl.h.

template<typename FT >
UT_RTree16IntConfigurationT< FT > UTconstructRTree16IntConfiguration ( const UT_RTree16Int tree,
const UT_Array< UT_BoxT< FT > > &  item_box 
)
inline

Definition at line 1008 of file UT_RTreeImpl.h.

template<typename FT >
UT_RTree2Int UTconstructRTree2Int ( const UT_Array< UT_BoxT< FT > > &  item_box)
inline

Definition at line 972 of file UT_RTreeImpl.h.

template<typename FT >
UT_RTree2IntConfigurationT< FT > UTconstructRTree2IntConfiguration ( const UT_RTree2Int tree,
const UT_Array< UT_BoxT< FT > > &  item_box 
)
inline

Definition at line 1002 of file UT_RTreeImpl.h.

template<typename FT >
UT_RTreeConfigurationT< FT> UTconstructRTreeConfiguration ( const UT_RTree tree,
const UT_Array< UT_BoxT< FT > > &  item_box 
)
inline

Definition at line 1026 of file UT_RTreeImpl.h.

template<typename FT >
UT_RTreeInt UTconstructRTreeInt ( const UT_BoxT< FT >  item_box[],
const UT_RTreeInt::ItemIndex  num_items 
)
inline

Definition at line 978 of file UT_RTreeImpl.h.

template<typename FT >
UT_RTreeInt UTconstructRTreeInt ( const UT_Array< UT_BoxT< FT > > &  item_box)
inline

Definition at line 984 of file UT_RTreeImpl.h.

template<typename FT >
UT_RTreeIntConfigurationT< FT > UTconstructRTreeIntConfiguration ( const UT_RTreeInt tree,
const UT_Array< UT_BoxT< FT > > &  item_box 
)
inline

Definition at line 1014 of file UT_RTreeImpl.h.

template<typename FT >
UT_RTreeIntConfigurationT< FT > UTconstructRTreeIntConfiguration ( const UT_RTreeInt tree,
const UT_BoxT< FT >  item_box[],
const UT_RTree::ItemIndex  num_items 
)
inline

Definition at line 1020 of file UT_RTreeImpl.h.

template<typename FT >
auto UTmakeUniqueRTree16Int ( const UT_Array< UT_BoxT< FT > > &  item_box)
inline

Definition at line 1038 of file UT_RTreeImpl.h.

template<typename FT >
auto UTmakeUniqueRTree16IntConfiguration ( const UT_RTree16Int tree,
const UT_Array< UT_BoxT< FT > > &  item_box 
)
inline

Definition at line 1062 of file UT_RTreeImpl.h.

template<typename FT >
auto UTmakeUniqueRTree2Int ( const UT_Array< UT_BoxT< FT > > &  item_box)
inline

Definition at line 1032 of file UT_RTreeImpl.h.

template<typename FT >
auto UTmakeUniqueRTree2IntConfiguration ( const UT_RTree2Int tree,
const UT_Array< UT_BoxT< FT > > &  item_box 
)
inline

Definition at line 1056 of file UT_RTreeImpl.h.

template<typename FT >
auto UTmakeUniqueRTreeInt ( const UT_Array< UT_BoxT< FT > > &  item_box)
inline

Definition at line 1044 of file UT_RTreeImpl.h.

template<typename FT >
auto UTmakeUniqueRTreeInt ( const UT_BoxT< FT >  item_box[],
const UT_RTree::ItemIndex  num_items 
)
inline

Definition at line 1050 of file UT_RTreeImpl.h.

template<typename FT >
auto UTmakeUniqueRTreeIntConfiguration ( const UT_RTreeInt tree,
const UT_Array< UT_BoxT< FT > > &  item_box 
)
inline

Definition at line 1068 of file UT_RTreeImpl.h.

template<typename FT >
auto UTmakeUniqueRTreeIntConfiguration ( const UT_RTreeInt tree,
const UT_BoxT< FT >  item_box[],
const UT_RTree::ItemIndex  num_items 
)

Definition at line 1074 of file UT_RTreeImpl.h.