KDECore
klockfile.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef _KLOCKFILE_H_
00021 #define _KLOCKFILE_H_
00022
00023 #include <qstring.h>
00024 #include <qdatetime.h>
00025
00026 #include <ksharedptr.h>
00033 class KDECORE_EXPORT KLockFile : public KShared
00034 {
00035 public:
00036 typedef KSharedPtr<KLockFile> Ptr;
00037
00038 KLockFile(const QString &file);
00039
00043 ~KLockFile();
00044
00048 enum LockResult {
00052 LockOK = 0,
00053
00057 LockFail,
00058
00062 LockError,
00063
00067 LockStale
00068 };
00069
00070 enum LockOptions {
00074 LockNoBlock = 1,
00075
00080 LockForce = 2
00081 };
00082
00088 LockResult lock(int options=0);
00089
00093 bool isLocked() const;
00094
00098 void unlock();
00099
00104 int staleTime() const;
00105
00109 void setStaleTime(int _staleTime);
00110
00116 bool getLockInfo(int &pid, QString &hostname, QString &appname);
00117
00118 private:
00119 class KLockFilePrivate;
00120 KLockFilePrivate *d;
00121 };
00122
00123 #endif