12#ifndef ROOT_TUDPSocket
13#define ROOT_TUDPSocket
88 TUDPSocket(
const char *host,
const char *service);
unsigned long long ULong64_t
#define ClassDef(name, id)
#define R__LOCKGUARD2(mutex)
This class represents an Internet Protocol (IP) address.
The TNamed class is the base class for all named ROOT classes.
Mother of all ROOT objects.
virtual Option_t * GetOption() const
The TTimeStamp encapsulates seconds and ns since EPOCH.
void Set()
Set Date/Time to current time as reported by the system.
void SetRemoteProtocol(Int_t rproto)
TTimeStamp GetLastUsage()
Int_t GetErrorCode() const
Returns error code.
TUDPSocket & operator=(const TUDPSocket &)
Bool_t RecvStreamerInfos(TMessage *mess)
Receive a message containing streamer infos.
virtual TInetAddress GetLocalInetAddress()
Return internet address of local host to which the socket is bound.
Option_t * GetOption() const
TInetAddress fLocalAddress
void SetCompressionLevel(Int_t level=ROOT::RCompressionSetting::ELevel::kUseMin)
See comments for function SetCompressionSettings.
UInt_t GetBytesSent() const
virtual Int_t RecvRaw(void *buffer, Int_t length, ESendRecvOptions opt=kDefault)
Receive a raw buffer of specified length bytes.
TVirtualMutex * fLastUsageMtx
virtual Int_t GetLocalPort()
Return the local port # to which the socket is bound.
static ULong64_t fgBytesRecv
const char * GetUrl() const
Bool_t RecvProcessIDs(TMessage *mess)
Receive a message containing process ids.
virtual Bool_t IsValid() const
const char * GetService() const
static void NetError(const char *where, Int_t error)
Print error string depending on error code.
TInetAddress GetInetAddress() const
void SetCompressionAlgorithm(Int_t algorithm=ROOT::RCompressionSetting::EAlgorithm::kUseGlobal)
See comments for function SetCompressionSettings.
virtual Int_t Recv(TMessage *&mess)
Receive a TMessage object.
virtual void Close(Option_t *opt="")
Close the socket.
Int_t GetRemoteProtocol() const
virtual Int_t SetOption(ESockOptions opt, Int_t val)
Set socket options.
static ULong64_t fgBytesSent
void SetDescriptor(Int_t desc)
Int_t GetCompressionLevel() const
void SendStreamerInfos(const TMessage &mess)
Check if TStreamerInfo must be sent.
virtual Int_t SendObject(const TObject *obj, Int_t kind=kMESS_OBJECT)
Send an object.
void SetSecContext(TSecContext *ctx)
TSecContext * GetSecContext() const
static ULong64_t GetSocketBytesRecv()
Get total number of bytes received via all sockets.
void SetServType(Int_t st)
virtual Int_t Send(const TMessage &mess)
Send a TMessage object.
Int_t GetCompressionSettings() const
UInt_t GetBytesRecv() const
void SetService(const char *service)
static ULong64_t GetSocketBytesSent()
Get total number of bytes sent via all sockets.
void SetCompressionSettings(Int_t settings=ROOT::RCompressionSetting::EDefaults::kUseGeneralPurpose)
Used to specify the compression level and algorithm: settings = 100 * algorithm + level.
virtual Int_t Reconnect()
virtual Int_t Select(Int_t interest=kRead, Long_t timeout=-1)
Waits for this socket to change status.
Int_t GetCompressionAlgorithm() const
virtual Int_t SendRaw(const void *buffer, Int_t length, ESendRecvOptions opt=kDefault)
Send a raw buffer of specified length.
virtual Int_t GetDescriptor() const
void SetUrl(const char *url)
Int_t GetServType() const
void SendProcessIDs(const TMessage &mess)
Check if TProcessIDs must be sent.
TSecContext * fSecContext
This class implements a mutex interface.
static constexpr double s
@ kUseGlobal
Use the global compression algorithm.
@ kUseGeneralPurpose
Use the recommended general-purpose setting; moderate read / write speed and compression ratio.