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

LID control layer-stack diagram. More...

#include <QString>
#include <QVector>
#include "ui/sectionview/sectiondiagram.h"
Include dependency graph for lidlayerdiagram.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  openswmmvis::sectionview::LidDiagramInput
 

Namespaces

namespace  openswmmvis
 
namespace  openswmmvis::sectionview
 

Enumerations

enum class  openswmmvis::sectionview::LidLayer {
  openswmmvis::sectionview::Surface ,
  openswmmvis::sectionview::Pavement ,
  openswmmvis::sectionview::Soil ,
  openswmmvis::sectionview::Storage ,
  openswmmvis::sectionview::Drainmat
}
 
enum class  openswmmvis::sectionview::LidType {
  openswmmvis::sectionview::BioCell = 0 ,
  openswmmvis::sectionview::RainGarden = 1 ,
  openswmmvis::sectionview::GreenRoof = 2 ,
  openswmmvis::sectionview::InfilTrench = 3 ,
  openswmmvis::sectionview::PermPavement = 4 ,
  openswmmvis::sectionview::RainBarrel = 5 ,
  openswmmvis::sectionview::RooftopDisconn = 6 ,
  openswmmvis::sectionview::VegSwale = 7
}
 

Functions

QVector< LidLayeropenswmmvis::sectionview::lidLayersFor (LidType type)
 
bool openswmmvis::sectionview::lidHasDrain (LidType type)
 
QString openswmmvis::sectionview::lidLayerName (LidLayer layer)
 
SectionDiagramModel openswmmvis::sectionview::buildLidLayerDiagram (const LidDiagramInput &in)
 Build the layer-stack diagram for one LID control.
 

Detailed Description

LID control layer-stack diagram.

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

Slice SP.6 (workplans/SECTION_PREVIEW_WORKPLAN.md).

Takes a plain input struct rather than a LidControlProvider* so the drawing code carries no dependency on lid/ — the dialog fills the struct from the provider. Keeps the test link chain to sectiondiagram.cpp alone.

Which layers exist is a function of the LID type (a rain barrel has no soil, a green roof has a drainmat instead of storage); see lidLayersFor().

The engine exposes LID setters but no getters, so a control loaded from a file has no readable layer values. Layers whose thickness is unknown are drawn hatched with an em-dash label rather than silently shown as zero.