IndexedTreeDataStrategy< InheritedStrategy, Data >::StrategyBase< Base > Class Template Reference

#include <VisionX/components/pointcloud_processor/EfficientRANSACPrimitiveExtractor/EfficientRANSAC/GfxTL/IndexedTreeDataStrategy.h>

+ Inheritance diagram for IndexedTreeDataStrategy< InheritedStrategy, Data >::StrategyBase< Base >:

Public Types

typedef Base::CellType CellType
 
typedef IndexedTreeDataCore< Data >::DataType DataType
 
typedef IndexedTreeDataStrategy< InheritedStrategy, Data >::HandleType HandleType
 
typedef IndexedTreeDataStrategy< InheritedStrategy, Data >::IndicesType IndicesType
 
typedef DataType::PointType PointType
 
typedef PointType::ScalarType ScalarType
 
typedef InheritedStrategy::StrategyBase< Base > StrategyBaseType
 

Public Member Functions

void Add (const DataType &data)
 
void BoundingCube (AACube< PointType > *cube)
 
template<class BV >
void BoundingVolume (BV *bv)
 
void Clear ()
 
void PointsInCell (const CellType &cell, std::vector< size_t > *points) const
 
virtual void RefreshWithNewTreeData (const AACube< PointType > &bc)
 
template<class BoundingVolume >
void Remove (const BoundingVolume &bv)
 
size_t Size () const
 
 StrategyBase ()
 
template<class T >
void Transform (const T &t)
 
template<class T >
void Transform (size_t i, const T &t)
 
template<class TFunc >
void TransformFunc (TFunc tfunc)
 
void Translate (const PointType &translation)
 
size_t Translate (HandleType i) const
 

Protected Member Functions

void BoundingCube (const CellType &data, AACube< PointType > *cube)
 
template<class BoundingVolume >
void RootCellData (const BoundingVolume &bv, CellType *cell)
 
void SplitAlongAxis (const CellType &cell, unsigned int axis, ScalarType s, CellType *left, CellType *right)
 

Detailed Description

template<class InheritedStrategy, class Data>
template<class Base>
class GfxTL::IndexedTreeDataStrategy< InheritedStrategy, Data >::StrategyBase< Base >

Definition at line 245 of file IndexedTreeDataStrategy.h.

Member Typedef Documentation

◆ CellType

typedef Base::CellType CellType

Definition at line 250 of file IndexedTreeDataStrategy.h.

◆ DataType

typedef IndexedTreeDataCore< Data >::DataType DataType

Definition at line 252 of file IndexedTreeDataStrategy.h.

◆ HandleType

typedef IndexedTreeDataStrategy< InheritedStrategy, Data >::HandleType HandleType

Definition at line 260 of file IndexedTreeDataStrategy.h.

◆ IndicesType

typedef IndexedTreeDataStrategy< InheritedStrategy, Data >::IndicesType IndicesType

Definition at line 266 of file IndexedTreeDataStrategy.h.

◆ PointType

typedef DataType::PointType PointType

Definition at line 253 of file IndexedTreeDataStrategy.h.

◆ ScalarType

typedef PointType::ScalarType ScalarType

Definition at line 254 of file IndexedTreeDataStrategy.h.

◆ StrategyBaseType

typedef InheritedStrategy::StrategyBase< Base > StrategyBaseType

Definition at line 268 of file IndexedTreeDataStrategy.h.

Constructor & Destructor Documentation

◆ StrategyBase()

StrategyBase ( )
inline

Definition at line 270 of file IndexedTreeDataStrategy.h.

Member Function Documentation

◆ Add()

void Add ( const DataType data)
inline

Definition at line 310 of file IndexedTreeDataStrategy.h.

+ Here is the call graph for this function:

◆ BoundingCube() [1/2]

void BoundingCube ( AACube< PointType > *  cube)
inline

Definition at line 299 of file IndexedTreeDataStrategy.h.

+ Here is the call graph for this function:

◆ BoundingCube() [2/2]

void BoundingCube ( const CellType data,
AACube< PointType > *  cube 
)
inlineprotected

Definition at line 435 of file IndexedTreeDataStrategy.h.

◆ BoundingVolume()

void BoundingVolume ( BV *  bv)
inline

Definition at line 305 of file IndexedTreeDataStrategy.h.

+ Here is the call graph for this function:

◆ Clear()

void Clear ( )
inline

Definition at line 273 of file IndexedTreeDataStrategy.h.

◆ PointsInCell()

void PointsInCell ( const CellType cell,
std::vector< size_t > *  points 
) const
inline

Definition at line 289 of file IndexedTreeDataStrategy.h.

+ Here is the call graph for this function:

◆ RefreshWithNewTreeData()

virtual void RefreshWithNewTreeData ( const AACube< PointType > &  bc)
inlinevirtual

Definition at line 357 of file IndexedTreeDataStrategy.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ Remove()

void Remove ( const BoundingVolume bv)
inline

Definition at line 350 of file IndexedTreeDataStrategy.h.

+ Here is the call graph for this function:

◆ RootCellData()

void RootCellData ( const BoundingVolume bv,
CellType cell 
)
inlineprotected

Definition at line 373 of file IndexedTreeDataStrategy.h.

+ Here is the call graph for this function:

◆ Size()

size_t Size ( ) const
inline

Definition at line 284 of file IndexedTreeDataStrategy.h.

+ Here is the caller graph for this function:

◆ SplitAlongAxis()

void SplitAlongAxis ( const CellType cell,
unsigned int  axis,
ScalarType  s,
CellType left,
CellType right 
)
inlineprotected

Definition at line 401 of file IndexedTreeDataStrategy.h.

+ Here is the call graph for this function:

◆ Transform() [1/2]

void Transform ( const T t)
inline

Definition at line 319 of file IndexedTreeDataStrategy.h.

+ Here is the call graph for this function:

◆ Transform() [2/2]

void Transform ( size_t  i,
const T t 
)
inline

Definition at line 327 of file IndexedTreeDataStrategy.h.

+ Here is the call graph for this function:

◆ TransformFunc()

void TransformFunc ( TFunc  tfunc)
inline

Definition at line 342 of file IndexedTreeDataStrategy.h.

+ Here is the call graph for this function:

◆ Translate() [1/2]

void Translate ( const PointType translation)
inline

Definition at line 334 of file IndexedTreeDataStrategy.h.

+ Here is the call graph for this function:

◆ Translate() [2/2]

size_t Translate ( HandleType  i) const
inline

Definition at line 279 of file IndexedTreeDataStrategy.h.

+ Here is the caller graph for this function:

The documentation for this class was generated from the following file: