CMS 3D CMS Logo

lat::FileNameLock Class Reference

#include <Iguana/Utilities/classlib/iobase/FileNameLock.h>

List of all members.

Public Types

enum  Kind { LockNone, LockSelf, LockOther, LockUnknown }
enum  Success { LockCreated, LockExists, LockFailure }

Public Member Functions

 FileNameLock (const Filename &name)
 FileNameLock (void)
const std::string & host (void) const
void lock (const Filename &name)
pid_t pid (void) const
Time time (void) const
Kind tryLock (const Filename &name)
void unlock (void)
const std::string & user (void) const
bool valid (void) const
 ~FileNameLock (void)

Static Public Member Functions

static bool isLocked (const Filename &name, FileNameLock **lock)

Private Member Functions

 FileNameLock (const FileNameLock &)
Filename format (void) const
Kind locker (const Filename &name)
FileNameLocknow (void)
FileNameLockoperator= (const FileNameLock &)
bool parse (const Filename &from)
void reset (void)
Success tryLock (const Filename &name, bool force)
void unlock (const Filename &name)

Static Private Member Functions

static Filename lockname (const Filename &name)

Private Attributes

Filename m_filename
std::string m_host
pid_t m_pid
Time m_time
std::string m_user

Classes

class  Info


Detailed Description

Definition at line 21 of file FileNameLock.h.


Member Enumeration Documentation

enum lat::FileNameLock::Kind

Enumerator:
LockNone 
LockSelf 
LockOther 
LockUnknown 

Definition at line 24 of file FileNameLock.h.

00024               {
00025         LockNone,
00026         LockSelf,
00027         LockOther,
00028         LockUnknown
00029     };

enum lat::FileNameLock::Success

Enumerator:
LockCreated 
LockExists 
LockFailure 

Definition at line 31 of file FileNameLock.h.

00031                  {
00032         LockCreated,
00033         LockExists,
00034         LockFailure
00035     };


Constructor & Destructor Documentation

lat::FileNameLock::FileNameLock ( void   ) 

lat::FileNameLock::FileNameLock ( const Filename name  ) 

lat::FileNameLock::~FileNameLock ( void   ) 

lat::FileNameLock::FileNameLock ( const FileNameLock  )  [private]


Member Function Documentation

Filename lat::FileNameLock::format ( void   )  const [private]

const std::string& lat::FileNameLock::host ( void   )  const

static bool lat::FileNameLock::isLocked ( const Filename name,
FileNameLock **  lock 
) [static]

void lat::FileNameLock::lock ( const Filename name  ) 

Kind lat::FileNameLock::locker ( const Filename name  )  [private]

static Filename lat::FileNameLock::lockname ( const Filename name  )  [static, private]

FileNameLock& lat::FileNameLock::now ( void   )  [private]

FileNameLock& lat::FileNameLock::operator= ( const FileNameLock  )  [private]

bool lat::FileNameLock::parse ( const Filename from  )  [private]

pid_t lat::FileNameLock::pid ( void   )  const

void lat::FileNameLock::reset ( void   )  [private]

Time lat::FileNameLock::time ( void   )  const

Success lat::FileNameLock::tryLock ( const Filename name,
bool  force 
) [private]

Kind lat::FileNameLock::tryLock ( const Filename name  ) 

void lat::FileNameLock::unlock ( const Filename name  )  [private]

void lat::FileNameLock::unlock ( void   ) 

const std::string& lat::FileNameLock::user ( void   )  const

bool lat::FileNameLock::valid ( void   )  const


Member Data Documentation

Filename lat::FileNameLock::m_filename [private]

Definition at line 80 of file FileNameLock.h.

std::string lat::FileNameLock::m_host [private]

Definition at line 82 of file FileNameLock.h.

pid_t lat::FileNameLock::m_pid [private]

Definition at line 83 of file FileNameLock.h.

Time lat::FileNameLock::m_time [private]

Definition at line 84 of file FileNameLock.h.

std::string lat::FileNameLock::m_user [private]

Definition at line 81 of file FileNameLock.h.


The documentation for this class was generated from the following file:
Generated on Tue Jun 9 18:48:25 2009 for CMSSW by  doxygen 1.5.4