| ►Nopenswmm | |
| ►Nclimate | |
| CClimateFileReader | Stateful forward-only daily climate-file reader with one month cache. One owner serializes open/lookup/close; no concurrent queries. Request months in chronological order in a compatible ordered file. No rewind/index is kept for past months. Parsers are permissive and do not qualify all missing-value flags/calendar dates; successful lookup can return entirely NaN fields |
| CClimateState | |
| CDailyClimateRecord | |
| CHourlyMeteorology | Owned consecutive hourly records with interval-weighted means. Concurrent const queries are safe only while the cache is stable; serialize load/read/destruction with readers and release borrowed records before reload |
| CHourlyMetRecord | |
| CMovingAvg7 | |
| CRadiationState | |
| CSnowDailyWeather | |
| CSolarPosition | Sun geometry at one instant. The SPA swap point's return type |
| ►Ncomponents | |
| CComponentConfigSections | |
| CProcessComponentEntry | |
| CProcessComponentRegistry | Process-global id → entry table |
| ►Ncontrols | |
| CAction | |
| ►CControlEngine | Mutable compiled control rules and per-action PID history. Use one owning simulation thread. Rule/context edits, parsing and evaluation must be serialized. No method catches allocation failures or rolls back all preceding mutations on exception. Hydraulic quantities use project display units; serial dates/time comparisons use SWMM days unless stated otherwise |
| CPremiseSoA | Pre-sorted premise index for batch evaluation |
| CNamedVariable | |
| CParseError | Diagnostic for the most recent parseRuleText() rejection |
| CPIDState | |
| CPremise | |
| CRule | |
| ►Nculvert | |
| CCulvertCoeffs | |
| ►Ndetail | |
| CCompletedSourceArchive | |
| ►Ndynwave | |
| CDPSConfig | DPS configuration parameters (derived from SimulationOptions at init) |
| CDPSLinkArrays | |
| CDWNodeArrays | |
| CDWSolver | Dynamic wave solver — operates on entire link/node system |
| ►Nedit | |
| CCascadeEntry | Describes one object that was impacted (deleted or nullified) during a cascade deletion |
| CCascadeResult | Aggregate cascade result for one deletion operation |
| CConversionResult | |
| CSplitResult | Result of vj_split_conduit |
| ►Nexfil | |
| CExfilSoA | |
| CExfilSolver | |
| ►Nfv | |
| ►Nimplicit_wet | |
| CClosure | |
| CFlux | |
| CJet | |
| CState | |
| ►Nkernels | |
| CClosureEval | A, T and I₁ at one depth, from one panel locate |
| CFaceFlux | Result of a face flux evaluation |
| CFaceState | One side of a face after hydrostatic reconstruction |
| CAcceptedWaterVolumes | |
| CExplicitFvSolver | |
| CFvClosure | One section's closure. Fixed-size POD: inline arrays, no pointers |
| CFvGeometry | Cross-section closure for one conduit's cell chain |
| CFvOptions | Knobs for FLOW_ROUTING FV |
| CFvStepForcing | |
| ►CImplicitNetworkSolver | |
| CBlockIluDiagnostics | |
| CCondensationControls | |
| CCondensationDiagnostics | |
| CControls | |
| CEndpoint | |
| CEvaluation | |
| CFaceReceipt | |
| CLinearization | |
| CLinearResult | |
| CLinearWorkspace | |
| CMatrix | |
| CProblem | |
| CResult | |
| CTrial | |
| CWorkspaceDiagnostics | |
| ►CImplicitReachSolver | |
| CBlockDiagnostics | |
| CControls | |
| CEndpoint | |
| CLinearControls | |
| CLinearization | |
| CLinearResult | |
| CProblem | |
| CResult | |
| ►CINetworkSolver | Abstract time integrator for the explicit FV 1D network |
| CDivergence | |
| CRunStats | |
| CMeshBuildReport | |
| ►CNativeGmres | |
| CControls | |
| CResult | |
| CNetworkMeshData | SoA mesh geometry and topology for the FV network solver |
| CNetworkStateData | Mutable solver state — the conserved variables and the node volumes |
| ►CNonlinearPressureStorage | |
| CControls | |
| CEdge | |
| CResult | |
| CRow | |
| CPressurizedHeadSolver | |
| CPressurizedView | |
| ►Ngage | Rain records, accepted runoff-clock state and read-only report lookups. Context routines require aligned initialized gage/subcatchment arrays, valid project units and ordered finite table x/y pairs unless stated otherwise. State mutations are immediate; serialize updates with reads and use private copies for trials. Only precipitation splits convert rates to internal ft/s |
| CGageState | |
| CPrecipSplit | Result of splitting a gage's precipitation for one subcatchment |
| ►Ngpkg | |
| ►Nformats | |
| CClimateRow | One row of a climate file (user CSV form) |
| CFormatResult | Lightweight outcome for format parse / materialise calls |
| CHotstartHeader | HSF header / counts (matches legacy hotstart.c layout) |
| CHotstartLinkState | Per-link routing state snapshot |
| CHotstartNodeState | Per-node routing state snapshot |
| CHotstartSnapshot | Top-level snapshot — header plus per-object vectors |
| CHotstartSubcatchState | Per-subcatchment routing state snapshot (HSF v3+) |
| CHsfLayout | What the model says about a file's layout that the file does not |
| CRaingageRow | One row of a raingage data file ("Standard" SWMM columnar) |
| CRoutingInterfaceMetadata | Header / metadata captured at the top of a routing interface file |
| CRoutingInterfaceRow | One per-object record in a routing interface file |
| CTimeseriesRow | One row of a timeseries (SWMM-native text format) |
| CDbDeleter | Unique-pointer deleter using SQLite deferred close semantics |
| CDecodedLinestring | |
| CDecodedMultipolygon | |
| CDecodedPoint | |
| CFilePathPair | Two-string carrier for any external file path that appears in a SWMM .inp file |
| CGeoPackageInputPlugin | Own configuration and input IO state for a GeoPackage adapter |
| CGeoPackageOutputPlugin | Own configuration and output IO state for a GeoPackage adapter |
| CGeoPackagePluginInfo | IPluginComponentInfo for the GeoPackage I/O plugin |
| CGeoPackageReportPlugin | Own configuration and report IO state for a GeoPackage adapter |
| CGpkgError | Runtime-error carrier for owned GeoPackage/SQLite diagnostic text |
| ►CSimulationContext | Central, reentrant simulation context |
| CControlLogEntry | |
| CEvent | Event time periods for event-based analysis/reporting |
| CInletDiag | Per-inlet-usage performance block for the .rpt street tables |
| CMassBalance | |
| CMassBalance2D | |
| CMaxStats | Top-N element statistic entry (matching legacy TMaxStats) |
| CNegativeSourceStats | D-NS1 negative-source clamp bookkeeping (subplan §3.1, X6) |
| COutfallExports | Cumulative mass balance totals for runoff and routing |
| CQualityOnlyInflow | |
| CRoutingStepStats | |
| CTwoDModelIO | Non-owning pointers to the engine's 2D surface-routing model storage (mesh, solver options, boundary conditions, parse-time pending rows) |
| CVJDiag | Per-virtual-junction momentum-residual accumulators |
| CStmtDeleter | Unique-pointer deleter that finalizes prepared statements |
| CTransaction | Noncopyable best-effort transaction guard borrowing one SQLite connection |
| ►Ngroundwater | |
| CGWContext | |
| CGWSoA | |
| CGWSolver | Mutable two-zone groundwater state with independent scalar per-subcatchment RKF45. One owning simulation thread serializes init/execute/state edits. Initialization supplies defaults only; model loading must populate physical aquifer parameters and compile/bind optional expressions before stepping. No transactional rollback or per-call integration failure result is exposed |
| ►Nh5io | |
| CHandle | Owns an hid_t and closes it with the right H5*close on scope exit |
| CHdf5InputPlugin | |
| CHdf5PluginInfo | Singleton describing the HDF5 I/O plugin |
| ►Nhydkernels | |
| CCulvertCurve | Inlet-control curve coefficients for one culvert type code |
| ►Nhydraulics | |
| CTimestepController | Static utility class for explicit timestep computation |
| ►Nhydstruct | |
| COrificeGroup | |
| COutletGroup | |
| CPumpGroup | |
| CStructureSolver | |
| CWeirGroup | |
| ►Niface | |
| CInterfaceFileSoA | |
| CInterfaceManager | |
| ►Ninfil | Native infiltration kernels with caller-managed accepted-step state. These methods mutate the supplied state immediately and provide no rollback, finite-input validation or failure status. Call once per accepted source step, or evaluate a private state copy for a trial. Internal rates/depths are ft/s/ft; initialization alone accepts project input units. Serialize shared state use |
| CCurveNumState | |
| CGreenAmptState | |
| CHortonState | |
| ►Ninflow | |
| CDwfInflowSoA | |
| CExtInflowSoA | |
| CInflowSolver | Owned resolved inflow definitions and pattern lookup cache. Serialize init/refresh/compute with model edits and table readers. Per-call outputs are rates, not integrated amounts; routing assembles the decomposed water arrays into lateral flow later. No rollback or per-call error status |
| CTimePattern | |
| ►Ninlet | |
| CDesign | One inlet design in INTERNAL units (legacy TInletDesign, inlet.c:66-74) |
| CGeom | Street / channel geometry seen by one inlet, in INTERNAL units |
| CInletSoA | |
| CInletSolver | |
| CUsageParams | The per-placement half of one usage row (legacy TInlet fields) |
| ►Ninp_writer | |
| CInpWriteOptions | Write profile: which engine the file is written for |
| ►Ninput | |
| CInputReader | Reads and parses a SWMM .inp file into a SimulationContext |
| CMultiColumnFileCache | Per-resolve-pass cache keyed by resolved path |
| CNwsFileSpec | |
| CParsedLine | One data row together with its associated object comment |
| CParsedSeriesFile | One fully parsed multi-column series file (raw file-unit values) |
| CSectionRegistry | Registry that maps section tags (e.g., "[JUNCTIONS]") to handlers |
| CTokenizer | Stateless multi-delimiter tokenizer for SWMM input lines |
| ►Nio | |
| CAtomicOutputFile | Own a staging stream and publish it by a checked single-file rename |
| CCheckpointDirectory | |
| CCheckpointFile | |
| ►CCheckpointOutputPublication | |
| COutput | |
| COwnedCheckpointFile | |
| CRelativeResult | Outcome of computing target relative to anchor_dir |
| ►Nkinwave | |
| CKWSolver | Kinematic wave solver state |
| ►Nlanduse | |
| CBuildupParams | |
| CLanduseSolver | |
| CSurfaceQualitySoA | |
| CWashoffParams | |
| ►Nlard | |
| CLagrangianSolver | |
| CRwptDispersion | Persistent particle field + the per-substep exchange operator |
| CSegmentStore | |
| CSpeciesRowLayout | The segment store's species-row layout, computed in ONE place |
| ►Nlid | |
| CLIDGroupSoA | |
| ►CLIDSolver | |
| CCompletedUnitInput | |
| ►Nlidnode | |
| ►Ndetail | |
| CRichardsNodeDraft | |
| ►Nmathexpr | |
| CExpression | |
| CToken | |
| ►Node | |
| ►Ndetail | |
| COdeWorkspace | |
| ►Nperf | |
| CCounterBatch | Private counters for one worker in a worksharing phase. Nested batches merge into the enclosing worker's batch. The outer batch merges under one lock after the loop; hydraulic arithmetic is unaffected. When profiling is disabled, no counters are initialized or merged |
| CGatedTimer | |
| CProcessPhaseName | |
| CProcessTimer | |
| CScopedTimer | |
| CSigmaEvaluations | |
| ►Npolygon | |
| CRing | |
| ►Nquality | |
| CBoundaryWaterImport | |
| ►CConservativeMixing | |
| CResult | |
| CFvQualityTransport | |
| CFvTransportWater | |
| CMixedScalar | |
| CMixingScalar | |
| CMixingWater | |
| CQualitySolver | |
| CWaterTransfer | |
| ►Nrdii | |
| CExpDecayParams | |
| CRDIIGroupSoA | |
| CRDIISolver | Mutable strict-grid UH convolution, rainfall queues and node-flow history. Configure validated UH/decay/assignment rows before init. Serialize all access; advance mutates queues, abstraction, optional SWE and context balance totals. Stored float32 grid rows grow for the whole run; no streaming eviction/rollback. Direct public uh_params/decay_params edits require compatible layout and a fresh initialization before reuse. Exceptions can leave partial changes |
| CUHResponseData | |
| CUnitHydParams | |
| ►Nrdii_iface | |
| CRdiiInterfaceFile | RDII interface file manager (USE = read/override, SAVE = export) |
| ►Nrichards | |
| CCell | |
| CColumn | |
| CMaterial | |
| COptions | |
| CReport | |
| CTransfer | |
| ►Nrunoff | |
| CCompletedSourceArchive | |
| CCompletedSubareaWater | |
| CQueuedSourceDelivery | |
| CRunoffSoA | |
| CRunoffSolver | Owned three-pool non-LID reservoir, native soil state and completed routing history. Initialize against one compatible model before use. Geometry is cached; execute mutates both owner and context, invokes an optional borrowed callback, and is not a transaction. Completed-source drivers must trial copies and publish after all coupled water owners accept. Serialize all mutation, borrowing and archives |
| CRunoffSourceForcing | |
| CSourceAtmosphericLedger | |
| CSourceClockGroup | One weakly connected runoff/LID/snow-transfer component. subcatches/lid_usages contain model indices; completed_end is accepted elapsed seconds. pending contains staged forcing only, never committed water state |
| CSourceClockGroups | |
| CSourceForcingInterval | Piecewise-constant forcing over [start,end) in elapsed seconds. month is zero-based; infil_factor/recovery_factor are monthly dimensionless multipliers. sources follow the owning group's ascending subcatchment order; rain/pet/raw_precipitation are internal ft/s, not project rainfall units |
| CSourceNodeDelivery | |
| CSourceOutfallReturn | |
| CSourcePollutantLedger | |
| CSourceSurfaceReturn | |
| CSourceWaterDelivery | |
| CSourceWaterDeliveryBridge | |
| ►CSourceWaterDriver | Owned completed-source water/snow and conservative-pollutant trial driver. Context and kernel histories are copied; callbacks are borrowed synchronously. One owner serializes initialization, crediting, trials, reads and checkpoints. Stage advances private runoff/LID/snow state; commit adopts it with its group clock. Spatial receivers/hydraulic routing must settle separately. Liquid source and solid/liquid snow balances are distinct and paired, not double-counted rain. Qualified pollutants are conservative source-pool mixtures with drain removal; no land-use buildup/washoff, lumped groundwater, age/heat/reactions or production hot-start initialization is supplied. Private accepted-boundary restart requires a matching model and publication with paired source/surface/engine owners |
| CState | |
| CSourceWaterLedger | |
| ►Nrunoff_iface | |
| CRunoffInterfaceFile | Runoff interface file manager |
| ►Nsnow | |
| CDegreeDaySnow | |
| CSnowSoA | |
| ►Nstreet | |
| CStreetParams | |
| ►Nsurface | |
| ►Nueb | |
| CFluxes | Integrated accepted point exchanges and final thermal diagnostics. Water depths m and energy kJ/m2 cover the whole requested interval. Temperature Celsius and albedo are final accepted substep values, not interval averages. steps counts accepted leaves; retries counts successful binary splits |
| CForcing | Held point meteorology over one requested interval. seconds is duration, precipitation integrated liquid-equivalent m, temperature Celsius, wind m/s, humidity [0,1], incoming radiation W/m2, cosine [0,1]. Catch and drift apply to snowfall; snow_fraction=-1 selects temperature partition. Other fields remain held while advance splits time and apportions precipitation |
| CHeldState | |
| CLumpedFluxes | |
| CLumpedState | |
| CNativeState | Owned per-surface UEB predictions, accepted outputs and whole-model ledgers. Three surface columns per subcatchment; rain/snow caches are per subcatchment. Held water/energy use m and kJ/m2; global water/energy ledgers use m3 and kJ. Sample/completed clocks are elapsed seconds. last_seconds is the last call span; enabled column clocks can differ when source groups advance independently. Report arrays live in SnowSoA; one serialized owner coordinates both stores |
| CParameters | Point UEB material, radiation and integration parameters. Temperatures are Celsius, lengths m, densities kg/m3, heat capacities kJ/(kg K), conductivities kJ/(m K h), drainage/conductance m/h, max_step seconds. Fractions, age responses and stability are dimensionless; low_frequency retains the reference hourly convention. validate() checks all fields before public advance |
| CSite | Per-column environmental settings. forest is canopy fraction, drift a snow multiplier, pressure Pa, ground_heat prescribed W/m2 into the snow system, extinction_depth m. Public advance checks forest [0,1], drift>=0, positive pressure/depth and finite signed ground heat |
| CState | One owned point snow/active-soil energy and thermal-memory inventory. energy kJ/m2 may be signed, water m SWE, age dimensionless optical age, refreezing depths m. The duration-weighted history spans at most 24 hours. No forcing/runtime context is shared between independent point states |
| CThermalSample | One duration-weighted preceding thermal sample (seconds and Celsius) |
| CClimateSite | |
| ►CInfilBank | |
| CFactors | |
| CMeshSnow | Owned mixed degree-day/UEB snow on remaining mesh weather footprints. Geometry area is horizontal m2; cell slope/aspect are degrees. Water accounts are m3, energy kJ, point energy kJ/m2 and rates m/s. One owner serializes all mutation, borrowing and checkpoint/contact calls. Trial advance protects this snow owner, while shared context weather cursors/diagnostics can still change. Physical ground heat, cover-geometry energy and prescribed energy stay distinct |
| CMeshSnowConfig | |
| CMeshSnowGeometry | |
| CMeshSnowLedger | |
| CMeshSnowRow | One authored pack selection and optional site/geometry override. Missing optionals inherit lower-precedence scope values; explicit zero is a real override. forest is fraction, drift dimensionless, ground_heat W/m2, extinction_depth metres, slope degrees and aspect degrees clockwise north. pack is an unresolved model name or normalized NONE token |
| CRadiationSource | |
| CSnowConfig | |
| CSnowInputs | One element's interval weather, with SI point-input units. dt_s is seconds; rain_m/snow_m are interval water-equivalent depths (not rates), Ta_C is Celsius and wind_ms m/s. rh is fraction, Qsi/Qli/Qg incoming W/m2; cosine and horizontal-radiation factors are dimensionless. gamma/ea retain native degree-day F^-1/in-Hg conventions. Individual models may ignore fields |
| CSnowModel | Polymorphic point and native-batch snow boundary. One owner serializes state mutation and buffer use. Configure compatible model geometry/materials after allocation; a successful allocation alone does not establish physical snowpack parameters. Derived methods define failure and payload validation; this interface supplies no universal rollback/status |
| CSnowOutputs | Point snow results: interval depths metres and model-specific thermal state. melt_m can include pack drainage, mixed rainfall and instant plow liquid, not only phase change; throughfall_m is bypass rain. swe_m includes retained snow/ free water, cover_frac is dimensionless. Temperatures C, energy kJ/m2. Derived implementations specify which thermal fields are available/defaulted |
| CSnowpackConfig | |
| CSolarIntegral | |
| CSourceSnow | Per-source-group native/UEB snow ownership and cumulative water balance. Liquid source delivery, stored pack water and atmospheric losses are separate ledgers. Caller supplies a private context/trial and serializes all operations; mutations are immediate and exceptions do not roll back a partially advanced snow owner. SourceWaterDriver provides the enclosing accepted/trial boundary |
| CSourceSnowLedger | |
| CSurfaceElement | |
| ►Nsurfacespecies | |
| CBlock | |
| ►Ntrace | |
| CFlowTracer | Own topology, SI hydraulic averages and steady-flow trace preparation state. The C API validates topology/options and supplies aligned arrays. Direct C++ callers must preserve those invariants: valid endpoint indices, finite lengths, na.size()==nodes.size(), la.size()==links.size(), and valid positive solver tolerances/iteration limits. Serialize all access to one tracer; methods can mutate error/state and invoke synchronous callbacks. No internal transaction or C++ exception boundary is supplied; C wrappers catch most analysis exceptions |
| CLink | |
| CNode | |
| ►Ntransect | |
| CTransectData | |
| ►Ntransport | |
| ►Nfvkernels | |
| CNetworkMeshData | SoA mesh geometry and topology for the FV network solver |
| CNetworkStateData | Mutable solver state — the conserved variables and the node volumes |
| CSpeciesKernelView | Non-owning view over everything the species kernels read and write |
| ►Nheat | |
| CBedCoupling | One element's bed coupling, fully reduced to SI conductances |
| CPairStep | Simultaneous temperature increments for the coupled pair, °C |
| CSolarPosition | Sun geometry at one instant. The SPA swap point's return type |
| CSolutePairStep | Simultaneous concentration increments for the coupled pair |
| CArdEngine | |
| CCell | |
| CClassEnables | Allocation-free class enables for one domain — what the engines size from. n_msx is the reactions component's species count when MSX is on for the domain; msx_has_wall tells ARD / 2D that the component declares WALL species (their own fallback / warning) |
| CDonors | |
| CDraft | Build the full matrix (states + reasons). Pure: never writes warnings |
| CMatrix | |
| CReactionIntegrator | |
| CRowLayout | |
| CRxEvalEnv | Evaluation environment: pre-gathered pointers, no lookups |
| CRxExprSpan | Compiled expression = span into the shared pool. len 0 ⇒ no expression |
| CRxRateContext | |
| CRxStepReport | |
| CRxSymbols | |
| CRxToken | |
| CRxWorkspace | |
| CTokenizer | Stateless multi-delimiter tokenizer for SWMM input lines |
| ►Ntreatment | |
| CToken | |
| CTreatExpr | |
| ►NtwoD | |
| ►Ndispersion | |
| CGradientFit | |
| CTensor | |
| ►Nexchange | |
| CCoefficients | Discharge coefficients and the φ regularisation head |
| CGeometry | A coupling point's structure, SI |
| CResult | |
| ►Nfootprint | |
| CPoint | |
| ►Ngpu | |
| ►Nkperf | |
| CCounters | |
| CKernelEntry | |
| CScope | |
| ►Nswe_kernels | |
| CGradients | |
| CMesh | |
| CState | |
| CTransfers | |
| CExplicitKokkosSurfaceSolver | |
| CSourceBudget | |
| ►Nsigma | |
| CColumnPreparation | |
| CColumnStep | What one column sweep needs and what it reports back |
| CColumnTransfers | |
| ►Nsoil | |
| CParams | |
| ►Nswe | |
| CFaceFlux | |
| CFaceSide | |
| ►CBoundaryData | SoA storage for per-edge boundary conditions |
| CRuntimeOriginal | |
| CChannelGroundContact | |
| CChannelGroundState | |
| CCommonSourceStage | |
| CCouplingPoint | Descriptor for a single coupling point between 2D and 1D |
| CCoverageRow2D | [2D_COVERAGES] — one row = the whole coverage set of its scope |
| CCurbRow2D | [2D_CURB_LENGTH] — curb length per cell, project length units |
| CEngineSourceResultHistory | |
| ►CEngineSourceResultStream | |
| CCursor | |
| CFrame | |
| CPreparedRestore | |
| CExplicitInertialSolver | |
| CGpuExecutionOwner | |
| ►CGroundColumnAssembly | |
| CLidEnergy | |
| CGroundHeatState | |
| CGroundLidThermalOwner | |
| CGroundPorewaterColumn | |
| CGroundThermalCell | |
| CGwAquiferRow | |
| CGwBoundaryPulse | |
| CGwBoundaryQualityRow | One [GW_BOUNDARY_QUALITY] row — a lateral edge BC |
| CGwBoundaryRow | |
| CGwBoundaryTerm | |
| CGwInitialQualityRow | One [GW_INITIAL_QUALITY] row |
| CGwLinkRow | |
| ►CGwLinkShare | |
| CContact | Full-length fraction, SI bed elevations |
| CGwNodeBed | |
| CGwOptions | [2D_AQUIFER_OPTIONS]. Defaults are the plan's starred values |
| CGwParamsRow | One [GW_TRANSPORT_PARAMS] row: solute + thermal matrix properties |
| CGwRechargeBackend | |
| CGwResolvedBoundary | |
| CGwResolvedSource | |
| CGwResolvedSourceTerm | |
| CGwSorptionRow | One [GW_SORPTION] row: retardation input for one species in one scope |
| CGwSourcePulse | |
| CGwSourceRow | One [GW_SOURCES] row — a well / point source or sink |
| CGwSourceSeries | |
| CGwSourceSignal | |
| CGwSourceSpeciesTerm | One [GW_SOURCES] species term |
| CGwSubcatchShare | |
| CGwTransportData | Every [GW_*] authoring row of one model |
| CGwTransportOptions | |
| CGwUnitFactors | Project-unit → SI multipliers for the four kinds of aquifer number |
| CInertialEdges | Canonical unique interior-edge layout + per-cell incidence for the local-inertial scheme |
| CInfil2D | Owns per-cell infiltration parameters, kernel state and held rates |
| CInfil2DDefault | |
| CInfil2DOptions | [2D_INFILTRATION_OPTIONS] |
| CInfil2DOverride | One [2D_INFILTRATION] per-cell override row |
| CInfil2DRow | One infiltration specification: method + positional parameters + destination |
| ►CISurfaceSolver | Abstract time integrator for the 2D surface-routing ODE system |
| CRunStats | |
| CLayerTransportMove | |
| CLayerTransportResult | |
| CLayerTransportScratch | |
| CLidNodeThermalGraph | |
| CLidThermalWaterTransfer | |
| CLoadingRow2D | [2D_LOADINGS] — initial buildup, user mass per unit land area |
| CMeshAtmosphericFlux | |
| ►CMeshData | SoA storage for 2D mixed triangle/quad mesh geometry and topology |
| CTriCouplingRow | |
| CMeshHeatState | |
| CMeshPolylineInterval | |
| CMeshPolylineMapping | |
| CMomentumPhysics2D | |
| CNodeData | Structure-of-Arrays storage for all nodes |
| COutfallExchange | |
| CPendingBoundaryQualityRow | |
| CPendingBoundaryRow | Per-row buffer for [2D_BOUNDARY_CONDITIONS] parse output |
| CPendingEdgeConveyanceRow | Per-row buffer for [2D_EDGE_CONVEYANCE] parse output (§11A) |
| CPendingInitialBedQualityRow | One [2D_INITIAL_BED_QUALITY] row for finite local-bed porewater |
| CPendingInitialQualityRow | One [2D_INITIAL_QUALITY] row (overland transport S1/S2) |
| CPluginSurfaceSolver | |
| CPorewaterAdvection | |
| CPorewaterTransportScratch | |
| CPorousHeatColumn | |
| ►CRainfallInterpolator | Builds and applies static rainfall-interpolation weights for the mesh |
| CDiagnostics | |
| CResultHistoryAppend | |
| CRichardsBedAcceptance | |
| CRichardsBedBinding | |
| CRichardsBedOwner | |
| CRichardsBedReceipt | |
| CRichardsBedStep | |
| CRichardsBedStepper | |
| CRichardsBedTrial | |
| CRk2CheckpointBinding | |
| CRowLayoutLite | |
| CRuntimeForcing | |
| CRuntimeForcings | |
| CRuntimeReceipt | |
| CRuntimeSource | |
| CRuntimeSources | |
| CRuntimeWaterCheckpoint | |
| CRuntimeWaterCheckpointBinding | |
| ►CRuntimeWaterDriverCheckpoint | |
| CPreparedRestore | |
| CSnapshot | |
| ►CSigmaPorewaterMap | |
| COverlap | |
| CSolverOptions2D | |
| CSourceResultHistory | |
| CSourceResultTable | |
| CSqScopeKey | |
| CSubsurfaceConfig | Everything the parser fills, before resolution onto cells |
| ►CSubsurfaceSolver | The two-zone kernel. Owned by SurfaceRouter2D; driven by the marcher's tier hooks |
| CLidBedDiagnostic | |
| CNodeWaterBudget | |
| CPendingLidBed | |
| CSubsurfaceState | Per-cell resolved parameters and state (SoA) |
| CSubsurfaceTransportState | Species mass in both aquifer zones, and where mass crossed a boundary |
| CSurfaceEtReceipt | |
| CSurfaceExchange | |
| CSurfaceIntakeActual | |
| CSurfaceIntakeAward | |
| CSurfaceIntakeReceipt | |
| CSurfaceIntakeRequest | |
| CSurfaceOwnerObject | |
| CSurfaceOwnerRecord | |
| CSurfaceOwnerShare | |
| CSurfaceOwnershipPreview | |
| CSurfaceQuality2D | The S7 store: authored rows, resolved per-cell coverages and state, and the per-species ledgers |
| CSurfaceReturnReceipt | |
| ►CSurfaceRouter2D | Top-level orchestrator for the 2D surface routing module |
| CRestartState | |
| CSurfaceStateData | |
| CSurfaceThermalSample | |
| ►CSurfaceTransportState | |
| CBoundaryQualityRow | |
| CThermalAdvection | |
| CThermalBoundary | |
| CThermalContact | |
| CThermalContactScratch | |
| CThermalMaterial | |
| CThermalMidpointScratch | |
| CThermalSolution | |
| CThermalStore | |
| ►Nucf | |
| CDisplayUnits | |
| ►Nxsect | |
| CLocateLut | |
| CXsectEval | The geometry layer itself, parameterized on where its tables live |
| CXsectTables | |
| CAquiferStore | SoA storage for aquifer parameter sets |
| CArdConfigData | Parsed model.ard state consumed by ArdEngine::init (phase E3) |
| CArdTransportRow | One raw [TRANSPORT_BOUNDARIES] or [TRANSPORT_SOURCES] row (E5a) |
| CBedZoneState | Runtime bed state, one entry per LINK |
| CBuildupData | |
| CBuiltinDefaultInputPluginInfo | |
| CBuiltinDefaultOutputPluginInfo | |
| CBuiltinDefaultReportPluginInfo | |
| CBuiltinDefaultStateIOPluginInfo | |
| CChannelSpeciesIncrement | |
| CChannelSpeciesRegion | |
| CChannelThermalIncrement | |
| CChannelThermalRegion | |
| ►CCheckpointInspection | |
| CCompanion | |
| CDriver | |
| CReports | |
| CCiEqual | Transparent case-insensitive equality for unordered containers |
| CCiHash | Transparent case-insensitive hash (FNV-1a over the uppercase fold) |
| CCloudConfig | [CLOUD_COVER] — one fraction driving two modules (H6a, D-H6a-2) |
| CConductionConfig | Vertical conduction between LID layers (plan §6.1 D-H5b, H5b) |
| CConduitData | Dense SoA for conduit-only properties (one row per CONDUIT link) |
| CControlRuleStore | |
| CCurveNumState | |
| CDefaultInputPlugin | Default input plugin that reads/writes SWMM .inp files |
| ►CDefaultOutputPlugin | Default output plugin: writes SWMM 5.x compatible binary .out file |
| CPreparedCheckpoint | |
| CDefaultReportPlugin | Default report plugin: writes SWMM 5.x compatible .rpt report file |
| CDefaultStateIOPlugin | Default state-IO plugin: OpenSWMM binary + legacy SWMM5 hot-start |
| CDiscoveredFilter | A FileFilter paired with the plugin id and version that emitted it |
| CDiscoveredPlugin | A plugin grouped by id with all the roles and filters it advertises |
| CDividerData | Dense SoA for flow-divider properties (one row per DIVIDER node) |
| CDwfData | Dry-weather-flow authoring rows stored in aligned columns |
| CExtInflowData | External inflow authoring rows stored in aligned columns |
| CFileFilter | A file-format filter advertised by a plugin |
| CFilePathPair | Two-string carrier for any external file path that appears in a SWMM .inp file |
| CFilesSpec | |
| ►CForcingData | |
| CElemClimateChannel | |
| CGageData | Structure-of-Arrays storage for all rain gages |
| CGageSnapshot | Snapshot of rain gage state at an output time step |
| CGreenAmptState | |
| CHeatConfigData | Parsed model.heat state (heat component, phase H1) |
| CHeatElement | Which element a flux evaluator is being called for |
| CHeatOverrideData | Dense per-element attribute storage (PE2, D-PE2) |
| CHeatOverrideRow | |
| CHeatState | Runtime heat state shared by the engines (phase H1) |
| CHortonState | |
| CHotStartFile | In-memory hot start file data |
| CHotStartHeader | In-memory representation of the OPENSWMM_HS_V1 header |
| CHotStartLidCellRecord | Node hydraulic state at hot-start save time |
| CHotStartLinkRecord | Link hydraulic state at hot-start save time |
| CHotStartManager | |
| CHotStartNodeRecord | |
| CHotstartSaveEntry | Configuration parsed from the [FILES] section |
| CHotStartSubcatchRecord | Subcatchment state at hot-start save time |
| CICouplingPoint | Abstract coupling point between a 1D SWMM object and a 2D mesh cell |
| CIInputPlugin | Interface for input file reader/writer plugins |
| CInitialQualityData | |
| CInletStore | |
| CInletUsageStore | |
| CIOThread | Producer-consumer IO thread for writing simulation snapshots |
| CIOutputPlugin | Interface for output-writing plugins |
| CIPluginComponentInfo | Describes a plugin component: metadata, capabilities, and factory methods |
| CIReportPlugin | Interface for report-writing plugins |
| CIStateIOPlugin | Interface for state / hot-start IO plugins |
| CLanduseData | |
| CLegacySpeciesTrailer | Static utility class for hot start file operations |
| CLidControlStore | SoA storage for LID control type definitions |
| CLidLayerSpeciesState | Per-(unit, layer, species) state for every LID unit in the model |
| CLidLayerTreatment | |
| CLidNodeCell | |
| CLidNodeConfig | |
| CLidNodeLayer | |
| CLidNodeOutlet | |
| CLidNodeState | |
| CLidPortTransfer | |
| CLidUsageStore | SoA storage for LID usage assignments to subcatchments |
| CLidWaterTransfer | |
| CLinkData | Structure-of-Arrays storage for all links |
| CLinkSnapshot | Snapshot of link state at an output time step |
| CLinkSubtypes | Owns the five link subtype side-tables plus the reverse index map |
| CMsxSurfaceData | Resolved MSX surface-quality parameters and state |
| ►CMsxSurfaceRows | Rows parked by the section handlers for names that are not pollutants |
| CBuildup | |
| CLoading | |
| CWashoff | |
| CNameIndex | Bidirectional name↔index registry for SWMM objects |
| CNodeCoupling2DRows | Sparse [2D_NODE_COUPLING] rows (one per authored node) |
| CNodeData | Structure-of-Arrays storage for all nodes |
| CNodeSnapshot | Snapshot of node state at an output time step |
| CNodeSubtypes | Owns the three node subtype side-tables plus the reverse index map |
| COrificeData | |
| COutfallData | Dense SoA for outfall boundary-condition properties (one row per OUTFALL) |
| COutletData | |
| COutputReader | Reads SWMM 5.x binary .out files produced by DefaultOutputPlugin. Reads use a shared mutable FILE cursor even on const methods: serialize all operations per reader, including refresh/close. Returns raw stored units; no endian/float-representation conversion or general corrupt-file hardening is provided. File counts/offsets must fit native allocation/long arithmetic |
| CPatternData | Time-pattern authoring names, types and multiplier vectors |
| ►CPluginFactory | Manages plugin discovery, loading, and lifecycle for one engine instance |
| CComponentEntry | List all discovered component info entries |
| CComponentLibraryRecord | |
| CPluginSpec | One plugin entry from the [PLUGINS] section |
| CPollutantData | Static properties for each pollutant species |
| CProcessComponentSpec | One row of [PROCESS_COMPONENTS] (Unified Transport suite, D-UT8) |
| CPumpData | |
| CRadiativeConfig | [RADIATIVE_FLUXES] parameters (heat plan §2.2, phase H3) |
| CRDIIAssignData | Node-to-hydrograph authoring assignments stored in aligned columns |
| CRDIIDecayData | Exponential IA-decay authoring rows keyed by group and response |
| CRDIIDecayEntry | |
| ►CReactionData | |
| CLidLaw | |
| CLidState | |
| CMsxRoutingLedger | |
| CParameterOverride | |
| CSource | |
| CSourcePattern | |
| CSubsurfaceLaw | |
| CSurfaceLaw | |
| CWallArea | |
| CRegistrationInfo | Registration information for plugin activation |
| ►CRouter | Top-level routing orchestrator |
| CRestartState | |
| CRxExprSpan | Compiled expression = span into the shared pool. len 0 ⇒ no expression |
| CRxToken | |
| CSedimentConfig | [SEDIMENT_EXCHANGE] — the bed zone's material and geometry |
| CShapeGroup | SoA parameter block for all links of one cross-section shape |
| ►CSimulationContext | Central, reentrant simulation context |
| CControlLogEntry | |
| CEvent | Event time periods for event-based analysis/reporting |
| CInletDiag | Per-inlet-usage performance block for the .rpt street tables |
| CMassBalance | |
| CMassBalance2D | |
| CMaxStats | Top-N element statistic entry (matching legacy TMaxStats) |
| CNegativeSourceStats | D-NS1 negative-source clamp bookkeeping (subplan §3.1, X6) |
| COutfallExports | Cumulative mass balance totals for runoff and routing |
| CQualityOnlyInflow | |
| CRoutingStepStats | |
| CTwoDModelIO | Non-owning pointers to the engine's 2D surface-routing model storage (mesh, solver options, boundary conditions, parse-time pending rows) |
| CVJDiag | Per-virtual-junction momentum-residual accumulators |
| CSimulationOptions | All SWMM simulation options parsed from [OPTIONS] section |
| CSimulationSnapshot | Complete simulation state snapshot at one output time step |
| CSnowpackStore | SoA storage for snowpack parameter sets |
| CSnowResultField | |
| CSolarConfig | [SOLAR_RADIATION] — site geometry and Bird atmosphere (H6a) |
| CSpatialFrame | Spatial frame containing CRS and georeferenced coordinates |
| CSpeciesRegistry | |
| CStateAccessors | Solver-neutral hooks for reading and writing solver-internal state (infiltration, groundwater) at hot-start save/load time |
| CStorageData | Dense SoA for storage-unit properties (one row per STORAGE node) |
| CStreetStore | |
| CSubcatchData | Structure-of-Arrays storage for all subcatchments |
| CSubcatchSnapshot | Snapshot of subcatchment state at an output time step |
| CTable | |
| CTableBlock | A single time series or rating curve |
| CTableCursor | Bidirectional cursor tracking the last accessed index in a Table |
| CTableData | SoA collection of all time series and curves in the model |
| CTableValidation | |
| CTransectStore | |
| CTreatmentData | |
| CUnitHydData | Hydrograph parameter rows and independent group-to-gage assignments |
| CUnitHydEntry | |
| CUserFlagAssignment | A (object_type, object_name, flag_name) → value assignment |
| CUserFlagDef | Schema entry for a single user-defined flag |
| CUserFlags | Stores the full user-flags data: schema definitions + per-object values |
| CWashoffData | |
| CWaterAgeConfigData | Parsed model.age state (waterage component, phase A1a) |
| CWaterAgeState | |
| CWeirData | |
| CWriteTask | One item in the IOThread write queue |
| CXSectGroups | Shape-grouped cross-section manager for batch computation |
| CXSectParams | Native cross-section geometry and borrowed optional normalized transect tables |
| Calloc_handle_t | |
| Calloc_hdr_s | |
| Calloc_root_s | |
| CDwfInflow | |
| Cerror_s | Structure for managing errors |
| CExprNode | |
| CExtInflow | |
| CFlowTracer | Own topology, SI hydraulic averages and steady-flow trace preparation state. The C API validates topology/options and supplies aligned arrays. Direct C++ callers must preserve those invariants: valid endpoint indices, finite lengths, na.size()==nodes.size(), la.size()==links.size(), and valid positive solver tolerances/iteration limits. Serialize all access to one tracer; methods can mutate error/state and invoke synchronous callbacks. No internal transaction or C++ exception boundary is supplied; C wrappers catch most analysis exceptions |
| CGpkgHandle | |
| CHTentry | |
| CLidGroup | |
| CLidList | |
| COpenSwmmGpuProbe | |
| COpenSwmmGwCapabilitiesV1 | |
| COpenSwmmGwRechargeInputV1 | |
| CProject | |
| CSWMM_2DRunStats | Cumulative explicit-marcher run statistics plus the backend and closure this run is on — the numbers the .rpt "2D Solver Statistics" block prints, readable DURING the run (after swmm_engine_start) |
| CSWMM_ChannelGroundContact | |
| CSWMM_ChannelGroundPreview | |
| CSWMM_ChannelGroundStatus | |
| CSWMM_CheckpointSessionOptions | |
| CSWMM_ClimateCloudConfig | |
| CSWMM_ClimateMetSummary | |
| CSWMM_ComponentLibraryInfo | One discovered (or refused) component library. Strings are NUL-terminated and truncated to their field size |
| CSWMM_ConversionResult | Result of a node or link type conversion |
| CSWMM_CouplingBoundary | |
| CSWMM_CouplingClear | |
| CSWMM_CouplingForcing | |
| CSWMM_CouplingFrame | |
| CSWMM_CouplingReceipt | |
| CSWMM_CouplingSource | |
| CSWMM_EvapPreviewConfig | |
| CSWMM_EvapPreviewSample | |
| CSWMM_EvapPreviewSummary | |
| CSWMM_GroundHeatStatus | |
| CSWMM_GwBoundary | |
| CSWMM_GwExecutionStatus | |
| CSWMM_GwNodeBed | |
| CSWMM_GwParams | |
| CSWMM_Heat2DStatus | |
| CSWMM_ImpactEntry | One object that references the deletion target |
| CSWMM_ImpactReport | Aggregate impact report for a deletion operation |
| CSWMM_Infil2DAuthoredRow | |
| CSWMM_Infil2DOptions | [2D_INFILTRATION_OPTIONS] — POD mirror of openswmm::twoD::Infil2DOptions |
| CSWMM_Infil2DRow | One infiltration specification — POD mirror of openswmm::twoD::Infil2DRow |
| CSWMM_InletDesign | Complete description of an inlet design. All dimensions are in the project's display units (ft or m; ft/s or m/s) |
| CSWMM_InletUsage | |
| CSWMM_LidBottomState | |
| CSWMM_LidLayerTreatment | |
| CSWMM_LidNodeBottomEdit | |
| CSWMM_LidNodeLayer | |
| CSWMM_LidRichardsMaterial | |
| CSWMM_LidRichardsOptions | |
| CSWMM_LidRichardsStatistics | |
| Cswmm_LinkStats | Cumulative link statistics |
| CSWMM_MeshSnowLedger | |
| CSWMM_MeshSnowOverrides | |
| Cswmm_NodeStats | Cumulative node statistics |
| CSWMM_OutfallExportReceipt | |
| Cswmm_OutfallStats | Cumulative outfall node statistics |
| Cswmm_PumpStats | Cumulative pump statistics |
| CSWMM_RadiationConfig | |
| Cswmm_RoutingTotals | System-level flow routing mass balance totals (raw ft3; pctError is percent) |
| Cswmm_RunoffTotals | System-level surface runoff mass balance totals |
| CSWMM_SnowLedger | |
| CSWMM_SnowpackEdit | |
| CSWMM_SnowState | |
| Cswmm_StorageStats | Cumulative storage node statistics |
| Cswmm_SubcatchStats | Cumulative subcatchment statistics |
| CSWMM_SurfaceOwnerObject | |
| CSWMM_SurfaceOwnerShare | |
| CSWMM_ThreadInfo | |
| CSWMM_TraceInfo | |
| CSWMM_TraceLinkAverage | |
| CSWMM_TraceLinkInput | |
| CSWMM_TraceNodeAverage | |
| CSWMM_TraceNodeInput | |
| CSWMM_TraceOptions | |
| CSWMM_TraceSummary | |
| CSWMM_TraceValue | |
| CSWMM_TransportCell | |
| CSWMM_TransportDraft | |
| CSWMM_TransportMatrix | |
| CSWMM_UebSnowpack | |
| CTableEntry | |
| CTAction | Rule action clause |
| CTActionList | Linked list of control actions |
| CTAdjust | |
| CTAquifer | |
| CTAvgResults | |
| CTBuildup | |
| CTConduit | |
| CTCulvert | |
| CTCurbInlet | |
| CTCurveNum | |
| CTCustomInlet | |
| CTDivider | |
| CTDrainLayer | |
| CTDrainMatLayer | |
| CTEvap | |
| CTEvent | |
| CTExfil | Exfiltration object |
| CTExpression | Rule premise math expression |
| CTFile | |
| CTGage | |
| CTGrateInlet | |
| CTGrnAmpt | |
| CTGroundwater | |
| CTGWaterStats | |
| CTGwaterTotals | |
| CTHorton | |
| CTInfil | |
| CTInlet | |
| CTInletDesign | |
| CTInletStats | |
| CTLandFactor | |
| CTLanduse | |
| CTLidProc | |
| CTLidRptFile | |
| CTLidUnit | |
| CTLink | |
| CTLinkStats | |
| CTLoadingTotals | |
| CTMaxStats | |
| CTMovAve | Structure for moving average of daily temperatures |
| CTNamedVariable | Rule premise named variable |
| CTNode | |
| CTNodeStats | |
| CTOrifice | |
| CTOutfall | |
| CTOutfallStats | |
| CTOutlet | |
| CTPattern | |
| CTPavementLayer | |
| CTPollut | |
| CTPremise | Rule premise clause |
| CTPump | |
| CTPumpStats | |
| CTRainStats | |
| CTRdiiInflow | |
| CTreeNode | |
| CTRoutingTotals | |
| CTRptField | |
| CTRptFlags | |
| CTRule | Control rule |
| CTRunoffTotals | |
| CTShape | |
| CTSlottedInlet | |
| CTSnow | |
| CTSnowmelt | |
| CTSnowpack | |
| CTSoilLayer | |
| CTStorage | |
| CTStorageLayer | |
| CTStorageStats | |
| CTStorageVol | |
| CTStreet | |
| CTSubarea | |
| CTSubcatch | |
| CTSubcatchStats | |
| CTSurfaceLayer | |
| CTTable | |
| CTTemp | |
| CTTimeStepStats | |
| CTTransect | |
| CTTreatment | |
| CTUHData | |
| CTUHGroup | |
| CTUnitHyd | |
| CTVariable | Rule premise variable |
| CTWashoff | |
| CTWaterBalance | |
| CTWeir | |
| CTWind | |
| CTXnode | |
| CTXsect | |
| CTXsectStar | |