23 #define DFLT_CONNECTMAXTRY 10 32 #include "XProtocol/XPtypes.hh" 142 const char *logbuf = 0,
Int_t loglevel = -1,
TXHandler *handler = 0);
150 const char *location,
const char *fmt, va_list va)
const;
208 std::lock_guard<std::recursive_mutex> lock(fAMtx);
210 inline Bool_t IsAWait() { std::lock_guard<std::recursive_mutex> lock(fAMtx);
251 void Resize(
Int_t sz);
255 static void SetMemMax(
Long64_t memmax);
280 void DumpReadySock();
282 void SetLoc(
const char *loc =
"") { fLoc = loc; }
void SetSendOpt(ESendRecvOptions o)
static void SetLocation(const char *loc="")
Set location string.
virtual void RemoveClientID()
virtual void SetClientID(Int_t)
Int_t Send(const char *mess, Int_t kind=kMESS_STRING)
Send a character string buffer.
Int_t Recv(Int_t &status, Int_t &kind)
Receives a status and a message type.
Int_t SendRaw(const void *buf, Int_t len, ESendRecvOptions opt=kDontBlock)
Send a raw buffer of specified length.
void SetLoc(const char *loc="")
Int_t Recv(char *mess, Int_t max)
Receive a character string message of maximum max length.
Collectable string class.
std::recursive_mutex fMutex
virtual Int_t Send(const TMessage &mess)
Send a TMessage object.
virtual Int_t Recv(TMessage *&mess)
Receive a TMessage object.
std::recursive_mutex fIMtx
virtual ~TXSocket()
Destructor.
Int_t Recv(char *mess, Int_t max, Int_t &kind)
Receive a character string message of maximum max length.
void SetSessionID(Int_t id)
Set session ID to 'id'. If id < 0, disable also the asynchronous handler.
This is the version of TSlave for workers servers based on XProofD.
void RemoteTouch()
Remote touch functionality: contact the server to proof our vitality.
static Long64_t fgBuffMem
virtual ~TXSemaphoreGuard()
void SetInterrupt()
Interrupt the underlying socket.
Implementation of TXSocket using PF_UNIX sockets.
Int_t RecvRaw(void *buf, Int_t len, ESendRecvOptions opt=kDefault)
Receive a raw buffer of specified length bytes.
#define ClassDef(name, id)
static void InitEnvs()
Init environment variables for XrdClient.
static std::list< TXSockBuf * > fgSQue
Int_t Send(const TMessage &mess)
Send a TMessage object.
Int_t GetInterrupt(Bool_t &forward)
Get latest interrupt level and reset it; if the interrupt has to be propagated to lower stages forwar...
TXSockBuf * PopUpSpare(Int_t sz)
Pop-up a buffer of at least size bytes from the spare list If none is found either one is reallocated...
void DoError(int level, const char *location, const char *fmt, va_list va) const
Interface to ErrorHandler (protected).
Bool_t IsServProofd()
Return kTRUE if the remote server is a 'proofd'.
This class implements the XProofD version of TProofServ, with respect to which it differs only for th...
Bool_t Create(Bool_t attach=kFALSE)
This method sends a request for creation of (or attachment to) a remote server application.
Int_t Flush()
Flush the asynchronous queue.
virtual Int_t GetClientID() const
void SetAWait(Bool_t w=kTRUE)
Handler of asynchronous events for XProofD sockets.
Input handler for XProofD sockets.
void PostMsg(Int_t type, const char *msg=0)
Post a message of type 'type' into the read messages queue.
High level handler of connections to XProofD.
Bool_t Ping(const char *ord=0)
Ping functionality: contact the server to check its vitality.
std::recursive_mutex fAMtx
std::list< TXSockBuf * > fAQue
Implementation of the functionality provided by TProofMgr in the case of a xproofd-based session...
TXSemaphoreGuard(TSemaphore *sem)
Int_t Send(Int_t status, Int_t kind)
Send a status and a single message opcode.
void DisconnectSession(Int_t id, Option_t *opt="")
Disconnect a session.
int GetLowSocket()
Return the socket descriptor of the underlying connection.
Int_t Send(Int_t kind)
Send a single message opcode.
virtual void Close(const char *opt="")
Close connection.
void forward(const LAYERDATA &prevLayerData, LAYERDATA &currLayerData)
apply the weights (and functions) in forward direction of the DNN
Int_t Recv(TMessage *&mess)
Receive a TMessage object.
Mother of all ROOT objects.
Int_t SetOption(ESockOptions, Int_t)
Set socket options.
void PushBackSpare()
Release read buffer giving back to the spare list.
Int_t PickUpReady()
Wait and pick-up next buffer from the asynchronous queue.
Int_t Reconnect()
Try reconnection after failure.
TObjString * SendCoordinator(Int_t kind, const char *msg=0, Int_t int2=0, Long64_t l64=0, Int_t int3=0, const char *opt=0)
Send message to intermediate coordinator.
void SendUrgent(Int_t type, Int_t int1, Int_t int2)
Send urgent message to counterpart; 'type' specifies the type of the message (see TXSocket::EUrgentMs...
short GetSessionID() const
bool IsValid() const
Test validity of this connection.
virtual Int_t GetClientIDSize() const
Int_t SendInterrupt(Int_t type)
Send urgent message (interrupt) to remote server Returns 0 or -1 in case of error.
void PostSemAll()
Wake up all threads waiting for at the semaphore (used by TXSlave)
void CtrlC()
Interrupt the remote protocol instance.
Int_t GetXrdProofdVersion() const
virtual UnsolRespProcResult ProcessUnsolicitedMsg(XrdClientUnsolMsgSender *s, XrdClientMessage *m)
We are here if an unsolicited response comes from a logical conn The response comes in the form of an...