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
extensionattributes.h File Reference

Private per-layer registry for extension-derived model attributes. More...

#include "sdk/IComputedAttributeProvider.hpp"
#include <QObject>
#include <functional>
Include dependency graph for extensionattributes.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  openswmmvis
 

Functions

bool openswmmvis::registerExtensionAttributes (QObject *layer, const QString &id, OpenSWMM::Sdk::IComputedAttributeProvider *provider, QObject *context, std::function< void(bool)> changed, QString *error=nullptr)
 Atomically register one guarded provider on a layer.
 
void openswmmvis::unregisterExtensionAttributes (QObject *layer, const QString &id)
 Remove a provider and notify its live layer.
 
void openswmmvis::refreshExtensionAttributes (QObject *layer, const QString &id)
 Invalidate provider values, allowing retry after a calculation exception.
 
QVector< OpenSWMM::Render::AttributeField > openswmmvis::extensionAttributeFields (const QObject *layer, OpenSWMMVis::SwmmCategory category)
 Read validated, qualified field descriptors in deterministic provider order.
 
QVariantMap openswmmvis::extensionAttributeValues (const QObject *layer, OpenSWMMVis::SwmmCategory category, const QString &name, const QVariantMap &base)
 Merge derived values into a base model-object attribute snapshot.
 

Detailed Description

Private per-layer registry for extension-derived model attributes.

Entries cache validated descriptors and borrow guarded providers. The GUI reads the same registry for field metadata, identify values and attribute-table columns. No engine or concrete GUI class is exposed through this module. All operations use the layer's GUI thread.

Author
Caleb Buahin caleb.nosp@m..bua.nosp@m.hin@g.nosp@m.mail.nosp@m..com
Date
2026
License
GPL-3.0-or-later