KDirWatch Class Reference
#include <kdirwatch.h>
Inheritance diagram for KDirWatch:

Detailed Description
Watch directories and files for changes.Class for watching directory and file changes.The watched directories or files don't have to exist yet.
When a watched directory is changed, i.e. when files therein are created or deleted, KDirWatch will emit the signal dirty().
When a watched, but previously not existing directory gets created, KDirWatch will emit the signal created().
When a watched directory gets deleted, KDirWatch will emit the signal deleted(). The directory is still watched for new creation.
When a watched file is changed, i.e. attributes changed or written to, KDirWatch will emit the signal dirty().
Scanning of particular directories or files can be stopped temporarily and restarted. The whole class can be stopped and restarted. Directories and files can be added/removed from the list in any state.
The implementation uses the FAM service when available; if FAM is not available, the DNOTIFY functionality is used on LINUX. As a last resort, a regular polling for change of modification times is done; the polling interval is a global config option: DirWatch/PollInterval and DirWatch/NFSPollInterval for NFS mounted directories.
- See also:
- self()
- Author:
- Sven Radej <sven@lisa.exp.univie.ac.at>
Definition at line 63 of file kdirwatch.h.
Public Types | |
enum | Method { FAM, DNotify, Stat, INotify } |
Signals | |
void | dirty (const QString &path) |
void | created (const QString &path) |
void | deleted (const QString &path) |
Public Member Functions | |
KDirWatch (QObject *parent=0, const char *name=0) | |
~KDirWatch () | |
void | addDir (const QString &path, bool watchFiles=false, bool recursive=false) |
void | addFile (const QString &file) |
QDateTime | ctime (const QString &path) |
void | removeDir (const QString &path) |
void | removeFile (const QString &file) |
bool | stopDirScan (const QString &path) |
bool | restartDirScan (const QString &path) |
void | startScan (bool notify=false, bool skippedToo=false) |
void | stopScan () |
bool | isStopped () |
bool | contains (const QString &path) const |
void | setCreated (const QString &path) |
void | setDirty (const QString &path) |
void | setDeleted (const QString &path) |
Method | internalMethod () |
Static Public Member Functions | |
static void | statistics () |
static KDirWatch * | self () |
static bool | exists () |
Constructor & Destructor Documentation
|
Constructor. Scanning begins immediately when a dir/file watch is added.
Definition at line 1572 of file kdirwatch.cpp. |
|
Destructor. Stops scanning and cleans up. Definition at line 1590 of file kdirwatch.cpp. |
Member Function Documentation
|
Adds a directory to be watched.
The directory does not have to exist. When
Definition at line 1603 of file kdirwatch.cpp. |
|
Adds a file to be watched.
Definition at line 1612 of file kdirwatch.cpp. |
|
Check if a directory is being watched by this KDirWatch instance.
Definition at line 1672 of file kdirwatch.cpp. |
|
Emitted when a file or directory is created.
|
|
Returns the time the directory/file was last changed.
Definition at line 1617 of file kdirwatch.cpp. |
|
Emitted when a file or directory is deleted. The object is still watched for new creation.
|
|
Emitted when a watched object is changed. For a directory this signal is emitted when files therein are created or deleted. For a file this signal is emitted when its size or attributes change. When you watch a directory, changes in the size or attributes of contained files may or may not trigger this signal to be emitted depending on which backend is used by KDirWatch. The new ctime is set before the signal is emitted.
|
|
Returns true if there is an instance of KDirWatch.
Definition at line 1567 of file kdirwatch.cpp. |
|
Returns the preferred internal method to watch for changes.
Definition at line 1713 of file kdirwatch.cpp. |
|
Is scanning stopped? After creation of a KDirWatch instance, this is false.
Definition at line 190 of file kdirwatch.h. |
|
Removes a directory from the list of scanned directories. If specified path is not in the list this does nothing.
Definition at line 1629 of file kdirwatch.cpp. |
|
Removes a file from the list of watched files. If specified path is not in the list this does nothing.
Definition at line 1634 of file kdirwatch.cpp. |
|
Restarts scanning for specified path. Resets ctime. It doesn't notify the change (by emitted a signal), since the ctime value is reset. Call it when you are finished with big operations on that path, and when you have refreshed that path.
Definition at line 1648 of file kdirwatch.cpp. |
|
The KDirWatch instance usually globally used in an application. It is automatically deleted when the application exits. However, you can create an arbitrary number of KDirWatch instances aside from this one - for those you have to take care of memory management. This function returns an instance of KDirWatch. If there is none, it will be created.
Definition at line 1558 of file kdirwatch.cpp. |
|
Emits created().
Definition at line 1695 of file kdirwatch.cpp. |
|
Emits deleted().
Definition at line 1707 of file kdirwatch.cpp. |
|
Emits dirty().
Definition at line 1701 of file kdirwatch.cpp. |
|
Starts scanning of all dirs in list.
Definition at line 1665 of file kdirwatch.cpp. |
|
Dump statistic information about all KDirWatch instances. This checks for consistency, too. Definition at line 1685 of file kdirwatch.cpp. |
|
Stops scanning the specified path.
The
Definition at line 1639 of file kdirwatch.cpp. |
|
Stops scanning of all directories in internal list. The timer is stopped, but the list is not cleared. Definition at line 1659 of file kdirwatch.cpp. |
The documentation for this class was generated from the following files: