9 #ifndef FAIRMQSOCKET_H_ 10 #define FAIRMQSOCKET_H_ 16 #include "FairMQMessage.h" 25 virtual std::string GetId() = 0;
27 virtual bool Bind(
const std::string& address) = 0;
28 virtual bool Connect(
const std::string& address) = 0;
30 virtual int Send(FairMQMessagePtr& msg,
int timeout = -1) = 0;
31 virtual int Receive(FairMQMessagePtr& msg,
int timeout = -1) = 0;
32 virtual int64_t Send(std::vector<std::unique_ptr<FairMQMessage>>& msgVec,
int timeout = -1) = 0;
33 virtual int64_t Receive(std::vector<std::unique_ptr<FairMQMessage>>& msgVec,
int timeout = -1) = 0;
35 virtual void Close() = 0;
37 virtual void SetOption(
const std::string& option,
const void* value,
size_t valueSize) = 0;
38 virtual void GetOption(
const std::string& option,
void* value,
size_t* valueSize) = 0;
40 virtual void SetLinger(
const int value) = 0;
41 virtual int GetLinger()
const = 0;
42 virtual void SetSndBufSize(
const int value) = 0;
43 virtual int GetSndBufSize()
const = 0;
44 virtual void SetRcvBufSize(
const int value) = 0;
45 virtual int GetRcvBufSize()
const = 0;
46 virtual void SetSndKernelSize(
const int value) = 0;
47 virtual int GetSndKernelSize()
const = 0;
48 virtual void SetRcvKernelSize(
const int value) = 0;
49 virtual int GetRcvKernelSize()
const = 0;
51 virtual unsigned long GetBytesTx()
const = 0;
52 virtual unsigned long GetBytesRx()
const = 0;
53 virtual unsigned long GetMessagesTx()
const = 0;
54 virtual unsigned long GetMessagesRx()
const = 0;
65 using FairMQSocketPtr = std::unique_ptr<FairMQSocket>;
73 using SocketPtr = FairMQSocketPtr;
74 struct SocketError : std::runtime_error {
using std::runtime_error::runtime_error; };
Definition: FairMQSocket.h:74
Definition: FairMQTransportFactory.h:28
Definition: FairMQSocket.h:19
Tools for interfacing containers to the transport via polymorphic allocators.
Definition: DeviceRunner.h:23