OpenSWMM Engine  6.0.0-alpha.1
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.1)
Loading...
Searching...
No Matches
Plugin System
Collaboration diagram for Plugin System:

Modules

 Plugin SDK Interfaces
 

Files

file  DefaultOutputPlugin.cpp
 DefaultOutputPlugin — SWMM 5.x binary .out file writer.
 
file  DefaultOutputPlugin.hpp
 Built-in output plugin that writes the legacy SWMM binary output format.
 
file  DefaultReportPlugin.cpp
 DefaultReportPlugin — legacy SWMM-compatible .rpt report writer.
 
file  DefaultReportPlugin.hpp
 Built-in report plugin that writes the legacy SWMM .rpt summary.
 
file  PluginFactory.cpp
 Plugin loader and lifecycle manager — implementation.
 
file  PluginFactory.hpp
 Plugin loader and lifecycle manager (Phase 4, R14).
 
file  SimulationSnapshot.hpp
 Read-only snapshot of simulation state passed to plugins.
 

Classes

class  openswmm::DefaultOutputPlugin
 Default output plugin: writes SWMM 5.x compatible binary .out file. More...
 
class  openswmm::DefaultReportPlugin
 Default report plugin: writes SWMM 5.x compatible .rpt report file. More...
 
class  openswmm::PluginFactory
 Manages all dynamically loaded plugins for one engine instance. More...
 
struct  openswmm::NodeSnapshot
 Snapshot of node state at an output time step. More...
 
struct  openswmm::LinkSnapshot
 Snapshot of link state at an output time step. More...
 
struct  openswmm::SubcatchSnapshot
 Snapshot of subcatchment state at an output time step. More...
 
struct  openswmm::GageSnapshot
 Snapshot of rain gage state at an output time step. More...
 
struct  openswmm::SimulationSnapshot
 Complete simulation state snapshot at one output time step. More...
 

Enumerations

enum class  openswmm::PluginState : std::int32_t {
  openswmm::PluginState::UNLOADED = 0 ,
  openswmm::PluginState::LOADED = 1 ,
  openswmm::PluginState::INITIALIZED = 2 ,
  openswmm::PluginState::VALIDATED = 3 ,
  openswmm::PluginState::PREPARED = 4 ,
  openswmm::PluginState::UPDATING = 5 ,
  openswmm::PluginState::FINALIZED = 6 ,
  openswmm::PluginState::CLOSED = 7 ,
  openswmm::PluginState::ERROR = -1
}
 Plugin lifecycle states. More...
 

Detailed Description

See also
IOutputPlugin.hpp
IReportPlugin.hpp
PluginFactory.hpp (in src/engine/plugins/)
Author
Caleb Buahin caleb.nosp@m..bua.nosp@m.hin@g.nosp@m.mail.nosp@m..com
License\n MIT License

Enumeration Type Documentation

◆ PluginState

enum class openswmm::PluginState : std::int32_t
strong

Plugin lifecycle states.

Enumerator
UNLOADED 

Library not yet loaded (or was closed).

LOADED 

Shared library opened via dlopen/LoadLibrary.

INITIALIZED 

initialize() returned success.

VALIDATED 

validate() returned success.

PREPARED 

prepare() returned success; ready to accept update() calls.

UPDATING 

Currently executing an update() call (transient; not normally observed).

FINALIZED 

finalize() returned success; no more update() calls.

CLOSED 

Library closed and handle released.

ERROR 

Plugin is in an error state; not usable.