20#ifndef PISM_SYNCHRONOUSOUTPUTWRITER_H
21#define PISM_SYNCHRONOUSOUTPUTWRITER_H
23#include "pism/util/io/OutputWriter.hh"
45 std::map<std::string, std::shared_ptr<File> >
m_files;
49 const File &
file(
const std::string &file_name);
51 void initialize_impl(
const std::set<VariableMetadata> &array_variables);
57 const std::vector<std::string> &dims,
io::Type type,
61 const std::map<std::string, std::string> &strings,
62 const std::map<std::string, std::vector<double> > &numbers);
64 void write_attributes(
const std::string &file_name,
const std::string &var_name,
65 const std::map<std::string, std::string> &strings,
66 const std::map<std::string, std::vector<double> > &numbers,
77 void write_array_impl(
const std::string &file_name,
const std::string &variable_name,
78 const std::vector<unsigned int> &start,
79 const std::vector<unsigned int> &
count,
const double *data);
81 void write_text_impl(
const std::string &file_name,
const std::string &variable_name,
82 const std::vector<unsigned int> &start,
83 const std::vector<unsigned int> &
count,
const std::string &input);
86 const std::string &variable_name,
const double *data);
89 void sync_impl(
const std::string &file_name);
A class for storing and accessing PISM configuration flags and parameters.
High-level PISM I/O class.
void append_history_impl(const std::string &file_name, const std::string &text)
const File & file(const std::string &file_name)
void define_dimension_impl(const std::string &file_name, const std::string &name, unsigned int length)
void write_text_impl(const std::string &file_name, const std::string &variable_name, const std::vector< unsigned int > &start, const std::vector< unsigned int > &count, const std::string &input)
void write_distributed_array_impl(const std::string &file_name, const std::string &variable_name, const double *data)
void append_impl(const std::string &file_name)
void write_attributes(const std::string &file_name, const std::string &var_name, const std::map< std::string, std::string > &strings, const std::map< std::string, std::vector< double > > &numbers, io::Type output_type)
std::map< std::string, std::shared_ptr< File > > m_files
void define_variable_impl(const std::string &file_name, const std::string &variable_name, const std::vector< std::string > &dims, io::Type type, const VariableAttributes &attributes)
unsigned int time_dimension_length_impl(const std::string &file_name)
void append_time_impl(const std::string &file_name, double time_seconds)
void set_global_attributes_impl(const std::string &file_name, const std::map< std::string, std::string > &strings, const std::map< std::string, std::vector< double > > &numbers)
void write_array_impl(const std::string &file_name, const std::string &variable_name, const std::vector< unsigned int > &start, const std::vector< unsigned int > &count, const double *data)
virtual ~SynchronousOutputWriter()=default
void close_impl(const std::string &file_name)
void sync_impl(const std::string &file_name)
void initialize_impl(const std::set< VariableMetadata > &array_variables)
double last_time_value_impl(const std::string &file_name)