comments for logging config

This commit is contained in:
Fischlurch 2008-11-30 06:24:37 +01:00 committed by Christian Thaeter
parent 3f6f1218fc
commit 9e0e79c55c

View file

@ -1,5 +1,5 @@
/*
NOBUGCFG.hpp - NoBug definitions and initialisation for the Proc-Layer
NOBUGCFG.h - NoBug definitions and initialisation for the Proc-Layer
Copyright (C) Lumiera.org
@ -30,16 +30,31 @@
** this header will be included via some of the basic headers like error.hpp,
** which in turn gets included e.g. by proc/common.hpp
**
** @par This header can thus be assumed to be effectively global. It should contain
** This header can thus be assumed to be effectively global. It should contain
** only declarations of global relevance, as any change causes the whole project
** to be rebuilt. Moreover, for C++ this header assures automatic initialisation
** of NoBug by placing a static ctor call.
**
** @par Besides the usual guarded declarations, this header contains one section
** Besides the usual guarded declarations, this header contains one section
** with the corresponding <b>definitions</b>. This section is to be included once
** by some translation unit (currently this is lumiera/nobugcfg.cpp) in order to
** generate the necessary definitions.
**
** generate the necessary definitions.
**
** @par Logging configuration
** By default, logging is configured such as to emit a small number of informative
** messages on the starting terminal and to report fatal errors. But besides the
** usual fine-grained tracing messages, we define a small number of distinct
** thematic <b>Logging Channels</b> providing a consistent high-level view of
** what is going on with regards to a specific aspect of the application
** - \c operate documents a high-level overall view of what the application \em does
** - \c render focuses on the working of the render engine (without logging each frame)
** - \c config shows anything of relevance regarding the configured state of App and session
** - \c memory allows to diagnose a high-level view of memory management
**
** Any log level can be overridden by an environment variable, for example
** \code NOBUG_LOG='operate:INFO' ./lumiera \endcode
**
** @todo logging to files?
*/
@ -52,7 +67,7 @@
#ifdef __cplusplus /* ============= C++ ================ */
#include "lumiera/appconfig.hpp"
#include "lumiera/appstate.hpp"
#include "include/error.hpp" ///< make assertions throw instead of abort()
namespace lumiera {
@ -65,14 +80,14 @@ namespace lumiera {
/* declare flags used throughout the code base... */
/* declare flags used throughout the code base */
NOBUG_DECLARE_FLAG (all);
NOBUG_DECLARE_FLAG (lumiera_all);
NOBUG_DECLARE_FLAG (lumiera);
NOBUG_DECLARE_FLAG (operate);
NOBUG_DECLARE_FLAG (render);
NOBUG_DECLARE_FLAG (config);
NOBUG_DECLARE_FLAG (memory);
NOBUG_DECLARE_FLAG (lumiera); ///< master log, informative console output
NOBUG_DECLARE_FLAG (operate); ///< logging channel reporting what the application does
NOBUG_DECLARE_FLAG (render); ///< logging channel focusing on the render engine's workings
NOBUG_DECLARE_FLAG (config); ///< logging channel covering application and session configuration
NOBUG_DECLARE_FLAG (memory); ///< logging channel covering memory management issues
NOBUG_DECLARE_FLAG (test);