diff options
Diffstat (limited to 'src/stable/file.h')
-rw-r--r-- | src/stable/file.h | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/stable/file.h b/src/stable/file.h index e3497d3..6e05dc7 100644 --- a/src/stable/file.h +++ b/src/stable/file.h | |||
@@ -56,6 +56,25 @@ namespace Bu | |||
56 | virtual bool isBlocking(); | 56 | virtual bool isBlocking(); |
57 | virtual void setBlocking( bool bBlocking=true ); | 57 | virtual void setBlocking( bool bBlocking=true ); |
58 | 58 | ||
59 | /** | ||
60 | * Tells you if advisory locks are supported. | ||
61 | */ | ||
62 | bool canLock() const; | ||
63 | |||
64 | /** | ||
65 | * Acquires an advisory lock on the file. On posix/linux this is done | ||
66 | * via flock. | ||
67 | *@param bExclusive Set to true to acquire an exclusive lock (i.e. a | ||
68 | * write lock). If this is false then a shared lock (i.e. read lock) is | ||
69 | * acquired. A file cannot have both an exclusive and shared lock. | ||
70 | */ | ||
71 | void lock( bool bExclusive=true ); | ||
72 | |||
73 | /** | ||
74 | * Release the held advisory lock. | ||
75 | */ | ||
76 | void unlock(); | ||
77 | |||
59 | enum { | 78 | enum { |
60 | // Flags | 79 | // Flags |
61 | Read = 0x01, ///< Open file for reading | 80 | Read = 0x01, ///< Open file for reading |