55 std::string
const& output_directory,
OutputType const output_type,
56 std::string prefix, std::string suffix, std::string
const& data_mode,
57 bool const compress_output,
unsigned int const number_of_files,
58 unsigned int const chunk_size_bytes)
63 return std::make_unique<OutputVTKFormat>(
64 output_directory, std::move(prefix), std::move(suffix),
65 compress_output, convertVtkDataMode(data_mode));
67 return std::make_unique<OutputXDMFHDF5Format>(
68 output_directory, std::move(prefix), std::move(suffix),
69 compress_output, number_of_files, chunk_size_bytes);
72 "No supported file type provided. Read '{}' from "
73 "<output><type> in prj file. Supported: VTK, XDMF.",
79 std::vector<std::unique_ptr<MeshLib::Mesh>>
const& meshes)
82 output_directory, oc.output_type, std::move(oc.prefix),
83 std::move(oc.suffix), oc.data_mode, oc.compress_output,
84 oc.number_of_files, oc.chunk_size_bytes);
87 std::move(oc.output_variables), std::move(oc.fixed_output_times),
88 std::move(oc.repeats_each_steps), oc.output_extrapolation_residuals};
90 return {std::move(output_format), oc.output_iteration_results,
91 std::move(output_data_specification),
92 std::move(oc.mesh_names_for_output), meshes};
std::unique_ptr< OutputFormat > createOutputFormat(std::string const &output_directory, OutputType const output_type, std::string prefix, std::string suffix, std::string const &data_mode, bool const compress_output, unsigned int const number_of_files, unsigned int const chunk_size_bytes)