ImagingTools Core SDK
CFeatureInfoProviderComp.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/IFeatureInfoProvider.h>
11
12
13namespace imtlic
14{
15
16
21 public icomp::CComponentBase,
22 virtual public IFeatureInfoProvider
23{
24public:
25 typedef icomp::CComponentBase BaseClass;
26
27 I_BEGIN_COMPONENT(CFeatureInfoProviderComp)
28 I_REGISTER_INTERFACE(IFeatureInfoProvider);
29 I_ASSIGN(m_featureCollectionCompPtr, "FeatureCollection", "Feature collection", true, "FeatureCollection");
30 I_END_COMPONENT
31
32 // reimplemented (IFeatureInfoProvider)
33 virtual imtlic::IFeatureInfoSharedPtr GetFeatureInfo(const QByteArray& featureId) const override;
34 virtual const imtbase::ICollectionInfo& GetFeatureList() const override;
35
36protected:
37 I_REF(imtbase::IObjectCollection, m_featureCollectionCompPtr);
38};
39
40
41} // namespace imtlic
42
43
Core licensing domain model providing feature-based product licensing and instance management.