ImagingTools Core SDK
CAddressElementInfo.h
1// SPDX-License-Identifier: LGPL-2.1-or-later OR GPL-2.0-or-later OR GPL-3.0-or-later OR LicenseRef-ImtCore-Commercial
2#pragma once
3
4
5// ImtCore includes
6#include <imtgeo/IAddressElementInfo.h>
7#include <imtgeo/CPosition.h>
8
9
10namespace imtgeo
11{
12
13
14class CAddressElementInfo: public CPositionIdentifiable, virtual public IAddressElementInfo
15{
16public:
17 typedef CPositionIdentifiable BaseClass;
18
19 CAddressElementInfo();
20 ~CAddressElementInfo();
21
22 // reimplemented (imtgeo::IAddressElementInfo)
23 virtual QList<QByteArray> GetParentIds() const override;
24 virtual void SetParentIds(const QList<QByteArray>& parentIds) override;
25 virtual QByteArray GetAddressTypeId() const override;
26 virtual void SetAddressTypeId(const QByteArray& typeId) override;
27 virtual QString GetName() const override;
28 virtual void SetName(const QString& name) override;
29 virtual QString GetDescription() const override;
30 virtual void SetDescription(const QString &description) override;
31 virtual QString GetAddress() const override;
32 virtual void SetAddress(const QString& adr) override;
33 virtual bool GetHasChildren() const override;
34 virtual void SetHasChildren(const bool& hasChildren) override;
35
36 // reimplemented (iser::ISerializable)
37 virtual bool Serialize(iser::IArchive& archive) override;
38
39 // reimplemented (istd::IChangeable)
40 virtual int GetSupportedOperations() const override;
41 virtual bool CopyFrom(const IChangeable& object, CompatibilityMode mode = CM_WITHOUT_REFS) override;
42 virtual bool IsEqual(const IChangeable& object) const override;
43 virtual istd::IChangeableUniquePtr CloneMe(CompatibilityMode mode = CM_WITHOUT_REFS) const override;
44 virtual bool ResetData(CompatibilityMode mode = CM_WITHOUT_REFS) override;
45
46private:
47 QByteArray m_id;
48 QByteArray m_adrTypeId;
49 QByteArrayList m_parentIds;
50 QString m_name;
51 QString m_description;
52 QString m_fullAddress;
53 bool m_hasChildren;
54};
55
56
57} // namespace imtgeo
58
59
60