#include <XrdClientInputBuffer.hh>
Public Member Functions | |
| XrdClientInputBuffer () | |
| ~XrdClientInputBuffer () | |
| bool | IsMexEmpty () |
| bool | IsSemEmpty () |
| int | MexSize () |
| int | PutMsg (XrdClientMessage *msg) |
| int | SemSize () |
| int | WipeStreamid (int streamid) |
| XrdClientMessage * | GetMsg (int streamid, int secstimeout) |
Private Member Functions | |
| XrdSysSemWait * | GetSyncObjOrMakeOne (int streamid) |
| int | MsgForStreamidCnt (int streamid) |
Private Attributes | |
| XrdClientVector< XrdClientMessage * > | fMsgQue |
| int | fMsgIter |
| XrdSysRecMutex | fMutex |
| XrdOucHash< XrdSysSemWait > | fSyncobjRepo |
Definition at line 31 of file XrdClientInputBuffer.hh.
| XrdClientInputBuffer::XrdClientInputBuffer | ( | ) |
Definition at line 105 of file XrdClientInputBuffer.cc.
References XrdClientVector< T >::Clear(), and fMsgQue.
| XrdClientInputBuffer::~XrdClientInputBuffer | ( | ) |
Definition at line 120 of file XrdClientInputBuffer.cc.
References XrdOucHash< T >::Apply(), XrdClientVector< T >::Clear(), DeleteHashItem(), fMsgIter, fMsgQue, fMutex, fSyncobjRepo, and XrdClientVector< T >::GetSize().
| XrdSysSemWait * XrdClientInputBuffer::GetSyncObjOrMakeOne | ( | int | streamid | ) | [private] |
Definition at line 76 of file XrdClientInputBuffer.cc.
References buf, XrdOucHash< T >::Find(), fMutex, fSyncobjRepo, XrdOucHash< T >::Rep(), snprintf, and XrdSysSemWait.
| int XrdClientInputBuffer::MsgForStreamidCnt | ( | int | streamid | ) | [private] |
Definition at line 32 of file XrdClientInputBuffer.cc.
References xmlio::cnt, fMsgIter, fMsgQue, XrdClientVector< T >::GetSize(), and m.
| bool XrdClientInputBuffer::IsMexEmpty | ( | ) | [inline] |
| bool XrdClientInputBuffer::IsSemEmpty | ( | ) | [inline] |
| int XrdClientInputBuffer::MexSize | ( | ) | [inline] |
Definition at line 56 of file XrdClientInputBuffer.hh.
References fMsgQue, fMutex, and XrdClientVector< T >::GetSize().
Referenced by IsMexEmpty(), and PutMsg().
| int XrdClientInputBuffer::PutMsg | ( | XrdClientMessage * | msg | ) |
Definition at line 145 of file XrdClientInputBuffer.cc.
References fMsgQue, fMutex, GetSyncObjOrMakeOne(), m, MexSize(), XrdSysSemWait::Post(), and XrdClientVector< T >::Push_back().
Referenced by XrdClientPhyConnection::BuildMessage().
| int XrdClientInputBuffer::SemSize | ( | ) | [inline] |
Definition at line 61 of file XrdClientInputBuffer.hh.
References fMutex, fSyncobjRepo, and XrdOucHash< T >::Num().
Referenced by IsSemEmpty().
| int XrdClientInputBuffer::WipeStreamid | ( | int | streamid | ) |
Definition at line 51 of file XrdClientInputBuffer.cc.
References xmlio::cnt, XrdClientVector< T >::Erase(), fMsgIter, fMsgQue, fMutex, XrdClientVector< T >::GetSize(), and m.
Referenced by XrdClientPhyConnection::WipeStreamid().
| XrdClientMessage * XrdClientInputBuffer::GetMsg | ( | int | streamid, | |
| int | secstimeout | |||
| ) |
Definition at line 172 of file XrdClientInputBuffer.cc.
References XrdClientVector< T >::Erase(), fMsgIter, fMsgQue, fMutex, XrdClientVector< T >::GetSize(), GetSyncObjOrMakeOne(), m, and XrdSysSemWait::Wait().
Referenced by XrdClientPhyConnection::ReadMessage().
Definition at line 35 of file XrdClientInputBuffer.hh.
Referenced by GetMsg(), MexSize(), MsgForStreamidCnt(), PutMsg(), WipeStreamid(), XrdClientInputBuffer(), and ~XrdClientInputBuffer().
int XrdClientInputBuffer::fMsgIter [private] |
Definition at line 36 of file XrdClientInputBuffer.hh.
Referenced by GetMsg(), MsgForStreamidCnt(), WipeStreamid(), and ~XrdClientInputBuffer().
XrdSysRecMutex XrdClientInputBuffer::fMutex [private] |
Definition at line 38 of file XrdClientInputBuffer.hh.
Referenced by GetMsg(), GetSyncObjOrMakeOne(), MexSize(), PutMsg(), SemSize(), WipeStreamid(), and ~XrdClientInputBuffer().
Definition at line 40 of file XrdClientInputBuffer.hh.
Referenced by GetSyncObjOrMakeOne(), SemSize(), and ~XrdClientInputBuffer().
1.5.1