PhoenixZMQ  2.0.0
Library which integrates zeromq use in Phoenix
PZmqBackend.cpp File Reference
#include "PZmqBackend.h"
+ Include dependency graph for PZmqBackend.cpp:

Go to the source code of this file.

Functions

zmq::recv_flags convertToRecvFlag (PRecvFlag::PRecvFlag flag)
 Convert a recv flag into zmq flag. More...
 
zmq::send_flags convertToSendFlag (PSendFlag::PSendFlag flag)
 Convert a send flag into zmq flag. More...
 
PZmqParam pzmq_createParamClient (const std::string &address, size_t port, zmq::context_t *context, int type, int nbBufferMessage, int bufferSizeByte, size_t threadAffinity, ssize_t dataRate)
 Create param for a client socket. More...
 
PZmqParam pzmq_createParamServer (const std::string &address, size_t port, zmq::context_t *context, int type, int nbBufferMessage, int bufferSizeByte, size_t threadAffinity, ssize_t dataRate)
 Create param for a client socket. More...
 

Function Documentation

◆ convertToRecvFlag()

zmq::recv_flags convertToRecvFlag ( PRecvFlag::PRecvFlag  flag)

Convert a recv flag into zmq flag.

Parameters
flag: generic PRecvFlag
Returns
corresponding zmq::recv_flags

Definition at line 172 of file PZmqBackend.cpp.

172  {
173  if(flag == PRecvFlag::NON_BLOCK){return zmq::recv_flags::dontwait;}
174  else{return zmq::recv_flags::none;}
175 }

References PRecvFlag::NON_BLOCK.

Referenced by PZmqBackend::recv().

+ Here is the caller graph for this function:

◆ convertToSendFlag()

zmq::send_flags convertToSendFlag ( PSendFlag::PSendFlag  flag)

Convert a send flag into zmq flag.

Parameters
flag: generic PSendFlag
Returns
corresponding zmq::send_flags

Definition at line 148 of file PZmqBackend.cpp.

148  {
149  if(flag == PSendFlag::NON_BLOCK){return zmq::send_flags::dontwait;}
150  else{return zmq::send_flags::none;}
151 }

References PSendFlag::NON_BLOCK.

Referenced by PZmqBackend::send().

+ Here is the caller graph for this function:

◆ pzmq_createParamClient()

PZmqParam pzmq_createParamClient ( const std::string &  address,
size_t  port,
zmq::context_t *  context,
int  type,
int  nbBufferMessage,
int  bufferSizeByte,
size_t  threadAffinity,
ssize_t  dataRate 
)

Create param for a client socket.

Parameters
address: address of the server to be connected to
port: port to be used
context: zmq context where to create socket
type: type of the connection (ZMQ_PULL, ZMQ_PUSH, etc)
nbBufferMessage: number of messages to be buffered
bufferSizeByte: size of the zmq buffer in bytes
threadAffinity: bit mask which determines which threads from the 0MQ I/O thread pool associated with the socket's context shall handle newly created connections (1 : means first, 2 : means second, 3 : means first and second, etc)
dataRate: expected data rate (in kilobytes per second)
Returns
corresponding PZmqParam

Definition at line 20 of file PZmqBackend.cpp.

22 {
23  PZmqParam param;
24  param.address = address;
25  param.port = port;
26  param.context = context;
27  param.type = type;
28  param.nbBufferMessage = nbBufferMessage;
29  param.bufferSizeByte = bufferSizeByte;
30  param.threadAffinity = threadAffinity;
31  param.dataRate = dataRate;
32  return param;
33 }
Set of parameters to be passed to create a socket with zmq backend.
Definition: PZmqBackend.h:15
zmq::context_t * context
Context.
Definition: PZmqBackend.h:17
ssize_t dataRate
Data rate.
Definition: PZmqBackend.h:31
int nbBufferMessage
Number of messages in the buffer.
Definition: PZmqBackend.h:25
int bufferSizeByte
Size of the message buffer in bytes.
Definition: PZmqBackend.h:27
size_t port
Connection port.
Definition: PZmqBackend.h:21
int type
Socket type.
Definition: PZmqBackend.h:23
size_t threadAffinity
Mask of threads which deal with reconnection.
Definition: PZmqBackend.h:29
std::string address
Host address.
Definition: PZmqBackend.h:19

References PZmqParam::address, PZmqParam::bufferSizeByte, PZmqParam::context, PZmqParam::dataRate, PZmqParam::nbBufferMessage, PZmqParam::port, PZmqParam::threadAffinity, and PZmqParam::type.

Referenced by PZmqBackend::client().

+ Here is the caller graph for this function:

◆ pzmq_createParamServer()

PZmqParam pzmq_createParamServer ( const std::string &  address,
size_t  port,
zmq::context_t *  context,
int  type,
int  nbBufferMessage,
int  bufferSizeByte,
size_t  threadAffinity,
ssize_t  dataRate 
)

Create param for a client socket.

Parameters
address: address of the server to be connected to
port: port to be used
context: zmq context where to create socket
type: type of the connection (ZMQ_PULL, ZMQ_PUSH, etc)
nbBufferMessage: number of messages to be buffered
bufferSizeByte: size of the zmq buffer in bytes
threadAffinity: bit mask which determines which threads from the 0MQ I/O thread pool associated with the socket's context shall handle newly created connections (1 : means first, 2 : means second, 3 : means first and second, etc)
dataRate: expected data rate (in kilobytes per second)
Returns
corresponding PZmqParam

Definition at line 46 of file PZmqBackend.cpp.

48 {
49  PZmqParam param;
50  param.address = address;
51  param.port = port;
52  param.context = context;
53  param.type = type;
54  param.nbBufferMessage = nbBufferMessage;
55  param.bufferSizeByte = bufferSizeByte;
56  param.threadAffinity = threadAffinity;
57  param.dataRate = dataRate;
58  return param;
59 }

References PZmqParam::address, PZmqParam::bufferSizeByte, PZmqParam::context, PZmqParam::dataRate, PZmqParam::nbBufferMessage, PZmqParam::port, PZmqParam::threadAffinity, and PZmqParam::type.

Referenced by PZmqBackend::server().

+ Here is the caller graph for this function: