ext
laslib
inc
laswaveform13reader.hpp
Go to the documentation of this file.
1
/*
2
===============================================================================
3
4
FILE: laswaveform13reader.hpp
5
6
CONTENTS:
7
8
Interface to read the Waveform Data Packets that are associated with points
9
of type 4 and 5 in LAS 1.3.
10
11
PROGRAMMERS:
12
13
martin.isenburg@gmail.com
14
15
COPYRIGHT:
16
17
(c) 2007-2011, Martin Isenburg, LASSO - tools to catch reality
18
19
This is free software; you can redistribute and/or modify it under the
20
terms of the GNU Lesser General Licence as published by the Free Software
21
Foundation. See the COPYING file for more information.
22
23
This software is distributed WITHOUT ANY WARRANTY and without even the
24
implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
25
26
CHANGE HISTORY:
27
28
17 October 2011 -- created after bauarbeiter on the roof next door woke me
29
30
===============================================================================
31
*/
32
#ifndef LAS_WAVEFORM_13_READER_HPP
33
#define LAS_WAVEFORM_13_READER_HPP
34
35
#include "
lasdefinitions.hpp
"
36
37
class
ByteStreamIn
;
38
class
LASwaveformDescription
;
39
class
ArithmeticDecoder
;
40
class
IntegerCompressor
;
41
42
class
LASwaveform13reader
43
{
44
public
:
45
U32
nbits
;
46
U32
nsamples
;
47
U32
temporal
;
48
F32
location
;
49
F32
XYZt
[3];
50
F64
XYZreturn
[3];
51
52
F64
XYZsample
[3];
53
54
U32
s_count
;
55
U32
sample
;
56
57
U32
sampleMin
;
58
U32
sampleMax
;
59
60
U8
*
samples
;
61
62
BOOL
open
(
const
char
* file_name,
I64
start_of_waveform_data_packet_record
,
const
LASvlr_wave_packet_descr
*
const
*
wave_packet_descr
);
63
BOOL
is_compressed
()
const
;
64
65
BOOL
read_waveform
(
const
LASpoint
* point);
66
67
BOOL
get_samples
();
68
BOOL
has_samples
();
69
70
BOOL
get_samples_xyz
();
71
BOOL
has_samples_xyz
();
72
73
void
close
();
74
75
LASwaveform13reader
();
76
~LASwaveform13reader
();
77
78
private
:
79
BOOL
compressed
;
80
U32
size
;
81
const
LASvlr_wave_packet_descr
*
const
*
wave_packet_descr
;
82
FILE*
file
;
83
ByteStreamIn
*
stream
;
84
I64
start_of_waveform_data_packet_record
;
85
I64
last_position
;
86
ArithmeticDecoder
*
dec
;
87
IntegerCompressor
*
ic8
;
88
IntegerCompressor
*
ic16
;
89
};
90
91
#endif
LASwaveform13reader::has_samples
BOOL has_samples()
Definition:
laswaveform13reader.cpp:368
LASwaveform13reader::LASwaveform13reader
LASwaveform13reader()
Definition:
laswaveform13reader.cpp:37
BOOL
int BOOL
Definition:
mydefs.hpp:57
LASwaveform13reader::samples
U8 * samples
Definition:
laswaveform13reader.hpp:60
LASwaveform13reader::s_count
U32 s_count
Definition:
laswaveform13reader.hpp:54
LASwaveform13reader::ic8
IntegerCompressor * ic8
Definition:
laswaveform13reader.hpp:87
F32
float F32
Definition:
mydefs.hpp:51
LASwaveform13reader
Definition:
laswaveform13reader.hpp:42
U32
unsigned int U32
Definition:
mydefs.hpp:39
LASwaveform13reader::temporal
U32 temporal
Definition:
laswaveform13reader.hpp:47
LASwaveform13reader::file
FILE * file
Definition:
laswaveform13reader.hpp:82
LASwaveform13reader::XYZt
F32 XYZt[3]
Definition:
laswaveform13reader.hpp:49
LASwaveform13reader::has_samples_xyz
BOOL has_samples_xyz()
Definition:
laswaveform13reader.cpp:412
I64
long long I64
Definition:
mydefs.hpp:48
U8
unsigned char U8
Definition:
mydefs.hpp:41
LASwaveform13reader::open
BOOL open(const char *file_name, I64 start_of_waveform_data_packet_record, const LASvlr_wave_packet_descr *const *wave_packet_descr)
Definition:
laswaveform13reader.cpp:80
LASwaveform13reader::ic16
IntegerCompressor * ic16
Definition:
laswaveform13reader.hpp:88
IntegerCompressor
Definition:
integercompressor.hpp:53
LASwaveform13reader::last_position
I64 last_position
Definition:
laswaveform13reader.hpp:85
LASwaveform13reader::stream
ByteStreamIn * stream
Definition:
laswaveform13reader.hpp:83
ByteStreamIn
Definition:
bytestreamin.hpp:36
LASvlr_wave_packet_descr
Definition:
lasdefinitions.hpp:917
lasdefinitions.hpp
LASwaveform13reader::get_samples_xyz
BOOL get_samples_xyz()
Definition:
laswaveform13reader.cpp:386
LASwaveform13reader::sampleMax
U32 sampleMax
Definition:
laswaveform13reader.hpp:58
LASwaveform13reader::XYZsample
F64 XYZsample[3]
Definition:
laswaveform13reader.hpp:52
LASwaveform13reader::nsamples
U32 nsamples
Definition:
laswaveform13reader.hpp:46
LASpoint
Definition:
lasdefinitions.hpp:472
LASwaveform13reader::wave_packet_descr
const LASvlr_wave_packet_descr *const * wave_packet_descr
Definition:
laswaveform13reader.hpp:81
LASwaveform13reader::is_compressed
BOOL is_compressed() const
Definition:
laswaveform13reader.cpp:75
LASwaveform13reader::compressed
BOOL compressed
Definition:
laswaveform13reader.hpp:79
LASwaveform13reader::get_samples
BOOL get_samples()
Definition:
laswaveform13reader.cpp:342
LASwaveform13reader::location
F32 location
Definition:
laswaveform13reader.hpp:48
LASwaveform13reader::size
U32 size
Definition:
laswaveform13reader.hpp:80
LASwaveformDescription
Definition:
laswaveform13writer.cpp:37
LASwaveform13reader::close
void close()
Definition:
laswaveform13reader.cpp:434
LASwaveform13reader::dec
ArithmeticDecoder * dec
Definition:
laswaveform13reader.hpp:86
LASwaveform13reader::start_of_waveform_data_packet_record
I64 start_of_waveform_data_packet_record
Definition:
laswaveform13reader.hpp:84
ArithmeticDecoder
Definition:
arithmeticdecoder.hpp:39
LASwaveform13reader::sampleMin
U32 sampleMin
Definition:
laswaveform13reader.hpp:57
LASwaveform13reader::XYZreturn
F64 XYZreturn[3]
Definition:
laswaveform13reader.hpp:50
LASwaveform13reader::sample
U32 sample
Definition:
laswaveform13reader.hpp:55
LASwaveform13reader::read_waveform
BOOL read_waveform(const LASpoint *point)
Definition:
laswaveform13reader.cpp:257
LASwaveform13reader::~LASwaveform13reader
~LASwaveform13reader()
Definition:
laswaveform13reader.cpp:67
LASwaveform13reader::nbits
U32 nbits
Definition:
laswaveform13reader.hpp:45
F64
double F64
Definition:
mydefs.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 Mon Feb 28 2022 22:46:07