]> Creatis software - bbtk.git/blobdiff - kernel/src/bbtkMessageManager.h
*** empty log message ***
[bbtk.git] / kernel / src / bbtkMessageManager.h
index 898bc7fb1cf4f8ff89954ec87d6132324b8c6f77..3832b8537bbf15ace5d8255f046bdcdb20643476 100644 (file)
@@ -1,3 +1,34 @@
+/*=========================================================================                                                                               
+  Program:   bbtk
+  Module:    $RCSfile: bbtkMessageManager.h,v $
+  Language:  C++
+  Date:      $Date: 2009/05/28 08:12:06 $
+  Version:   $Revision: 1.9 $
+=========================================================================*/
+
+/* ---------------------------------------------------------------------
+
+* Copyright (c) CREATIS-LRMN (Centre de Recherche en Imagerie Medicale)
+* Authors : Eduardo Davila, Laurent Guigues, Jean-Pierre Roux
+*
+*  This software is governed by the CeCILL-B license under French law and 
+*  abiding by the rules of distribution of free software. You can  use, 
+*  modify and/ or redistribute the software under the terms of the CeCILL-B 
+*  license as circulated by CEA, CNRS and INRIA at the following URL 
+*  http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html 
+*  or in the file LICENSE.txt.
+*
+*  As a counterpart to the access to the source code and  rights to copy,
+*  modify and redistribute granted by the license, users are provided only
+*  with a limited warranty  and the software's author,  the holder of the
+*  economic rights,  and the successive licensors  have only  limited
+*  liability. 
+*
+*  The fact that you are presently reading this means that you have had
+*  knowledge of the CeCILL-B license and that you accept its terms.
+* ------------------------------------------------------------------------ */                                                                         
+
+
 
 /*! \file
  
     }                                                  \
   else if (value<= __bbtkOnMessageLevelVariable) 
 
+#define BBTK_PREPEND_MESSAGE_WITH_CODE
 #ifdef BBTK_PREPEND_MESSAGE_WITH_CODE
-#define bbtkMessageCode                                \
-  key[0] << key[1] << key[2] << value << " "
+#define bbtkMessageCode(key,value)                     \
+  bbtk::MessageManager::FormatKey(key,value) 
 #else 
-#define bbtkMessageCode ""
+#define bbtkMessageCode(key,value) ""
 #endif 
 
 #ifdef BBTK_PREPEND_MESSAGE_WITH_TAB
 #define bbtkMessageTab ""
 #endif
 
-#define BBTK_PREPEND_MESSAGE_WITH_SPACE
+//#define BBTK_PREPEND_MESSAGE_WITH_SPACE
 #ifdef BBTK_PREPEND_MESSAGE_WITH_SPACE
 #define bbtkMessageSpace(value)                        \
   bbtk::MessageManager::GetSpace(value)
   do {                                                 \
     bbtkOnMessageLevel(key,value)                      \
       {                                                        \
-       std::cout << bbtkMessageCode                    \
+       std::cout << bbtkMessageCode(key,value)         \
                  << bbtkMessageTab                     \
                  << bbtkMessageSpace(value)            \
                  << MESSAGE;                           \
     {                                                  \
       bbtkOnMessageLevel(key,value)                    \
        {                                               \
-         std::cout << bbtkMessageCode                  \
+         std::cout << bbtkMessageCode(key,value)               \
                    << bbtkMessageTab                   \
                    << bbtkMessageSpace(value)          \
                    << MESSAGE;                         \
       bbtkOnMessageLevel(key,value)                    \
        {                                               \
          bbtk::MessageManager::DecTab();               \
-         std::cout << bbtkMessageCode                  \
+         std::cout << bbtkMessageCode(key,value)               \
                    << bbtkMessageTab                   \
                    << bbtkMessageSpace(value)          \
                    << MESSAGE;                         \
     {                                                  \
       bbtkOnMessageLevel(key,value)                    \
        {                                               \
-         std::cout << bbtkMessageCode                  \
+         std::cout << bbtkMessageCode(key,value)               \
                    << bbtkMessageTab                   \
                    << bbtkMessageSpace(value)          \
                    << MESSAGE;                         \
     {                                                  \
       bbtkOnMessageLevel(key,value)                    \
        {                                               \
-         std::cout << bbtkMessageCode                  \
+         std::cout << bbtkMessageCode(key,value)               \
                    << bbtkMessageTab                   \
                    << bbtkMessageSpace(value)          \
                    << MESSAGE;                         \
       bbtkOnMessageLevel(key,value)                    \
        {                                               \
          bbtk::MessageManager::DecTab();               \
-         std::cout << bbtkMessageCode                  \
+         std::cout << bbtkMessageCode(key,value)       \
                    << bbtkMessageTab                   \
                    << bbtkMessageSpace(value)          \
                    << MESSAGE;                         \
 
 //===========================================================
 #ifdef BBTK_COMPILE_ERROR_MESSAGES
-#include "bbtkWx.h"
+//#include "bbtkWx.h"
 #define bbtkError(MESSAGE)                             \
   do                                                   \
     {                                                  \
-      bbtk::wx::ResetCursor();                         \
       std::ostringstream s;                            \
       s << MESSAGE;                                    \
       std::ostringstream f;                            \
@@ -388,7 +419,7 @@ namespace bbtk
     ///
     static MessageManager* GetInstance();
     ///
-    static void RegisterMessageType(std::string key, 
+    static bool RegisterMessageType(std::string key, 
                                     std::string help,
                                     unsigned char default_level = 9);
     ///
@@ -409,11 +440,12 @@ namespace bbtk
     ///
     static void PrintInfo();
 
+    static std::string FormatKey(const std::string& key, int value);
+
   private:
     std::map<std::string,int> mMessageLevel;
     std::map<std::string,std::string> mMessageHelp;  
     unsigned int mMaxMessageLength;
-    int mAllLevel;
   };
   //===========================================================