15 #ifndef FAIRMQTRANSPORTFACTORYZMQ_H_ 16 #define FAIRMQTRANSPORTFACTORYZMQ_H_ 21 #include "FairMQTransportFactory.h" 22 #include "FairMQMessageZMQ.h" 23 #include "FairMQSocketZMQ.h" 24 #include "FairMQPollerZMQ.h" 25 #include "FairMQUnmanagedRegionZMQ.h" 26 #include <options/FairMQProgOptions.h> 38 FairMQMessagePtr
CreateMessage(
const size_t size)
const override;
39 FairMQMessagePtr
CreateMessage(
void* data,
const size_t size, fairmq_free_fn* ffn,
void* hint =
nullptr)
const override;
40 FairMQMessagePtr
CreateMessage(FairMQUnmanagedRegionPtr& region,
void* data,
const size_t size,
void* hint = 0)
const override;
42 FairMQSocketPtr
CreateSocket(
const std::string& type,
const std::string& name)
const override;
44 FairMQPollerPtr
CreatePoller(
const std::vector<FairMQChannel>& channels)
const override;
45 FairMQPollerPtr
CreatePoller(
const std::vector<const FairMQChannel*>& channels)
const override;
46 FairMQPollerPtr
CreatePoller(
const std::unordered_map<std::string, std::vector<FairMQChannel>>& channelsMap,
const std::vector<std::string>& channelList)
const override;
49 FairMQUnmanagedRegionPtr CreateUnmanagedRegion(
const size_t size, FairMQRegionCallback callback)
const override;
51 fair::mq::Transport
GetType()
const override;
53 void Interrupt()
override { FairMQSocketZMQ::Interrupt(); }
54 void Resume()
override { FairMQSocketZMQ::Resume(); }
57 static fair::mq::Transport fTransportType;
Definition: FairMQTransportFactoryZMQ.h:28
FairMQMessagePtr CreateMessage() const override
Create empty FairMQMessage.
Definition: FairMQTransportFactoryZMQ.cxx:52
Definition: FairMQTransportFactory.h:27
FairMQSocketPtr CreateSocket(const std::string &type, const std::string &name) const override
Create a socket.
Definition: FairMQTransportFactoryZMQ.cxx:72
Definition: FairMQProgOptions.h:41
Definition: FairMQSocket.h:18
fair::mq::Transport GetType() const override
Get transport type.
Definition: FairMQTransportFactoryZMQ.cxx:103
FairMQPollerPtr CreatePoller(const std::vector< FairMQChannel > &channels) const override
Create a poller for a single channel (all subchannels)