#include <ace/Synch.h>
class ACE_File_Lock {
public:ACE_File_Lock (ACE_HANDLE handle = ACE_INVALID_HANDLE);ACE_File_Lock (LPCTSTR filename, int flags, mode_t mode = 0);int open (LPCTSTR filename, int flags, mode_t mode = 0);~ACE_File_Lock (void);int remove (void);int acquire (short whence = 0, off_t start = 0, off_t len = 1);int tryacquire (short whence = 0, off_t start = 0, off_t len = 1);int release (short whence = 0, off_t start = 0, off_t len = 1);int acquire_write ( short whence = 0, off_t start = 0, off_t len = 1 );int tryacquire_write ( short whence = 0, off_t start = 0, off_t len = 1 );int acquire_read ( short whence = 0, off_t start = 0, off_t len = 1 );int tryacquire_read ( short whence = 0, off_t start = 0, off_t len = 1 );ACE_HANDLE get_handle (void);void set_handle (ACE_HANDLE);void dump (void) const;ACE_ALLOC_HOOK_DECLARE;protected:ACE_OS::ace_flock_t lock_;private:void operator= (const ACE_File_Lock &);ACE_File_Lock (const ACE_File_Lock &);};
void operator= (const ACE_File_Lock &);
ACE_File_Lock (const ACE_File_Lock &);