Go to the documentation of this file. 1 #ifndef __XRDPOSIXFILE_HH__
2 #define __XRDPOSIXFILE_HH__
36 #include <sys/param.h>
37 #include <sys/resource.h>
115 int Read (
char *Buff,
long long Offs,
int Len);
149 {*fileP =
this;
return true;}
151 int Write(
char *Buff,
long long Offs,
int Len);
void UpdtSize(size_t newsz)
Definition: XrdPosixFile.hh:140
int cOpt
Definition: XrdPosixFile.hh:190
bool Who(XrdPosixFile **fileP)
Definition: XrdPosixFile.hh:148
XrdSysRecMutex updMutex
Definition: XrdPosixObject.hh:94
Handle an async response.
Definition: XrdClXRootDResponses.hh:975
long long currOffset
Definition: XrdPosixFile.hh:182
#define AtomicBeg(Mtx)
Definition: XrdSysAtomics.hh:63
XrdCl::File clFile
Definition: XrdPosixFile.hh:66
Definition: XrdOucCache.hh:103
static XrdSysMutex ddMutex
Definition: XrdPosixFile.hh:164
An abstract class to define a callback for Open() call.
Definition: XrdPosixCallBack.hh:52
static void DelayedDestroy(XrdPosixFile *fp)
void Sync(XrdOucCacheIOCB &iocb)
Definition: XrdSysPthread.hh:166
long long addOffset(long long offs, int updtSz=0)
Definition: XrdPosixFile.hh:68
time_t myMtime
Definition: XrdPosixFile.hh:157
#define AtomicGet(x)
Definition: XrdSysAtomics.hh:71
void Read(XrdOucCacheIOCB &iocb, char *buff, long long offs, int rlen)
static void * DelayedDestroy(void *)
static XrdPosixFile * ddList
Definition: XrdPosixFile.hh:165
long long Offset()
Definition: XrdPosixFile.hh:109
Definition: XrdPosixPrepIO.hh:39
dev_t myRdev
Definition: XrdPosixFile.hh:158
size_t mySize
Definition: XrdPosixFile.hh:156
void HandleResponse(XrdCl::XRootDStatus *status, XrdCl::AnyObject *response)
#define AtomicRet(mtx, x)
Definition: XrdSysAtomics.hh:76
static const int isUpdt
Definition: XrdPosixFile.hh:174
A file.
Definition: XrdClFile.hh:45
int ReadV(const XrdOucIOVec *readV, int n)
Definition: XrdOucIOVec.hh:41
char * fOpen
Definition: XrdPosixFile.hh:188
XrdPosixFile * nextFile
Definition: XrdPosixFile.hh:184
long long setOffset(long long offs)
Definition: XrdPosixFile.hh:125
XrdPosixFile(bool &aOK, const char *path, XrdPosixCallBack *cbP=0, int Opts=0)
int numTries
Definition: XrdPosixFile.hh:190
int Trunc(long long Offset)
Request status.
Definition: XrdClXRootDResponses.hh:215
long long FSize()
Definition: XrdPosixFile.hh:92
bool Stat(XrdCl::XRootDStatus &Status, bool force=false)
const char * Origin()
Definition: XrdPosixFile.hh:111
XrdPosixCallBack * theCB
Definition: XrdPosixFile.hh:183
void ReadV(XrdOucCacheIOCB &iocb, const XrdOucIOVec *readV, int n)
Definition: XrdSysPthread.hh:404
virtual bool Who(XrdPosixDir **dirP)
Definition: XrdPosixObject.hh:86
Definition: XrdOucCache.hh:80
void Write(XrdOucCacheIOCB &iocb, char *buff, long long offs, int wlen)
static bool ddPosted
Definition: XrdPosixFile.hh:169
static XrdPosixFile * ddLost
Definition: XrdPosixFile.hh:166
char * fPath
Definition: XrdPosixFile.hh:187
static short sfSLN
Definition: XrdPosixFile.hh:168
Definition: XrdPosixObject.hh:42
static const int isStrm
Definition: XrdPosixFile.hh:173
bool Finalize(XrdCl::XRootDStatus *Status)
void unRef()
Definition: XrdPosixObject.hh:67
int Fstat(struct stat &buf)
#define AtomicEnd(Mtx)
Definition: XrdSysAtomics.hh:64
void UnLock()
Definition: XrdSysPthread.hh:222
mode_t myMode
Definition: XrdPosixFile.hh:160
void updLock()
Definition: XrdPosixFile.hh:105
ino_t myInode
Definition: XrdPosixFile.hh:159
void updUnLock()
Definition: XrdPosixFile.hh:107
static XrdSysSemaphore ddSem
Definition: XrdPosixFile.hh:163
void Lock()
Definition: XrdSysPthread.hh:220
char isStream
Definition: XrdPosixFile.hh:191
Definition: XrdOucCache.hh:51
#define stat(a, b)
Definition: XrdPosix.hh:96
XrdOucCacheIO * XCio
Definition: XrdPosixFile.hh:64
XrdPosixPrepIO * PrepIO
Definition: XrdPosixFile.hh:65
static const int realFD
Definition: XrdPosixFile.hh:172
int Read(char *Buff, long long Offs, int Len)
bool Close(XrdCl::XRootDStatus &Status)
static int ddNum
Definition: XrdPosixFile.hh:170
Definition: XrdClAnyObject.hh:33
Definition: XrdPosixFile.hh:61
int Write(char *Buff, long long Offs, int Len)
const char * Path()
Definition: XrdPosixFile.hh:113
char * fLoc
Definition: XrdPosixFile.hh:189
static char * sfSFX
Definition: XrdPosixFile.hh:167
bool Detach(XrdOucCacheIOCD &cdP)
Definition: XrdPosixFile.hh:86
void DetachDone()
Indicate that the CacheIO object has been detached.
Definition: XrdPosixFile.hh:88