libLAS API Reference  1.8.1
Public Member Functions | Protected Attributes | Friends | List of all members
liblas::IndexIterator Class Reference

#include <index.hpp>

Collaboration diagram for liblas::IndexIterator:
Collaboration graph

Public Member Functions

 IndexIterator (Index *IndexSrc, double LowFilterX, double HighFilterX, double LowFilterY, double HighFilterY, double LowFilterZ, double HighFilterZ, uint32_t ChunkSize)
 
 IndexIterator (Index *IndexSrc, IndexData const &IndexDataSrc, uint32_t ChunkSize)
 
 IndexIterator (Index *IndexSrc, Bounds< double > const &BoundsSrc, uint32_t ChunkSize)
 
 IndexIterator (IndexIterator const &other)
 Copy constructor. More...
 
IndexIteratoroperator= (IndexIterator const &rhs)
 Assignment operator. More...
 
const std::vector< uint32_t > & advance (int32_t n)
 n=0 or n=1 gives next sequence with no gap, n>1 skips n-1 filter-compliant points, n<0 jumps backwards n compliant points More...
 
const std::vector< uint32_t > & operator() (int32_t n)
 returns filter-compliant points as though the first point returned is element n in a zero-based array More...
 
const std::vector< uint32_t > & operator++ ()
 returns next set of filter-compliant points with no skipped points More...
 
const std::vector< uint32_t > & operator++ (int)
 returns next set of filter-compliant points with no skipped points More...
 
const std::vector< uint32_t > & operator-- ()
 returns set of filter-compliant points skipping backwards 1 from the end of the last set More...
 
const std::vector< uint32_t > & operator-- (int)
 returns set of filter-compliant points skipping backwards 1 from the end of the last set More...
 
const std::vector< uint32_t > & operator+= (int32_t n)
 returns next set of filter-compliant points with n-1 skipped points, for n<0 acts like -=() More...
 
const std::vector< uint32_t > & operator+ (int32_t n)
 returns next set of filter-compliant points with n-1 skipped points, for n<0 acts like -() More...
 
const std::vector< uint32_t > & operator-= (int32_t n)
 returns set of filter-compliant points beginning n points backwards from the end of the last set, for n<0 acts like +=() More...
 
const std::vector< uint32_t > & operator- (int32_t n)
 returns set of filter-compliant points beginning n points backwards from the end of the last set, for n<0 acts like +() More...
 
const std::vector< uint32_t > & operator[] (int32_t n)
 returns filter-compliant points as though the first point returned is element n in a zero-based array More...
 
bool ValidateIndexVersion (uint8_t VersionMajor, uint8_t VersionMinor)
 tests viability of index for filtering with iterator More...
 

Protected Attributes

IndexData m_indexData
 
Indexm_index
 
uint32_t m_chunkSize
 
uint32_t m_advance
 
uint32_t m_curVLR
 
uint32_t m_curCellStartPos
 
uint32_t m_curCellX
 
uint32_t m_curCellY
 
uint32_t m_totalPointsScanned
 
uint32_t m_ptsScannedCurCell
 
uint32_t m_ptsScannedCurVLR
 
uint32_t m_conformingPtsFound
 

Friends

class Index
 

Constructor & Destructor Documentation

liblas::IndexIterator::IndexIterator ( Index IndexSrc,
double  LowFilterX,
double  HighFilterX,
double  LowFilterY,
double  HighFilterY,
double  LowFilterZ,
double  HighFilterZ,
uint32_t  ChunkSize 
)
liblas::IndexIterator::IndexIterator ( Index IndexSrc,
IndexData const &  IndexDataSrc,
uint32_t  ChunkSize 
)
liblas::IndexIterator::IndexIterator ( Index IndexSrc,
Bounds< double > const &  BoundsSrc,
uint32_t  ChunkSize 
)
liblas::IndexIterator::IndexIterator ( IndexIterator const &  other)

Copy constructor.

Member Function Documentation

const std::vector<uint32_t>& liblas::IndexIterator::advance ( int32_t  n)

n=0 or n=1 gives next sequence with no gap, n>1 skips n-1 filter-compliant points, n<0 jumps backwards n compliant points

const std::vector<uint32_t>& liblas::IndexIterator::operator() ( int32_t  n)

returns filter-compliant points as though the first point returned is element n in a zero-based array

const std::vector<uint32_t>& liblas::IndexIterator::operator+ ( int32_t  n)
inline

returns next set of filter-compliant points with n-1 skipped points, for n<0 acts like -()

const std::vector<uint32_t>& liblas::IndexIterator::operator++ ( )
inline

returns next set of filter-compliant points with no skipped points

const std::vector<uint32_t>& liblas::IndexIterator::operator++ ( int  )
inline

returns next set of filter-compliant points with no skipped points

const std::vector<uint32_t>& liblas::IndexIterator::operator+= ( int32_t  n)
inline

returns next set of filter-compliant points with n-1 skipped points, for n<0 acts like -=()

const std::vector<uint32_t>& liblas::IndexIterator::operator- ( int32_t  n)
inline

returns set of filter-compliant points beginning n points backwards from the end of the last set, for n<0 acts like +()

const std::vector<uint32_t>& liblas::IndexIterator::operator-- ( )
inline

returns set of filter-compliant points skipping backwards 1 from the end of the last set

const std::vector<uint32_t>& liblas::IndexIterator::operator-- ( int  )
inline

returns set of filter-compliant points skipping backwards 1 from the end of the last set

const std::vector<uint32_t>& liblas::IndexIterator::operator-= ( int32_t  n)
inline

returns set of filter-compliant points beginning n points backwards from the end of the last set, for n<0 acts like +=()

IndexIterator& liblas::IndexIterator::operator= ( IndexIterator const &  rhs)

Assignment operator.

const std::vector<uint32_t>& liblas::IndexIterator::operator[] ( int32_t  n)
inline

returns filter-compliant points as though the first point returned is element n in a zero-based array

bool liblas::IndexIterator::ValidateIndexVersion ( uint8_t  VersionMajor,
uint8_t  VersionMinor 
)
inline

tests viability of index for filtering with iterator

Friends And Related Function Documentation

friend class Index
friend

Member Data Documentation

uint32_t liblas::IndexIterator::m_advance
protected
uint32_t liblas::IndexIterator::m_chunkSize
protected
uint32_t liblas::IndexIterator::m_conformingPtsFound
protected
uint32_t liblas::IndexIterator::m_curCellStartPos
protected
uint32_t liblas::IndexIterator::m_curCellX
protected
uint32_t liblas::IndexIterator::m_curCellY
protected
uint32_t liblas::IndexIterator::m_curVLR
protected
Index* liblas::IndexIterator::m_index
protected
IndexData liblas::IndexIterator::m_indexData
protected
uint32_t liblas::IndexIterator::m_ptsScannedCurCell
protected
uint32_t liblas::IndexIterator::m_ptsScannedCurVLR
protected
uint32_t liblas::IndexIterator::m_totalPointsScanned
protected

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