AcquisitionDevice: Completion queue is handled by particular implementation of the device
This commit is contained in:
@@ -15,10 +15,6 @@ void MockAcquisitionDevice::HW_WriteActionRegister(const ActionConfig *job) {
|
||||
|
||||
void MockAcquisitionDevice::HW_StartAction() {}
|
||||
|
||||
Completion MockAcquisitionDevice::ReadCompletion() {
|
||||
return mailbox_fifo.GetBlocking();
|
||||
}
|
||||
|
||||
void MockAcquisitionDevice::HW_SetCancelDataCollectionBit() {
|
||||
if (logger)
|
||||
logger->Info("MockAcquisitionDevice cancelling " + std::to_string(data_stream));
|
||||
@@ -36,14 +32,10 @@ bool MockAcquisitionDevice::HW_IsIdle() const {
|
||||
|
||||
MockAcquisitionDevice::MockAcquisitionDevice(uint16_t data_stream, size_t in_frame_buffer_size_modules)
|
||||
: AcquisitionDevice(data_stream) {
|
||||
|
||||
max_modules = 16;
|
||||
|
||||
MapBuffersStandard(in_frame_buffer_size_modules,
|
||||
(3 + 3 * 16) * max_modules + frames_int_pkt_gen, -1);
|
||||
MapBuffersStandard(in_frame_buffer_size_modules, 1, -1);
|
||||
max_handle = in_frame_buffer_size_modules;
|
||||
|
||||
mailbox_fifo.Put(Completion{.type = Completion::Type::Start});
|
||||
work_completion_queue.Put(Completion{.type = Completion::Type::Start});
|
||||
}
|
||||
|
||||
void MockAcquisitionDevice::SendCompletion(uint32_t handle, uint16_t module_number, uint64_t frame_number) {
|
||||
@@ -55,7 +47,7 @@ void MockAcquisitionDevice::SendCompletion(uint32_t handle, uint16_t module_numb
|
||||
c.packet_mask[0] = UINT64_MAX;
|
||||
c.packet_mask[1] = UINT64_MAX;
|
||||
c.packet_count = 128;
|
||||
mailbox_fifo.Put(c);
|
||||
work_completion_queue.Put(c);
|
||||
}
|
||||
|
||||
void MockAcquisitionDevice::AddModule(uint64_t frame_number, uint16_t module_number, const uint16_t *data) {
|
||||
@@ -74,10 +66,11 @@ void MockAcquisitionDevice::AddModule(uint64_t frame_number, uint16_t module_num
|
||||
}
|
||||
|
||||
void MockAcquisitionDevice::Terminate() {
|
||||
mailbox_fifo.Put(Completion{
|
||||
work_completion_queue.Put(Completion{
|
||||
.type = Completion::Type::End,
|
||||
.frame_number = current_handle * 128
|
||||
});
|
||||
work_completion_queue.Put(Completion{.type = Completion::Type::Start});
|
||||
}
|
||||
|
||||
uint64_t MockAcquisitionDevice::HW_GetMACAddress() const {
|
||||
|
||||
Reference in New Issue
Block a user