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

MVC model for a single SWMM pollutant ([POLLUTANTS]). More...

#include <QObject>
#include <QString>
Include dependency graph for pollutantprovider.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  openswmmvis::pollutant::PollutantProvider
 

Namespaces

namespace  openswmmvis
 
namespace  openswmmvis::pollutant
 

Detailed Description

MVC model for a single SWMM pollutant ([POLLUTANTS]).

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

One PollutantProvider per [POLLUTANTS] entry. Owned by a project-scoped PollutantRegistry. Mirrors StreetProvider in shape — scalar fields with a paramsChanged() signal so the editor's list pane and field form refresh in lock-step. Engine I/O walks swmm_pollutant_* from openswmm_pollutants.h.

Units (0=MG/L, 1=UG/L, 2=#/L) are write-once at engine creation time — the engine has no swmm_pollutant_set_units, so changing units only takes effect for a pollutant that does not yet exist in the engine.

Co-pollutant is stored by name (empty = none) and resolved to an engine index at save time.