HydroCouple  2.0.0
HydroCouple Interface Definitions
HydroCouple::IProxyModelComponent Class Referenceabstract

The IProxyModelComponent class is a class for a remote IModelComponent's proxy. More...

#include <hydrocouple.h>

Inheritance diagram for HydroCouple::IProxyModelComponent:
Collaboration diagram for HydroCouple::IProxyModelComponent:

Public Member Functions

virtual ~IProxyModelComponent ()=0
 ~IProxyModelComponent More...
 
virtual int parentMpiProcessRank () const =0
 parentMpiProcessRank More...
 
virtual string parentId () const =0
 parentId More...
 
- Public Member Functions inherited from HydroCouple::IModelComponent
virtual ~IModelComponent ()=0
 IModelComponent::~IModelComponent destructor. More...
 
virtual IModelComponentInfocomponentInfo () const =0
 Contains the metadata about this IModelComponent instance. More...
 
virtual vector< IArgument * > arguments () const =0
 Arguments needed to let the component do its work. An unmodifiable list of (modifiable) arguments must be returned that is to be used to get information about the arguments and to set argument values. More...
 
virtual ComponentStatus status () const =0
 Defines current status of the IModelComponent. See HydroCouple::Componentstatus for the possible values. More...
 
virtual vector< IInput * > inputs () const =0
 The list of consumer items for which a component can recieve values. More...
 
virtual vector< IOutput * > outputs () const =0
 The list of IOutputs for which a component can produce results. More...
 
virtual void initialize ()=0
 Initializes the current IModelComponent. More...
 
virtual vector< string > validate ()=0
 Validates the populated instance of the IModelComponent. More...
 
virtual void prepare ()=0
 Prepares the IModelComponent for calls to the Update method. More...
 
virtual void update (const vector< IOutput * > &requiredOutputs=vector< IOutput * >())=0
 This method is called to let the component update itself, thus reaching its next state. More...
 
virtual void finish ()=0
 The finish() must be invoked as the last of any methods in the IModelComponent interface. More...
 
virtual const IWorkflowComponentworkflow () const =0
 workflow is the workflow that this component is part of. More...
 
virtual void setWorkflow (const IWorkflowComponent *workflow)=0
 setWorkflow More...
 
virtual int mpiNumOfProcesses () const =0
 mpiNumProcesses More...
 
virtual int mpiProcessRank () const =0
 mpiProcess is the MPI process/rank of this component. More...
 
virtual void mpiSetProcessRank (int processRank)=0
 mpiSetProcess More...
 
virtual set< int > mpiAllocatedProcesses () const =0
 mpiAllocatedProcesses are the set of MPI processes/ranks allocated to this component. More...
 
virtual void mpiAllocateProcesses (const set< int > &mpiProcessesToAllocate)=0
 mpiAllocateResources allocates the specified MPI processes/ranks to this component. More...
 
virtual void mpiClearAllocatedProcesses ()=0
 mpiClearAllocatedProcesses More...
 
virtual string referenceDirectory () const =0
 referenceDirectory More...
 
virtual void setReferenceDirectory (const string &referenceDirectory)=0
 setReferenceDirectory More...
 
virtual void registerComponentStatusChangedListener (const function< void(const shared_ptr< IComponentStatusChangeEventArgs > &)> &statusChangedEventListener)=0
 The registerComponentStatusChangedListener() method registers a listener to be called when the status of the component changes. More...
 
virtual void deRegisterComponentStatusChangedListener (const function< void(const shared_ptr< IComponentStatusChangeEventArgs > &)> &statusChangedEventListener)=0
 The deRegisterComponentStatusChangedListener() method deregisters a listener that is called when the status of the component changes. 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...
 

Additional Inherited Members

- Public Types inherited from HydroCouple::IModelComponent
enum  ComponentStatus {
  Created ,
  Initializing ,
  Initialized ,
  Validating ,
  Valid ,
  WaitingForData ,
  Invalid ,
  Preparing ,
  Updating ,
  Updated ,
  Done ,
  Finishing ,
  Finished ,
  Failed
}
 HydroCouple::ComponentStatus is an enumerator that describes the status of a component over the course of its lifetime. More...
 

Detailed Description

The IProxyModelComponent class is a class for a remote IModelComponent's proxy.

Constructor & Destructor Documentation

◆ ~IProxyModelComponent()

virtual HydroCouple::IProxyModelComponent::~IProxyModelComponent ( )
pure virtual

~IProxyModelComponent

Member Function Documentation

◆ parentId()

virtual string HydroCouple::IProxyModelComponent::parentId ( ) const
pure virtual

parentId

Returns
A string representing the unique identifier of its parent model

◆ parentMpiProcessRank()

virtual int HydroCouple::IProxyModelComponent::parentMpiProcessRank ( ) const
pure virtual

parentMpiProcessRank

Returns
An integer representing the MPI process rank of its parent model

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