Point Cloud Library (PCL)  1.7.0
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Static Protected Attributes
pcl::outofcore::OutofcoreOctreeRamContainer< PointT > Class Template Reference

Storage container class which the outofcore octree base is templated against. More...

#include <pcl/outofcore/octree_ram_container.h>

+ Inheritance diagram for pcl::outofcore::OutofcoreOctreeRamContainer< PointT >:

List of all members.

Public Types

typedef
OutofcoreAbstractNodeContainer
< PointT >
::AlignedPointTVector 
AlignedPointTVector

Public Member Functions

 OutofcoreOctreeRamContainer (const boost::filesystem::path &)
 empty contructor (with a path parameter?)
void insertRange (const PointT *start, const uint64_t count)
 inserts count number of points into container; uses the container_ type's insert function
void insertRange (const PointT *const *start, const uint64_t count)
 inserts count points into container
void insertRange (AlignedPointTVector &p)
void insertRange (const AlignedPointTVector &p)
void readRange (const uint64_t start, const uint64_t count, AlignedPointTVector &v)
void readRangeSubSample (const uint64_t start, const uint64_t count, const double percent, AlignedPointTVector &v)
 grab percent*count random points.
uint64_t size () const
 returns the size of the vector of points stored in this class
bool empty () const
void clear ()
 clears the vector of points in this class
void convertToXYZ (const boost::filesystem::path &path)
 Writes ascii x,y,z point data to path.string().c_str()
PointT operator[] (uint64_t index) const

Protected Member Functions

 OutofcoreOctreeRamContainer (const OutofcoreOctreeRamContainer &rval)
OutofcoreOctreeRamContaineroperator= (const OutofcoreOctreeRamContainer &rval)

Protected Attributes

AlignedPointTVector container_
 linear container to hold the points

Static Protected Attributes

static boost::mutex rng_mutex_
static boost::mt19937 rand_gen_

Detailed Description

template<typename PointT>
class pcl::outofcore::OutofcoreOctreeRamContainer< PointT >

Storage container class which the outofcore octree base is templated against.

Note:
Code was adapted from the Urban Robotics out of core octree implementation. Contact Jacob Schloss <jacob.schloss@urbanrobotics.net> with any questions. http://www.urbanrobotics.net/
Author:
Jacob Schloss (jacob.scloss@urbanrobotics.net)

Definition at line 63 of file octree_ram_container.h.


Member Typedef Documentation


Constructor & Destructor Documentation

template<typename PointT >
pcl::outofcore::OutofcoreOctreeRamContainer< PointT >::OutofcoreOctreeRamContainer ( const boost::filesystem::path &  ) [inline]

empty contructor (with a path parameter?)

Definition at line 70 of file octree_ram_container.h.

template<typename PointT >
pcl::outofcore::OutofcoreOctreeRamContainer< PointT >::OutofcoreOctreeRamContainer ( const OutofcoreOctreeRamContainer< PointT > &  rval) [inline, protected]

Definition at line 157 of file octree_ram_container.h.


Member Function Documentation

template<typename PointT >
void pcl::outofcore::OutofcoreOctreeRamContainer< PointT >::clear ( ) [inline, virtual]

clears the vector of points in this class

Implements pcl::outofcore::OutofcoreAbstractNodeContainer< PointT >.

Definition at line 135 of file octree_ram_container.h.

References pcl::outofcore::OutofcoreOctreeRamContainer< PointT >::container_.

template<typename PointT >
void pcl::outofcore::OutofcoreOctreeRamContainer< PointT >::convertToXYZ ( const boost::filesystem::path &  path) [virtual]

Writes ascii x,y,z point data to path.string().c_str()

Parameters:
pathThe path/filename destination of the ascii xyz data

Implements pcl::outofcore::OutofcoreAbstractNodeContainer< PointT >.

Definition at line 61 of file octree_ram_container.hpp.

template<typename PointT >
bool pcl::outofcore::OutofcoreOctreeRamContainer< PointT >::empty ( ) const [inline, virtual]
template<typename PointT >
void pcl::outofcore::OutofcoreOctreeRamContainer< PointT >::insertRange ( const PointT start,
const uint64_t  count 
) [virtual]

inserts count number of points into container; uses the container_ type's insert function

Parameters:
[in]start- address of first point in array
[in]count- the maximum offset from start of points inserted

Implements pcl::outofcore::OutofcoreAbstractNodeContainer< PointT >.

template<typename PointT >
void pcl::outofcore::OutofcoreOctreeRamContainer< PointT >::insertRange ( const PointT *const *  start,
const uint64_t  count 
) [virtual]

inserts count points into container

Parameters:
[in]start- address of first point in array
[in]count- the maximum offset from start of points inserted

Implements pcl::outofcore::OutofcoreAbstractNodeContainer< PointT >.

template<typename PointT >
void pcl::outofcore::OutofcoreOctreeRamContainer< PointT >::insertRange ( AlignedPointTVector p) [inline]

Definition at line 87 of file octree_ram_container.h.

template<typename PointT >
void pcl::outofcore::OutofcoreOctreeRamContainer< PointT >::insertRange ( const AlignedPointTVector p) [inline]

Definition at line 94 of file octree_ram_container.h.

template<typename PointT >
OutofcoreOctreeRamContainer& pcl::outofcore::OutofcoreOctreeRamContainer< PointT >::operator= ( const OutofcoreOctreeRamContainer< PointT > &  rval) [inline, protected]

Definition at line 160 of file octree_ram_container.h.

template<typename PointT >
PointT pcl::outofcore::OutofcoreOctreeRamContainer< PointT >::operator[] ( uint64_t  index) const [inline, virtual]
template<typename PointT >
void pcl::outofcore::OutofcoreOctreeRamContainer< PointT >::readRange ( const uint64_t  start,
const uint64_t  count,
AlignedPointTVector v 
) [virtual]
Parameters:
[in]startIndex of first point to return from container
[in]countOffset (start + count) of the last point to return from container
[out]vArray of points read from the input range

Implements pcl::outofcore::OutofcoreAbstractNodeContainer< PointT >.

Definition at line 109 of file octree_ram_container.hpp.

template<typename PointT >
void pcl::outofcore::OutofcoreOctreeRamContainer< PointT >::readRangeSubSample ( const uint64_t  start,
const uint64_t  count,
const double  percent,
AlignedPointTVector v 
) [virtual]

grab percent*count random points.

points are NOT guaranteed to be unique (could have multiple identical points!)

Parameters:
[in]startIndex of first point in range to subsample
[in]countOffset (start+count) of last point in range to subsample
[in]percentPercentage of range to return
[out]vVector with percent*count uniformly random sampled points from given input rangerange

Implements pcl::outofcore::OutofcoreAbstractNodeContainer< PointT >.

Definition at line 119 of file octree_ram_container.hpp.

References pcl::outofcore::rand_gen_.

template<typename PointT >
uint64_t pcl::outofcore::OutofcoreOctreeRamContainer< PointT >::size ( ) const [inline, virtual]

returns the size of the vector of points stored in this class

Implements pcl::outofcore::OutofcoreAbstractNodeContainer< PointT >.

Definition at line 121 of file octree_ram_container.h.

References pcl::outofcore::OutofcoreOctreeRamContainer< PointT >::container_.


Member Data Documentation

template<typename PointT >
boost::mt19937 pcl::outofcore::OutofcoreOctreeRamContainer< PointT >::rand_gen_ [static, protected]
template<typename PointT >
boost::mutex pcl::outofcore::OutofcoreOctreeRamContainer< PointT >::rng_mutex_ [static, protected]

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