OpenSWMM Engine  6.0.0-alpha.1
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.1)
Loading...
Searching...
No Matches
SectionHandlers2D.hpp File Reference

Input section parsers for the 2D surface routing module. More...

#include "../data/MeshData.hpp"
#include "../data/SolverOptions2D.hpp"
#include "../SurfaceRouter2D.hpp"
#include "../../input/SectionRegistry.hpp"
#include <string>
#include <vector>
Include dependency graph for SectionHandlers2D.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  openswmm
 
namespace  openswmm::twoD
 

Functions

std::string openswmm::twoD::parse2DOptionsLine (const std::vector< std::string > &tokens, SolverOptions2D &opts)
 Parse a single line from the [2D_OPTIONS] section.
 
std::string openswmm::twoD::parse2DVertexLine (const std::vector< std::string > &tokens, MeshData &mesh)
 Parse a single line from the [2D_VERTICES] section.
 
std::string openswmm::twoD::parse2DTriangleLine (const std::vector< std::string > &tokens, MeshData &mesh)
 Parse a single line from the [2D_TRIANGLES] section.
 
std::string openswmm::twoD::parse2DVertexNodeMapLine (const std::vector< std::string > &tokens, MeshData &mesh)
 Parse a single line from the [2D_VERTEX_NODE_MAP] section.
 
std::string openswmm::twoD::parse2DTriangleNodeMapLine (const std::vector< std::string > &tokens, MeshData &mesh)
 Parse a single line from the [2D_TRIANGLE_NODE_MAP] section.
 
std::string openswmm::twoD::parse2DBoundaryConditionsLine (const std::vector< std::string > &tokens, std::vector< SurfaceRouter2D::PendingBoundaryRow > &pending_rows)
 V-E3 — parse a single line from the [2D_BOUNDARY_CONDITIONS] section into a SurfaceRouter2D::PendingBoundaryRow appended to pending_rows.
 
void openswmm::twoD::register2DSections (MeshData &mesh, SolverOptions2D &options, std::vector< SurfaceRouter2D::PendingBoundaryRow > &pending_bc_rows, input::SectionRegistry &registry)
 Register all 2D input section handlers with the section registry.
 
std::string openswmm::twoD::load2DMeshExternalFile (MeshData &mesh, SolverOptions2D &opts, std::vector< SurfaceRouter2D::PendingBoundaryRow > &pending_bc_rows, const std::string &mesh_file, const std::string &inp_base_dir)
 Load 2D mesh sections from an external file.
 

Detailed Description

Input section parsers for the 2D surface routing module.

Provides handler functions for the [2D_*] input sections:

  • [2D_OPTIONS] — Solver options and tolerances
  • [2D_VERTICES] — Mesh vertex coordinates
  • [2D_TRIANGLES] — Triangle connectivity and roughness
  • [2D_VERTEX_NODE_MAP] — Vertex-to-SWMM-node coupling
  • [2D_TRIANGLE_NODE_MAP] — Triangle-to-SWMM-node coupling

Each handler is registered via SectionRegistry::register_custom() and conforms to the SectionHandler signature.

See also
TWO_DIMENSIONAL_SURFACE_ROUTING_IMPLEMENTATION_STRATEGY.md §1
Author
Caleb Buahin caleb.nosp@m..bua.nosp@m.hin@g.nosp@m.mail.nosp@m..com
License\n MIT License