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
dataobjectref.h
Go to the documentation of this file.
1
22#ifndef DATAOBJECTREF_H
23#define DATAOBJECTREF_H
24
25#include <QMetaType>
26#include <QString>
27
28#include <openswmm/engine/openswmm_callbacks.h>
29
30class SWMMModelLayer;
31
34{
38 enum Kind {
42 Pattern = 3,
45 RainGage = 6,
49 SubcatchOutlet = 8,
54 Node = 9,
58 Subcatchment = 10,
62 Aquifer = 11,
66 Inlet = 12,
71 CaptureNode = 13,
75 };
76
77 SWMM_Engine engine = nullptr;
78 SWMMModelLayer *layer = nullptr;
80 int typeLock = -1;
81 QString currentName;
86 int hostNodeIdx = -1;
87
88 bool operator==(const DataObjectRef &other) const noexcept
89 {
90 return engine == other.engine && layer == other.layer
91 && kind == other.kind && typeLock == other.typeLock
92 && currentName == other.currentName;
93 }
94};
95
96Q_DECLARE_METATYPE(DataObjectRef)
97
98
101
102#endif // DATAOBJECTREF_H
Renders the SWMM network elements (nodes, links, subcatchments, rain gages) for one OpenSWMMEngine mo...
Definition swmmmodellayer.h:133
void registerDataObjectRefConverter()
Definition dataobjectref.cpp:11
void * SWMM_Engine
Definition objectdefaultsapplier.h:19
Definition dataobjectref.h:34
Kind kind
Definition dataobjectref.h:79
Kind
Definition dataobjectref.h:38
@ Inlet
Definition dataobjectref.h:66
@ Subcatchment
Definition dataobjectref.h:58
@ RainGage
Definition dataobjectref.h:45
@ Pollutant
[POLLUTANTS] entries — for co-pollutant picker
Definition dataobjectref.h:44
@ StorageCurve
Curves filtered to type == STORAGE (engine table type 1)
Definition dataobjectref.h:48
@ Aquifer
Definition dataobjectref.h:62
@ TimeSeries
Tables of type TIMESERIES (engine code 0)
Definition dataobjectref.h:41
@ CaptureNode
Definition dataobjectref.h:71
@ Node
Definition dataobjectref.h:54
@ SubcatchOutlet
Definition dataobjectref.h:49
@ TidalCurve
Curves filtered to type == TIDAL (engine code 6)
Definition dataobjectref.h:39
@ UnitHydrograph
RDII unit-hydrograph groups.
Definition dataobjectref.h:43
@ Pattern
Time patterns (filtered by typeLock when >= 0)
Definition dataobjectref.h:42
@ AnyCurve
Any non-timeseries table (engine table type 1..11)
Definition dataobjectref.h:40
int hostNodeIdx
Definition dataobjectref.h:86
SWMMModelLayer * layer
For "…" → create-new flow.
Definition dataobjectref.h:78
int typeLock
Pattern: 0=MONTHLY 1=DAILY 2=HOURLY 3=WEEKEND; -1 = any.
Definition dataobjectref.h:80
QString currentName
Currently-assigned object id; empty = unassigned.
Definition dataobjectref.h:81
SWMM_Engine engine
Engine handle (borrow)
Definition dataobjectref.h:77
bool operator==(const DataObjectRef &other) const noexcept
Definition dataobjectref.h:88