HydroCouple  2.0.0
HydroCouple Interface Definitions
Loading...
Searching...
No Matches
HydroCouple::IModelComponentInfo Class Referenceabstract

IModelComponentInfo interface inherits from the IComponentInfo interface which provides detailed metadata about an IModelComponent. Additionally, it creates new instances of a component. More...

#include <hydrocouple.h>

Inheritance diagram for HydroCouple::IModelComponentInfo:
Collaboration diagram for HydroCouple::IModelComponentInfo:

Public Member Functions

virtual ~IModelComponentInfo ()=default
 IModelComponentInfo::~IModelComponentInfo is a virtual destructor.
 
virtual std::unique_ptr< IModelComponentcreateComponentInstance ()=0
 Creates a new IModelComponent instance.
 
virtual std::vector< IAdaptedOutputFactory * > adaptedOutputFactories () const =0
 Gets a list of IAdaptedOutputFactories, each allowing to create IAdaptedOutput item for making outputs fit to inputs in case they do not already do so.
 
- Public Member Functions inherited from HydroCouple::IComponentInfo
virtual ~IComponentInfo ()=default
 IComponentInfo::~IComponentInfo is a virtual destructor.
 
virtual std::string libraryFilePath () const =0
 File path to Component library.
 
virtual void setLibraryFilePath (const std::string &filePath)=0
 Sets file path to Component library.
 
virtual std::string iconFilePath () const =0
 File path to Component icon. Must be specified relative to the component library.
 
virtual std::string developer () const =0
 Component developer information.
 
virtual std::vector< std::string > documentation () const =0
 Documentation associated with this component.
 
virtual std::string license () const =0
 Component license info.
 
virtual std::string copyright () const =0
 Component copyright info.
 
virtual std::string url () const =0
 Component developer url.
 
virtual std::string email () const =0
 Component developer email.
 
virtual std::string version () const =0
 Component version info.
 
virtual std::set< std::string > tags () const =0
 tags used to classify this component.
 
virtual bool validateLicense (const std::string &licenseInfo, std::string &validationMessage)=0
 Checks if license is valid and persists license information.
 
virtual bool validateLicense (std::string &validationMessage)=0
 validateLicense Checks if component is licensed and returns.
 
- Public Member Functions inherited from HydroCouple::IIdentity
virtual ~IIdentity ()=default
 IIdentity::~IIdentity is a virtual destructor.
 
virtual const std::string & id () const =0
 Gets a unique identifier for the entity.
 
- Public Member Functions inherited from HydroCouple::IDescription
virtual ~IDescription ()=default
 IDescription::~IDescription is a virtual destructor.
 
virtual const std::string & caption () const =0
 Gets caption for the entity.
 
virtual void setCaption (const std::string &caption)=0
 Sets caption for the entity.
 
virtual const std::string & description () const =0
 Gets additional descriptive information for the entity.
 
virtual void setDescription (const std::string &description)=0
 Gets additional descriptive information for the entity.
 
- Public Member Functions inherited from HydroCouple::IPropertyChanged
virtual ~IPropertyChanged ()=default
 IPropertyChanged::~IPropertyChanged is a virtual destructor.
 
- Public Member Functions inherited from HydroCouple::ISignal< std::string >
virtual ~ISignal ()=default
 ISignal::~ISignal is a virtual destructor.
 
virtual void connect (const std::shared_ptr< ISlot< Args... > > &slot)=0
 connect is used to connect a slot to the signal.
 
virtual void disconnect (const std::shared_ptr< ISlot< Args... > > &slot)=0
 disconnect is used to disconnect a slot from the signal.
 
virtual void blockSignals (bool block)=0
 blockSignals is used to block signals from being emitted.
 

Additional Inherited Members

- Protected Member Functions inherited from HydroCouple::ISignal< std::string >
virtual void emit (Args... args)=0
 emit is used to emit the signal.
 

Detailed Description

IModelComponentInfo interface inherits from the IComponentInfo interface which provides detailed metadata about an IModelComponent. Additionally, it creates new instances of a component.

The IModelComponentInfo interface is used to provide metadata on a component and create new instances of a component.

Constructor & Destructor Documentation

◆ ~IModelComponentInfo()

virtual HydroCouple::IModelComponentInfo::~IModelComponentInfo ( )
virtualdefault

Member Function Documentation

◆ adaptedOutputFactories()

virtual std::vector< IAdaptedOutputFactory * > HydroCouple::IModelComponentInfo::adaptedOutputFactories ( ) const
pure virtual

Gets a list of IAdaptedOutputFactories, each allowing to create IAdaptedOutput item for making outputs fit to inputs in case they do not already do so.

Factories can be added to and removed from the list so that third-party factories and IAdaptedOutput classes can be introduced.

Returns
A list of IAdaptedOutputFactories associated with this component.

◆ createComponentInstance()

virtual std::unique_ptr< IModelComponent > HydroCouple::IModelComponentInfo::createComponentInstance ( )
pure virtual

Creates a new IModelComponent instance.

Returns
A new instance of an IModelComponent.

The documentation for this class was generated from the following file: