Jafar
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions | Private Types | Private Attributes
jafar::geom::VoxelMultiDimensionStorage< _dimension_, _T_, _level_ > Class Template Reference

This class is use internally by VoxelSpace to store the data, there is no reason to use it directly. More...


Detailed Description

template<int _dimension_, class _T_, int _level_ = _dimension_>
class jafar::geom::VoxelMultiDimensionStorage< _dimension_, _T_, _level_ >

This class is use internally by VoxelSpace to store the data, there is no reason to use it directly.

Definition at line 16 of file VoxelSpace.hpp.

#include <VoxelSpace.hpp>

List of all members.

Public Member Functions

_T_ & operator[] (IndexVec index)
template<class _TFunctor_ >
void iterateCreateVoxels (IndexVec _firstIndex, IndexVec _lastIndex, _TFunctor_ *_functor)
 This function iterates over voxels to apply a function on it.
template<class _TFunctor_ >
void iterateVoxels (IndexVec _firstIndex, IndexVec _lastIndex, _TFunctor_ *_functor) const
 This function iterates over voxels to apply a function on it.
template<class _TFunctor_ >
void iterateAllVoxels (_TFunctor_ *_functor) const
template<class _TFunctor_ >
void iterateAllVoxels (_TFunctor_ *_functor)

Private Types

typedef
boost::numeric::ublas::bounded_vector
< int, _dimension_ > 
IndexVec
typedef std::map< int,
VoxelMultiDimensionStorage
< _dimension_, _T_, _level_-1 > > 
MapVMD
typedef MapVMD::iterator MapVMD_it
typedef MapVMD::const_iterator MapVMD_cit

Private Attributes

int m_firstIndex
int m_lastIndex
MapVMD m_storage

Member Function Documentation

template<int _dimension_, class _T_, int _level_ = _dimension_>
template<class _TFunctor_ >
void jafar::geom::VoxelMultiDimensionStorage< _dimension_, _T_, _level_ >::iterateCreateVoxels ( IndexVec  _firstIndex,
IndexVec  _lastIndex,
_TFunctor_ *  _functor 
) [inline]

This function iterates over voxels to apply a function on it.

This function creates Voxels if they are not available. It's mainly use to fill the VoxelSpace

Parameters:
_TFunctor_is a class that need to define void _TFunctor_::apply( _T_* );
firstIndexis the first index of the iteration
lastIndexis the last index of the iteration

Definition at line 38 of file VoxelSpace.hpp.

template<int _dimension_, class _T_, int _level_ = _dimension_>
template<class _TFunctor_ >
void jafar::geom::VoxelMultiDimensionStorage< _dimension_, _T_, _level_ >::iterateVoxels ( IndexVec  _firstIndex,
IndexVec  _lastIndex,
_TFunctor_ *  _functor 
) const [inline]

This function iterates over voxels to apply a function on it.

This function doesn't create Voxels if they are not available.

Parameters:
_TFunctor_is a class that need to define void _TFunctor_::apply( const _T_* );
firstIndexis the first index of the iteration
lastIndexis the last index of the iteration

Definition at line 60 of file VoxelSpace.hpp.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on Wed Oct 15 2014 00:37:37 for Jafar by doxygen 1.7.6.1
LAAS-CNRS