Implement common class for RamBuffer

This commit is contained in:
2020-09-02 15:16:02 +02:00
parent 20f5557cc1
commit 28d407fb0e
4 changed files with 98 additions and 72 deletions
+32
View File
@@ -0,0 +1,32 @@
#ifndef SF_DAQ_BUFFER_RAMBUFFER_HPP
#define SF_DAQ_BUFFER_RAMBUFFER_HPP
#include <string>
#include "formats.hpp"
class RamBuffer {
const std::string detector_name_;
const int module_n_;
const size_t n_slots_;
const size_t image_size_;
const size_t buffer_size_;
int shm_fd_;
void* buffer_;
ModuleFrame* meta_buffer_;
char* image_buffer_;
public:
RamBuffer(const std::string& detector_name,
const size_t n_modules,
const int module_n,
const size_t n_slots);
~RamBuffer();
void write_frame(const ModuleFrame& metadata, const char* data);
};
#endif //SF_DAQ_BUFFER_RAMBUFFER_HPP
-24
View File
@@ -1,24 +0,0 @@
#ifndef SF_DAQ_BUFFER_RAMBUFFERWRITER_HPP
#define SF_DAQ_BUFFER_RAMBUFFERWRITER_HPP
#include <string>
class RamBufferWriter {
const int module_n_;
const std::string detector_name_;
int shm_fd_;
size_t buffer_size_;
void* buffer_;
public:
RamBufferWriter(const std::string& detector_name,
const int module_n,
const size_t n_modules,
const size_t n_slots);
~RamBufferWriter();
};
#endif //SF_DAQ_BUFFER_RAMBUFFERWRITER_HPP