From d6fcfa2db7c95dd540a2c55cb74e284710e42ad1 Mon Sep 17 00:00:00 2001 From: Andrej Babic Date: Wed, 15 Apr 2020 16:13:48 +0200 Subject: [PATCH] Move buffer utils to new header --- sf-buffer/src/buffer_utils.hpp | 35 ++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 sf-buffer/src/buffer_utils.hpp diff --git a/sf-buffer/src/buffer_utils.hpp b/sf-buffer/src/buffer_utils.hpp new file mode 100644 index 0000000..92c7819 --- /dev/null +++ b/sf-buffer/src/buffer_utils.hpp @@ -0,0 +1,35 @@ +#ifndef BUFFER-UTILS_HPP +#define BUFFER-UTILS_HPP + +const size_t FILE_MOD = 1000; +const size_t FOLDER_MOD = 100000; + +std::string get_filename( + std::string root_folder, + std::string device_name, + uint64_t pulse_id) +{ + uint64_t folder_base = pulse_id / FOLDER_MOD; + folder_base *= FOLDER_MOD; + + uint64_t file_base = pulse_id / FILE_MOD; + file_base *= FILE_MOD; + + std::stringstream folder; + folder << root_folder << "/"; + folder << device_name << "/"; + folder << folder_base << "/"; + folder << file_base << ".h5"; + + return folder.str(); +} + +std::size_t get_file_frame_index(uint64_t pulse_id) +{ + uint64_t file_base = pulse_id / FILE_MOD; + file_base *= FILE_MOD; + + return pulse_id - file_base; +} + +#endif //BUFFER-UTILS_HPP