Go to the documentation of this file.
38 virtual std::unique_ptr<IComponent>
CreateInstance(
const QByteArray& keyId =
"")
const;
41 virtual std::unique_ptr<IComponent>
CreateSubcomponent(
const QByteArray& componentId)
const;
71 if (keyId.isEmpty() || m_factoryKeys.contains(keyId)){
73 if (retVal !=
nullptr){
74 retVal->SetComponentContext(
this,
this,
false);
75 return std::unique_ptr<IComponent>{retVal};
88 auto componentPtr = BaseClass::CreateSubcomponent(componentId);
89 if (componentPtr !=
nullptr){
93 return CreateInstance(componentId);
Wrapper of end component implementation used to correct control of component life-cycle.
Simulation wrapper of component.
Simulation wrapper of component.
virtual std::unique_ptr< IComponent > CreateSubcomponent(const QByteArray &componentId) const
Create instance of subcomponent using its ID.
virtual istd::IFactoryInfo::KeyList GetFactoryKeys() const
Returns all posible keys for this factory.
TSimComponentWrap< Base > BaseClass
virtual std::unique_ptr< IComponent > CreateInstance(const QByteArray &keyId="") const
Create an instance of the object, mapped to the keyId keyId.
const QByteArray & GetName() const
Get undecorated and platform undependent class name.
QSet< QByteArray > KeyList
Generic interface for a factory.
Package with interfaces and class used for components concept.
© Witold Gantzke and Kirill Lepskiy