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

Implementation of the RAII handles and columnar helpers. More...

#include "Hdf5Util.hpp"
#include "../Hdf5ObjectCreation.hpp"
#include <cstring>
#include <vector>
Include dependency graph for Hdf5Util.cpp:

Namespaces

namespace  openswmm
 
namespace  openswmm::h5io
 

Functions

Handle openswmm::h5io::open_file_readonly (const std::string &path)
 Open an existing HDF5 file for read-only access.
 
std::string openswmm::h5io::column_units (hid_t group, const std::string &column)
 A column's units attribute, or "" when it has none.
 
Handle openswmm::h5io::make_string_type ()
 A variable-length UTF-8 string type, for name columns.
 
Handle openswmm::h5io::make_group (hid_t loc, const std::string &name)
 Create (or open) a group, creating intermediate groups as needed.
 
Handle openswmm::h5io::open_group (hid_t loc, const std::string &name)
 Open an existing HDF5 group.
 
bool openswmm::h5io::has_link (hid_t loc, const std::string &name)
 True when loc contains name.
 
bool openswmm::h5io::write_attr (hid_t loc, const std::string &name, const std::string &value)
 Create or replace a scalar std::string attribute.
 
bool openswmm::h5io::write_attr (hid_t loc, const std::string &name, double value)
 Create or replace a scalar double attribute.
 
bool openswmm::h5io::write_attr (hid_t loc, const std::string &name, int value)
 Create or replace a scalar int attribute.
 
bool openswmm::h5io::read_attr (hid_t loc, const std::string &name, std::string &out)
 Read a scalar attribute as std::string.
 
bool openswmm::h5io::read_attr (hid_t loc, const std::string &name, double &out)
 Read a scalar attribute as double.
 
bool openswmm::h5io::read_attr (hid_t loc, const std::string &name, int &out)
 Read a scalar attribute as int.
 
bool openswmm::h5io::write_column (hid_t group, const std::string &name, const std::vector< double > &values, const std::string &units="", const std::string &description="", int compression=4)
 Create a one-dimensional double column with optional metadata.
 
bool openswmm::h5io::write_column (hid_t group, const std::string &name, const std::vector< int > &values, const std::string &units="", const std::string &description="", int compression=4)
 Create a one-dimensional int column with optional metadata.
 
bool openswmm::h5io::write_column (hid_t group, const std::string &name, const std::vector< std::string > &values, const std::string &description="", int compression=4)
 Create a one-dimensional std::string column with optional metadata.
 
bool openswmm::h5io::read_column (hid_t group, const std::string &name, std::vector< double > &out)
 Read a one-dimensional column into a double vector.
 
bool openswmm::h5io::read_column (hid_t group, const std::string &name, std::vector< int > &out)
 Read a one-dimensional column into a int vector.
 
bool openswmm::h5io::read_column (hid_t group, const std::string &name, std::vector< std::string > &out)
 Read a one-dimensional column into a std::string vector.
 
std::size_t openswmm::h5io::column_length (hid_t group, const std::string &probe)
 Row count of a group's columns — the length of probe, or 0 if absent.
 

Detailed Description

Implementation of the RAII handles and columnar helpers.

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