xrootd
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
XrdPosixFileRH Class Reference

#include <XrdPosixFileRH.hh>

Inheritance diagram for XrdPosixFileRH:
Inheritance graph
[legend]
Collaboration diagram for XrdPosixFileRH:
Collaboration graph
[legend]

Public Types

enum  ioType {
  nonIO = 0 , isRead = 1 , isReadV = 2 , isWrite = 3 ,
  isReadP = 4 , isWriteP = 5
}
 

Public Member Functions

void DoIt ()
 
void HandleResponse (XrdCl::XRootDStatus *status, XrdCl::AnyObject *response)
 
void Recycle ()
 
void setCSVec (std::vector< uint32_t > *csv, int *csf, bool fcs=false)
 
void Sched (int result)
 
- Public Member Functions inherited from XrdJob
 XrdJob (const char *desc="")
 
virtual ~XrdJob ()
 
- Public Member Functions inherited from XrdCl::ResponseHandler
virtual ~ResponseHandler ()
 
virtual void HandleResponseWithHosts (XRootDStatus *status, AnyObject *response, HostList *hostList)
 

Static Public Member Functions

static XrdPosixFileRHAlloc (XrdOucCacheIOCB *cbp, XrdPosixFile *fp, long long offs, int xResult, ioType typeIO)
 
static void SetMax (int mval)
 
- Static Public Member Functions inherited from XrdCl::ResponseHandler
static ResponseHandlerWrap (std::function< void(XRootDStatus &, AnyObject &)> func)
 
static ResponseHandlerWrap (std::function< void(XRootDStatus *, AnyObject *)> func)
 

Private Member Functions

 XrdPosixFileRH ()
 
virtual ~XrdPosixFileRH ()
 

Private Attributes

union { 
 
   XrdOucCacheIOCB *   theCB 
 
   XrdPosixFileRH *   next 
 
};  
 
XrdPosixFiletheFile
 
std::vector< uint32_t > * csVec
 
int * csfix
 
long long offset
 
int result
 
ioType typeIO
 
bool csFrc
 

Static Private Attributes

static XrdSysMutex myMutex
 
static XrdPosixFileRHfreeRH
 
static int numFree
 
static int maxFree
 

Additional Inherited Members

- Public Attributes inherited from XrdJob
XrdJobNextJob
 
const char * Comment
 

Member Enumeration Documentation

◆ ioType

Enumerator
nonIO 
isRead 
isReadV 
isWrite 
isReadP 
isWriteP 

Constructor & Destructor Documentation

◆ XrdPosixFileRH()

XrdPosixFileRH::XrdPosixFileRH ( )
inlineprivate

◆ ~XrdPosixFileRH()

virtual XrdPosixFileRH::~XrdPosixFileRH ( )
inlineprivatevirtual

Member Function Documentation

◆ Alloc()

static XrdPosixFileRH * XrdPosixFileRH::Alloc ( XrdOucCacheIOCB cbp,
XrdPosixFile fp,
long long  offs,
int  xResult,
ioType  typeIO 
)
static

◆ DoIt()

void XrdPosixFileRH::DoIt ( )
inlinevirtual

Implements XrdJob.

References XrdOucCacheIOCB::Done(), Recycle(), result, and theCB.

◆ HandleResponse()

void XrdPosixFileRH::HandleResponse ( XrdCl::XRootDStatus status,
XrdCl::AnyObject response 
)
virtual

Called when a response to associated request arrives or an error occurs

Parameters
statusstatus of the request
responsean object associated with the response (request dependent)

Reimplemented from XrdCl::ResponseHandler.

◆ Recycle()

void XrdPosixFileRH::Recycle ( )

Referenced by DoIt().

◆ Sched()

void XrdPosixFileRH::Sched ( int  result)

◆ setCSVec()

void XrdPosixFileRH::setCSVec ( std::vector< uint32_t > *  csv,
int *  csf,
bool  fcs = false 
)
inline

References csfix, csFrc, and csVec.

◆ SetMax()

static void XrdPosixFileRH::SetMax ( int  mval)
inlinestatic

References maxFree.

Member Data Documentation

◆ [union]

union { ... } XrdPosixFileRH

◆ csfix

int* XrdPosixFileRH::csfix
private

Referenced by setCSVec().

◆ csFrc

bool XrdPosixFileRH::csFrc
private

Referenced by setCSVec().

◆ csVec

std::vector<uint32_t>* XrdPosixFileRH::csVec
private

Referenced by setCSVec().

◆ freeRH

XrdPosixFileRH* XrdPosixFileRH::freeRH
staticprivate

◆ maxFree

int XrdPosixFileRH::maxFree
staticprivate

Referenced by SetMax().

◆ myMutex

XrdSysMutex XrdPosixFileRH::myMutex
staticprivate

◆ next

XrdPosixFileRH* XrdPosixFileRH::next

◆ numFree

int XrdPosixFileRH::numFree
staticprivate

◆ offset

long long XrdPosixFileRH::offset
private

◆ result

int XrdPosixFileRH::result
private

Referenced by DoIt().

◆ theCB

XrdOucCacheIOCB* XrdPosixFileRH::theCB

Referenced by DoIt().

◆ theFile

XrdPosixFile* XrdPosixFileRH::theFile
private

◆ typeIO

ioType XrdPosixFileRH::typeIO
private

The documentation for this class was generated from the following file: