ACF $AcfVersion:0$
TComponentStaticInfo.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// ACF includes
8
9
10namespace icomp
11{
12
13
14template <class Component>
16{
17public:
19
20 explicit TComponentStaticInfo(const IRealComponentStaticInfo* baseComponentPtr = NULL);
21
22 // reimplemented (icomp::IRealComponentStaticInfo)
23 virtual IComponentUniquePtr CreateComponent() const override;
24
25 // reimplemented (icomp::IComponentStaticInfo)
26 virtual int GetComponentType() const override;
27};
28
29
30// public methods
31
32template <class Component>
37
38
39// reimplemented (icomp::IRealComponentStaticInfo)
40
41template <class Component>
48
49
50// reimplemented (icomp::IComponentStaticInfo)
51
52template <class Component>
54{
55 return CT_REAL;
56}
57
58
59} // namespace icomp
60
61
Standard implementation of static info for base component classes.
Interface adding to component static info functionality existing only for real components.
CBaseComponentStaticInfo BaseClass
virtual int GetComponentType() const override
Get information about component type.
virtual IComponentUniquePtr CreateComponent() const override
Create component instance.
TComponentStaticInfo(const IRealComponentStaticInfo *baseComponentPtr=NULL)
Wrapper of end component implementation used to correct control of component life-cycle.
#define NULL
Definition istd.h:74
Package with interfaces and class used for components concept.
std::unique_ptr< IComponent > IComponentUniquePtr
Definition IComponent.h:72