From 950a54c08b4f7376c26d4a0b4842ffc42fe2c405 Mon Sep 17 00:00:00 2001 From: Alexey Rybalchenko Date: Fri, 9 Apr 2021 12:25:56 +0200 Subject: [PATCH] Add GetType() to UnmanagedRegion --- fairmq/FairMQUnmanagedRegion.h | 1 + fairmq/shmem/UnmanagedRegion.h | 2 ++ fairmq/zeromq/UnmanagedRegion.h | 2 ++ 3 files changed, 5 insertions(+) diff --git a/fairmq/FairMQUnmanagedRegion.h b/fairmq/FairMQUnmanagedRegion.h index 46a3855c..c1d37e01 100644 --- a/fairmq/FairMQUnmanagedRegion.h +++ b/fairmq/FairMQUnmanagedRegion.h @@ -79,6 +79,7 @@ class FairMQUnmanagedRegion virtual void SetLinger(uint32_t linger) = 0; virtual uint32_t GetLinger() const = 0; + virtual fair::mq::Transport GetType() const = 0; FairMQTransportFactory* GetTransport() { return fTransport; } void SetTransport(FairMQTransportFactory* transport) { fTransport = transport; } diff --git a/fairmq/shmem/UnmanagedRegion.h b/fairmq/shmem/UnmanagedRegion.h index 7c2777d3..480e1ae5 100644 --- a/fairmq/shmem/UnmanagedRegion.h +++ b/fairmq/shmem/UnmanagedRegion.h @@ -56,6 +56,8 @@ class UnmanagedRegion final : public fair::mq::UnmanagedRegion void SetLinger(uint32_t linger) override { fManager.GetRegion(fRegionId)->SetLinger(linger); } uint32_t GetLinger() const override { return fManager.GetRegion(fRegionId)->GetLinger(); } + Transport GetType() const override { return fair::mq::Transport::SHM; } + ~UnmanagedRegion() override { fManager.RemoveRegion(fRegionId); } private: diff --git a/fairmq/zeromq/UnmanagedRegion.h b/fairmq/zeromq/UnmanagedRegion.h index 201ddb43..b5a96165 100644 --- a/fairmq/zeromq/UnmanagedRegion.h +++ b/fairmq/zeromq/UnmanagedRegion.h @@ -51,6 +51,8 @@ class UnmanagedRegion final : public fair::mq::UnmanagedRegion void SetLinger(uint32_t /* linger */) override { LOG(debug) << "ZeroMQ UnmanagedRegion linger option not implemented. Acknowledgements are local."; } uint32_t GetLinger() const override { LOG(debug) << "ZeroMQ UnmanagedRegion linger option not implemented. Acknowledgements are local."; return 0; } + Transport GetType() const override { return Transport::ZMQ; } + virtual ~UnmanagedRegion() { LOG(debug) << "destroying region " << fId;