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)
 

Member Typedef Documentation

◆ CellType

template<class InheritedStrategy, class Data>
template<class Base>
typedef Base::CellType CellType

◆ DataType

template<class InheritedStrategy, class Data>
template<class Base>
typedef IndexedTreeDataCore<Data>::DataType DataType

◆ HandleType

template<class InheritedStrategy, class Data>
template<class Base>
typedef IndexedTreeDataStrategy<InheritedStrategy,Data>::HandleType HandleType

◆ IndicesType

template<class InheritedStrategy, class Data>
template<class Base>
typedef IndexedTreeDataStrategy<InheritedStrategy,Data>::IndicesType IndicesType

◆ PointType

template<class InheritedStrategy, class Data>
template<class Base>
typedef DataType::PointType PointType

◆ ScalarType

template<class InheritedStrategy, class Data>
template<class Base>
typedef PointType::ScalarType ScalarType

◆ StrategyBaseType

template<class InheritedStrategy, class Data>
template<class Base>
typedef InheritedStrategy::StrategyBase<Base> StrategyBaseType

Constructor & Destructor Documentation

◆ StrategyBase()

template<class InheritedStrategy, class Data>
template<class Base>
StrategyBase ( )
inline

Member Function Documentation

◆ Add()

template<class InheritedStrategy, class Data>
template<class Base>
void Add ( const DataType & data)
inline

◆ BoundingCube() [1/2]

template<class InheritedStrategy, class Data>
template<class Base>
void BoundingCube ( AACube< PointType > * cube)
inline

◆ BoundingCube() [2/2]

template<class InheritedStrategy, class Data>
template<class Base>
void BoundingCube ( const CellType & data,
AACube< PointType > * cube )
inlineprotected

◆ BoundingVolume()

template<class InheritedStrategy, class Data>
template<class Base>
template<class BV>
void BoundingVolume ( BV * bv)
inline

◆ Clear()

template<class InheritedStrategy, class Data>
template<class Base>
void Clear ( )
inline

◆ PointsInCell()

template<class InheritedStrategy, class Data>
template<class Base>
void PointsInCell ( const CellType & cell,
std::vector< size_t > * points ) const
inline

◆ RefreshWithNewTreeData()

template<class InheritedStrategy, class Data>
template<class Base>
virtual void RefreshWithNewTreeData ( const AACube< PointType > & bc)
inlinevirtual

◆ Remove()

template<class InheritedStrategy, class Data>
template<class Base>
template<class BoundingVolume>
void Remove ( const BoundingVolume & bv)
inline

◆ RootCellData()

template<class InheritedStrategy, class Data>
template<class Base>
template<class BoundingVolume>
void RootCellData ( const BoundingVolume & bv,
CellType * cell )
inlineprotected

◆ Size()

template<class InheritedStrategy, class Data>
template<class Base>
size_t Size ( ) const
inline

◆ SplitAlongAxis()

template<class InheritedStrategy, class Data>
template<class Base>
void SplitAlongAxis ( const CellType & cell,
unsigned int axis,
ScalarType s,
CellType * left,
CellType * right )
inlineprotected

◆ Transform() [1/2]

template<class InheritedStrategy, class Data>
template<class Base>
template<class T>
void Transform ( const T & t)
inline

◆ Transform() [2/2]

template<class InheritedStrategy, class Data>
template<class Base>
template<class T>
void Transform ( size_t i,
const T & t )
inline

◆ TransformFunc()

template<class InheritedStrategy, class Data>
template<class Base>
template<class TFunc>
void TransformFunc ( TFunc tfunc)
inline

◆ Translate() [1/2]

template<class InheritedStrategy, class Data>
template<class Base>
void Translate ( const PointType & translation)
inline

◆ Translate() [2/2]

template<class InheritedStrategy, class Data>
template<class Base>
size_t Translate ( HandleType i) const
inline

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