MrSID Decode SDK for LiDAR Reference Manual  1.1.4.4709
TXTPointWriter.h
Go to the documentation of this file.
1 /* //////////////////////////////////////////////////////////////////////////
2 // //
3 // This code is Copyright (c) 2008-2010 LizardTech, Inc, 1008 Western //
4 // Avenue, Suite 200, Seattle, WA 98104. Unauthorized use or distribution //
5 // prohibited. Access to and use of this code is permitted only under //
6 // license from LizardTech, Inc. Portions of the code are protected by //
7 // US and foreign patents and other filings. All Rights Reserved. //
8 // //
10 /* PUBLIC */
11 
12 #ifndef __LIDAR_TXT_POINT_WRITER_H__
13 #define __LIDAR_TXT_POINT_WRITER_H__
14 
16 #include "lidar/Stream.h"
17 
18 LT_BEGIN_LIDAR_NAMESPACE
19 
27 {
28  CONCRETE_OBJECT(TXTPointWriter);
29 public:
42  void init(const PointSource *src, const char *path, const char *format);
55  void init(const PointSource *src, IO *io, const char *format);
56 
69  void init(const PointSource *src, const char *path, const PointInfo &fieldInfo);
82  void init(const PointSource *src, IO *io, const PointInfo &fieldInfo);
83 
84  void writeBegin(const PointInfo &pointInfo);
85  void writePoints(const PointData &points,
86  size_t numPoints,
87  ProgressDelegate *delegate);
88  void writeEnd(PointSource::count_type numPoints,
89  const Bounds &bounds);
90 
91  bool supportedChannels(const PointInfo &inputPointInfo,
92  PointInfo &supportedPointInfo) const;
93 
94 protected:
95  struct Handler;
96 
98  size_t m_numHandlers;
99  Handler *m_handler;
100 };
101 
102 LT_END_LIDAR_NAMESPACE
103 #endif // __LIDAR_TXT_POINT_WRITER_H__
void init(const PointSource *src, const char *path, const char *format)
Initialize with input PointSource and output filename and format string.
bool supportedChannels(const PointInfo &inputPointInfo, PointInfo &supportedPointInfo) const
Remove the unsupported channels.
IO is the base class for binary input and output.
Definition: IO.h:29
void writeEnd(PointSource::count_type numPoints, const Bounds &bounds)
Finish writing the file.
StreamWriter implements buffered writes to IO objects.
Definition: Stream.h:204
PointInfo is a group of ChannelInfo objects.
Definition: PointData.h:185
SimplePointWriter handles some of the bookkeeping of writing a file.
PointSource is the base class of LiDAR point cloud extraction pipeline.
Definition: PointSource.h:40
TXTPointWriter writes LiDAR-based Text files.
size_t m_numHandlers
Bounds is a 3-dimensional bounding box.
Definition: Types.h:127
PointData is a group of ChannelData objects.
Definition: PointData.h:427
Handler * m_handler
void writeBegin(const PointInfo &pointInfo)
Begin writing the file.
ProgressDelegate is the base class for progress and interrupt reporting.
void writePoints(const PointData &points, size_t numPoints, ProgressDelegate *delegate)
Write a set of points.
lt_int64 count_type
Definition: PointSource.h:44
StreamWriter m_stream

LizardTech