• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdeedu API Reference
  • KDE Home
  • Contact Us
 

marble

  • sources
  • kde-4.14
  • kdeedu
  • marble
  • src
  • lib
  • marble
MarbleDebug.cpp
Go to the documentation of this file.
1 //
2 // This file is part of the Marble Virtual Globe.
3 //
4 // This program is free software licensed under the GNU LGPL. You can
5 // find a copy of this license in LICENSE.txt in the top directory of
6 // the source code.
7 //
8 // Copyright 2009 Patrick Spendrin <ps_ml@gmx.de>
9 //
10 
11 #include "MarbleDebug.h"
12 
13 namespace Marble
14 {
15 bool MarbleDebug::m_enabled = false;
16 
17 class NullDevice : public QIODevice
18 {
19 public:
20  NullDevice()
21  {
22  open( QIODevice::WriteOnly );
23  }
24 
25  qint64 readData( char * /*data*/, qint64 /*maxSize*/ )
26  {
27  return -1;
28  }
29 
30  qint64 writeData( const char * /*data*/, qint64 maxSize )
31  {
32  return maxSize;
33  }
34 };
35 
36 QDebug mDebug()
37 {
38  if ( MarbleDebug::isEnabled() ) {
39  return QDebug( QtDebugMsg );
40  }
41  else {
42  static QIODevice *device = new NullDevice;
43  return QDebug( device );
44  }
45 }
46 
47 bool MarbleDebug::isEnabled()
48 {
49  return MarbleDebug::m_enabled;
50 }
51 
52 void MarbleDebug::setEnabled(bool enabled)
53 {
54  MarbleDebug::m_enabled = enabled;
55 }
56 
57 } // namespace Marble
QIODevice
QIODevice::open
virtual bool open(QFlags< QIODevice::OpenModeFlag > mode)
MarbleDebug.h
Marble::MarbleDebug::isEnabled
static bool isEnabled()
isEnabled returns whether debug information output is generated
Definition: MarbleDebug.cpp:47
QDebug
Marble::MarbleDebug::setEnabled
static void setEnabled(bool enabled)
setEnabled Toggle debug information output generation
Definition: MarbleDebug.cpp:52
Marble::mDebug
QDebug mDebug()
a function to replace qDebug() in Marble library code
Definition: MarbleDebug.cpp:36
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Jun 22 2020 13:13:40 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

marble

Skip menu "marble"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdeedu API Reference

Skip menu "kdeedu API Reference"
  • Analitza
  •     lib
  • kalgebra
  • kalzium
  •   libscience
  • kanagram
  • kig
  •   lib
  • klettres
  • marble
  • parley
  • rocs
  •   App
  •   RocsCore
  •   VisualEditor
  •   stepcore

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal