• Main Page
  • Classes
  • Files
  • File List
  • File Members

lib/bfLogging/src/filelogger.h

Go to the documentation of this file.
00001 
00006 #ifndef FILELOGGER_H
00007 #define FILELOGGER_H
00008 
00009 #include <QtGlobal>
00010 #include <QSettings>
00011 #include <QFile>
00012 #include <QMutex>
00013 #include <QBasicTimer>
00014 #include "logger.h"
00015 
00054 class FileLogger : public Logger {
00055     Q_OBJECT
00056     Q_DISABLE_COPY(FileLogger)
00057 public:
00058 
00068     FileLogger(QSettings* settings, const int refreshInterval=10000, QObject* parent = 0);
00069 
00073     virtual ~FileLogger();
00074 
00076     virtual void write(const LogMessage* logMessage);
00077 
00078 protected:
00079 
00086     void timerEvent(QTimerEvent* event);
00087 
00088 private:
00089 
00091     QString fileName;
00092 
00094     long maxSize;
00095 
00097     int maxBackups;
00098 
00100     bool disabled;
00101 
00103     QSettings* settings;
00104 
00106     QFile* file;
00107 
00109     QBasicTimer refreshTimer;
00110 
00112     QBasicTimer flushTimer;
00113 
00115     void open();
00116 
00118     void close();
00119 
00121     void rotate();
00122 
00127     void refreshSettings();
00128 
00129 };
00130 
00131 #endif // FILELOGGER_H

Generated on Mon Dec 26 2011 12:09:22 for QtWebApp by  doxygen 1.7.1