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
 Test whether authored heat-override rows are absent.
 
void clear ()
 Reset authored and resolved heat-override storage.
 

Public Attributes

std::vector< HeatOverrideRow > rows
 as parsed; the serializer's input
 
std::vector< RadiativeConfig > rad_link
 [link], empty ⇒ use global
 
std::vector< RadiativeConfig > rad_node
 [node], empty ⇒ use global
 
std::vector< SedimentConfig > sed_link
 [link], empty ⇒ use global
 
std::vector< RadiativeConfig > rad_cell
 [surface mesh cell]
 
std::vector< SedimentConfig > sed_cell
 [surface mesh cell], not ARD cells
 
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

Reset authored and resolved heat-override storage.

Releases row/dense vectors and resets resolved=false; invalidates all borrowed entries. Does not change the containing global heat configuration.

◆ empty()

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

Test whether authored heat-override rows are absent.

Returns
rows.empty(); does not inspect resolved dense vectors or the resolved flag.

Member Data Documentation

◆ rad_cell

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

[surface mesh cell]

◆ 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_cell

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

[surface mesh cell], not ARD cells

◆ sed_link

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

[link], empty ⇒ use global


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