From b2dfe949b4a811c473868bd64a1cf3f5165016d8 Mon Sep 17 00:00:00 2001 From: Andrej Babic Date: Mon, 3 Dec 2018 13:49:40 +0100 Subject: [PATCH] Create first file chunk at init --- lib/src/H5Writer.hpp | 3 ++- lib/src/ProcessManager.cpp | 2 ++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/src/H5Writer.hpp b/lib/src/H5Writer.hpp index c1e67bb..d5f4d81 100644 --- a/lib/src/H5Writer.hpp +++ b/lib/src/H5Writer.hpp @@ -28,7 +28,7 @@ class H5Writer hsize_t prepare_storage_for_data(const std::string& dataset_name, const size_t data_index, const std::vector& data_shape, const std::string& data_type, const std::string& endianness); - void create_file(const hsize_t frame_chunk=0); + void create_dataset(const std::string& dataset_name, const std::vector& data_shape, const std::string& data_type, const std::string& endianness); @@ -37,6 +37,7 @@ class H5Writer H5Writer(const std::string& filename, hsize_t frames_per_file=0, hsize_t initial_dataset_size=1000, hsize_t dataset_increase_step=1000); virtual ~H5Writer(); virtual bool is_file_open() const; + void create_file(const hsize_t frame_chunk=0); virtual void close_file(); virtual void write_data(const std::string& dataset_name, const size_t data_index, const char* data, const std::vector& data_shape, const size_t data_bytes_size, const std::string& data_type, const std::string& endianness); diff --git a/lib/src/ProcessManager.cpp b/lib/src/ProcessManager.cpp index c44c27c..97ed2ff 100644 --- a/lib/src/ProcessManager.cpp +++ b/lib/src/ProcessManager.cpp @@ -151,6 +151,8 @@ void ProcessManager::write_h5() { auto writer = get_buffered_writer(writer_manager.get_output_file(), writer_manager.get_n_frames(), frames_per_file, config::initial_dataset_size, config::dataset_increase_step); + + writer->create_file(); auto raw_frames_dataset_name = config::raw_image_dataset_name;