ImagingTools Core SDK
CLicenseInstance.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// Qt includes
6#include <QtCore/QDateTime>
7
8// ImtCore includes
9#include <imtlic/ILicenseInstance.h>
10#include <imtlic/CLicenseDefinition.h>
11
12
13namespace imtlic
14{
15
16
23{
24public:
26
27 QByteArray GetTypeId() const;
28
29 // reimplemented (imtlic::ILicenseInstance)
30 virtual QDateTime GetExpiration() const override;
31 virtual void SetExpiration(const QDateTime& expirationTime) override;
32
33 // reimplemented (iser::IObject)
34 virtual QByteArray GetFactoryId() const override;
35
36 // reimplemented (iser::ISerializable)
37 virtual bool Serialize(iser::IArchive& archive) override;
38
39 // reimplemented (istd::IChangeable)
40 virtual bool CopyFrom(const IChangeable& object, CompatibilityMode mode = CM_WITHOUT_REFS) override;
41 virtual istd::IChangeableUniquePtr CloneMe(CompatibilityMode mode = CM_WITHOUT_REFS) const override;
42 virtual bool ResetData(CompatibilityMode mode = CM_WITHOUT_REFS) override;
43
44protected:
45 QDateTime m_expirationTime;
46};
47
48
49} // namespace imtlic
50
51
Core licensing domain model providing feature-based product licensing and instance management.