MrSID Decode SDK for LiDAR Reference Manual 1.1.4.4709

- Main Page
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
PointReader Class Referenceabstract

PointReader is the base class for reading LiDAR file formats. More...

`#include <PointReader.h>`

Inheritance diagram for PointReader:
[legend]
Collaboration diagram for PointReader:
[legend]

## Public Member Functions
const PointInfo & | getPointInfo (void) const
| Get the point information. More...
count_type | getNumPoints (void) const
| Get the number of points. More...
const char * | getWKT (void) const
| Get the spatial reference system. More...
void | overrideWKT (const char *wkt)
virtual const char * | getFileFormatString (void) const =0
| Get the file type and version. More...
const Bounds & | getBounds (void) const
| Get the bounding box. More...
const double * | getScale (void) const
| Get the quantization scale. More...
const double * | getOffset (void) const
| Get the quantization offset. More...
char const *const * | getClassIdNames (void) const
| Get the classification names. More...
size_t | getNumClassIdNames (void) const
| Get the number of classification names. More...
double | getTotalWork (const Bounds &bounds, double fraction) const
| Get the amount of work needed to decode bounds. More...
Public Member Functions inherited from PointSource
size_t | getNumChannels (void) const
| Get the number of channels. More...
bool | hasChannel (const char *name) const
| Determine if there is a channel with a given name. More...
const ChannelInfo & | getChannel (size_t idx) const
| Access the channel info. More...
const ChannelInfo * | getChannel (const char *name) const
| Access the channel data. More...
virtual void | loadMetadata (Metadata &metadata, bool sanitize) const =0
| Load the point clouds metadata. More...
virtual PointIterator * | createIterator (const Bounds &bounds, double fraction, const PointInfo &pointInfo, ProgressDelegate *delegate) const =0
| Get a PointIterator for a given bounds. More...
size_t | read (const Bounds &bounds, PointData &points, ProgressDelegate *delegate) const
| Fill the point buffer with the best sample of the point cloud in bounds. More...
Public Member Functions inherited from Object
int | retain (void) const
| Increment the reference count by one. More...
int | release (void) const
| Decrement the reference count by one. More...

## Protected Member Functions
void | setPointInfo (const PointInfo &pointInfo)
| Set the point information. More...
void | setNumPoints (count_type numPoints)
| Set the number of points in the point cloud. More...
void | setBounds (const Bounds &bounds)
| Set the bounding box of the point cloud. More...
void | setWKT (const char *wkt)
| Set the spatial reference system. More...
void | setQuantization (const double scale[3], const double offset[3])
| Set the quantization scale and offset. More...

## Protected Attributes
bool | m_ignoreNativeWKTMetadata

## Additional Inherited Members
Public Types inherited from PointSource
typedef lt_int64 | count_type

## Detailed Description

The PointReader class is the base class for reading LiDAR file formats. It add one method to the PointSource interface, getFileFormatString().

Definition at line 27 of file PointReader.h.

## Member Function Documentation

const Bounds& PointReader::getBounds | ( | void | ) |  | const
| virtual

This method returns the geo bounding box of the point cloud.

Implements PointSource.

char const* const* PointReader::getClassIdNames | ( | void | ) |  | const
| virtual

This methods returns an array of classification names with length getNumClassIdNames().

Implements PointSource.

virtual const char* PointReader::getFileFormatString | ( | void | ) |  | const
| pure virtual

This method returns a string the contains the File Type and version of the PointReader. For example for a MrSID file this will will return "MG4 4.0.0.1".

Implemented in TXTPointReader, and MG4PointReader.

size_t PointReader::getNumClassIdNames | ( | void | ) |  | const
| virtual

This methods returns the number of classification names.

Implements PointSource.

count_type PointReader::getNumPoints | ( | void | ) |  | const
| virtual

This method returns the number of points in the point cloud.

Implements PointSource.

const double* PointReader::getOffset | ( | void | ) |  | const
| virtual

This method returns the quantization offset for X, Y, and Z channels. It returns NULL then the point cloud is not quantized or quantization is unknown.

Implements PointSource.

const PointInfo& PointReader::getPointInfo | ( | void | ) |  | const
| virtual

This method returns a PointInfo object.

Implements PointSource.

const double* PointReader::getScale | ( | void | ) |  | const
| virtual

This method returns the quantization scale factors for X, Y, and Z channels. It returns NULL then the point cloud is not quantized or quantization is unknown.

Implements PointSource.

double PointReader::getTotalWork | ( | const Bounds & | bounds,
|  | double | fraction
| ) |  | const
| virtual

This method returns the amount of work needed to decode the points in bounds. getTotalWork() is used with ProgressDelegate to track the progress of a decode or encode.

Parameters

  bounds | the region of interest
  fraction | the fraction of the points you want (use 1.0 for all the points and use 0.1 to keep every tenth point)

Returns
  the work needed to decode bounds

Implements PointSource.

Reimplemented in TXTPointReader.

const char* PointReader::getWKT | ( | void | ) |  | const
| virtual

This method returns the spatial reference system as a Well Known Text (WKT) string. If the PointSource does not have a spatial reference system it will return NULL.

Implements PointSource.

void PointReader::overrideWKT | ( | const char * | wkt) |  |

void PointReader::setBounds | ( | const Bounds & | bounds) |  |
| protected

This method sets the bounding box of the point cloud. All subclasses must call this function in thier init() function.

Parameters

  bounds | the bounding box of the point cloud.

See Also
  getBounds()

void PointReader::setNumPoints | ( | count_type | numPoints) |  |
| protected

This method sets the number of points in the point cloud. All subclasses must call this function in thier init() function.

Parameters

  numPoints | the number of points in the point cloud

See Also
  getNumPoints()

void PointReader::setPointInfo | ( | const PointInfo & | pointInfo) |  |
| protected

This method sets the channel information. All subclasses must call this function in thier init() function.

Parameters

  pointInfo | the channel information

See Also
  getPointInfo()

void PointReader::setQuantization | ( | const double | scale[3],
|  | const double | offset[3]
| ) |  |
| protected

This method sets the quantization scale and offset for the point cloud. If the data is not quantized do not call this function or call it with scale = NULL and offset = NULL.

Parameters

  scale | the quantization scale for the X, Y, and Z channels
  offset | the offset for the X, Y, and Z channels

See Also
  getScale()
  getOffset()

void PointReader::setWKT | ( | const char * | wkt) |  |
| protected

This method uses a Well Known Test (WKT) string to set the spatial reference system.

Parameters

  wkt | the WKT representation of the spatial reference system

See Also
  getWKT()

## Member Data Documentation

bool PointReader::m_ignoreNativeWKTMetadata
| protected

Definition at line 130 of file PointReader.h.

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

- PointReader.h

LizardTech