File: LasWaveformLoader.h

package info (click to toggle)
cloudcompare 2.13.2%2Bgit20240821%2Bds-4
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 151,196 kB
  • sloc: cpp: 687,219; ansic: 165,269; python: 31,109; xml: 25,906; sh: 940; makefile: 516; java: 229; asm: 204; fortran: 160; javascript: 73; perl: 18
file content (40 lines) | stat: -rw-r--r-- 1,876 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#pragma once

//##########################################################################
//#                                                                        #
//#                CLOUDCOMPARE PLUGIN: LAS-IO Plugin                      #
//#                                                                        #
//#  This program is free software; you can redistribute it and/or modify  #
//#  it under the terms of the GNU General Public License as published by  #
//#  the Free Software Foundation; version 2 of the License.               #
//#                                                                        #
//#  This program is distributed in the hope that it will be useful,       #
//#  but WITHOUT ANY WARRANTY; without even the implied warranty of        #
//#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         #
//#  GNU General Public License for more details.                          #
//#                                                                        #
//#                   COPYRIGHT: Thomas Montaigu                           #
//#                                                                        #
//##########################################################################

// Qt
#include <QFileInfo>
#include <QString>
// qCC_db
#include <ccPointCloud.h>
// LASzip
#include <laszip/laszip_api.h>

struct LasWaveformLoader
{
	LasWaveformLoader(const laszip_header_struct& laszipHeader,
	                  const QString&              lasFilename,
	                  ccPointCloud&               pointCloud);

	void loadWaveform(ccPointCloud& pointCloud, const laszip_point& currentPoint) const;

	uint64_t                       fwfDataCount{0};
	uint64_t                       fwfDataOffset{0};
	bool                           isPointFormatExtended{false};
	ccPointCloud::FWFDescriptorSet descriptors;
};