9 #ifndef FAIR_MQ_OFI_TRANSPORTFACTORY_H 10 #define FAIR_MQ_OFI_TRANSPORTFACTORY_H 12 #include <FairMQTransportFactory.h> 13 #include <options/FairMQProgOptions.h> 14 #include <fairmq/ofi/Context.h> 36 auto CreateMessage()
const -> MessagePtr
override;
37 auto CreateMessage(
const std::size_t size)
const -> MessagePtr
override;
38 auto CreateMessage(
void* data,
const std::size_t size, fairmq_free_fn* ffn,
void* hint =
nullptr)
const -> MessagePtr
override;
39 auto CreateMessage(UnmanagedRegionPtr& region,
void* data,
const std::size_t size,
void* hint =
nullptr)
const -> MessagePtr
override;
41 auto CreateSocket(
const std::string& type,
const std::string& name) -> SocketPtr
override;
43 auto CreatePoller(
const std::vector<FairMQChannel>& channels)
const -> PollerPtr
override;
44 auto CreatePoller(
const std::vector<const FairMQChannel*>& channels)
const -> PollerPtr
override;
45 auto CreatePoller(
const std::unordered_map<std::string, std::vector<FairMQChannel>>& channelsMap,
const std::vector<std::string>& channelList)
const -> PollerPtr
override;
47 auto CreateUnmanagedRegion(
const size_t size, FairMQRegionCallback callback =
nullptr)
const -> UnmanagedRegionPtr
override;
49 auto GetType()
const -> Transport
override;
51 void Interrupt()
override {}
52 void Resume()
override {}
53 void Reset()
override {}
Transport-wide context.
Definition: Context.h:38
auto CreateSocket(const std::string &type, const std::string &name) -> SocketPtr override
Create a socket.
Definition: TransportFactory.cxx:59
Definition: FairMQTransportFactory.h:28
auto GetType() const -> Transport override
Get transport type.
Definition: TransportFactory.cxx:84
Definition: FairMQProgOptions.h:37
FairMQ transport factory for the ofi transport (implemented with ZeroMQ + libfabric)
Definition: TransportFactory.h:29
auto CreatePoller(const std::vector< FairMQChannel > &channels) const -> PollerPtr override
Create a poller for a single channel (all subchannels)
Tools for interfacing containers to the transport via polymorphic allocators.
Definition: DeviceRunner.h:23