diff --git a/core-buffer/include/BufferUtils.hpp b/core-buffer/include/BufferUtils.hpp new file mode 100644 index 0000000..4ec03d4 --- /dev/null +++ b/core-buffer/include/BufferUtils.hpp @@ -0,0 +1,19 @@ +#ifndef BUFFER_UTILS_HPP +#define BUFFER_UTILS_HPP + +#include + +namespace BufferUtils +{ + extern const size_t FILE_MOD; + extern const size_t FOLDER_MOD; + + std::string get_filename( + std::string root_folder, + std::string device_name, + uint64_t pulse_id); + + std::size_t get_file_frame_index(uint64_t pulse_id); +} + +#endif //BUFFER_UTILS_HPP diff --git a/core-buffer/src/BinaryWriter.cpp b/core-buffer/src/BinaryWriter.cpp index e2bca39..92791d4 100644 --- a/core-buffer/src/BinaryWriter.cpp +++ b/core-buffer/src/BinaryWriter.cpp @@ -5,7 +5,7 @@ #include #include #include -#include +#include #include using namespace std; @@ -40,14 +40,14 @@ BinaryWriter::~BinaryWriter() void BinaryWriter::write(uint64_t pulse_id, const JFFileFormat* buffer) { auto current_frame_file = - get_filename(root_folder_, device_name_, pulse_id); + BufferUtils::get_filename(root_folder_, device_name_, pulse_id); if (current_frame_file != current_output_filename_) { open_file(current_frame_file); } size_t n_bytes_offset = - get_file_frame_index(pulse_id) * sizeof(JFFileFormat); + BufferUtils::get_file_frame_index(pulse_id) * sizeof(JFFileFormat); auto lseek_result = lseek(output_file_fd_, n_bytes_offset, SEEK_SET); if (lseek_result < 0) { diff --git a/core-buffer/include/buffer_utils.hpp b/core-buffer/src/BufferUtils.cpp similarity index 65% rename from core-buffer/include/buffer_utils.hpp rename to core-buffer/src/BufferUtils.cpp index c815867..7e5e140 100644 --- a/core-buffer/include/buffer_utils.hpp +++ b/core-buffer/src/BufferUtils.cpp @@ -1,10 +1,12 @@ -#ifndef BUFFER_UTILS_HPP -#define BUFFER_UTILS_HPP +using namespace std; -const size_t FILE_MOD = 1000; -const size_t FOLDER_MOD = 100000; +#include "BufferUtils.hpp" +#include -std::string get_filename( +const size_t BufferUtils::FILE_MOD = 1000; +const size_t BufferUtils::FOLDER_MOD = 100000; + +string BufferUtils::get_filename( std::string root_folder, std::string device_name, uint64_t pulse_id) @@ -15,7 +17,7 @@ std::string get_filename( uint64_t file_base = pulse_id / FILE_MOD; file_base *= FILE_MOD; - std::stringstream folder; + stringstream folder; folder << root_folder << "/"; folder << device_name << "/"; folder << folder_base << "/"; @@ -24,12 +26,10 @@ std::string get_filename( return folder.str(); } -std::size_t get_file_frame_index(uint64_t pulse_id) +size_t BufferUtils::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 +} \ No newline at end of file diff --git a/core-buffer/test/test_buffer_utils.cpp b/core-buffer/test/test_buffer_utils.cpp index 999bcb4..b45ede3 100644 --- a/core-buffer/test/test_buffer_utils.cpp +++ b/core-buffer/test/test_buffer_utils.cpp @@ -1,5 +1,5 @@ #include "gtest/gtest.h" -#include "buffer_utils.hpp" +#include "BufferUtils.hpp" using namespace std; @@ -10,28 +10,28 @@ TEST(BufferUtils, get_filename) auto root_folder = "/root"; auto device_name = "device-1"; - auto result = get_filename( + auto result = BufferUtils::get_filename( root_folder, device_name, 12345000); ASSERT_EQ(result, expected_file); - auto result2 = get_filename( + auto result2 = BufferUtils::get_filename( root_folder, device_name, 12345999); ASSERT_EQ(result2, expected_file); - auto result3 = get_filename( + auto result3 = BufferUtils::get_filename( root_folder, device_name, 12346000); ASSERT_NE(result3, expected_file); - auto result4 = get_filename( + auto result4 = BufferUtils::get_filename( root_folder, device_name, 12344999); @@ -41,7 +41,7 @@ TEST(BufferUtils, get_filename) TEST(BufferUtils, get_file_frame_index) { - ASSERT_EQ(get_file_frame_index(12345000), 0); - ASSERT_EQ(get_file_frame_index(12345543), 543); - ASSERT_EQ(get_file_frame_index(12345999), 999); + ASSERT_EQ(BufferUtils::get_file_frame_index(12345000), 0); + ASSERT_EQ(BufferUtils::get_file_frame_index(12345543), 543); + ASSERT_EQ(BufferUtils::get_file_frame_index(12345999), 999); } \ No newline at end of file diff --git a/sf-buffer/src/sf_buffer.cpp b/sf-buffer/src/sf_buffer.cpp index f88fae3..04ed11a 100644 --- a/sf-buffer/src/sf_buffer.cpp +++ b/sf-buffer/src/sf_buffer.cpp @@ -9,7 +9,7 @@ #include "config.hpp" #include "jungfrau.hpp" -#include "buffer_utils.hpp" +#include "BufferUtils.hpp" using namespace std;