ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
ecv2DViewportObject.cpp
Go to the documentation of this file.
1 // ----------------------------------------------------------------------------
2 // - CloudViewer: www.cloudViewer.org -
3 // ----------------------------------------------------------------------------
4 // Copyright (c) 2018-2024 www.cloudViewer.org
5 // SPDX-License-Identifier: MIT
6 // ----------------------------------------------------------------------------
7 
8 #include "ecv2DViewportObject.h"
9 
11  : ccHObject(name) {}
12 
13 bool cc2DViewportObject::toFile_MeOnly(QFile& out, short dataVersion) const {
14  assert(out.isOpen() && (out.openMode() & QIODevice::WriteOnly));
15  if (dataVersion < 20) {
16  assert(false);
17  return false;
18  }
19 
20  if (!ccHObject::toFile_MeOnly(out, dataVersion)) return false;
21 
22  // ecvViewportParameters (dataVersion>=20)
23  if (!m_params.toFile(out, dataVersion)) return false;
24 
25  return true;
26 }
27 
29  short minVersion = std::max(static_cast<short>(20),
31  return std::max(minVersion, m_params.minimumFileVersion());
32 }
33 
35  short dataVersion,
36  int flags,
37  LoadedIDMap& oldToNewIDMap) {
38  if (!ccHObject::fromFile_MeOnly(in, dataVersion, flags, oldToNewIDMap))
39  return false;
40 
41  // ecvViewportParameters (dataVersion>=20)
42  if (!m_params.fromFile(in, dataVersion, flags, oldToNewIDMap)) return false;
43 
44  return true;
45 }
std::string name
ecvViewportParameters m_params
Viewport parameters.
short minimumFileVersion_MeOnly() const override
cc2DViewportObject(QString name=QString())
Default constructor.
bool toFile_MeOnly(QFile &out, short dataVersion) const override
Save own object data.
bool fromFile_MeOnly(QFile &in, short dataVersion, int flags, LoadedIDMap &oldToNewIDMap) override
Loads own object data.
Hierarchical CLOUDVIEWER Object.
Definition: ecvHObject.h:25
virtual short minimumFileVersion_MeOnly() const
virtual bool fromFile_MeOnly(QFile &in, short dataVersion, int flags, LoadedIDMap &oldToNewIDMap)
Loads own object data.
virtual bool toFile_MeOnly(QFile &out, short dataVersion) const
Save own object data.
QMultiMap< unsigned, unsigned > LoadedIDMap
Map of loaded unique IDs (old ID --> new ID)
bool toFile(QFile &out, short dataVersion) const override
Saves data to binary stream.
short minimumFileVersion() const override
Returns the minimum file version required to save this instance.
bool fromFile(QFile &in, short dataVersion, int flags, LoadedIDMap &oldToNewIDMap) override
Loads data from binary stream.