AcquisitionDevice: Completion queue is handled by particular implementation of the device

This commit is contained in:
2023-04-25 15:58:07 +02:00
parent f01f2e79d1
commit bf2a23ef7e
15 changed files with 64 additions and 71 deletions
+3 -7
View File
@@ -28,12 +28,12 @@ void LinuxSocketDevice::MeasureThread(int fd) {
uint64_t packet_count = 0;
completion_queue.Put(Completion{
work_completion_queue.Put(Completion{
.type = Completion::Type::Start
});
try {
ProcessJFPacket process(completion_queue, wr_queue, max_modules);
ProcessJFPacket process(work_completion_queue, wr_queue, max_modules);
while (!cancel) {
auto count = recv(fd, &jf, sizeof(jf_udp_payload), 0);
@@ -49,7 +49,7 @@ void LinuxSocketDevice::MeasureThread(int fd) {
logger->ErrorException(e);
}
// End message should be sent always
completion_queue.Put(Completion{
work_completion_queue.Put(Completion{
.type = Completion::Type::End,
.frame_number = packet_count
});
@@ -57,10 +57,6 @@ void LinuxSocketDevice::MeasureThread(int fd) {
idle = true;
}
Completion LinuxSocketDevice::ReadCompletion() {
return completion_queue.GetBlocking();
}
void LinuxSocketDevice::HW_WriteActionRegister(const ActionConfig *job) {
memcpy(&cfg, job, sizeof(ActionConfig));
}