12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- """!
- @package debug
- @brief Debugging
- Classes:
- - DebugMsg
- @code
- from debug import Debug as Debug
- Debug.msg (3, 'debug message')
- @endcode
-
- COPYRIGHT: (C) 2007-2009 by the GRASS Development Team
- This program is free software under the GNU General Public License
- (>=v2). Read the file COPYING that comes with GRASS for details.
- @author Martin Landa <landa.martin gmail.com>
- """
- import os
- import sys
- import globalvar
- class DebugMsg:
- """!
- wxGUI debugging
- @code
- export GRASS_WX_DEBUG=[0-5]
- @endcode
- """
- def __init__(self):
- # default level
- self.debuglevel = 0
- # update level
- self._update_level()
- def _update_level(self):
- debug = os.getenv("GRASS_WX_DEBUG")
- if debug is not None:
- try:
- # only GUI debug messages [GUI:level]
- level = int (debug[-1])
- except:
- level = self.debuglevel
-
- if self.debuglevel != level:
- self.debuglevel = level
-
- def msg (self, level, message):
- self._update_level()
- if self.debuglevel > 0 and level > 0 and level <= self.debuglevel:
- print >> sys.stderr, "GUI D%d/%d: %s" % (level, self.debuglevel, message)
-
- def get_level(self):
- """!Return current GUI debug level"""
- return self.debuglevel
-
- # Debug instance
- Debug = DebugMsg()
- # testing
- if __name__ == "__main__":
- import gcmd
- gcmd.RunCommand('g.gisenv',
- set = 'DEBUG=3')
-
- for level in range (4):
- Debug.msg (level, "message level=%d" % level)
-
|