ImagingTools Core SDK
CFeatureContainer.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 <imtbase/TAggergatedObjectCollectionWrap.h>
7#include <imtlic/IFeatureInfoProvider.h>
8#include <imtlic/CFeatureInfo.h>
9
10
11namespace imtlic
12{
13
14
15class CFeatureContainer: public imtbase::TAggergatedObjectCollectionWrap<IFeatureInfoProvider, CFeatureInfo>
16{
17public:
19
20 CFeatureContainer();
21
25 IFeatureInfoSharedPtr FindFeatureById(const QByteArray& featureId) const;
26
30 QByteArray GetFeatureCollectionId(const QByteArray& featureId) const;
31
32 // reimplemented (IFeatureInfoProvider)
33 virtual const imtbase::ICollectionInfo& GetFeatureList() const override;
34 virtual IFeatureInfoSharedPtr GetFeatureInfo(const QByteArray& featureId) const override;
35};
36
37
38} // namespace imtlic
39
40
Core licensing domain model providing feature-based product licensing and instance management.