Overte C++ Documentation
FileLogger.h
1 //
2 // FileLogger.h
3 // interface/src
4 //
5 // Created by Stojce Slavkovski on 12/22/13.
6 // Copyright 2013 High Fidelity, Inc.
7 //
8 // Distributed under the Apache License, Version 2.0.
9 // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
10 //
11 
12 #ifndef hifi_FileLogger_h
13 #define hifi_FileLogger_h
14 
15 #include "AbstractLoggerInterface.h"
16 #include "../GenericQueueThread.h"
17 
18 #include <QtCore/QFile>
19 
20 class FileLogger : public AbstractLoggerInterface {
21  Q_OBJECT
22 
23 public:
24  FileLogger(QObject* parent = NULL);
25  virtual ~FileLogger();
26 
27  QString getFilename() const { return _fileName; }
28  virtual void addMessage(const QString&) override;
29  virtual void setSessionID(const QUuid&);
30  virtual QString getLogData(const qint64 maxSize = 0) override;
31  virtual void locateLog() override;
32  virtual void sync() override;
33 
34 signals:
35  void rollingLogFile(QString newFilename);
36 
37 private:
38  const QString _fileName;
39  friend class FilePersistThread;
40 };
41 
42 
43 
44 #endif // hifi_FileLogger_h