# HG changeset patch # User hegyi # Date 1094644686 0 # Node ID 283a7fe3a00e1ec996ce0aa7a090203fece3d4e6 # Parent a9b6a7f7389532bd239db805211452393a05ec87 This is needed by path.h diff -r a9b6a7f73895 -r 283a7fe3a00e src/hugo/debug.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hugo/debug.h Wed Sep 08 11:58:06 2004 +0000 @@ -0,0 +1,56 @@ +// -*- C++ -*- // + +#ifndef HUGO_DEBUG_H +#define HUGO_DEBUG_H + +//! \file +//! \brief Basic definitions for debug control. + +namespace hugo { + + //! Debug mode for testing/debugging + + //! Use this debug mode if you want exhaustive range and consistency checks. + //! It also produces verbose debug messages. + struct DebugOn { + //! Example: check whether the edges added to a path are adjacent + static const bool consistensy_check = true; + + static const bool range_check = true; + + //! Examples: initialize maps with some value; + //! after deleting an item from UnionFindEnum set its value in the + //! corresponding map to NULL... + static const bool ensure_safe_state = true; + + static const int verbose = 5; + }; + + //! Debug mode for turning off debug aids. + + //! This debud mode switches off all range and consistency checks, + //! as well as the debug messages. + //! + struct DebugOff { + static const bool consistensy_check = false; + static const bool range_check = false; + static const bool ensure_safe_state = false; + static const int verbose = 0; + }; + +#ifdef DEBUG + //! The default debug mode. + + //! The default debug mode. + //! + typedef DebugOn DefaultDebugMode; +#else + //! The default debug mode. + + //! The default debug mode. + //! + typedef DebugOff DefaultDebugMode; +#endif + +} +#endif // HUGO_DEBUG_H