libLAS API Reference  1.8.1
Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
liblas Namespace Reference

Namespace grouping all elements of libLAS public interface. More...

Namespaces

 chipper
 

Classes

class  Bounds
 
class  BoundsFilter
 A filter for keeping or rejecting points that fall within a specified bounds. More...
 
class  Classification
 Class definition to manipulate properties of point record classification. More...
 
class  ClassificationFilter
 A filter for keeping or rejecting a list of classification ids. More...
 
class  Color
 RGB color container. More...
 
class  ColorFetchingTransform
 
class  ColorFilter
 A filter for color ranges. More...
 
class  configuration_error
 
class  ContinuousValueFilter
 A templated class that allows you to create complex filters using functions that are callable from the liblas::Point class. More...
 
class  CoordinateSummary
 
class  DefaultHeader
 Singleton used for all empty points upon construction. More...
 
class  Dimension
 Dimension definition. More...
 
class  Error
 Definition of error notification used on the level of C API. More...
 
class  FilterI
 Defines public interface to LAS filter implementation. More...
 
class  Header
 Definition of public header block. More...
 
struct  index
 
class  Index
 
class  index_filter_iterator
 
class  IndexData
 
class  IndexIterator
 
class  invalid_expression
 
class  invalid_format
 
class  invalid_point_data
 Exception reporting invalid point data. More...
 
class  liblas_error
 
struct  name
 
class  not_yet_implemented
 
class  Point
 Point data record composed with X, Y, Z coordinates and attributes. More...
 
struct  position
 
class  Range
 
class  Reader
 Defines public interface to LAS reader implementation. More...
 
class  reader_iterator
 Input iterator associated with liblas::LASReader. More...
 
class  ReaderFactory
 
class  ReaderI
 
class  ReprojectionTransform
 
class  ReturnFilter
 A filter for keeping or rejecting a list of return ids. More...
 
class  Schema
 Schema definition. More...
 
struct  SetActive
 
struct  SetRequired
 
class  SpatialReference
 Spatial Reference System container for libLAS. More...
 
class  Summary
 A summarization utililty for LAS points. More...
 
class  ThinFilter
 A filter simple decimation. More...
 
class  TransformI
 Defines public interface to LAS transform implementation. More...
 
class  TranslationTransform
 
class  ValidationFilter
 
class  VariableRecord
 Representation of variable-length record data. More...
 
class  Writer
 Defines public interface to LAS writer implementation. More...
 
class  writer_iterator
 Output iterator associated with liblas::LASWriter. More...
 
class  WriterFactory
 
class  WriterI
 

Typedefs

typedef liblas::Writer LASWriter
 
typedef liblas::Reader LASReader
 
typedef liblas::Point LASPoint
 
typedef liblas::SpatialReference LASSpatialReference
 
typedef liblas::VariableRecord LASVariableRecord
 
typedef liblas::Header LASHeader
 
typedef liblas::Classification LASClassification
 
typedef liblas::Color LASColor
 
typedef boost::shared_ptr< FilterIFilterPtr
 
typedef std::vector< uint8_t > IndexVLRData
 
typedef std::vector< liblas::detail::IndexCell > IndexCellRow
 
typedef std::vector< IndexCellRowIndexCellDataBlock
 
typedef reader_iterator< Pointlasreader_iterator
 Public specialization of LASReader input iterator for liblas::LASPoint type. More...
 
typedef writer_iterator< Pointlaswriter_iterator
 Public specialization of LASWriter output iterator for liblas::LASPoint type. More...
 
typedef std::vector< DimensionDimensionArray
 
typedef boost::multi_index::multi_index_container< Dimension, boost::multi_index::indexed_by< boost::multi_index::ordered_unique< boost::multi_index::tag< position >, boost::multi_index::identity< Dimension > >, boost::multi_index::random_access< boost::multi_index::tag< index > >, boost::multi_index::hashed_unique< boost::multi_index::tag< name >, boost::multi_index::const_mem_fun< Dimension, std::string const &,&Dimension::GetName > > >> IndexMap
 
typedef IndexMap::index< name >::type index_by_name
 
typedef IndexMap::index< position >::type index_by_position
 
typedef IndexMap::index< index >::type index_by_index
 
typedef boost::shared_ptr< liblas::TransformITransformPtr
 

Enumerations

enum  LASVersion { eLASVersion10 = 1 * 100000 + 0, eLASVersion11 = 1 * 100000 + 1, eLASVersion12 = 1 * 100000 + 2, eLASVersion20 = 2 * 100000 + 0 }
 Version numbers of the ASPRS LAS Specification. More...
 
enum  FormatVersion { eVersionMajorMin = 1, eVersionMajorMax = 1, eVersionMinorMin = 0, eVersionMinorMax = 3 }
 Range of allowed ASPRS LAS file format versions. More...
 
enum  PointFormatName {
  ePointFormat0 = 0, ePointFormat1 = 1, ePointFormat2 = 2, ePointFormat3 = 3,
  ePointFormat4 = 4, ePointFormat5 = 5, ePointFormatUnknown = -99
}
 Versions of point record format. More...
 
enum  PointSize { ePointSize0 = 20, ePointSize1 = 28, ePointSize2 = 26, ePointSize3 = 34 }
 Number of bytes of point record storage in particular format. More...
 

Functions

bool operator== (Classification const &lhs, Classification const &rhs)
 Equal-to operator implemented in terms of Classification::equal. More...
 
bool operator!= (Classification const &lhs, Classification const &rhs)
 Not-equal-to operator implemented in terms of Classification::equal. More...
 
std::ostream & operator<< (std::ostream &os, Classification const &cls)
 The output stream operator is based on std::bitset<N>::operator<<. More...
 
bool operator== (Color const &lhs, Color const &rhs)
 
bool operator!= (Color const &lhs, Color const &rhs)
 
std::ostream & operator<< (std::ostream &os, liblas::Dimension const &d)
 
LAS_DLL std::ostream & operator<< (std::ostream &os, liblas::Header const &)
 
template<typename T , typename Q >
void ReadVLRData_n (T &dest, IndexVLRData const &src, Q &pos)
 
template<typename T , typename Q >
void ReadVLRDataNoInc_n (T &dest, IndexVLRData const &src, Q const &pos)
 
template<typename T , typename Q >
void ReadeVLRData_str (char *dest, IndexVLRData const &src, T const srclen, Q &pos)
 
template<typename T , typename Q >
void ReadVLRDataNoInc_str (char *dest, IndexVLRData const &src, T const srclen, Q pos)
 
template<typename T >
bool operator== (reader_iterator< T > const &lhs, reader_iterator< T > const &rhs)
 Equality operator implemented in terms of reader_iterator::equal. More...
 
template<typename T >
bool operator!= (reader_iterator< T > const &lhs, reader_iterator< T > const &rhs)
 Inequality operator implemented in terms of reader_iterator::equal. More...
 
bool Open (std::ifstream &ifs, std::string const &filename)
 Open file to read in binary mode. More...
 
std::istream * Open (std::string const &filename, std::ios::openmode mode)
 
bool Create (std::ofstream &ofs, std::string const &filename)
 Create file and open to write in binary mode. More...
 
std::ostream * Create (std::string const &filename, std::ios::openmode mode)
 
void Cleanup (std::ostream *ofs)
 
void Cleanup (std::istream *ifs)
 
bool operator== (Point const &lhs, Point const &rhs)
 Equal-to operator implemented in terms of Point::equal method. More...
 
bool operator!= (Point const &lhs, Point const &rhs)
 Not-equal-to operator implemented in terms of Point::equal method. More...
 
LAS_DLL std::ostream & operator<< (std::ostream &os, liblas::Point const &)
 
bool sort_dimensions (Dimension i, Dimension j)
 
LAS_DLL std::ostream & operator<< (std::ostream &os, liblas::Schema const &)
 
LAS_DLL std::ostream & operator<< (std::ostream &os, liblas::Summary const &s)
 
LAS_DLL uint32_t GetStreamPrecision (double scale)
 
bool operator== (VariableRecord const &lhs, VariableRecord const &rhs)
 Equality operator. More...
 
bool operator!= (VariableRecord const &lhs, VariableRecord const &rhs)
 Inequality operator. More...
 
LAS_DLL std::ostream & operator<< (std::ostream &os, liblas::VariableRecord const &)
 
bool LAS_DLL IsGDALEnabled (void)
 
bool LAS_DLL IsLibGeoTIFFEnabled (void)
 
bool LAS_DLL IsLasZipEnabled (void)
 
std::string LAS_DLL GetFullVersion (void)
 
std::string LAS_DLL GetVersion (void)
 

Variables

class LAS_DLL IndexData
 
class LAS_DLL IndexIterator
 

Detailed Description

Namespace grouping all elements of libLAS public interface.

Note
User's may notice there is namespace detail nested in the liblas namespace. The detail should be considered as private namespace dedicated for implementation details, so libLAS users are not supposed to access it directly, nor included headers from the detail subdirectory of liblas include folder.

Typedef Documentation

typedef std::vector<Dimension> liblas::DimensionArray
typedef boost::shared_ptr<FilterI> liblas::FilterPtr
typedef IndexMap::index<index>::type liblas::index_by_index
typedef IndexMap::index<name>::type liblas::index_by_name
typedef IndexMap::index<position>::type liblas::index_by_position
typedef std::vector<liblas::detail::IndexCell> liblas::IndexCellRow
typedef boost::multi_index::multi_index_container< Dimension, boost::multi_index::indexed_by< boost::multi_index::ordered_unique<boost::multi_index::tag<position>, boost::multi_index::identity<Dimension> >, boost::multi_index::random_access<boost::multi_index::tag<index> >, boost::multi_index::hashed_unique<boost::multi_index::tag<name>, boost::multi_index::const_mem_fun<Dimension,std::string const&,&Dimension::GetName> > >> liblas::IndexMap
typedef std::vector<uint8_t> liblas::IndexVLRData

Public specialization of LASReader input iterator for liblas::LASPoint type.

Public specialization of LASWriter output iterator for liblas::LASPoint type.

typedef boost::shared_ptr<liblas::TransformI> liblas::TransformPtr

Enumeration Type Documentation

Range of allowed ASPRS LAS file format versions.

Enumerator
eVersionMajorMin 

Minimum of major component.

eVersionMajorMax 

Maximum of major component.

eVersionMinorMin 

Minimum of minor component.

eVersionMinorMax 

Maximum of minor component.

Version numbers of the ASPRS LAS Specification.

Numerical representation of versions is calculated according to following formula: major * 100000 + minor

Enumerator
eLASVersion10 

LAS Format 1.0.

eLASVersion11 

LAS Format 1.1.

eLASVersion12 

LAS Format 1.2.

eLASVersion20 

LAS Format 2.0.

Versions of point record format.

Enumerator
ePointFormat0 

Point Data Format 0.

ePointFormat1 

Point Data Format 1.

ePointFormat2 

Point Data Format 2.

ePointFormat3 

Point Data Format 3.

ePointFormat4 

Point Data Format 3.

ePointFormat5 

Point Data Format 3.

ePointFormatUnknown 

Point Data Format is unknown.

Number of bytes of point record storage in particular format.

Enumerator
ePointSize0 

Size of point record in data format 0.

ePointSize1 

Size of point record in data format 1.

ePointSize2 

Size of point record in data format 2.

ePointSize3 

Size of point record in data format 3.

Function Documentation

void liblas::Cleanup ( std::ostream *  ofs)
inline
void liblas::Cleanup ( std::istream *  ifs)
inline
bool liblas::Create ( std::ofstream &  ofs,
std::string const &  filename 
)
inline

Create file and open to write in binary mode.

The output file is also attached to output stream.

Parameters
ofs- reference to output file stream to which created file is attached
filename- name of file to open
Returns
true if file has been create with success, false otherwise
Exceptions
Nothrow
std::ostream* liblas::Create ( std::string const &  filename,
std::ios::openmode  mode 
)
inline

References NULL.

std::string LAS_DLL liblas::GetFullVersion ( void  )
LAS_DLL uint32_t liblas::GetStreamPrecision ( double  scale)
std::string LAS_DLL liblas::GetVersion ( void  )
bool LAS_DLL liblas::IsGDALEnabled ( void  )
bool LAS_DLL liblas::IsLasZipEnabled ( void  )
bool LAS_DLL liblas::IsLibGeoTIFFEnabled ( void  )
bool liblas::Open ( std::ifstream &  ifs,
std::string const &  filename 
)
inline

Open file to read in binary mode.

The input file is also attached to input stream.

Parameters
ifs- reference to input file stream to which opened file is attached
filename- name of file to open
Returns
true if file has been opened with success, false otherwise
Exceptions
Nothrow
std::istream* liblas::Open ( std::string const &  filename,
std::ios::openmode  mode 
)
inline

References NULL.

template<typename T >
bool liblas::operator!= ( reader_iterator< T > const &  lhs,
reader_iterator< T > const &  rhs 
)

Inequality operator implemented in terms of reader_iterator::equal.

bool liblas::operator!= ( VariableRecord const &  lhs,
VariableRecord const &  rhs 
)
inline

Inequality operator.

Implemented in terms of LASRecordHeader::equal member function.

Exceptions
Nothrow

References LAS_DLL, and operator<<().

bool liblas::operator!= ( Color const &  lhs,
Color const &  rhs 
)
inline
bool liblas::operator!= ( Point const &  lhs,
Point const &  rhs 
)
inline

Not-equal-to operator implemented in terms of Point::equal method.

bool liblas::operator!= ( Classification const &  lhs,
Classification const &  rhs 
)
inline

Not-equal-to operator implemented in terms of Classification::equal.

LAS_DLL std::ostream& liblas::operator<< ( std::ostream &  os,
liblas::Summary const &  s 
)
LAS_DLL std::ostream& liblas::operator<< ( std::ostream &  os,
liblas::VariableRecord const &   
)
LAS_DLL std::ostream& liblas::operator<< ( std::ostream &  os,
liblas::Schema const &   
)
std::ostream& liblas::operator<< ( std::ostream &  os,
liblas::Dimension const &  d 
)
LAS_DLL std::ostream& liblas::operator<< ( std::ostream &  os,
liblas::Point const &   
)
std::ostream& liblas::operator<< ( std::ostream &  os,
Classification const &  cls 
)
inline

The output stream operator is based on std::bitset<N>::operator<<.

It outputs classification flags in form of string. Effects promised as by Standard for Programming Language C++ , 23.3.5.2: Each character is determined by the value of its corresponding bit position in *this. Character position N - 1 corresponds to bit position zero. Subsequent decreasing character positions correspond to increasing bit positions. Bit value zero becomes the character 0, bit value one becomes the character 1.

Referenced by liblas::SpatialReference::operator!=(), operator!=(), liblas::SetActive::operator()(), liblas::Point::operator[](), sort_dimensions(), and liblas::CoordinateSummary::~CoordinateSummary().

LAS_DLL std::ostream& liblas::operator<< ( std::ostream &  os,
liblas::Header const &   
)
template<typename T >
bool liblas::operator== ( reader_iterator< T > const &  lhs,
reader_iterator< T > const &  rhs 
)

Equality operator implemented in terms of reader_iterator::equal.

References liblas::reader_iterator< T >::equal().

bool liblas::operator== ( VariableRecord const &  lhs,
VariableRecord const &  rhs 
)
inline

Equality operator.

Implemented in terms of VariableRecord::equal member function.

Exceptions
Nothrow

References liblas::VariableRecord::equal().

bool liblas::operator== ( Color const &  lhs,
Color const &  rhs 
)
inline
bool liblas::operator== ( Point const &  lhs,
Point const &  rhs 
)
inline

Equal-to operator implemented in terms of Point::equal method.

References liblas::Point::equal().

bool liblas::operator== ( Classification const &  lhs,
Classification const &  rhs 
)
inline

Equal-to operator implemented in terms of Classification::equal.

References liblas::Classification::equal().

template<typename T , typename Q >
void liblas::ReadeVLRData_str ( char *  dest,
IndexVLRData const &  src,
T const  srclen,
Q &  pos 
)
inline
template<typename T , typename Q >
void liblas::ReadVLRData_n ( T &  dest,
IndexVLRData const &  src,
Q &  pos 
)
inline
template<typename T , typename Q >
void liblas::ReadVLRDataNoInc_n ( T &  dest,
IndexVLRData const &  src,
Q const &  pos 
)
inline
template<typename T , typename Q >
void liblas::ReadVLRDataNoInc_str ( char *  dest,
IndexVLRData const &  src,
T const  srclen,
pos 
)
inline
bool liblas::sort_dimensions ( Dimension  i,
Dimension  j 
)
inline

References LAS_DLL, and operator<<().

Variable Documentation