OpenSWMM Engine  6.0.0-alpha.4
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.4)
Loading...
Searching...
No Matches
openswmm::HeatOverrideData Struct Reference

Dense per-element attribute storage (PE2, D-PE2). More...

#include <HeatData.hpp>

Collaboration diagram for openswmm::HeatOverrideData:

Public Member Functions

bool empty () const noexcept
 
void clear ()
 

Public Attributes

std::vector< HeatOverrideRowrows
 as parsed; the serializer's input
 
std::vector< RadiativeConfigrad_link
 [link], empty ⇒ use global
 
std::vector< RadiativeConfigrad_node
 [node], empty ⇒ use global
 
std::vector< SedimentConfigsed_link
 [link], empty ⇒ use global
 
bool resolved = false
 

Detailed Description

Dense per-element attribute storage (PE2, D-PE2).

Sized ONLY when at least one override row targets the family. radiativeFor/sedimentFor return the global when the vector is empty, so a model without overrides allocates nothing and passes the same object it passed before PE — byte-identity is structural rather than tested.

Warning
Do not size these unconditionally "for uniformity". That single change would move every heat deck in the corpus, and it would do it by writing globals into a vector that then reads back as per-element configuration.

Member Function Documentation

◆ clear()

void openswmm::HeatOverrideData::clear ( )
inline

◆ empty()

bool openswmm::HeatOverrideData::empty ( ) const
inlinenoexcept

Member Data Documentation

◆ rad_link

std::vector<RadiativeConfig> openswmm::HeatOverrideData::rad_link

[link], empty ⇒ use global

◆ rad_node

std::vector<RadiativeConfig> openswmm::HeatOverrideData::rad_node

[node], empty ⇒ use global

◆ resolved

bool openswmm::HeatOverrideData::resolved = false

◆ rows

std::vector<HeatOverrideRow> openswmm::HeatOverrideData::rows

as parsed; the serializer's input

◆ sed_link

std::vector<SedimentConfig> openswmm::HeatOverrideData::sed_link

[link], empty ⇒ use global


The documentation for this struct was generated from the following file: