X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=kernel%2Fsrc%2FbbtkMessageManager.h;h=3832b8537bbf15ace5d8255f046bdcdb20643476;hb=6ac9074f717f22c4ffdc6a70d0704c1b1f8fe842;hp=898bc7fb1cf4f8ff89954ec87d6132324b8c6f77;hpb=71376d8384d5d21b5c56d36ecc8cbf31315c039a;p=bbtk.git diff --git a/kernel/src/bbtkMessageManager.h b/kernel/src/bbtkMessageManager.h index 898bc7f..3832b85 100644 --- a/kernel/src/bbtkMessageManager.h +++ b/kernel/src/bbtkMessageManager.h @@ -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 @@ -77,11 +108,12 @@ } \ 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 @@ -91,7 +123,7 @@ #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) @@ -108,7 +140,7 @@ do { \ bbtkOnMessageLevel(key,value) \ { \ - std::cout << bbtkMessageCode \ + std::cout << bbtkMessageCode(key,value) \ << bbtkMessageTab \ << bbtkMessageSpace(value) \ << MESSAGE; \ @@ -133,7 +165,7 @@ { \ bbtkOnMessageLevel(key,value) \ { \ - std::cout << bbtkMessageCode \ + std::cout << bbtkMessageCode(key,value) \ << bbtkMessageTab \ << bbtkMessageSpace(value) \ << MESSAGE; \ @@ -148,7 +180,7 @@ bbtkOnMessageLevel(key,value) \ { \ bbtk::MessageManager::DecTab(); \ - std::cout << bbtkMessageCode \ + std::cout << bbtkMessageCode(key,value) \ << bbtkMessageTab \ << bbtkMessageSpace(value) \ << MESSAGE; \ @@ -205,7 +237,7 @@ { \ bbtkOnMessageLevel(key,value) \ { \ - std::cout << bbtkMessageCode \ + std::cout << bbtkMessageCode(key,value) \ << bbtkMessageTab \ << bbtkMessageSpace(value) \ << MESSAGE; \ @@ -230,7 +262,7 @@ { \ bbtkOnMessageLevel(key,value) \ { \ - std::cout << bbtkMessageCode \ + std::cout << bbtkMessageCode(key,value) \ << bbtkMessageTab \ << bbtkMessageSpace(value) \ << MESSAGE; \ @@ -245,7 +277,7 @@ bbtkOnMessageLevel(key,value) \ { \ bbtk::MessageManager::DecTab(); \ - std::cout << bbtkMessageCode \ + std::cout << bbtkMessageCode(key,value) \ << bbtkMessageTab \ << bbtkMessageSpace(value) \ << MESSAGE; \ @@ -316,11 +348,10 @@ //=========================================================== #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 mMessageLevel; std::map mMessageHelp; unsigned int mMaxMessageLength; - int mAllLevel; }; //===========================================================