diff --git a/lib/src/BufferedWriter.cpp b/lib/src/BufferedWriter.cpp index 5d56a82..fdc37c2 100644 --- a/lib/src/BufferedWriter.cpp +++ b/lib/src/BufferedWriter.cpp @@ -27,7 +27,12 @@ void BufferedWriter::write_metadata(string name, uint64_t frame_index, const cha void BufferedWriter::write_metadata_to_file() { - + if (header_values_type) { + for (const auto& header_type : *header_values_type) { + auto& name = header_type.first; + auto& header_data_type = header_type.second; + } + } } void BufferedWriter::close_file() @@ -39,9 +44,10 @@ void BufferedWriter::close_file() DummyBufferedWriter::DummyBufferedWriter() : BufferedWriter("/dev/null", 0, 0, 0, 0){} std::unique_ptr get_buffered_writer(const string& filename, size_t total_frames, - std::unique_ptr metadata_buffer, hsize_t frames_per_file, - hsize_t initial_dataset_size, hsize_t dataset_increase_step) + std::unique_ptr metadata_buffer, hsize_t frames_per_file, hsize_t dataset_increase_step) { + size_t initial_dataset_size = frames_per_file != 0 ? frames_per_file : total_frames; + if (filename == "/dev/null") { return unique_ptr(new DummyBufferedWriter()); } else { diff --git a/lib/src/BufferedWriter.hpp b/lib/src/BufferedWriter.hpp index 5b1d470..486d209 100644 --- a/lib/src/BufferedWriter.hpp +++ b/lib/src/BufferedWriter.hpp @@ -25,7 +25,6 @@ class DummyBufferedWriter : public BufferedWriter }; std::unique_ptr get_buffered_writer(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); + std::unique_ptr metadata_buffer, hsize_t frames_per_file=0, hsize_t dataset_increase_step=1000); #endif \ No newline at end of file diff --git a/lib/src/ProcessManager.cpp b/lib/src/ProcessManager.cpp index e968d4d..fe35302 100644 --- a/lib/src/ProcessManager.cpp +++ b/lib/src/ProcessManager.cpp @@ -152,7 +152,7 @@ void ProcessManager::write_h5() auto metadata_buffer = unique_ptr(new MetadataBuffer(writer_manager.get_n_frames(), receiver.get_header_values_type())); auto writer = get_buffered_writer(writer_manager.get_output_file(), writer_manager.get_n_frames(), move(metadata_buffer), - frames_per_file, config::initial_dataset_size, config::dataset_increase_step); + frames_per_file, config::dataset_increase_step); writer->create_file();