+
Skip to content
Reese Walton edited this page May 2, 2022 · 1 revision

Overview

The SWMM v6 API is primarily based on the SQLite3 API. Below is a comparison of the primary objects and routines used by each library and their conceptual purpose.

Purpose SQLite3 SWMM6
Handle for database/project sqlite3* swmm6_prj*
Open a database/project sqlite3_open() swmm6_open()
Handle for query/simulation step sqlite3_stmt* swmm6_sim*
Get next result from query/sim sqlite3_step() swmm6_step()

Input/Output Module

Goal is to build a simulation from an external file or datasource; either a SWMM5 input file (.inp), the new default SQLite database format (.swmm), or any another format that can describe the variables needed to perform a simulation.

SWMM6 will have a SQLite3 virtual table implementation to read SWMM5 input files and use them natively as if from a database, but the new SQLite database will be the default.

Input/Output will be responsible for the following tasks:

  • Defining a Generator type (flow, pollutant, etc.)
  • Define an Area type (subcatchment, LID, etc.)
  • Define a Node/Link type (junction, storage, outfall, divider, etc.)
  • Define an external object type (Rain gauge, external flow source, table format, etc.)
  • Define a Router (kynwave, dynwave, treatment, etc.)
  • Iterating through datasource to create objects of the defined type
Clone this wiki locally
点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载