XRootD
XrdPosixObjGuard Class Reference

#include <XrdPosixObjGuard.hh>

+ Collaboration diagram for XrdPosixObjGuard:

Public Member Functions

 XrdPosixObjGuard (XrdPosixFile *fP)
 
 ~XrdPosixObjGuard ()
 
void Init (XrdPosixFile *fP)
 
void Release ()
 

Detailed Description

Definition at line 35 of file XrdPosixObjGuard.hh.

Constructor & Destructor Documentation

◆ XrdPosixObjGuard()

XrdPosixObjGuard::XrdPosixObjGuard ( XrdPosixFile fP)
inline

Definition at line 56 of file XrdPosixObjGuard.hh.

56 : guardP(0) {Init(fP);}
void Init(XrdPosixFile *fP)

References Init().

+ Here is the call graph for this function:

◆ ~XrdPosixObjGuard()

XrdPosixObjGuard::~XrdPosixObjGuard ( )
inline

Definition at line 57 of file XrdPosixObjGuard.hh.

57 {Release();}

References Release().

+ Here is the call graph for this function:

Member Function Documentation

◆ Init()

void XrdPosixObjGuard::Init ( XrdPosixFile fP)
inline

Definition at line 39 of file XrdPosixObjGuard.hh.

40  {if (guardP)
41  {guardP->unRef();
42  guardP->updUnLock();
43  }
44  guardP = fP;
45  guardP->Ref();
46  guardP->updLock();
47  }
void updUnLock()

References XrdPosixObject::Ref(), XrdPosixObject::unRef(), XrdPosixFile::updLock(), and XrdPosixFile::updUnLock().

Referenced by XrdPosixObjGuard().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ Release()

void XrdPosixObjGuard::Release ( )
inline

Definition at line 49 of file XrdPosixObjGuard.hh.

49  {if (guardP)
50  {guardP->unRef();
51  guardP->updUnLock();
52  guardP = 0;
53  }
54  }

References XrdPosixObject::unRef(), and XrdPosixFile::updUnLock().

Referenced by ~XrdPosixObjGuard().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

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