HydroCouple  2.0.0
HydroCouple Interface Definitions
HydroCouple::IComponentInfo Class Referenceabstract

IComponentInfo interface class is a factory that provides detailed metadata about a component and creates new instances of a component. More...

#include <hydrocouple.h>

Inheritance diagram for HydroCouple::IComponentInfo:
Collaboration diagram for HydroCouple::IComponentInfo:

Public Member Functions

virtual ~IComponentInfo ()=0
 IComponentInfo::~IComponentInfo is a virtual destructor. More...
 
virtual string libraryFilePath () const =0
 File path to Component library. More...
 
virtual void setLibraryFilePath (const string &filePath)=0
 Sets file path to Component library. More...
 
virtual string iconFilePath () const =0
 File path to Component icon. Must be specified relative to the component library. More...
 
virtual string vendor () const =0
 Component developer information. More...
 
virtual list< string > documentation () const =0
 Documentation associated with this component. More...
 
virtual string license () const =0
 Component license info. More...
 
virtual string copyright () const =0
 Component copyright info. More...
 
virtual string url () const =0
 Component developer url. More...
 
virtual string email () const =0
 Component developer email. More...
 
virtual string version () const =0
 Component version info. More...
 
virtual set< string > tags () const =0
 tags used to classify this component. More...
 
virtual bool validateLicense (const string &licenseInfo, string &validationMessage)=0
 Checks if license is valid and persists license information. More...
 
virtual bool validateLicense (string &validationMessage)=0
 validateLicense Checks if component is licensed and returns. More...
 
- Public Member Functions inherited from HydroCouple::IIdentity
virtual ~IIdentity ()=0
 IIdentity::~IIdentity is a virtual destructor. More...
 
virtual string id () const =0
 Gets a unique identifier for the entity. More...
 
- Public Member Functions inherited from HydroCouple::IDescription
virtual ~IDescription ()=0
 IDescription::~IDescription is a virtual destructor. More...
 
virtual string caption () const =0
 Gets caption for the entity. More...
 
virtual void setCaption (const string &caption)=0
 Sets caption for the entity. More...
 
virtual string description () const =0
 Gets additional descriptive information for the entity. More...
 
virtual void setDescription (const string &description)=0
 Gets additional descriptive information for the entity. More...
 
- Public Member Functions inherited from HydroCouple::IPropertyChanged
virtual ~IPropertyChanged ()=0
 IPropertyChanged::~IPropertyChanged is a virtual destructor. More...
 
virtual void registerPropertyChangedListener (const function< void(const any &, const string &)> &propertyChangedListener)=0
 IPropertyChanged::registerPropertyChangedListener() registers a listener to be called when a property of an object changes. More...
 
virtual void deRegisterPropertyChangedListener (const function< void(const any &, const string &propertyName)> &propertyChangedListener)=0
 IPropertyChanged::deRegisterPropertyChangedListener() deregisters a listener that is called when a property of an object changes. More...
 

Detailed Description

IComponentInfo interface class is a factory that provides detailed metadata about a component and creates new instances of a component.

It must not be implemented directly. It must be either be implemented as an IModelComponent or an Data::IAdaptedOutputFactoryComponent.

Constructor & Destructor Documentation

◆ ~IComponentInfo()

virtual HydroCouple::IComponentInfo::~IComponentInfo ( )
pure virtual

IComponentInfo::~IComponentInfo is a virtual destructor.

Member Function Documentation

◆ copyright()

virtual string HydroCouple::IComponentInfo::copyright ( ) const
pure virtual

Component copyright info.

Returns
string representing the copyright information associated with this component.

◆ documentation()

virtual list<string> HydroCouple::IComponentInfo::documentation ( ) const
pure virtual

Documentation associated with this component.

Returns
Citations of publication related to this component.

◆ email()

virtual string HydroCouple::IComponentInfo::email ( ) const
pure virtual

Component developer email.

Returns
email as string.

◆ iconFilePath()

virtual string HydroCouple::IComponentInfo::iconFilePath ( ) const
pure virtual

File path to Component icon. Must be specified relative to the component library.

Returns
filePath to icon for component.

◆ libraryFilePath()

virtual string HydroCouple::IComponentInfo::libraryFilePath ( ) const
pure virtual

File path to Component library.

Returns
Path to the library location from which this component was created.
See also
setLibraryFilePath()

◆ license()

virtual string HydroCouple::IComponentInfo::license ( ) const
pure virtual

Component license info.

Returns
string representing the license information. HTML tags can be added to it.

◆ setLibraryFilePath()

virtual void HydroCouple::IComponentInfo::setLibraryFilePath ( const string &  filePath)
pure virtual

Sets file path to Component library.

Parameters
filePathto the libary from which this component was created.
See also
libraryFilePath()

◆ tags()

virtual set<string> HydroCouple::IComponentInfo::tags ( ) const
pure virtual

tags used to classify this component.

Returns
the categorical tags that can be used to classify components. e.g., Hydrology, Groundwater, Finite Volume, Finite difference.

◆ url()

virtual string HydroCouple::IComponentInfo::url ( ) const
pure virtual

Component developer url.

Returns
string representing the url for the developer.

◆ validateLicense() [1/2]

virtual bool HydroCouple::IComponentInfo::validateLicense ( const string &  licenseInfo,
string &  validationMessage 
)
pure virtual

Checks if license is valid and persists license information.

Developer is responsible for implementing this validation based on a license.

Parameters
licenseInfolicense information to use to register this component.
validationMessageA validation message associated with the license validation process.
Returns
true if license is valid otherwise false.

◆ validateLicense() [2/2]

virtual bool HydroCouple::IComponentInfo::validateLicense ( string &  validationMessage)
pure virtual

validateLicense Checks if component is licensed and returns.

Parameters
validationMessageA validation message associated with the license validation process.
Returns
true if component is licensed otherwise false.

◆ vendor()

virtual string HydroCouple::IComponentInfo::vendor ( ) const
pure virtual

Component developer information.

Returns
Name of vendor the developed this component.

◆ version()

virtual string HydroCouple::IComponentInfo::version ( ) const
pure virtual

Component version info.

Returns
string representing the version of this component.

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