HydroCouple  2.0.0
HydroCouple Interface Definitions
Loading...
Searching...
No Matches
HydroCouple Namespace Reference

HydroCouple namespace contains the core interface specifications for the HydroCouple component-based modeling framework interface specification. More...

Namespaces

namespace  Spatial
 HydroCouple's interfaces that have a spatial component.
 
namespace  SpatioTemporal
 HydroCouple's interfaces that have both spatial and temporal components.
 
namespace  Temporal
 HydroCouple's interfaces that have a time varying component.
 

Classes

struct  hydrocouple_variant_less
 Comparator for hydrocouple_variant that enables use in ordered containers. More...
 
class  IAdaptedOutput
 An IAdaptedOutput adds one or more data operations on top of an IOutput. More...
 
class  IAdaptedOutputFactory
 IAdaptedOutputFactory is used to create instances of IAdaptedOutput. More...
 
class  IAdaptedOutputFactoryComponent
 IAdaptedOutputFactoryComponent is an IAdaptedOutputFactory generated from an IAdaptedOutputFactoryComponentInfo. More...
 
class  IAdaptedOutputFactoryComponentInfo
 IAdaptedOutputFactoryComponentInfo interface class provides information about an IAdaptedOutputFactoryComponent. More...
 
class  IArgument
 IArgument interface class used to set the arguments for components. They can be complex or simple multi-dimensional datasets. More...
 
class  ICloneableModelComponent
 The ICloneableModelComponent class is an IModelComponent that supports deep cloning of itself and its configuration. More...
 
class  IComponentDataItem
 IComponentDataItem is a fundamental unit of data for a component. More...
 
class  IComponentDataItemValueChanged
 IComponentDataItemValueChanged interface class used to notify when the values of a IComponentDataItem change. More...
 
class  IComponentInfo
 IComponentInfo interface class is a factory that provides detailed metadata about a component and creates new instances of a component. More...
 
class  IComponentStatusChangeEventArgs
 The IComponentStatusChangeEventArgs contains the information that will be passed when the IModelComponent fires a signal. More...
 
class  IDescription
 IDescription interface class provides descriptive information on a HydroCouple object. More...
 
class  IDimension
 IDimension provides the properties of the dimensions of a variable. More...
 
class  IExchangeItem
 IExchangeItem the base data item the can be exchanged between components at runtime. More...
 
class  IExchangeItemChangeEventArgs
 The IExchangeItemChangeEventArgs contains the information that will be passed when the IComponentItem fires the componentItemChanged signal. More...
 
class  IIdBasedComponentDataItem
 IIdBasedComponentDataItem is an IComponentDataItem whose data is indexed by string identifiers. More...
 
class  IIdentity
 IIdentity interface class defines a method to get the Id of an HydroCouple entity. More...
 
class  IInput
 An IInput item that can accept values for an IModelComponent. More...
 
class  IModelComponent
 IModelComponent interface is the core interface in the HydroCouple standard defining a model component. More...
 
class  IModelComponentInfo
 IModelComponentInfo interface inherits from the IComponentInfo interface which provides detailed metadata about an IModelComponent. Additionally, it creates new instances of a component. More...
 
class  IMultiInput
 The IMultiInput class is an IInput class that has multiple outputs supplying data to it. More...
 
class  IOutput
 An output exchange item that can deliver values from an IModelComponent. More...
 
class  IPropertyChanged
 IPropertyChanged interface is used to emit signal/event when a property of an object changes. More...
 
class  IProxyModelComponent
 The IProxyModelComponent class is a proxy for a remote IModelComponent that communicates via MPI or another inter-process mechanism. More...
 
class  IQuality
 IQuality describes qualitative data, where a value is specified as one category within a number of predefined (possible) categories. These categories can be ordered or not. More...
 
class  IQuantity
 IQuantity specifies values as an amount of some unit, usually as a floating point number. More...
 
class  ISignal
 Forward declarations. More...
 
class  ISlot
 ISlot interface class must be implemented by classes that want to listen to signals. More...
 
class  IUnit
 IUnit interface, describing the physical unit of a IQuantity. More...
 
class  IUnitDimensions
 Defines the order of dimension in each FundamentalDimension for a unit. More...
 
class  IValueDefinition
 IValueDefinition describes the type and properties of values returned by IComponentDataItem::getValue() and related methods. More...
 
class  IWorkflowComponent
 IWorkflowComponent manages the execution workflow for a set of coupled IModelComponent instances. More...
 
class  IWorkflowComponentInfo
 IWorkflowComponentInfo provides metadata about an IWorkflowComponent and creates new instances of it. More...
 
class  IWorkflowComponentStatusChangeEventArgs
 The IWorkflowComponentStatusChangeEventArgs contains the information that will be passed when the IWorkflowComponent fires a signal. More...
 

Typedefs

using hydrocouple_variant = std::variant< std::monostate, bool, char, int8_t, int16_t, int32_t, int64_t, uint8_t, uint16_t, uint32_t, uint64_t, float, double, long double, std::string, std::any >
 hydrocouple_variant is a variant type that can be used to store the core value types values of different types.
 
using hydrocouple_variant_set = std::set< hydrocouple_variant, hydrocouple_variant_less >
 Type alias for an ordered set of hydrocouple_variant values.
 

Variables

constexpr int HYDROCOUPLE_ABI_VERSION = 2
 ABI version for the HydroCouple interface.
 

Detailed Description

HydroCouple namespace contains the core interface specifications for the HydroCouple component-based modeling framework interface specification.

Typedef Documentation

◆ hydrocouple_variant

using HydroCouple::hydrocouple_variant = typedef std::variant< std::monostate, bool, char, int8_t, int16_t, int32_t, int64_t, uint8_t, uint16_t, uint32_t, uint64_t, float, double, long double, std::string, std::any>

hydrocouple_variant is a variant type that can be used to store the core value types values of different types.

◆ hydrocouple_variant_set

Type alias for an ordered set of hydrocouple_variant values.

Variable Documentation

◆ HYDROCOUPLE_ABI_VERSION

constexpr int HydroCouple::HYDROCOUPLE_ABI_VERSION = 2
constexpr

ABI version for the HydroCouple interface.