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
iattributeprovider.h
Go to the documentation of this file.
1
28#ifndef OPENSWMM_RENDER_IATTRIBUTEPROVIDER_H
29#define OPENSWMM_RENDER_IATTRIBUTEPROVIDER_H
30
32
33#include <QMetaType>
34#include <QString>
35#include <QVariant>
36#include <QVector>
37
38namespace OpenSWMM::Render
39{
40
53{
54 QString name;
55 QString displayName;
56 QMetaType::Type type = QMetaType::Double;
57 bool isDynamic = false;
58 QString unit;
59};
60
73{
74public:
75 virtual ~IAttributeProvider() = default;
76
83 [[nodiscard]] virtual QVector<AttributeField>
85};
86
87} // namespace OpenSWMM::Render
88
89Q_DECLARE_INTERFACE(OpenSWMM::Render::IAttributeProvider,
90 "io.opensimulator.openswmm.IAttributeProvider/1.0")
91
92Q_DECLARE_METATYPE(OpenSWMM::Render::AttributeField)
93
94#endif // OPENSWMM_RENDER_IATTRIBUTEPROVIDER_H
Interface every themeable layer implements so renderer panels can populate attribute combos without h...
Definition iattributeprovider.h:73
virtual QVector< AttributeField > availableAttributes(OpenSWMMVis::SwmmCategory cat) const =0
Definition gisrasterlayer.h:40
Definition contourchain.h:23
SwmmCategory
Stable ordinal categorising every SWMM-element kind that has per-kind styling, per-kind tree rows,...
Definition swmm_category.h:28
One themeable attribute on a layer.
Definition iattributeprovider.h:53
bool isDynamic
Definition iattributeprovider.h:57
QString name
Definition iattributeprovider.h:54
QString unit
Definition iattributeprovider.h:58
QMetaType::Type type
Definition iattributeprovider.h:56
QString displayName
Definition iattributeprovider.h:55
Standalone definition of the SWMM-element Category enum used by per-Category APIs across layers,...