lock.h00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef KABC_LOCK_H
00022 #define KABC_LOCK_H
00023
00024 #include <qstring.h>
00025 #include <qobject.h>
00026
00027 #include <kdelibs_export.h>
00028
00029 namespace KABC {
00030
00035 class KABC_EXPORT Lock : public QObject
00036 {
00037 Q_OBJECT
00038 public:
00045 Lock( const QString &identifier );
00046
00050 ~Lock();
00051
00055 virtual bool lock();
00056
00060 virtual bool unlock();
00061
00062 virtual QString error() const;
00063
00064 QString lockFileName() const;
00065
00066 static bool readLockFile( const QString &filename, int &pid, QString &app );
00067 static bool writeLockFile( const QString &filename );
00068
00069 static QString locksDir();
00070
00071 signals:
00072 void locked();
00073 void unlocked();
00074
00075 private:
00076 QString mIdentifier;
00077
00078 QString mLockUniqueName;
00079
00080 QString mError;
00081
00082 class Private;
00083 Private *d;
00084 };
00085
00086 }
00087
00088 #endif
|