HydroCouple  2.0.0
HydroCouple Interface Definitions
HydroCouple::Temporal::ITimeModelComponent Class Referenceabstract

The ITimeModelComponent class. More...

#include <hydrocoupletemporal.h>

Inheritance diagram for HydroCouple::Temporal::ITimeModelComponent:
Collaboration diagram for HydroCouple::Temporal::ITimeModelComponent:

Public Member Functions

virtual ~ITimeModelComponent ()=0
 ~ITimeModelComponent More...
 
virtual IDateTimecurrentDateTime () const =0
 currentDateTime More...
 
virtual ITimeSpantimeHorizon () const =0
 timeHorizon 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

Constructor & Destructor Documentation

◆ ~ITimeModelComponent()

virtual HydroCouple::Temporal::ITimeModelComponent::~ITimeModelComponent ( )
pure virtual

~ITimeModelComponent

Member Function Documentation

◆ currentDateTime()

virtual IDateTime* HydroCouple::Temporal::ITimeModelComponent::currentDateTime ( ) const
pure virtual

currentDateTime

Returns

◆ timeHorizon()

virtual ITimeSpan* HydroCouple::Temporal::ITimeModelComponent::timeHorizon ( ) const
pure virtual

timeHorizon

Returns

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