| CHydroCouple::BufferDescriptor | BufferDescriptor describes a typed, possibly strided, possibly device-resident multi-dimensional array. It is the sole currency of field data exchange |
| CCoordinateBuffer2D | Non-owning SoA view over 2D coordinate data (x, y stored in separate arrays) |
| CCoordinateBuffer3D | Non-owning SoA view over 3D coordinate data (x, y, z stored in separate arrays) |
| CCoordinateBuffer3DM | Non-owning SoA view over 3D+M coordinate data (x, y, z, m stored in separate arrays) |
| CCoordinateBufferM | Non-owning SoA view over 2D+M coordinate data (x, y, m stored in separate arrays) |
| CHydroCouple::Helpers::DataKindOf< T > | DataKindOf maps a C++ type to its DataKind at compile time |
| CHydroCouple::Helpers::DataKindOf< bool > | |
| CHydroCouple::Helpers::DataKindOf< double > | |
| CHydroCouple::Helpers::DataKindOf< float > | |
| CHydroCouple::Helpers::DataKindOf< int16_t > | |
| CHydroCouple::Helpers::DataKindOf< int32_t > | |
| CHydroCouple::Helpers::DataKindOf< int64_t > | |
| CHydroCouple::Helpers::DataKindOf< int8_t > | |
| CHydroCouple::Helpers::DataKindOf< std::string > | |
| CHydroCouple::Helpers::DataKindOf< uint16_t > | |
| CHydroCouple::Helpers::DataKindOf< uint32_t > | |
| CHydroCouple::Helpers::DataKindOf< uint64_t > | |
| CHydroCouple::Helpers::DataKindOf< uint8_t > | |
| CHydroCouple::Distributed::ITransport::Endpoint | Endpoint identifies one participant reachable through this transport |
| CHydroCouple::ErrorEntry | ErrorEntry is one diagnostic record in a component's error queue |
| CHydroCouple::IComponentDataItemValueChanged | IComponentDataItemValueChanged interface class used to notify when the values of a IComponentDataItem change |
| CHydroCouple::IComponentStatusChangeEventArgs | The IComponentStatusChangeEventArgs contains the information that will be passed when the IModelComponent fires a signal |
| CHydroCouple::Spatial::IEdge | A directed edge from one vertex to another, adjacent to two faces. Based on Dani Lischinski's code from Graphics Gems IV. Original quad-edge data structure due to Guibas and Stolfi (1985). Does not inherit from geometry to reduce size. since each edge has 4 pointers |
| CHydroCouple::Spatial::IEnvelope | IEnvelope represents the minimum bounding box of a geometry |
| CHydroCouple::IExchangeItemChangeEventArgs | The IExchangeItemChangeEventArgs contains the information that will be passed when the IComponentItem fires the componentItemChanged signal |
| CHydroCouple::Distributed::IExchangeRequest | IExchangeRequest is a handle to an asynchronous communication operation |
| ▼CHydroCouple::Spatial::IGeometry | IGeometry is the root class of the geometry hierarchy |
| ►CHydroCouple::Spatial::ICurve | A Curve is a 1-dimensional geometric object usually stored as a sequence of IPoints, with the subtype of ICurve specifying the form of the interpolation between IPoints |
| ►CHydroCouple::Spatial::ILineString | An ILineString is a Curve with linear interpolation between Points. Each consecutive pair of Points defines a Line segment |
| CHydroCouple::Spatial::ILine | ILineString with exactly 2 IPoints |
| CHydroCouple::Spatial::ILinearRing | An ILinearRing is an ILineString that is both isClosed() and isSimple() |
| ►CHydroCouple::Spatial::IGeometryCollection | An IGeometryCollection is a geometric object that is a collection of some number of IGeometry objects |
| ►CHydroCouple::Spatial::IMultiCurve | An IMultiCurve is a 1-dimensional IGeometryCollection whose elements are ICurves |
| CHydroCouple::Spatial::IMultiLineString | An IMultiLineString is an IMultiCurve whose elements are ILineStrings |
| CHydroCouple::Spatial::IMultiPoint | An IMultiPoint is a 0-dimensional IGeometryCollection |
| ►CHydroCouple::Spatial::IMultiSurface | A MultiSurface is a 2-dimensional GeometryCollection whose elements are Surfaces, all using coordinates from the same coordinate reference system |
| CHydroCouple::Spatial::IMultiPolygon | An IMultiPolygon is an IMultiSurface whose elements are IPolygons |
| ►CHydroCouple::Spatial::IPoint | An IPoint is a 0-dimensional geometric object and represents a single location in coordinate space |
| CHydroCouple::Spatial::IVertex | IPoint of a topologically aware IGeometry |
| ►CHydroCouple::Spatial::ISurface | A ISurface is a 2-dimensional IGeometry object |
| ►CHydroCouple::Spatial::IPolygon | A IPolygon is a planar ISurface defined by 1 exterior boundary and 0 or more interior boundaries |
| CHydroCouple::Spatial::ITriangle | An ITriangle is a IPolygon with 3 distinct, non-collinear vertices and no interior boundary |
| ►CHydroCouple::Spatial::IPolyhedralSurface | An IPolyhedralSurface is a contiguous collection of polygon patches or facets stitched together along their shared boundary edges |
| CHydroCouple::Spatial::ITIN | An ITIN is a triangulated irregular network IPolyhedralSurface consisting only of ITriangle patches |
| CHydroCouple::ILicensedComponent | ILicensedComponent is an optional side interface for components that require license validation |
| CHydroCouple::Spatial::IMeshView | IMeshView is a bulk, structure-of-arrays view of an unstructured mesh or network: flat coordinate spans plus CSR (compressed sparse row) connectivity |
| CHydroCouple::ISignal< Args > | Forward declarations |
| ▼CHydroCouple::ISignal< const std::shared_ptr< IComponentDataItemValueChanged > & > | |
| ►CHydroCouple::IComponentDataItem | IComponentDataItem is a fundamental unit of data for a component |
| CHydroCouple::Distributed::IPartitionedComponentDataItem | IPartitionedComponentDataItem is an IComponentDataItem whose entity dimension is decomposed across partitions, with local virtual (ghost/halo) representation of remotely owned entities |
| CHydroCouple::IArgument | IArgument interface class used to set the arguments for components. They can be complex or simple multi-dimensional datasets |
| ►CHydroCouple::IExchangeItem | IExchangeItem the base data item the can be exchanged between components at runtime |
| ►CHydroCouple::IInput | An IInput item that can accept values for an IModelComponent |
| CHydroCouple::IMultiInput | IInput class that has multiple outputs supplying data to it |
| ►CHydroCouple::IOutput | An output exchange item that can deliver values from an IModelComponent |
| CHydroCouple::IAdaptedOutput | An IAdaptedOutput adds one or more data operations on top of an IOutput |
| CHydroCouple::IIdBasedComponentDataItem | IIdBasedComponentDataItem is an IComponentDataItem whose data is indexed by string identifiers |
| ►CHydroCouple::Spatial::IGeometryComponentDataItem | IGeometryComponentDataItem is an IComponentDataItem whose data is associated with a collection of IGeometry objects. This class must be implemented as an abstract class |
| CHydroCouple::SpatioTemporal::ITimeGeometryComponentDataItem | ITimeGeometryComponentDataItem is a geometry component data item whose values also vary in time |
| ►CHydroCouple::Spatial::INetworkComponentDataItem | INetworkComponentDataItem is an IComponentDataItem whose data is associated with the edges and/or vertices of an INetwork |
| CHydroCouple::SpatioTemporal::ITimeNetworkComponentDataItem | ITimeNetworkComponentDataItem is a network component data item whose values also vary in time |
| ►CHydroCouple::Spatial::IPolyhedralSurfaceComponentDataItem | IPolyhedralSurfaceComponentDataItem is an IComponentDataItem whose data is associated with the patches, edges, or vertices of an IPolyhedralSurface |
| CHydroCouple::Spatial::ITINComponentDataItem | ITINComponentDataItem is an IPolyhedralSurfaceComponentDataItem whose surface is an ITIN |
| ►CHydroCouple::SpatioTemporal::ITimeSeriesPolyhedralSurfaceComponentDataItem | ITimeSeriesPolyhedralSurfaceComponentDataItem is a polyhedral surface component data item whose values also vary in time |
| CHydroCouple::SpatioTemporal::ITimeSeriesTINComponentDataItem | ITimeSeriesTINComponentDataItem is an ITimeSeriesPolyhedralSurfaceComponentDataItem whose surface is an ITIN |
| ►CHydroCouple::Spatial::IRasterComponentDataItem | IRasterComponentDataItem is an IComponentDataItem whose data is associated with an IRaster |
| CHydroCouple::SpatioTemporal::ITimeSeriesRasterComponentDataItem | ITimeSeriesRasterComponentDataItem is a raster component data item whose values also vary in time |
| ►CHydroCouple::Spatial::IRegularGrid2DComponentDataItem | IRegularGrid2DComponentDataItem is an IComponentDataItem whose data is associated with the cells of an IRegularGrid2D |
| CHydroCouple::SpatioTemporal::ITimeRegularGrid2DComponentDataItem | ITimeRegularGrid2DComponentDataItem is a 2D regular grid component data item whose values also vary in time |
| ►CHydroCouple::Spatial::IRegularGrid3DComponentDataItem | IRegularGrid3DComponentDataItem is an IComponentDataItem whose data is associated with the cells of an IRegularGrid3D |
| CHydroCouple::SpatioTemporal::ITimeRegularGrid3DComponentDataItem | ITimeRegularGrid3DComponentDataItem is a 3D regular grid component data item whose values also vary in time |
| ►CHydroCouple::Temporal::ITimeSeriesComponentDataItem | ITimeSeriesComponentDataItem is an IComponentItem with a temporal attribute |
| CHydroCouple::SpatioTemporal::ITimeGeometryComponentDataItem | ITimeGeometryComponentDataItem is a geometry component data item whose values also vary in time |
| CHydroCouple::SpatioTemporal::ITimeNetworkComponentDataItem | ITimeNetworkComponentDataItem is a network component data item whose values also vary in time |
| CHydroCouple::SpatioTemporal::ITimeRegularGrid2DComponentDataItem | ITimeRegularGrid2DComponentDataItem is a 2D regular grid component data item whose values also vary in time |
| CHydroCouple::SpatioTemporal::ITimeRegularGrid3DComponentDataItem | ITimeRegularGrid3DComponentDataItem is a 3D regular grid component data item whose values also vary in time |
| CHydroCouple::SpatioTemporal::ITimeSeriesPolyhedralSurfaceComponentDataItem | ITimeSeriesPolyhedralSurfaceComponentDataItem is a polyhedral surface component data item whose values also vary in time |
| CHydroCouple::SpatioTemporal::ITimeSeriesRasterComponentDataItem | ITimeSeriesRasterComponentDataItem is a raster component data item whose values also vary in time |
| CHydroCouple::Temporal::ITimeIdBasedComponentDataItem | ITimeIdBasedComponentDataItem is an IComponentDataItem with both temporal and identifier-based dimensions for accessing multi-dimensional time-series data |
| ▼CHydroCouple::ISignal< const std::shared_ptr< IComponentStatusChangeEventArgs > & > | |
| ►CHydroCouple::IModelComponent | IModelComponent interface is the core interface in the HydroCouple standard defining a model component |
| ►CHydroCouple::Distributed::IDistributedModelComponent | IDistributedModelComponent is an IModelComponent that participates in distributed execution through a transport |
| CHydroCouple::Distributed::IProxyModelComponent | Local stand-in for a remote IModelComponent reachable through a transport |
| CHydroCouple::ICheckpointableModelComponent | ICheckpointableModelComponent is an IModelComponent that can save and restore its complete simulation state |
| CHydroCouple::ICloneableModelComponent | IModelComponent that supports deep cloning of itself and its configuration |
| CHydroCouple::Temporal::ITimeModelComponent | ITimeModelComponent is an IModelComponent that advances through time during simulation and provides access to the current simulation time |
| ▼CHydroCouple::ISignal< const std::shared_ptr< IWorkflowComponentStatusChangeEventArgs > & > | |
| CHydroCouple::IWorkflowComponent | IWorkflowComponent manages the execution workflow for a set of coupled IModelComponent instances |
| ▼CHydroCouple::ISignal< std::string > | |
| ►CHydroCouple::IPropertyChanged | IPropertyChanged interface is used to emit signal/event when a property of an object changes |
| ►CHydroCouple::IDescription | IDescription interface class provides descriptive information on a HydroCouple object |
| ►CHydroCouple::IIdentity | IIdentity interface class defines a method to get the Id of an HydroCouple entity |
| CHydroCouple::Distributed::ITransport | ITransport is a transport-neutral, tagged message channel between processes |
| ►CHydroCouple::IAdaptedOutputFactory | IAdaptedOutputFactory is used to create instances of IAdaptedOutput |
| CHydroCouple::IAdaptedOutputFactoryComponent | IAdaptedOutputFactoryComponent is an IAdaptedOutputFactory generated from an IAdaptedOutputFactoryComponentInfo |
| CHydroCouple::IComponentDataItem | IComponentDataItem is a fundamental unit of data for a component |
| ►CHydroCouple::IComponentInfo | IComponentInfo interface class is a factory that provides detailed metadata about a component and creates new instances of a component |
| CHydroCouple::IAdaptedOutputFactoryComponentInfo | IAdaptedOutputFactoryComponentInfo interface class provides information about an IAdaptedOutputFactoryComponent |
| CHydroCouple::IModelComponentInfo | IModelComponentInfo interface inherits from the IComponentInfo interface which provides detailed metadata about an IModelComponent. Additionally, it creates new instances of a component |
| CHydroCouple::IWorkflowComponentInfo | IWorkflowComponentInfo provides metadata about an IWorkflowComponent and creates new instances of it |
| CHydroCouple::IDimension | IDimension provides the properties of the dimensions of a variable |
| CHydroCouple::IModelComponent | IModelComponent interface is the core interface in the HydroCouple standard defining a model component |
| CHydroCouple::IWorkflowComponent | IWorkflowComponent manages the execution workflow for a set of coupled IModelComponent instances |
| CHydroCouple::Spatial::INetwork | INetwork represents a graph structure of connected vertices and edges |
| CHydroCouple::Spatial::IRaster | A Raster spatial feature |
| CHydroCouple::Spatial::IRasterBand | IRasterBand is a single raster band for an IRaster |
| CHydroCouple::Spatial::IRegularGrid2D | IRegularGrid2D represents a two-dimensional structured grid of nodes and cells |
| CHydroCouple::Spatial::IRegularGrid3D | IRegularGrid3D represents a three-dimensional structured grid of nodes and cells |
| CHydroCouple::IUnit | IUnit interface, describing the physical unit of a IQuantity |
| CHydroCouple::IUnitDimensions | Defines the order of dimension in each FundamentalDimension for a unit |
| ►CHydroCouple::IValueDefinition | IValueDefinition describes the type and properties of values returned by IComponentDataItem::getValue() and related methods |
| CHydroCouple::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 |
| CHydroCouple::IQuantity | IQuantity specifies values as an amount of some unit, usually as a floating point number |
| ►CHydroCouple::Temporal::IDateTime | IDateTime interface based on a Julian day |
| CHydroCouple::Temporal::ITimeSpan | ITimeSpan specifies a time duration |
| CHydroCouple::ISlot< Args > | ISlot interface class must be implemented by classes that want to listen to signals |
| CHydroCouple::Spatial::ISpatialReferenceSystem | ISpatialReferenceSystem describes the coordinate reference system for spatial geometric objects |
| CHydroCouple::IUIProvider | IUIProvider is an optional side interface for entities that can present a graphical editor and/or viewer |
| CHydroCouple::IWorkflowComponentStatusChangeEventArgs | The IWorkflowComponentStatusChangeEventArgs contains the information that will be passed when the IWorkflowComponent fires a signal |
| CLinearRing | A closed sequence of 2D Points forming a ring boundary |
| CLinearRingM | A closed sequence of PointM values forming a ring boundary with measures |
| CLinearRingZ | A closed sequence of 3D PointZ values forming a ring boundary |
| CLinearRingZM | A closed sequence of PointZM values forming a ring boundary with z and measure |
| CPoint | A 2D point with x and y coordinates |
| CPointM | A 2D point with x, y, and an associated measure (m) value |
| CPointZ | A 3D point with x, y, and z coordinates |
| CPointZM | A 3D point with x, y, z coordinates and an associated measure (m) value |
| CWKBGeometry | Type-punning union over all 2D WKB geometry structs |
| CWKBGeometryCollection | WKB-encoded heterogeneous 2D geometry collection (type code 7) |
| CWKBGeometryCollectionM | WKB-encoded heterogeneous 2D geometry collection with measures (type code 2007) |
| CWKBGeometryCollectionZ | WKB-encoded heterogeneous 3D geometry collection with z-coordinates (type code 1007) |
| CWKBGeometryCollectionZM | WKB-encoded heterogeneous 3D geometry collection with z-coordinates and measures (type code 3007) |
| CWKBGeometryM | Type-punning union over all 2D+M WKB geometry structs |
| CWKBGeometryZ | Type-punning union over all 3D (Z) WKB geometry structs |
| CWKBGeometryZM | Type-punning union over all 3D+M WKB geometry structs |
| CWKBLineString | WKB-encoded 2D line string geometry (type code 2) |
| CWKBLineStringM | WKB-encoded 2D line string geometry with measures (type code 2002) |
| CWKBLineStringZ | WKB-encoded 3D line string geometry with z-coordinates (type code 1002) |
| CWKBLineStringZM | WKB-encoded 3D line string geometry with z-coordinates and measures (type code 3002) |
| CWKBMultiLineString | WKB-encoded 2D multi-line-string collection (type code 5) |
| CWKBMultiLineStringM | WKB-encoded 2D multi-line-string collection with measures (type code 2005) |
| CWKBMultiLineStringZ | WKB-encoded 3D multi-line-string collection with z-coordinates (type code 1005) |
| CWKBMultiLineStringZM | WKB-encoded 3D multi-line-string collection with z-coordinates and measures (type code 3005) |
| CWKBMultiPoint | WKB-encoded 2D multi-point collection (type code 4) |
| CWKBMultiPointM | WKB-encoded 2D multi-point collection with measures (type code 2004) |
| CWKBMultiPointZ | WKB-encoded 3D multi-point collection with z-coordinates (type code 1004) |
| CWKBMultiPointZM | WKB-encoded 3D multi-point collection with z-coordinates and measures (type code 3004) |
| CWKBMultiPolygon | WKB-encoded 2D multi-polygon collection (type code 6) |
| CWKBMultiPolygonM | WKB-encoded 2D multi-polygon collection with measures (type code 2006) |
| CWKBMultiPolygonZ | WKB-encoded 3D multi-polygon collection with z-coordinates (type code 1006) |
| CWKBMultiPolygonZM | WKB-encoded 3D multi-polygon collection with z-coordinates and measures (type code 3006) |
| CWKBPoint | WKB-encoded 2D point geometry (type code 1) |
| CWKBPointM | WKB-encoded 2D point geometry with measure (type code 2001) |
| CWKBPointZ | WKB-encoded 3D point geometry with z-coordinate (type code 1001) |
| CWKBPointZM | WKB-encoded 3D point geometry with z-coordinate and measure (type code 3001) |
| CWKBPolygon | WKB-encoded 2D polygon geometry defined by linear rings (type code 3) |
| CWKBPolygonM | WKB-encoded 2D polygon geometry with measures (type code 2003) |
| CWKBPolygonZ | WKB-encoded 3D polygon geometry with z-coordinates (type code 1003) |
| CWKBPolygonZM | WKB-encoded 3D polygon geometry with z-coordinates and measures (type code 3003) |
| CWKBPolyhedralSurface | WKB-encoded 2D polyhedral surface as a collection of polygons (type code 15) |
| CWKBPolyhedralSurfaceM | WKB-encoded 2D polyhedral surface with measures (type code 2015) |
| CWKBPolyhedralSurfaceZ | WKB-encoded 3D polyhedral surface with z-coordinates (type code 1015) |
| CWKBPolyhedralSurfaceZM | WKB-encoded 3D polyhedral surface with z-coordinates and measures (type code 3015) |
| CWKBTIN | WKB-encoded 2D Triangulated Irregular Network (type code 16) |
| CWKBTINM | WKB-encoded 2D Triangulated Irregular Network with measures (type code 2016) |
| CWKBTINZ | WKB-encoded 3D Triangulated Irregular Network with z-coordinates (type code 1016) |
| CWKBTINZM | WKB-encoded 3D Triangulated Irregular Network with z-coordinates and measures (type code 3016) |
| CWKBTriangle | WKB-encoded 2D triangle geometry with exactly one exterior ring of four points (type code 17) |
| CWKBTriangleM | WKB-encoded 2D triangle geometry with measures (type code 2017) |
| CWKBTriangleZ | WKB-encoded 3D triangle geometry with z-coordinates (type code 1017) |
| CWKBTriangleZM | WKB-encoded 3D triangle geometry with z-coordinates and measures (type code 3017) |