mirror of
				https://github.com/qgis/QGIS.git
				synced 2025-10-26 00:04:03 -04:00 
			
		
		
		
	- remove method names from QgsDebugMsg calls as they are already included in the output - replace filename with file name in strings and comments instead of fileName (same for layerName) - fix debugging output in interpolation plugin (QgsDebugMsg migration ate the last argument where std::flush was used) - fix some common typos git-svn-id: http://svn.osgeo.org/qgis/trunk@9150 c8812cc2-4d05-0410-92ff-de0c093fc19c
		
			
				
	
	
		
			55 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			55 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| 
 | |
| /**QgsLogger is a class to print debug/warning/error messages to the console. The advantage of this class over std::cout, std::cerr & co. is that the output can be controlled with environment variables:
 | |
| 
 | |
| QGIS_DEBUG is an int describing what debug messages are written to the console. If the debug level of a message is <= QGIS_DEBUG, the message is written to the console. It the variable QGIS_DEBUG is not defined, it defaults to 1 for debug mode and to 0 for release mode
 | |
| 
 | |
| QGIS_DEBUG_FILE may contain a file name. Only the messages from this file are printed (provided they have the right debuglevel). If QGIS_DEBUG_FILE is not set, messages from all files are printed
 | |
| */
 | |
| 
 | |
| class QgsLogger
 | |
| {
 | |
| %TypeHeaderCode
 | |
| #include <qgslogger.h>
 | |
| %End
 | |
| 
 | |
|  public:
 | |
| 
 | |
|   /**Goes to qDebug. 
 | |
|   @param msg the message to be printed
 | |
|   @param debuglevel 
 | |
|   @param file file name where the message comes from
 | |
|   @param function function where the message comes from
 | |
|   @param line place in file where the message comes from*/
 | |
|   static void debug(const QString& msg, int debuglevel = 1, const char* file = NULL, const char* function = NULL, int line = -1);
 | |
| 
 | |
|   /**Similar to the previous method, but prints a variable int-value pair*/
 | |
|   static void debug(const QString& var, int val, int debuglevel = 1, const char* file = NULL, const char* function = NULL, int line = -1);
 | |
| 
 | |
|   /**Similar to the previous method, but prints a variable double-value pair*/
 | |
|   // PyQGIS: commented out - has the same python signature as method above
 | |
|   //static void debug(const QString& var, double val, int debuglevel = 1, const char* file = NULL, const char* function = NULL, int line = -1);
 | |
| 
 | |
|   /**Prints out a variable/value pair for types with overloaded operator<<*/
 | |
|   // TODO: is it possible to make this working?
 | |
|   //template <typename T> static void debug(const QString& var, T val, const char* file = 0, const char* function = 0,
 | |
|   //                            					  int line = -1, int debuglevel = 1);
 | |
| 
 | |
|   /**Goes to qWarning*/
 | |
|   static void warning(const QString& msg); 
 | |
|   
 | |
|   /**Goes to qCritical*/
 | |
|   static void critical(const QString& msg);
 | |
| 
 | |
|   /**Goes to qFatal*/
 | |
|   static void fatal(const QString& msg);
 | |
| 
 | |
|  private:
 | |
|   /**Reads the environment variable QGIS_DEBUG and converts it to int. If QGIS_DEBUG is not set,\
 | |
|    the function returns 1 if QGISDEBUG is defined and 0 if not*/
 | |
|   static int debugLevel();
 | |
| 
 | |
|   /**Reads the environment variable QGIS_DEBUG_FILE. Returns NULL if the variable is not set*/
 | |
|   static const char* debugFile();
 | |
| };
 | |
| 
 |