43 void write_matrix(
const std::string &path,
const Eigen::MatrixXd &value);
44 void write_int_matrix(
const std::string &path,
const Eigen::MatrixXi &value);
45 void write_bytes(
const std::string &path,
const std::vector<unsigned char> &value);
46 void write_vector(
const std::string &path,
const std::vector<double> &value);
47 void write_int_vector(
const std::string &path,
const std::vector<int> &value);
49 void write_string(
const std::string &path,
const std::string &value);
50 void write_long(
const std::string &path,
long value);
51 void write_double(
const std::string &path,
double value);
52 void write_attribute(
const std::string &path,
const std::string &name,
long value);
53 void write_attribute(
const std::string &path,
const std::string &name,
const std::string &value);
73 const std::filesystem::path &
path()
const {
return path_; }
77 std::unique_ptr<mesh::Mesh>
read_mesh(
const std::string &
path,
bool non_conforming =
false)
const;
91 std::unique_ptr<const HDF5IO>
io_;
const std::filesystem::path & path() const
CheckpointMetadata metadata_
std::filesystem::path path_
std::unique_ptr< mesh::Mesh > read_mesh(const std::string &path, bool non_conforming=false) const
long read_long(const std::string &path) const
double read_double(const std::string &path) const
Eigen::MatrixXd read_matrix(const std::string &path) const
const ResourceIO & resources() const
bool exists(const std::string &path) const
std::unique_ptr< const ResourceIO > resources_
std::unique_ptr< const HDF5IO > io_
Eigen::MatrixXi read_int_matrix(const std::string &path) const
const json & config() const
std::vector< int > read_int_vector(const std::string &path) const
std::string read_string(const std::string &path) const
std::vector< double > read_vector(const std::string &path) const
const CheckpointMetadata & metadata() const
std::vector< long > read_long_vector(const std::string &path) const
CheckpointWriter & operator=(const CheckpointWriter &)=delete
std::unique_ptr< Impl > impl_
void write_matrix(const std::string &path, const Eigen::MatrixXd &value)
std::filesystem::path path_
CheckpointWriter(const CheckpointWriter &)=delete
void write_attribute(const std::string &path, const std::string &name, long value)
void write_double(const std::string &path, double value)
std::filesystem::path temporary_path_
void write_int_matrix(const std::string &path, const Eigen::MatrixXi &value)
void write_mesh(const std::string &group, const mesh::Mesh &mesh)
void write_bytes(const std::string &path, const std::vector< unsigned char > &value)
void write_long_vector(const std::string &path, const std::vector< long > &value)
CheckpointWriter(const std::filesystem::path &path, const json &config, const CheckpointMetadata &metadata)
void write_string(const std::string &path, const std::string &value)
void write_long(const std::string &path, long value)
void embed_resources(const ResourceIO &resources)
void write_int_vector(const std::string &path, const std::vector< int > &value)
void write_vector(const std::string &path, const std::vector< double > &value)
Read-only interface to a hierarchical collection of simulation resources.
Format-independent input used to construct a runtime Mesh.
Abstract mesh class to capture 2d/3d conforming and non-conforming meshes.
constexpr long CHECKPOINT_SCHEMA_VERSION