18template <
class Component>
31 bool isParentOwner)
override;
37template <
class Component>
43template <
class Component>
47 if (parentPtr !=
NULL){
58template <
class Component>
64 if (BaseClass::GetComponentContext() !=
nullptr){
65 BaseClass::OnComponentDestroyed();
67 BaseClass::InitStaticInfo(
this);
70 BaseClass::SetComponentContext(contextPtr, parentPtr, isParentOwner);
72 if (contextPtr !=
nullptr){
73 BaseClass::InitStaticInfo(
this);
75 BaseClass::OnComponentCreated();
Main component interface.
Composite component interface.
virtual void OnSubcomponentDeleted(const IComponent *subcomponentPtr)=0
Called if subcomponent is removed from memory.
Wrapper of end component implementation used to correct control of component life-cycle.
virtual ~TComponentWrap()
virtual void SetComponentContext(const IComponentContextSharedPtr &contextPtr, const IComponent *parentPtr, bool isParentOwner) override
Package with interfaces and class used for components concept.
std::shared_ptr< icomp::IComponentContext > IComponentContextSharedPtr