JFJochReceiver: Use zero-copy ZeroMQ sending

This commit is contained in:
2023-05-05 10:18:40 +02:00
parent f562095182
commit 866d70f41c
8 changed files with 60 additions and 1 deletions

View File

@@ -44,6 +44,22 @@ void TestImagePusher::SendImage(const uint8_t *image_data, size_t image_size, in
}
}
void TestImagePusher::SendImage(const uint8_t *image_data, size_t image_size, int64_t image_number,
std::binary_semaphore *sempahore) {
std::unique_lock<std::mutex> ul(m);
frame_counter++;
if (image_number == image_id) {
JFJochFrameDeserializer deserializer;
deserializer.Process(image_data, image_size);
auto image_array = deserializer.GetDataMessage();
receiver_generated_image.resize(image_array.image.size);
memcpy(receiver_generated_image.data(), image_array.image.data, image_array.image.size);
}
sempahore->release();
}
bool TestImagePusher::CheckSequence() const {
std::unique_lock<std::mutex> ul(m);
return correct_sequence;