XrdClientInputBuffer Class Reference

#include <XrdClientInputBuffer.hh>

List of all members.

Public Member Functions

 XrdClientInputBuffer ()
 ~XrdClientInputBuffer ()
bool IsMexEmpty ()
bool IsSemEmpty ()
int MexSize ()
int PutMsg (XrdClientMessage *msg)
int SemSize ()
int WipeStreamid (int streamid)
XrdClientMessageGetMsg (int streamid, int secstimeout)

Private Member Functions

XrdSysSemWaitGetSyncObjOrMakeOne (int streamid)
int MsgForStreamidCnt (int streamid)

Private Attributes

XrdClientVector< XrdClientMessage * > fMsgQue
int fMsgIter
XrdSysRecMutex fMutex
XrdOucHash< XrdSysSemWaitfSyncobjRepo


Detailed Description

Definition at line 31 of file XrdClientInputBuffer.hh.


Constructor & Destructor Documentation

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().


Member Function Documentation

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.

Referenced by GetMsg(), and PutMsg().

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]

Definition at line 54 of file XrdClientInputBuffer.hh.

References MexSize().

bool XrdClientInputBuffer::IsSemEmpty (  )  [inline]

Definition at line 55 of file XrdClientInputBuffer.hh.

References SemSize().

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().


Member Data Documentation

XrdClientVector<XrdClientMessage*> XrdClientInputBuffer::fMsgQue [private]

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().

XrdOucHash<XrdSysSemWait> XrdClientInputBuffer::fSyncobjRepo [private]

Definition at line 40 of file XrdClientInputBuffer.hh.

Referenced by GetSyncObjOrMakeOne(), SemSize(), and ~XrdClientInputBuffer().


The documentation for this class was generated from the following files:
Generated on Tue Jul 5 16:50:17 2011 for ROOT_528-00b_version by  doxygen 1.5.1