laswriter_bin.hpp
Go to the documentation of this file.
1 /*
2 ===============================================================================
3 
4  FILE: laswriter_bin.hpp
5 
6  CONTENTS:
7 
8  Writes LIDAR points from to ASCII through on-the-fly conversion from LAS.
9 
10  PROGRAMMERS:
11 
12  martin.isenburg@gmail.com
13 
14  COPYRIGHT:
15 
16  (c) 2007-2011, Martin Isenburg, LASSO - tools to catch reality
17 
18  This is free software; you can redistribute and/or modify it under the
19  terms of the GNU Lesser General Licence as published by the Free Software
20  Foundation. See the COPYING file for more information.
21 
22  This software is distributed WITHOUT ANY WARRANTY and without even the
23  implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
24 
25  CHANGE HISTORY:
26 
27  5 November 2011 -- changed default IO buffer size with setvbuf() to 65536
28  5 September 2011 -- created after sampling grapes in the sommerhausen hills
29 
30 ===============================================================================
31 */
32 #ifndef LAS_WRITER_BIN_HPP
33 #define LAS_WRITER_BIN_HPP
34 
35 #include "laswriter.hpp"
36 
37 #include <stdio.h>
38 
39 class ByteStreamOut;
40 
41 class LASwriterBIN : public LASwriter
42 {
43 public:
44 
45  BOOL refile(FILE* file);
46 
47  BOOL open(const char* file_name, const LASheader* header, const char* version, U32 io_buffer_size=65536);
48  BOOL open(FILE* file, const LASheader* header, const char* version);
49  BOOL open(ByteStreamOut* stream, const LASheader* header, const char* version);
50 
51  BOOL write_point(const LASpoint* point);
52  BOOL chunk() { return FALSE; };
53 
54  BOOL update_header(const LASheader* header, BOOL use_inventory=TRUE, BOOL update_extra_bytes=FALSE);
55  I64 close(BOOL update_npoints=true);
56 
57  LASwriterBIN();
58  ~LASwriterBIN();
59 
60 private:
62  FILE* file;
68 };
69 
70 #endif
LASheader
Definition: lasdefinitions.hpp:952
LASwriterBIN::version
U32 version
Definition: laswriter_bin.hpp:63
LASwriterBIN::~LASwriterBIN
~LASwriterBIN()
Definition: laswriter_bin.cpp:296
LASwriterBIN::origin_y
F64 origin_y
Definition: laswriter_bin.hpp:66
LASpoint
Definition: lasdefinitions.hpp:472
LASwriterBIN::LASwriterBIN
LASwriterBIN()
Definition: laswriter_bin.cpp:290
LASwriterBIN::close
I64 close(BOOL update_npoints=true)
Definition: laswriter_bin.cpp:250
LASwriterBIN::units
I32 units
Definition: laswriter_bin.hpp:64
LASwriterBIN::origin_z
F64 origin_z
Definition: laswriter_bin.hpp:67
I64
long long I64
Definition: mydefs.hpp:48
F64
double F64
Definition: mydefs.hpp:52
LASwriterBIN::update_header
BOOL update_header(const LASheader *header, BOOL use_inventory=TRUE, BOOL update_extra_bytes=FALSE)
Definition: laswriter_bin.cpp:245
I32
int I32
Definition: mydefs.hpp:35
LASwriterBIN::stream
ByteStreamOut * stream
Definition: laswriter_bin.hpp:61
TRUE
#define TRUE
Definition: mydefs.hpp:137
LASwriterBIN::write_point
BOOL write_point(const LASpoint *point)
Definition: laswriter_bin.cpp:188
LASwriter
Definition: laswriter.hpp:47
laswriter.hpp
ByteStreamOut
Definition: bytestreamout.hpp:36
LASwriterBIN
Definition: laswriter_bin.hpp:41
LASwriterBIN::origin_x
F64 origin_x
Definition: laswriter_bin.hpp:65
BOOL
int BOOL
Definition: mydefs.hpp:57
LASwriterBIN::open
BOOL open(const char *file_name, const LASheader *header, const char *version, U32 io_buffer_size=65536)
Definition: laswriter_bin.cpp:88
FALSE
#define FALSE
Definition: mydefs.hpp:133
LASwriterBIN::file
FILE * file
Definition: laswriter_bin.hpp:62
LASwriterBIN::refile
BOOL refile(FILE *file)
Definition: laswriter_bin.cpp:81
U32
unsigned int U32
Definition: mydefs.hpp:39
LASwriterBIN::chunk
BOOL chunk()
Definition: laswriter_bin.hpp:52


lvr2
Author(s): Thomas Wiemann , Sebastian Pütz , Alexander Mock , Lars Kiesow , Lukas Kalbertodt , Tristan Igelbrink , Johan M. von Behren , Dominik Feldschnieders , Alexander Löhr
autogenerated on Wed Mar 2 2022 00:37:23