ImagingTools Core SDK
CLicensedHardwareInstanceInfo.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 <imtlic/CProductInstanceInfo.h>
7#include <imtlic/ILicensedHardwareInstanceInfo.h>
8
9
10namespace imtlic
11{
12
13
20{
21public:
23
25
26 // reimplemented (imtlic::ILicensedHardwareInstanceInfo)
27 virtual QByteArray GetSerialNumber() const override;
28 virtual void SetSerialNumber(const QByteArray& serialNumber) override;
29 virtual QByteArray GetSoftwareId() const override;
30 virtual void SetSoftwareId(const QByteArray& softwareId) override;
31
32 // reimplemented (imtlic::ILicenseInfoProvider)
33 virtual QByteArray GetStatus() const override;
34 virtual void SetStatus(const QByteArray& status) 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 istd::IChangeableUniquePtr CloneMe(CompatibilityMode mode = CM_WITHOUT_REFS) const override;
43 virtual bool ResetData(CompatibilityMode mode = CM_WITHOUT_REFS) override;
44
45 // reimplemented (istd::IChangeable)
46 virtual QByteArray GetFactoryId() const override;
47
48private:
49 QByteArray m_serialNumber;
50 QByteArray m_softwareId;
51 QByteArray m_partStatus;
52};
53
54
55} // namespace imtlic
56
57
Core licensing domain model providing feature-based product licensing and instance management.