TransportFactory(std::string id)ctor
id- Topology wide unique id, usually the device id.
API · fair::mq
No comment in the header yet.
TransportFactory(std::string id)ctor
idTransportFactory(const TransportFactory&) = deleteNo comment in the header yet.
TransportFactory(TransportFactory&&) = deleteNo comment in the header yet.
TransportFactory& operator=(const TransportFactory&) = deleteNo comment in the header yet.
TransportFactory& operator=(TransportFactory&&) = deleteNo comment in the header yet.
auto GetId() const -> const std::stringNo comment in the header yet.
ChannelResource* GetMemoryResource()Get a pointer to the associated polymorphic memory resource.
operator ChannelResource *()No comment in the header yet.
virtual MessagePtr CreateMessage() = 0Create empty Message (for receiving)
virtual MessagePtr CreateMessage(Alignment alignment) = 0Create empty Message (for receiving), align received buffer to specified alignment.
alignmentvirtual MessagePtr CreateMessage(size_t size) = 0Create new Message of specified size.
sizevirtual MessagePtr CreateMessage(size_t size, Alignment alignment) = 0Create new Message of specified size and alignment.
sizealignmentvirtual MessagePtr CreateMessage(
void* data,
size_t size,
FreeFn* ffn,
void* hint = nullptr
) = 0Create new Message with user provided buffer and size.
datasizeffnobjvirtual MessagePtr CreateMessage(
UnmanagedRegionPtr& unmanagedRegion,
void* data,
size_t size,
void* hint = nullptr
) = 0create a message with the buffer located within the corresponding unmanaged region
unmanagedRegiondatasizehintvirtual SocketPtr CreateSocket(
const std::string& type,
const std::string& name
) = 0Create a socket.
virtual PollerPtr CreatePoller(const std::vector<Channel>& channels) const = 0Create a poller for a single channel (all subchannels)
virtual PollerPtr CreatePoller(const std::vector<Channel*>& channels) const = 0Create a poller for specific channels.
virtual PollerPtr CreatePoller(
const std::unordered_map<std::string, std::vector<Channel>>& channelsMap,
const std::vector<std::string>& channelList
) const = 0Create a poller for specific channels (all subchannels)
virtual UnmanagedRegionPtr CreateUnmanagedRegion(
size_t size,
RegionCallback callback = nullptr,
const std::string& path = "",
int flags = 0,
RegionConfig cfg = RegionConfig()
) = 0Create new UnmanagedRegion.
sizecallbackpathflagsvirtual UnmanagedRegionPtr CreateUnmanagedRegion(
size_t size,
RegionBulkCallback bulkCallback = nullptr,
const std::string& path = "",
int flags = 0,
RegionConfig cfg = RegionConfig()
) = 0No comment in the header yet.
virtual UnmanagedRegionPtr CreateUnmanagedRegion(
size_t size,
int64_t userFlags,
RegionCallback callback = nullptr,
const std::string& path = "",
int flags = 0,
RegionConfig cfg = RegionConfig()
) = 0Create new UnmanagedRegion.
sizeuserFlagscallbackpathflagsvirtual UnmanagedRegionPtr CreateUnmanagedRegion(
size_t size,
int64_t userFlags,
RegionBulkCallback bulkCallback = nullptr,
const std::string& path = "",
int flags = 0,
RegionConfig cfg = RegionConfig()
) = 0No comment in the header yet.
virtual UnmanagedRegionPtr CreateUnmanagedRegion(
size_t size,
RegionCallback callback,
RegionConfig cfg
) = 0Create new UnmanagedRegion.
sizecallbackcfgvirtual UnmanagedRegionPtr CreateUnmanagedRegion(
size_t size,
RegionBulkCallback bulkCallback,
RegionConfig cfg
) = 0Create new UnmanagedRegion.
sizebulkCallbackcfgvirtual void SubscribeToRegionEvents(RegionEventCallback callback) = 0Subscribe to region events (creation, destruction, ...)
callbackvirtual bool SubscribedToRegionEvents() = 0Check if there is an active subscription to region events.
virtual void UnsubscribeFromRegionEvents() = 0Unsubscribe from region events.
virtual std::vector<RegionInfo> GetRegionInfo() = 0No comment in the header yet.
virtual Transport GetType() const = 0Get transport type.
virtual void Interrupt() = 0No comment in the header yet.
virtual void Resume() = 0No comment in the header yet.
virtual void Reset() = 0No comment in the header yet.
virtual ~TransportFactory() = defaultNo comment in the header yet.
template<typename T>
MessagePtr NewSimpleMessage(const T& data)No comment in the header yet.
template<std::size_t N>
MessagePtr NewSimpleMessage(const char(&) data[N])No comment in the header yet.
MessagePtr NewSimpleMessage(const std::string& str)No comment in the header yet.
template<typename T>
MessagePtr NewStaticMessage(const T& data)No comment in the header yet.
MessagePtr NewStaticMessage(const std::string& str)No comment in the header yet.
static auto CreateTransportFactory(
const std::string& type,
const std::string& id = "",
const ProgOptions* config = nullptr
) -> std::shared_ptr< TransportFactory >No comment in the header yet.
static void NoCleanup(void*, void*)No comment in the header yet.
template<typename T>
static void SimpleMsgCleanup(void*, void* obj)No comment in the header yet.