FairMQ  1.2.3
C++ Message Passing Framework
Public Member Functions | List of all members
FairMQTransportFactorySHM Class Reference
Inheritance diagram for FairMQTransportFactorySHM:
Inheritance graph
[legend]
Collaboration diagram for FairMQTransportFactorySHM:
Collaboration graph
[legend]

Public Member Functions

 FairMQTransportFactorySHM (const std::string &id="", const FairMQProgOptions *config=nullptr)
 
 FairMQTransportFactorySHM (const FairMQTransportFactorySHM &)=delete
 
FairMQTransportFactorySHM operator= (const FairMQTransportFactorySHM &)=delete
 
FairMQMessagePtr CreateMessage () const override
 Create empty FairMQMessage. More...
 
FairMQMessagePtr CreateMessage (const size_t size) const override
 Create new FairMQMessage of specified size. More...
 
FairMQMessagePtr CreateMessage (void *data, const size_t size, fairmq_free_fn *ffn, void *hint=nullptr) const override
 Create new FairMQMessage with user provided buffer and size. More...
 
FairMQMessagePtr CreateMessage (FairMQUnmanagedRegionPtr &region, void *data, const size_t size, void *hint=0) const override
 
FairMQSocketPtr CreateSocket (const std::string &type, const std::string &name) const override
 Create a socket.
 
FairMQPollerPtr CreatePoller (const std::vector< FairMQChannel > &channels) const override
 Create a poller for a single channel (all subchannels)
 
FairMQPollerPtr CreatePoller (const std::vector< const FairMQChannel *> &channels) const override
 Create a poller for specific channels.
 
FairMQPollerPtr CreatePoller (const std::unordered_map< std::string, std::vector< FairMQChannel >> &channelsMap, const std::vector< std::string > &channelList) const override
 Create a poller for specific channels (all subchannels)
 
FairMQPollerPtr CreatePoller (const FairMQSocket &cmdSocket, const FairMQSocket &dataSocket) const override
 Create a poller for two sockets.
 
FairMQUnmanagedRegionPtr CreateUnmanagedRegion (const size_t size, FairMQRegionCallback callback=nullptr) const override
 
fair::mq::Transport GetType () const override
 Get transport type.
 
void Interrupt () override
 
void Resume () override
 
- Public Member Functions inherited from FairMQTransportFactory
 FairMQTransportFactory (const std::string &id)
 
auto GetId () const -> const std::string
 
template<typename T >
FairMQMessagePtr NewSimpleMessage (const T &data) const
 
template<std::size_t N>
FairMQMessagePtr NewSimpleMessage (const char(&data)[N]) const
 
FairMQMessagePtr NewSimpleMessage (const std::string &str) const
 
template<typename T >
FairMQMessagePtr NewStaticMessage (const T &data) const
 
FairMQMessagePtr NewStaticMessage (const std::string &str) const
 

Additional Inherited Members

- Static Public Member Functions inherited from FairMQTransportFactory
static auto CreateTransportFactory (const std::string &type, const std::string &id="", const FairMQProgOptions *config=nullptr) -> std::shared_ptr< FairMQTransportFactory >
 
static void FairMQNoCleanup (void *, void *)
 
template<typename T >
static void FairMQSimpleMsgCleanup (void *, void *obj)
 

Member Function Documentation

◆ CreateMessage() [1/3]

FairMQMessagePtr FairMQTransportFactorySHM::CreateMessage ( ) const
overridevirtual

Create empty FairMQMessage.

Returns
pointer to FairMQMessage

Implements FairMQTransportFactory.

◆ CreateMessage() [2/3]

FairMQMessagePtr FairMQTransportFactorySHM::CreateMessage ( const size_t  size) const
overridevirtual

Create new FairMQMessage of specified size.

Parameters
sizemessage size
Returns
pointer to FairMQMessage

Implements FairMQTransportFactory.

◆ CreateMessage() [3/3]

FairMQMessagePtr FairMQTransportFactorySHM::CreateMessage ( void *  data,
const size_t  size,
fairmq_free_fn *  ffn,
void *  hint = nullptr 
) const
overridevirtual

Create new FairMQMessage with user provided buffer and size.

Parameters
datapointer to user provided buffer
sizesize of the user provided buffer
ffncallback, called when the message is transfered (and can be deleted)
objoptional helper pointer that can be used in the callback
Returns
pointer to FairMQMessage

Implements FairMQTransportFactory.


The documentation for this class was generated from the following files: