mirror of
https://github.com/FairRootGroup/FairMQ.git
synced 2025-10-13 16:46:47 +00:00
Add FairMQTransportFactory::GetId()
This commit is contained in:
parent
c8fc5ad33f
commit
e9318dd234
|
@ -59,6 +59,7 @@ class FairMQUnmanagedRegion
|
||||||
|
|
||||||
virtual void* GetData() const = 0;
|
virtual void* GetData() const = 0;
|
||||||
virtual size_t GetSize() const = 0;
|
virtual size_t GetSize() const = 0;
|
||||||
|
virtual uint64_t GetId() const = 0;
|
||||||
|
|
||||||
FairMQTransportFactory* GetTransport() { return fTransport; }
|
FairMQTransportFactory* GetTransport() { return fTransport; }
|
||||||
void SetTransport(FairMQTransportFactory* transport) { fTransport = transport; }
|
void SetTransport(FairMQTransportFactory* transport) { fTransport = transport; }
|
||||||
|
|
|
@ -19,6 +19,7 @@ fair::mq::Transport FairMQTransportFactoryNN::fTransportType = fair::mq::Transpo
|
||||||
|
|
||||||
FairMQTransportFactoryNN::FairMQTransportFactoryNN(const string& id, const fair::mq::ProgOptions* /*config*/)
|
FairMQTransportFactoryNN::FairMQTransportFactoryNN(const string& id, const fair::mq::ProgOptions* /*config*/)
|
||||||
: FairMQTransportFactory(id)
|
: FairMQTransportFactory(id)
|
||||||
|
, fRegionCounter(0)
|
||||||
{
|
{
|
||||||
LOG(debug) << "Transport: Using nanomsg library";
|
LOG(debug) << "Transport: Using nanomsg library";
|
||||||
}
|
}
|
||||||
|
@ -67,7 +68,7 @@ FairMQPollerPtr FairMQTransportFactoryNN::CreatePoller(const unordered_map<strin
|
||||||
|
|
||||||
FairMQUnmanagedRegionPtr FairMQTransportFactoryNN::CreateUnmanagedRegion(const size_t size, FairMQRegionCallback callback, const std::string& path /* = "" */, int flags /* = 0 */)
|
FairMQUnmanagedRegionPtr FairMQTransportFactoryNN::CreateUnmanagedRegion(const size_t size, FairMQRegionCallback callback, const std::string& path /* = "" */, int flags /* = 0 */)
|
||||||
{
|
{
|
||||||
return unique_ptr<FairMQUnmanagedRegion>(new FairMQUnmanagedRegionNN(size, callback, path, flags, this));
|
return unique_ptr<FairMQUnmanagedRegion>(new FairMQUnmanagedRegionNN(++fRegionCounter, size, callback, path, flags, this));
|
||||||
}
|
}
|
||||||
|
|
||||||
FairMQUnmanagedRegionPtr FairMQTransportFactoryNN::CreateUnmanagedRegion(const size_t size, const int64_t userFlags, FairMQRegionCallback callback, const std::string& path /* = "" */, int flags /* = 0 */)
|
FairMQUnmanagedRegionPtr FairMQTransportFactoryNN::CreateUnmanagedRegion(const size_t size, const int64_t userFlags, FairMQRegionCallback callback, const std::string& path /* = "" */, int flags /* = 0 */)
|
||||||
|
|
|
@ -52,6 +52,7 @@ class FairMQTransportFactoryNN final : public FairMQTransportFactory
|
||||||
|
|
||||||
private:
|
private:
|
||||||
static fair::mq::Transport fTransportType;
|
static fair::mq::Transport fTransportType;
|
||||||
|
uint64_t fRegionCounter;
|
||||||
mutable std::vector<FairMQSocket*> fSockets;
|
mutable std::vector<FairMQSocket*> fSockets;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -11,16 +11,18 @@
|
||||||
|
|
||||||
using namespace std;
|
using namespace std;
|
||||||
|
|
||||||
FairMQUnmanagedRegionNN::FairMQUnmanagedRegionNN(const size_t size, FairMQRegionCallback callback, const std::string& /*path = "" */, int /*flags = 0 */, FairMQTransportFactory* factory /* = nullptr */)
|
FairMQUnmanagedRegionNN::FairMQUnmanagedRegionNN(uint64_t id, const size_t size, FairMQRegionCallback callback, const std::string& /*path = "" */, int /*flags = 0 */, FairMQTransportFactory* factory /* = nullptr */)
|
||||||
: FairMQUnmanagedRegion(factory)
|
: FairMQUnmanagedRegion(factory)
|
||||||
|
, fId(id)
|
||||||
, fBuffer(malloc(size))
|
, fBuffer(malloc(size))
|
||||||
, fSize(size)
|
, fSize(size)
|
||||||
, fCallback(callback)
|
, fCallback(callback)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
FairMQUnmanagedRegionNN::FairMQUnmanagedRegionNN(const size_t size, const int64_t /*userFlags*/, FairMQRegionCallback callback, const std::string& /*path = "" */, int /*flags = 0 */, FairMQTransportFactory* factory /* = nullptr */)
|
FairMQUnmanagedRegionNN::FairMQUnmanagedRegionNN(uint64_t id, const size_t size, const int64_t /*userFlags*/, FairMQRegionCallback callback, const std::string& /*path = "" */, int /*flags = 0 */, FairMQTransportFactory* factory /* = nullptr */)
|
||||||
: FairMQUnmanagedRegion(factory)
|
: FairMQUnmanagedRegion(factory)
|
||||||
|
, fId(id)
|
||||||
, fBuffer(malloc(size))
|
, fBuffer(malloc(size))
|
||||||
, fSize(size)
|
, fSize(size)
|
||||||
, fCallback(callback)
|
, fCallback(callback)
|
||||||
|
@ -37,6 +39,12 @@ size_t FairMQUnmanagedRegionNN::GetSize() const
|
||||||
return fSize;
|
return fSize;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
uint64_t FairMQUnmanagedRegionNN::GetId() const
|
||||||
|
{
|
||||||
|
return fId;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
FairMQUnmanagedRegionNN::~FairMQUnmanagedRegionNN()
|
FairMQUnmanagedRegionNN::~FairMQUnmanagedRegionNN()
|
||||||
{
|
{
|
||||||
LOG(debug) << "destroying region";
|
LOG(debug) << "destroying region";
|
||||||
|
|
|
@ -19,18 +19,20 @@ class FairMQUnmanagedRegionNN final : public FairMQUnmanagedRegion
|
||||||
friend class FairMQSocketNN;
|
friend class FairMQSocketNN;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
FairMQUnmanagedRegionNN(const size_t size, FairMQRegionCallback callback, const std::string& path = "", int flags = 0, FairMQTransportFactory* factory = nullptr);
|
FairMQUnmanagedRegionNN(uint64_t id, const size_t size, FairMQRegionCallback callback, const std::string& path = "", int flags = 0, FairMQTransportFactory* factory = nullptr);
|
||||||
FairMQUnmanagedRegionNN(const size_t size, const int64_t userFlags, FairMQRegionCallback callback, const std::string& path = "", int flags = 0, FairMQTransportFactory* factory = nullptr);
|
FairMQUnmanagedRegionNN(uint64_t id, const size_t size, const int64_t userFlags, FairMQRegionCallback callback, const std::string& path = "", int flags = 0, FairMQTransportFactory* factory = nullptr);
|
||||||
|
|
||||||
FairMQUnmanagedRegionNN(const FairMQUnmanagedRegionNN&) = delete;
|
FairMQUnmanagedRegionNN(const FairMQUnmanagedRegionNN&) = delete;
|
||||||
FairMQUnmanagedRegionNN operator=(const FairMQUnmanagedRegionNN&) = delete;
|
FairMQUnmanagedRegionNN operator=(const FairMQUnmanagedRegionNN&) = delete;
|
||||||
|
|
||||||
virtual void* GetData() const override;
|
void* GetData() const override;
|
||||||
virtual size_t GetSize() const override;
|
size_t GetSize() const override;
|
||||||
|
uint64_t GetId() const override;
|
||||||
|
|
||||||
virtual ~FairMQUnmanagedRegionNN();
|
virtual ~FairMQUnmanagedRegionNN();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
uint64_t fId;
|
||||||
void* fBuffer;
|
void* fBuffer;
|
||||||
size_t fSize;
|
size_t fSize;
|
||||||
FairMQRegionCallback fCallback;
|
FairMQRegionCallback fCallback;
|
||||||
|
|
|
@ -53,6 +53,7 @@ class UnmanagedRegion final : public fair::mq::UnmanagedRegion
|
||||||
|
|
||||||
void* GetData() const override { return fRegion->get_address(); }
|
void* GetData() const override { return fRegion->get_address(); }
|
||||||
size_t GetSize() const override { return fRegion->get_size(); }
|
size_t GetSize() const override { return fRegion->get_size(); }
|
||||||
|
uint64_t GetId() const override { return fRegionId; }
|
||||||
|
|
||||||
~UnmanagedRegion() override { fManager.RemoveRegion(fRegionId); }
|
~UnmanagedRegion() override { fManager.RemoveRegion(fRegionId); }
|
||||||
|
|
||||||
|
|
|
@ -26,9 +26,9 @@ class FairMQUnmanagedRegionZMQ final : public FairMQUnmanagedRegion
|
||||||
FairMQUnmanagedRegionZMQ(const FairMQUnmanagedRegionZMQ&) = delete;
|
FairMQUnmanagedRegionZMQ(const FairMQUnmanagedRegionZMQ&) = delete;
|
||||||
FairMQUnmanagedRegionZMQ operator=(const FairMQUnmanagedRegionZMQ&) = delete;
|
FairMQUnmanagedRegionZMQ operator=(const FairMQUnmanagedRegionZMQ&) = delete;
|
||||||
|
|
||||||
uint64_t GetId() const { return fId; }
|
|
||||||
virtual void* GetData() const override;
|
virtual void* GetData() const override;
|
||||||
virtual size_t GetSize() const override;
|
virtual size_t GetSize() const override;
|
||||||
|
uint64_t GetId() const override { return fId; }
|
||||||
int64_t GetUserFlags() const { return fUserFlags; }
|
int64_t GetUserFlags() const { return fUserFlags; }
|
||||||
|
|
||||||
virtual ~FairMQUnmanagedRegionZMQ();
|
virtual ~FairMQUnmanagedRegionZMQ();
|
||||||
|
|
Loading…
Reference in New Issue
Block a user