ImagingTools Core SDK
COrderedObjectCollectionProxyComp.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/COrderedObjectCollectionProxy.h>
10
11
12namespace imtbase
13{
14
15
16class COrderedObjectCollectionProxyComp:
17 public icomp::CComponentBase,
19{
20public:
21 typedef icomp::CComponentBase BaseClass;
22
23 I_BEGIN_COMPONENT(COrderedObjectCollectionProxyComp)
24 I_REGISTER_INTERFACE(imtbase::COrderedObjectCollectionProxy)
25 I_REGISTER_INTERFACE(imtbase::IOrderedObjectCollection)
26 I_REGISTER_INTERFACE(imtbase::IObjectCollection)
27 I_REGISTER_INTERFACE(imtbase::IObjectCollectionInfo)
28 I_REGISTER_INTERFACE(imtbase::ICollectionInfo)
29 I_REGISTER_INTERFACE(iser::ISerializable)
30 I_REGISTER_INTERFACE(istd::IChangeable)
31 I_ASSIGN(m_collectionCompPtr, "ObjectCollection", "Source object collection", false, "ObjectCollection");
32 I_END_COMPONENT;
33
34protected:
35 // reimplemented (icomp::CComponentBase)
36 virtual void OnComponentCreated() override;
37
38private:
39 I_REF(imtbase::IObjectCollection, m_collectionCompPtr);
40};
41
42
43} // namespace imtbase
44
45