diff --git a/lib/src/BufferedWriter.cpp b/lib/src/BufferedWriter.cpp index 1c04624..5d56a82 100644 --- a/lib/src/BufferedWriter.cpp +++ b/lib/src/BufferedWriter.cpp @@ -25,6 +25,17 @@ void BufferedWriter::write_metadata(string name, uint64_t frame_index, const cha metadata_buffer->add_metadata_to_buffer(name, relative_frame_index, data); } +void BufferedWriter::write_metadata_to_file() +{ + +} + +void BufferedWriter::close_file() +{ + write_metadata_to_file(); + H5Writer::close_file(); +} + DummyBufferedWriter::DummyBufferedWriter() : BufferedWriter("/dev/null", 0, 0, 0, 0){} std::unique_ptr get_buffered_writer(const string& filename, size_t total_frames, diff --git a/lib/src/BufferedWriter.hpp b/lib/src/BufferedWriter.hpp index 395a96c..5b1d470 100644 --- a/lib/src/BufferedWriter.hpp +++ b/lib/src/BufferedWriter.hpp @@ -9,10 +9,13 @@ class BufferedWriter : public H5Writer size_t total_frames; std::unique_ptr metadata_buffer; + void write_metadata_to_file(); + public: BufferedWriter(const std::string& filename, size_t total_frames, std::unique_ptr&& metadata_buffer, hsize_t frames_per_file=0, hsize_t initial_dataset_size=1000, hsize_t dataset_increase_step=1000); void write_metadata(std::string name, uint64_t frame_index, const char* data); + virtual void close_file() override; }; class DummyBufferedWriter : public BufferedWriter