OpenSWMM Engine  6.0.0-alpha.4
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.4)
Loading...
Searching...
No Matches
MultiColumnSeriesFile.cpp File Reference

Parse-once cache for multi-column series files (CSV/TSV/TSF). More...

#include "MultiColumnSeriesFile.hpp"
#include "core/FileIO.hpp"
#include "../core/DateTime.hpp"
#include <algorithm>
#include <atomic>
#include <cctype>
#include <cmath>
#include <cstdio>
#include <cstdlib>
#include <fstream>
#include <limits>
#include <numeric>
Include dependency graph for MultiColumnSeriesFile.cpp:

Namespaces

namespace  openswmm
 
namespace  openswmm::input
 

Functions

bool openswmm::input::parse_series_datetime (const std::string &cell, double &out)
 Parse supported date/clock syntax into SWMM decimal days.
 
bool openswmm::input::looks_like_multicolumn_series_file (const std::string &abs_path)
 Open a file and sniff its first nonblank/noncomment row.
 
bool openswmm::input::split_series_file_token (std::string_view token, std::string &path_out, std::string &column_out)
 Split the last eligible column-suffix colon from an external-file token.
 
bool openswmm::input::parse_multicolumn_series_file (const std::string &abs_path, ParsedSeriesFile &out, std::vector< std::string > &errors, SeriesFileStatus *status=nullptr)
 Parse CSV/TSV/TSF columns into owned sorted raw-value arrays.
 
long openswmm::input::multicolumn_parse_count_total () noexcept
 Read the relaxed atomic process-wide parse-entry count.
 

Detailed Description

Parse-once cache for multi-column series files (CSV/TSV/TSF).

See also
MultiColumnSeriesFile.hpp
Author
Caleb Buahin caleb.nosp@m..bua.nosp@m.hin@g.nosp@m.mail.nosp@m..com
License
Apache-2.0