SWMMVis  6.0.0-alpha.4
Qt6/C++ GIS-based graphical user interface for the SWMMVis engine (6.0.0-alpha.4)
Loading...
Searching...
No Matches
openswmmvis::plot::ObjectRef Struct Reference

Identifies what object a series is about. Kind is the discriminator; the active union member is implied by kind. More...

#include <irunlayer.h>

Collaboration diagram for openswmmvis::plot::ObjectRef:

Public Types

enum class  Kind {
  Unknown = 0 ,
  Node = 1 ,
  Link = 2 ,
  Subcatch = 3 ,
  Mesh2DCell = 4 ,
  Observed = 5 ,
  System = 6 ,
  Mesh2DEdge = 7 ,
  Mesh2DVertex = 8
}
 

Public Member Functions

constexpr ObjectRef ()=default
 
 ObjectRef (Kind k, QString n)
 
bool isValid () const noexcept
 
bool operator== (const ObjectRef &other) const noexcept
 
bool operator!= (const ObjectRef &other) const noexcept
 

Static Public Member Functions

static ObjectRef forNode (QString n)
 
static ObjectRef forLink (QString n)
 
static ObjectRef forSubcatch (QString n)
 
static ObjectRef forMesh2DCell (int idx)
 
static ObjectRef forMesh2DEdge (int tri, int edge)
 
static ObjectRef forMesh2DVertex (int idx)
 
static ObjectRef forObserved (QString lbl)
 
static ObjectRef forSystem ()
 

Public Attributes

Kind kind = Kind::Unknown
 
QString name
 SWMM ID for 1D kinds; observed-series label for Observed; unused for System.
 
int triIdx = -1
 Triangle index for Mesh2DCell / Mesh2DEdge; vertex index for Mesh2DVertex; -1 otherwise.
 
int edgeLocal = -1
 Local edge index 0..2 for Mesh2DEdge; -1 otherwise.
 

Detailed Description

Identifies what object a series is about. Kind is the discriminator; the active union member is implied by kind.

Member Enumeration Documentation

◆ Kind

Enumerator
Unknown 
Node 

name = SWMM node ID

Link 

name = SWMM link ID

Subcatch 

name = SWMM subcatchment ID

Mesh2DCell 

triIdx valid; name unused (CF.3)

Observed 

name = observed series label (e.g. CSV header)

System 

single global series per attribute; name unused (AT.2)

Mesh2DEdge 

triIdx + edgeLocal valid; name unused — for edge-flux series

Mesh2DVertex 

triIdx holds the vertex index; depth/HGL interpolated from incident cells

Constructor & Destructor Documentation

◆ ObjectRef() [1/2]

constexpr openswmmvis::plot::ObjectRef::ObjectRef ( )
constexprdefault
Here is the caller graph for this function:

◆ ObjectRef() [2/2]

openswmmvis::plot::ObjectRef::ObjectRef ( Kind  k,
QString  n 
)
inline

Member Function Documentation

◆ forLink()

static ObjectRef openswmmvis::plot::ObjectRef::forLink ( QString  n)
inlinestatic
Here is the call graph for this function:

◆ forMesh2DCell()

static ObjectRef openswmmvis::plot::ObjectRef::forMesh2DCell ( int  idx)
inlinestatic

◆ forMesh2DEdge()

static ObjectRef openswmmvis::plot::ObjectRef::forMesh2DEdge ( int  tri,
int  edge 
)
inlinestatic

◆ forMesh2DVertex()

static ObjectRef openswmmvis::plot::ObjectRef::forMesh2DVertex ( int  idx)
inlinestatic

◆ forNode()

static ObjectRef openswmmvis::plot::ObjectRef::forNode ( QString  n)
inlinestatic
Here is the call graph for this function:

◆ forObserved()

static ObjectRef openswmmvis::plot::ObjectRef::forObserved ( QString  lbl)
inlinestatic
Here is the call graph for this function:

◆ forSubcatch()

static ObjectRef openswmmvis::plot::ObjectRef::forSubcatch ( QString  n)
inlinestatic
Here is the call graph for this function:

◆ forSystem()

static ObjectRef openswmmvis::plot::ObjectRef::forSystem ( )
inlinestatic
Here is the caller graph for this function:

◆ isValid()

bool openswmmvis::plot::ObjectRef::isValid ( ) const
inlinenoexcept
Here is the caller graph for this function:

◆ operator!=()

bool openswmmvis::plot::ObjectRef::operator!= ( const ObjectRef other) const
inlinenoexcept

◆ operator==()

bool openswmmvis::plot::ObjectRef::operator== ( const ObjectRef other) const
inlinenoexcept

Member Data Documentation

◆ edgeLocal

int openswmmvis::plot::ObjectRef::edgeLocal = -1

Local edge index 0..2 for Mesh2DEdge; -1 otherwise.

◆ kind

Kind openswmmvis::plot::ObjectRef::kind = Kind::Unknown

◆ name

QString openswmmvis::plot::ObjectRef::name

SWMM ID for 1D kinds; observed-series label for Observed; unused for System.

◆ triIdx

int openswmmvis::plot::ObjectRef::triIdx = -1

Triangle index for Mesh2DCell / Mesh2DEdge; vertex index for Mesh2DVertex; -1 otherwise.


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