Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members

XrdClient Class Reference

#include <XrdClient.hh>

Inheritance diagram for XrdClient:

Inheritance graph
[legend]
Collaboration diagram for XrdClient:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 XrdClient (const char *url, XrdClientCallback *XrdCcb=0, void *XrdCcbArg=0)
virtual ~XrdClient ()
UnsolRespProcResult ProcessUnsolicitedMsg (XrdClientUnsolMsgSender *sender, XrdClientMessage *unsolmsg)
bool Close ()
bool Sync ()
bool Copy (const char *localpath)
bool GetCacheInfo (int &size, long long &bytessubmitted, long long &byteshit, long long &misscount, float &missrate, long long &readreqcnt, float &bytesusefulness)
bool GetCounters (XrdClientCounters *cnt)
bool IsOpen ()
bool IsOpen_inprogress ()
bool IsOpen_wait ()
bool Open (kXR_unt16 mode, kXR_unt16 options, bool doitparallel=true)
int Read (void *buf, long long offset, int len)
kXR_int64 ReadV (char *buf, long long *offsets, int *lens, int nbuf)
XReqErrorType Read_Async (long long offset, int len, bool updatecounters=true)
bool Stat (struct XrdClientStatInfo *stinfo, bool force=false)
bool UseCache (bool u=TRUE)
void RemoveAllDataFromCache ()
void RemoveDataFromCache (long long begin_offs, long long end_offs, bool remove_overlapped=false)
void SetCacheParameters (int CacheSize, int ReadAheadSize, int RmPolicy)
void SetReadAheadStrategy (int strategy)
void SetBlockReadTrimming (int blocksize)
bool Truncate (long long len)
bool Write (const void *buf, long long offset, int len)

Protected Member Functions

virtual bool OpenFileWhenRedirected (char *newfhandle, bool &wasopen)
virtual bool CanRedirOnError ()

Protected Attributes

XrdClientCounters fCounters

Private Member Functions

bool TryOpen (kXR_unt16 mode, kXR_unt16 options, bool doitparallel)
bool LowOpen (const char *file, kXR_unt16 mode, kXR_unt16 options, char *additionalquery=0)
void TerminateOpenAttempt ()
void WaitForNewAsyncData ()
kXR_int64 ReadVEach (char *buf, kXR_int64 *offsets, int *lens, int &nbuf)
bool IsOpenedForWrite ()
void PrintCounters ()

Private Attributes

XrdClientOpenInfo fOpenPars
XrdSysCondVar * fOpenProgCnd
XrdClientThread * fOpenerTh
bool fOpenWithRefresh
XrdSysCondVar * fReadWaitData
XrdClientStatInfo fStatInfo
long fReadTrimBlockSize
bool fUseCache
XrdOucString fInitialUrl
XrdClientUrlInfo fUrl
XrdClientReadAheadMgr * fReadAheadMgr

Static Private Attributes

XrdSysSemWait fConcOpenSem

Friends

void * FileOpenerThread (void *, XrdClientThread *)

Constructor & Destructor Documentation

XrdClient::XrdClient (  const char *  url,
XrdClientCallback *  XrdCcb = 0,
void *  XrdCcbArg = 0
) 
 

XrdClient::~XrdClient (   )  [virtual]
 


Member Function Documentation

virtual bool XrdClient::CanRedirOnError (   )  [inline, protected, virtual]
 

Implements XrdClientAbs.

bool XrdClient::Close (   ) 
 

bool XrdClient::Copy (  const char *  localpath  ) 
 

bool XrdClient::GetCacheInfo (  int &  size,
long long &  bytessubmitted,
long long &  byteshit,
long long &  misscount,
float &  missrate,
long long &  readreqcnt,
float &  bytesusefulness
) 
 

bool XrdClient::GetCounters (  XrdClientCounters *  cnt  ) 
 

bool XrdClient::IsOpen (   )  [inline]
 

bool XrdClient::IsOpen_inprogress (   ) 
 

bool XrdClient::IsOpen_wait (   )  [virtual]
 

Reimplemented from XrdClientAbs.

bool XrdClient::IsOpenedForWrite (   )  [inline, private]
 

bool XrdClient::LowOpen (  const char *  file,
kXR_unt16  mode,
kXR_unt16  options,
char *  additionalquery = 0
)  [private]
 

bool XrdClient::Open (  kXR_unt16  mode,
kXR_unt16  options,
bool  doitparallel = true
) 
 

bool XrdClient::OpenFileWhenRedirected (  char *  newfhandle,
bool &  wasopen
)  [protected, virtual]
 

Implements XrdClientAbs.

void XrdClient::PrintCounters (   )  [private]
 

UnsolRespProcResult XrdClient::ProcessUnsolicitedMsg (  XrdClientUnsolMsgSender *  sender,
XrdClientMessage *  unsolmsg
)  [virtual]
 

Implements XrdClientAbsUnsolMsgHandler.

int XrdClient::Read (  void *  buf,
long long  offset,
int  len
) 
 

XReqErrorType XrdClient::Read_Async (  long long  offset,
int  len,
bool  updatecounters = true
) 
 

kXR_int64 XrdClient::ReadV (  char *  buf,
long long *  offsets,
int *  lens,
int  nbuf
) 
 

kXR_int64 XrdClient::ReadVEach (  char *  buf,
kXR_int64 *  offsets,
int *  lens,
int &  nbuf
)  [private]
 

void XrdClient::RemoveAllDataFromCache (   )  [inline]
 

void XrdClient::RemoveDataFromCache (  long long  begin_offs,
long long  end_offs,
bool  remove_overlapped = false
)  [inline]
 

void XrdClient::SetBlockReadTrimming (  int  blocksize  ) 
 

void XrdClient::SetCacheParameters (  int  CacheSize,
int  ReadAheadSize,
int  RmPolicy
) 
 

void XrdClient::SetReadAheadStrategy (  int  strategy  ) 
 

bool XrdClient::Stat (  struct XrdClientStatInfo *  stinfo,
bool  force = false
) 
 

bool XrdClient::Sync (   ) 
 

void XrdClient::TerminateOpenAttempt (   )  [private]
 

bool XrdClient::Truncate (  long long  len  ) 
 

bool XrdClient::TryOpen (  kXR_unt16  mode,
kXR_unt16  options,
bool  doitparallel
)  [private]
 

bool XrdClient::UseCache (  bool  u = TRUE  ) 
 

void XrdClient::WaitForNewAsyncData (   )  [private]
 

bool XrdClient::Write (  const void *  buf,
long long  offset,
int  len
) 
 


Friends And Related Function Documentation

void* FileOpenerThread (  void *  arg,
XrdClientThread *  thr
)  [friend]
 


Member Data Documentation

XrdSysSemWait XrdClient::fConcOpenSem [static, private]
 

XrdClientCounters XrdClient::fCounters [protected]
 

XrdOucString XrdClient::fInitialUrl [private]
 

XrdClientThread* XrdClient::fOpenerTh [private]
 

struct XrdClientOpenInfo XrdClient::fOpenPars [private]
 

XrdSysCondVar* XrdClient::fOpenProgCnd [private]
 

bool XrdClient::fOpenWithRefresh [private]
 

XrdClientReadAheadMgr* XrdClient::fReadAheadMgr [private]
 

long XrdClient::fReadTrimBlockSize [private]
 

XrdSysCondVar* XrdClient::fReadWaitData [private]
 

struct XrdClientStatInfo XrdClient::fStatInfo [private]
 

XrdClientUrlInfo XrdClient::fUrl [private]
 

bool XrdClient::fUseCache [private]
 


The documentation for this class was generated from the following files:
Generated on Sun Nov 6 13:41:53 2011 for xrootd by  doxygen 1.3.9.1