diff --git a/src/H5Format.cpp b/src/H5Format.cpp index 2f619d6..597e8e8 100644 --- a/src/H5Format.cpp +++ b/src/H5Format.cpp @@ -294,7 +294,7 @@ void H5Format::write_format_data(H5::Group& file_node, h5_parent& format_node, s } } -void H5Format::write_format(H5::H5File& file, std::map& input_values){ +void H5Format::write_format(H5::H5File& file, std::map& input_values, string frames_dataset_name){ auto format = get_format_definition(); auto values = get_default_values(); @@ -303,4 +303,6 @@ void H5Format::write_format(H5::H5File& file, std::map& i add_calculated_values(*values); write_format_data(file, *format, *values); + + file.move("raw_data", frames_dataset_name.c_str()); } \ No newline at end of file diff --git a/src/H5Format.hpp b/src/H5Format.hpp index 16167f8..555c085 100644 --- a/src/H5Format.hpp +++ b/src/H5Format.hpp @@ -85,7 +85,7 @@ namespace H5Format { boost::any get_value_from_reference(std::string& dataset_name, boost::any value_reference, std::map& values); void write_format_data(H5::Group& file_node, h5_parent& format_node, std::map& values); - void write_format(H5::H5File& file, std::map& input_values); + void write_format(H5::H5File& file, std::map& input_values, std::string frames_dataset_name); }; // Move this somewhere else. @@ -94,5 +94,6 @@ std::map* get_default_values(); h5_group* get_format_definition(); void add_calculated_values(std::map& values); void add_input_values(std::map& values, std::map& input_values); +std::string get_frames_dataset_name(); #endif \ No newline at end of file diff --git a/src/h5_zmq_writer.cpp b/src/h5_zmq_writer.cpp index f23f241..327fc73 100644 --- a/src/h5_zmq_writer.cpp +++ b/src/h5_zmq_writer.cpp @@ -20,7 +20,7 @@ namespace pt = boost::property_tree; void write_h5(WriterManager *manager, RingBuffer *ring_buffer, string output_file) { - H5Writer writer(output_file, "data"); + H5Writer writer(output_file, "raw_data"); // Run until the running flag is set or the ring_buffer is empty. while(manager->is_running() || !ring_buffer->is_empty()) { @@ -54,7 +54,7 @@ void write_h5(WriterManager *manager, RingBuffer *ring_buffer, string output_fil cout << "[h5_zmq_writer::write] Writing file format." << endl; #endif - H5Format::write_format(writer.get_h5_file(), manager->get_parameters()); + H5Format::write_format(writer.get_h5_file(), manager->get_parameters(), get_frames_dataset_name()); } #ifdef DEBUG_OUTPUT diff --git a/src/nxsas_format.cpp b/src/nxsas_format.cpp index 80a8194..54df871 100644 --- a/src/nxsas_format.cpp +++ b/src/nxsas_format.cpp @@ -7,6 +7,10 @@ using namespace std; +string get_frames_dataset_name() { + return "entry/plottable_data/data"; +} + h5_group* get_format_definition(){ auto format =