ACF $AcfVersion:0$
CCompositePackageStaticInfo.h
Go to the documentation of this file.
1// SPDX-License-Identifier: LGPL-2.1-or-later OR GPL-2.0-or-later OR GPL-3.0-or-later OR LicenseRef-ACF-Commercial
2#pragma once
3
4
5// Qt includes
6#include <QtCore/QMap>
7
8// ACF includes
9#include <istd/TDelPtr.h>
10
13
14
15namespace icomp
16{
17
18
19class IComponentEnvironmentManager;
20
21
26{
27public:
29
31 const QByteArray& packageId,
32 const icomp::IComponentEnvironmentManager* managerPtr);
33
34 void RegisterEmbeddedComponent(const QByteArray& componentId);
35
36 // reimplemented (icomp::IComponentStaticInfo)
37 virtual Ids GetMetaIds(int metaGroupId) const override;
38 virtual const IComponentStaticInfo* GetEmbeddedComponentInfo(const QByteArray& embeddedId) const override;
39
40private:
41 struct ComponentInfo
42 {
43 ComponentInfo():isInitialized(false){}
44
46 bool isInitialized;
47 };
48
49 typedef QMap<QByteArray, ComponentInfo> EmbeddedComponentInfos;
50 mutable EmbeddedComponentInfos m_embeddedComponentInfos;
51
52 QByteArray m_packageId;
53 const icomp::IComponentEnvironmentManager& m_envManager;
54};
55
56
57} // namespace icomp
58
59
60
61
Implementation of package static info designing to provide composite component information 'on demand...
CCompositePackageStaticInfo(const QByteArray &packageId, const icomp::IComponentEnvironmentManager *managerPtr)
virtual Ids GetMetaIds(int metaGroupId) const override
Get list of meta IDs associated with some meta key.
virtual const IComponentStaticInfo * GetEmbeddedComponentInfo(const QByteArray &embeddedId) const override
Return number of interfaces for specific slot.
void RegisterEmbeddedComponent(const QByteArray &componentId)
Static info for component package.
This interface provide static information about component meta info.
Pointer wrapper providing automatic deleting pointed object during destruction.
Definition TDelPtr.h:21
Package with interfaces and class used for components concept.