diff --git a/core-buffer/include/BufferUtils.hpp b/core-buffer/include/BufferUtils.hpp index 18a3fe5..1403bd0 100644 --- a/core-buffer/include/BufferUtils.hpp +++ b/core-buffer/include/BufferUtils.hpp @@ -27,6 +27,10 @@ namespace BufferUtils const std::string& module_name, const uint64_t pulse_id); + std::string get_image_filename( + const std::string& detector_folder, + const uint64_t pulse_id); + std::size_t get_file_frame_index(const uint64_t pulse_id); void update_latest_file( diff --git a/core-buffer/src/BufferUtils.cpp b/core-buffer/src/BufferUtils.cpp index 147d4e8..c763966 100644 --- a/core-buffer/src/BufferUtils.cpp +++ b/core-buffer/src/BufferUtils.cpp @@ -11,6 +11,24 @@ using namespace std; using namespace buffer_config; +string BufferUtils::get_image_filename( + const std::string& detector_folder, + const uint64_t pulse_id) +{ + uint64_t data_folder = pulse_id / buffer_config::FOLDER_MOD; + data_folder *= buffer_config::FOLDER_MOD; + + uint64_t data_file = pulse_id / buffer_config::FILE_MOD; + data_file *= buffer_config::FILE_MOD; + + stringstream folder; + folder << detector_folder << "/"; + folder << data_folder << "/"; + folder << data_file << buffer_config::FILE_EXTENSION; + + return folder.str(); +} + string BufferUtils::get_filename( const std::string& detector_folder, const std::string& module_name,