12 #ifndef __LIDAR_POINT_WRITER_H__
13 #define __LIDAR_POINT_WRITER_H__
17 LT_BEGIN_LIDAR_NAMESPACE
61 virtual void setQuantization(
const double scale[3],
const double offset[3]) = 0;
72 virtual const double *
getScale(
void)
const = 0;
82 virtual const double *
getOffset(
void)
const = 0;
115 PointInfo &supportedPointInfo)
const = 0;
148 LT_END_LIDAR_NAMESPACE
149 #endif // __LIDAR_POINT_WRITER_H__
PointWriter is the base for writing LiDAR files.
Metadata is a container for storing metadata about the point cloud.
virtual count_type write(const Bounds &bounds, double fraction, const PointInfo &pointInfo, ProgressDelegate *delegate)=0
Write out the point cloud.
Bounds is a 3-dimensional bounding box.
void setMetadata(const Metadata &metadata)
Set the metadata.
virtual const double * getOffset(void) const =0
Get the quantization offset.
ProgressDelegate is the base class for progress and interrupt reporting.
PointSource is the base class of LiDAR point cloud extraction pipeline.
virtual void setQuantization(const double scale[3], const double offset[3])=0
Set the quantization.
PointInfo is a group of ChannelInfo objects.
virtual const double * getScale(void) const =0
Get the quantization scale.
size_t getChunckSize(void) const
void groomMetadata(const Bounds &bounds, double fraction)
Remove metadata that is inappropriate for the given bounds and fraction.
Object is the base class for implementing reference counting.
PointSource::count_type count_type
const PointSource * getSrc(void) const
Get the input PointSource.
void setChunckSize(size_t size)
Metadata & getMetadata(void)
Get the Metadata.
virtual bool supportedChannels(const PointInfo &inputPointInfo, PointInfo &supportedPointInfo) const =0
Remove the unsupported channels.
void init(const PointSource *src)
Initalize the object.