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
IComputedAttributeProvider.hpp
Go to the documentation of this file.
1
12#pragma once
14#include <QVariantMap>
15
16namespace OpenSWMM::Sdk
17{
20{
21public:
23 virtual ~IComputedAttributeProvider() = default;
30 virtual QVector<OpenSWMM::Render::AttributeField>
31 fields(OpenSWMMVis::SwmmCategory category) const = 0;
41 virtual QVariant value(OpenSWMMVis::SwmmCategory category, const QString &name,
42 const QString &field, const QVariantMap &attributes) const = 0;
43};
44}
Layer-side seam for "what attributes can I theme by?" — Slice DM.1.
Borrowed provider of derived attributes on authored model objects.
Definition IComputedAttributeProvider.hpp:20
virtual ~IComputedAttributeProvider()=default
Destroy an unregistered provider, or first destroy its registration lifetime guard.
virtual QVariant value(OpenSWMMVis::SwmmCategory category, const QString &name, const QString &field, const QVariantMap &attributes) const =0
Evaluate one derived field without mutating the model.
virtual QVector< OpenSWMM::Render::AttributeField > fields(OpenSWMMVis::SwmmCategory category) const =0
Describe this provider's fields for one spatial category.
Public header-only ABI for independently compiled native GUI extensions.
Definition ExtensionHost.hpp:24
SwmmCategory
Stable ordinal categorising every SWMM-element kind that has per-kind styling, per-kind tree rows,...
Definition SwmmCategory.hpp:31