summaryrefslogblamecommitdiffstats
path: root/src/loggerengine.h
blob: 9c3ab9635a4127f8b6860327e2238dc7f9dd581a (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
  














                                                                          






                                                                                                     
                                                                           
                                                                                                     
                                               
       

                                       
 


                                        
 




                                                         




                                                                                                     
                                                                      
                                                                                                     
                                                        
       

                        
 


                                                                              


                         
/*
 # Copyright (c) 2010,2011 - RZ Uni Freiburg
 # Copyright (c) 2010,2011 - OpenSLX Project
 #
 # This program/file is free software distributed under the GPL version 2.
 # See http://openslx.org/COPYING
 #
 # If you have any feedback please consult http://openslx.org/feedback and
 # send your feedback to feedback@openslx.org
 #
 # General information about OpenSLX can be found under http://openslx.org
 #
 #
 # 	   Base for custom logger engines based on QxtLogger libs.
 #
 */
#ifndef LOGGERENGINE_H_
#define LOGGERENGINE_H_

#include <QxtCore>
#include <QTime>
#include <QTextEdit>
//---------------------------------------------------------------------------------------------------
//                       base of a custom logger engine for the framebuffer
//---------------------------------------------------------------------------------------------------
class LoggerEngine_fb: public QxtLoggerEngine {
public:
    LoggerEngine_fb(QTextEdit* parent);
    ~LoggerEngine_fb();

    // parent widget, target of messages
    QTextEdit *_debugConsole;
    bool _initialized;

    // reimplemented virtual functions of QxtLoggerEngine
    void initLoggerEngine();
    void killLoggerEngine();
    void writeFormatted(QxtLogger::LogLevel level,
            const QList<QVariant> & messages);
    void setLogLevelEnabled(QxtLogger::LogLevels level, bool enable = true);
    bool isInitialized() const;

};
//---------------------------------------------------------------------------------------------------
//                            slighty modified QxtBasicSTDLoggerEngine
//---------------------------------------------------------------------------------------------------
class LoggerEngine_std: public QxtBasicSTDLoggerEngine {
public:
    LoggerEngine_std();
    ~LoggerEngine_std();

    // reimplemented virtual functions of QxtBasicSTDLoggerEngineqqq
    void writeToStdOut(const QString& level, const QList<QVariant> &msgs);
    void writeToStdErr(const QString& str_level, const QList<QVariant> &msgs);
};

#endif // LOGGERENGINE_H_