laswriteitemcompressed_v1.hpp
Go to the documentation of this file.
1 /*
2 ===============================================================================
3 
4  FILE: laswriteitemcompressed_v1.hpp
5 
6  CONTENTS:
7 
8  Implementation of LASitemReadCompressed for *all* items (version 1).
9 
10  PROGRAMMERS:
11 
12  martin.isenburg@gmail.com
13 
14  COPYRIGHT:
15 
16  (c) 2010-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  10 January 2011 -- licensing change for LGPL release and liblas integration
28  12 December 2010 -- refactored after watching two movies with silke
29 
30 ===============================================================================
31 */
32 #ifndef LAS_WRITE_ITEM_COMPRESSED_V1_H
33 #define LAS_WRITE_ITEM_COMPRESSED_V1_H
34 
35 #include "laswriteitem.hpp"
36 #include "entropyencoder.hpp"
37 #include "integercompressor.hpp"
38 
40 {
41 public:
42 
44 
45  BOOL init(const U8* item);
46  BOOL write(const U8* item);
47 
49 
50 private:
53 
63  EntropyModel* m_changed_values;
64  EntropyModel* m_bit_byte[256];
65  EntropyModel* m_classification[256];
66  EntropyModel* m_user_data[256];
67 };
68 
70 {
71 public:
72 
74 
75  BOOL init(const U8* item);
76  BOOL write(const U8* item);
77 
79 
80 private:
83 
84  EntropyModel* m_gpstime_multi;
85  EntropyModel* m_gpstime_0diff;
89 };
90 
92 {
93 public:
94 
96 
97  BOOL init(const U8* item);
98  BOOL write(const U8* item);
99 
101 
102 private:
105 
106  EntropyModel* m_byte_used;
108 };
109 
111 {
112 public:
113 
115 
116  BOOL init(const U8* item);
117  BOOL write(const U8* item);
118 
120 
121 private:
124 
127  EntropyModel* m_packet_index;
128  EntropyModel* m_offset_diff[4];
133 };
134 
136 {
137 public:
138 
140 
141  BOOL init(const U8* item);
142  BOOL write(const U8* item);
143 
145 
146 private:
150 
152 };
153 
154 #endif
LASwriteItemCompressed_RGB12_v1::last_item
U8 * last_item
Definition: laswriteitemcompressed_v1.hpp:104
LASwriteItemCompressed_GPSTIME11_v1
Definition: laswriteitemcompressed_v1.hpp:69
LASwriteItemCompressed_BYTE_v1
Definition: laswriteitemcompressed_v1.hpp:135
LASwriteItemCompressed_GPSTIME11_v1::init
BOOL init(const U8 *item)
Definition: laswriteitemcompressed_v1.cpp:283
LASwriteItemCompressed_BYTE_v1::write
BOOL write(const U8 *item)
Definition: laswriteitemcompressed_v1.cpp:629
LASwriteItemCompressed_POINT10_v1::last_y_diff
I32 last_y_diff[3]
Definition: laswriteitemcompressed_v1.hpp:55
LASwriteItemCompressed_POINT10_v1::last_incr
I32 last_incr
Definition: laswriteitemcompressed_v1.hpp:56
LASwriteItemCompressed_GPSTIME11_v1::write
BOOL write(const U8 *item)
Definition: laswriteitemcompressed_v1.cpp:299
LASwriteItemCompressed_GPSTIME11_v1::m_gpstime_0diff
EntropyModel * m_gpstime_0diff
Definition: laswriteitemcompressed_v1.hpp:85
LASwriteItemCompressed_RGB12_v1::LASwriteItemCompressed_RGB12_v1
LASwriteItemCompressed_RGB12_v1(EntropyEncoder *enc)
Definition: laswriteitemcompressed_v1.cpp:419
LASwriteItemCompressed_GPSTIME11_v1::ic_gpstime
IntegerCompressor * ic_gpstime
Definition: laswriteitemcompressed_v1.hpp:86
LASwriteItemCompressed_POINT10_v1::m_bit_byte
EntropyModel * m_bit_byte[256]
Definition: laswriteitemcompressed_v1.hpp:64
LASwriteItemCompressed_POINT10_v1::last_x_diff
I32 last_x_diff[3]
Definition: laswriteitemcompressed_v1.hpp:54
laswriteitem.hpp
LASwriteItemCompressed_GPSTIME11_v1::last_gpstime
U64I64F64 last_gpstime
Definition: laswriteitemcompressed_v1.hpp:82
LASwriteItemCompressed_POINT10_v1::enc
EntropyEncoder * enc
Definition: laswriteitemcompressed_v1.hpp:51
I32
int I32
Definition: mydefs.hpp:35
LASwriteItemCompressed_WAVEPACKET13_v1::~LASwriteItemCompressed_WAVEPACKET13_v1
~LASwriteItemCompressed_WAVEPACKET13_v1()
Definition: laswriteitemcompressed_v1.cpp:509
LASwriteItemCompressed_BYTE_v1::enc
EntropyEncoder * enc
Definition: laswriteitemcompressed_v1.hpp:147
LASwriteItemCompressed_BYTE_v1::LASwriteItemCompressed_BYTE_v1
LASwriteItemCompressed_BYTE_v1(EntropyEncoder *enc, U32 number)
Definition: laswriteitemcompressed_v1.cpp:596
LASwriteItemCompressed_RGB12_v1::m_byte_used
EntropyModel * m_byte_used
Definition: laswriteitemcompressed_v1.hpp:106
LASwriteItemCompressed_POINT10_v1::m_changed_values
EntropyModel * m_changed_values
Definition: laswriteitemcompressed_v1.hpp:63
LASwriteItemCompressed_POINT10_v1::ic_dy
IntegerCompressor * ic_dy
Definition: laswriteitemcompressed_v1.hpp:58
LASwriteItemCompressed_POINT10_v1::ic_scan_angle_rank
IntegerCompressor * ic_scan_angle_rank
Definition: laswriteitemcompressed_v1.hpp:61
LASwriteItemCompressed_WAVEPACKET13_v1::sym_last_offset_diff
U32 sym_last_offset_diff
Definition: laswriteitemcompressed_v1.hpp:126
entropyencoder.hpp
LASwriteItemCompressed_GPSTIME11_v1::last_gpstime_diff
I32 last_gpstime_diff
Definition: laswriteitemcompressed_v1.hpp:88
LASwriteItemCompressed_POINT10_v1::m_classification
EntropyModel * m_classification[256]
Definition: laswriteitemcompressed_v1.hpp:65
LASwriteItemCompressed_GPSTIME11_v1::LASwriteItemCompressed_GPSTIME11_v1
LASwriteItemCompressed_GPSTIME11_v1(EntropyEncoder *enc)
Definition: laswriteitemcompressed_v1.cpp:265
LASwriteItemCompressed_RGB12_v1::~LASwriteItemCompressed_RGB12_v1
~LASwriteItemCompressed_RGB12_v1()
Definition: laswriteitemcompressed_v1.cpp:433
LASwriteItemCompressed_POINT10_v1::init
BOOL init(const U8 *item)
Definition: laswriteitemcompressed_v1.cpp:101
LASwriteItemCompressed_WAVEPACKET13_v1::m_packet_index
EntropyModel * m_packet_index
Definition: laswriteitemcompressed_v1.hpp:127
LASwriteItemCompressed_WAVEPACKET13_v1::LASwriteItemCompressed_WAVEPACKET13_v1
LASwriteItemCompressed_WAVEPACKET13_v1(EntropyEncoder *enc)
Definition: laswriteitemcompressed_v1.cpp:488
LASwriteItemCompressed_POINT10_v1::ic_dx
IntegerCompressor * ic_dx
Definition: laswriteitemcompressed_v1.hpp:57
LASwriteItemCompressed_WAVEPACKET13_v1::write
BOOL write(const U8 *item)
Definition: laswriteitemcompressed_v1.cpp:546
LASwriteItemCompressed_WAVEPACKET13_v1::enc
EntropyEncoder * enc
Definition: laswriteitemcompressed_v1.hpp:122
LASwriteItemCompressed_RGB12_v1
Definition: laswriteitemcompressed_v1.hpp:91
LASwriteItemCompressed_POINT10_v1::write
BOOL write(const U8 *item)
Definition: laswriteitemcompressed_v1.cpp:131
LASwriteItemCompressed_WAVEPACKET13_v1::m_offset_diff
EntropyModel * m_offset_diff[4]
Definition: laswriteitemcompressed_v1.hpp:128
LASwriteItemCompressed_GPSTIME11_v1::~LASwriteItemCompressed_GPSTIME11_v1
~LASwriteItemCompressed_GPSTIME11_v1()
Definition: laswriteitemcompressed_v1.cpp:276
LASwriteItemCompressed_WAVEPACKET13_v1::ic_return_point
IntegerCompressor * ic_return_point
Definition: laswriteitemcompressed_v1.hpp:131
LASwriteItemCompressed_GPSTIME11_v1::enc
EntropyEncoder * enc
Definition: laswriteitemcompressed_v1.hpp:81
LASwriteItemCompressed_WAVEPACKET13_v1::last_diff_32
I32 last_diff_32
Definition: laswriteitemcompressed_v1.hpp:125
LASwriteItemCompressed_RGB12_v1::enc
EntropyEncoder * enc
Definition: laswriteitemcompressed_v1.hpp:103
LASwriteItemCompressed
Definition: laswriteitem.hpp:65
LASwriteItemCompressed_BYTE_v1::~LASwriteItemCompressed_BYTE_v1
~LASwriteItemCompressed_BYTE_v1()
Definition: laswriteitemcompressed_v1.cpp:611
LASwriteItemCompressed_WAVEPACKET13_v1::ic_offset_diff
IntegerCompressor * ic_offset_diff
Definition: laswriteitemcompressed_v1.hpp:129
LASwriteItemCompressed_RGB12_v1::ic_rgb
IntegerCompressor * ic_rgb
Definition: laswriteitemcompressed_v1.hpp:107
U8
unsigned char U8
Definition: mydefs.hpp:41
BOOL
int BOOL
Definition: mydefs.hpp:57
LASwriteItemCompressed_WAVEPACKET13_v1::last_item
U8 * last_item
Definition: laswriteitemcompressed_v1.hpp:123
U64I64F64
Definition: mydefs.hpp:61
LASwriteItemCompressed_BYTE_v1::ic_byte
IntegerCompressor * ic_byte
Definition: laswriteitemcompressed_v1.hpp:151
LASwriteItemCompressed_WAVEPACKET13_v1::ic_packet_size
IntegerCompressor * ic_packet_size
Definition: laswriteitemcompressed_v1.hpp:130
LASwriteItemCompressed_GPSTIME11_v1::multi_extreme_counter
I32 multi_extreme_counter
Definition: laswriteitemcompressed_v1.hpp:87
integercompressor.hpp
LASwriteItemCompressed_POINT10_v1::last_item
U8 last_item[20]
Definition: laswriteitemcompressed_v1.hpp:52
LASwriteItemCompressed_POINT10_v1::LASwriteItemCompressed_POINT10_v1
LASwriteItemCompressed_POINT10_v1(EntropyEncoder *enc)
Definition: laswriteitemcompressed_v1.cpp:59
LASwriteItemCompressed_GPSTIME11_v1::m_gpstime_multi
EntropyModel * m_gpstime_multi
Definition: laswriteitemcompressed_v1.hpp:84
LASwriteItemCompressed_WAVEPACKET13_v1
Definition: laswriteitemcompressed_v1.hpp:110
LASwriteItemCompressed_POINT10_v1::~LASwriteItemCompressed_POINT10_v1
~LASwriteItemCompressed_POINT10_v1()
Definition: laswriteitemcompressed_v1.cpp:83
LASwriteItemCompressed_RGB12_v1::init
BOOL init(const U8 *item)
Definition: laswriteitemcompressed_v1.cpp:440
LASwriteItemCompressed_BYTE_v1::init
BOOL init(const U8 *item)
Definition: laswriteitemcompressed_v1.cpp:617
U32
unsigned int U32
Definition: mydefs.hpp:39
LASwriteItemCompressed_POINT10_v1
Definition: laswriteitemcompressed_v1.hpp:39
LASwriteItemCompressed_POINT10_v1::m_user_data
EntropyModel * m_user_data[256]
Definition: laswriteitemcompressed_v1.hpp:66
LASwriteItemCompressed_POINT10_v1::ic_point_source_ID
IntegerCompressor * ic_point_source_ID
Definition: laswriteitemcompressed_v1.hpp:62
LASwriteItemCompressed_RGB12_v1::write
BOOL write(const U8 *item)
Definition: laswriteitemcompressed_v1.cpp:453
LASwriteItemCompressed_POINT10_v1::ic_z
IntegerCompressor * ic_z
Definition: laswriteitemcompressed_v1.hpp:59
LASwriteItemCompressed_WAVEPACKET13_v1::init
BOOL init(const U8 *item)
Definition: laswriteitemcompressed_v1.cpp:523
EntropyEncoder
Definition: entropyencoder.hpp:38
LASwriteItemCompressed_WAVEPACKET13_v1::ic_xyz
IntegerCompressor * ic_xyz
Definition: laswriteitemcompressed_v1.hpp:132
IntegerCompressor
Definition: integercompressor.hpp:53
LASwriteItemCompressed_BYTE_v1::last_item
U8 * last_item
Definition: laswriteitemcompressed_v1.hpp:149
LASwriteItemCompressed_BYTE_v1::number
U32 number
Definition: laswriteitemcompressed_v1.hpp:148
LASwriteItemCompressed_POINT10_v1::ic_intensity
IntegerCompressor * ic_intensity
Definition: laswriteitemcompressed_v1.hpp:60


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