ImagingTools Core SDK
CCollectionObjectExtractorComp.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/IObjectExtractor.h>
10#include <imtbase/IObjectCollection.h>
11
12
13namespace imtbase
14{
15
16
17class CCollectionObjectExtractorComp: public icomp::CComponentBase, virtual public IObjectExtractor
18{
19public:
20 typedef icomp::CComponentBase BaseClass;
21
22 I_BEGIN_COMPONENT(CCollectionObjectExtractorComp);
23 I_REGISTER_INTERFACE(IObjectExtractor);
24 I_END_COMPONENT;
25
26 // reimplemented (IObjectExtractor)
27 virtual QByteArrayList GetSupportedObjectIds(const istd::IChangeable* compositePtr) const override;
28 virtual const istd::IChangeable* ExtractObject(const istd::IChangeable* compositePtr, const QByteArray& objectId) const override;
29};
30
31
32} // namespace imtbase
33
34