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
00021
00022
00023
00024
00025
00026
00027 #ifndef KEPHRENFTPWATCHER_H
00028 #define KEPHRENFTPWATCHER_H
00029
00030 #include <QtCore>
00031 #include <QGpCoreTools.h>
00032
00033 class KephrenFtpWatcher : public QObject
00034 {
00035 Q_OBJECT
00036 public:
00037 KephrenFtpWatcher(QObject * parent=0);
00038 ~KephrenFtpWatcher();
00039
00040 void setPath(const QString& path);
00041 void setInitialWatchDelay(int secs) {_watchDelay.setInterval(secs*1000);}
00042 private slots:
00043 void checkFiles();
00044 signals:
00045 void fileCreated(const QString& path);
00046 private:
00047 void adjustWatchDelay(const QString& lastFilePath);
00048 void setNextDir();
00049 bool checkFiles(const QDir& d, QSet<QString>& files);
00050 void scan(const QDir& d, QSet<QString>& files);
00051
00052 QTimer _watchDelay;
00053 QDir _baseDir;
00054 QDir _currentDir;
00055 QSet<QString> _currentFiles;
00056 QDir _nextDir;
00057 QSet<QString> _nextFiles;
00058 QDateTime _lastFileTime;
00059 Stationarity _intervalAverage;
00060 };
00061
00062 #endif // KEPHRENFTPWATCHER_H