ImagingTools Core SDK
CLicenseInfoProviderComp.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// ACF includes
6#include <icomp/CComponentBase.h>
7
8// ImtCore includes
9#include <imtbase/IObjectCollection.h>
10#include <imtlic/ILicenseInfoProvider.h>
11
12
13namespace imtlic
14{
15
16
21 public icomp::CComponentBase,
22 virtual public ILicenseInfoProvider
23{
24public:
25 typedef icomp::CComponentBase BaseClass;
26
27 I_BEGIN_COMPONENT(CLicenseInfoProviderComp)
28 I_REGISTER_INTERFACE(ILicenseInfoProvider);
29 I_ASSIGN(m_productCollectionCompPtr, "ProductCollection", "Product collection", true, "ProductCollection");
30 I_END_COMPONENT
31
32 // reimplemented (ILicenseInfoProvider)
33 virtual const imtbase::ICollectionInfo& GetLicenseList() const override;
34 virtual istd::TUniqueInterfacePtr<imtlic::ILicenseDefinition> GetLicenseInfo(const QByteArray& licenseId) const override;
35
36protected:
37 I_REF(imtbase::IObjectCollection, m_productCollectionCompPtr);
38};
39
40
41} // namespace imtlic
42
43
Core licensing domain model providing feature-based product licensing and instance management.