X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FgdcmDebug.cxx;h=82c4ee96a91e1fbb45b22ed59bc42e5092fcef4c;hb=d5e16925a7d3c8dbd0e71b1989629ca0f619b119;hp=5eadc1643633437ed3989bac9de2452598210435;hpb=70b9dde9da207191fa6d799fdf03c2aff7941273;p=gdcm.git diff --git a/src/gdcmDebug.cxx b/src/gdcmDebug.cxx index 5eadc164..82c4ee96 100644 --- a/src/gdcmDebug.cxx +++ b/src/gdcmDebug.cxx @@ -3,8 +3,8 @@ Program: gdcm Module: $RCSfile: gdcmDebug.cxx,v $ Language: C++ - Date: $Date: 2005/01/07 16:26:12 $ - Version: $Revision: 1.14 $ + Date: $Date: 2005/01/13 22:30:11 $ + Version: $Revision: 1.17 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -16,97 +16,71 @@ =========================================================================*/ -#include #include "gdcmDebug.h" +#include namespace gdcm { /// warning message level to be displayed -static int DebugLevel = -1; +static bool DebugFlag = false; +static bool DebugToFile = false; +static std::ofstream DebugFile; //----------------------------------------------------------------------------- /** * \brief Accessor - * @param level Set the debug level + * @param flag Set the debug flag */ -void Debug::SetDebugLevel (int level) +void Debug::SetDebugFlag (bool flag) { - DebugLevel = level; + DebugFlag = flag; } /** - * \brief Verbose - * @param level level - * @param msg1 first message part - * @param msg2 second message part - */ -void Debug::Verbose(int level, const char *msg1, const char *msg2) + * \brief Accessor + * @param level Get the debug flag + */ +bool Debug::GetDebugFlag () { - if (level > DebugLevel) - { - return ; - } - std::cerr << "gdcm::" << msg1 << ' ' << msg2 << std::endl; + return DebugFlag; } /** - * \brief Error - * @param test test - * @param msg1 first message part - * @param msg2 second message part - */ -void Debug::Error(bool test, const char *msg1, const char *msg2) + * \brief Accessor + * @param flag Set the debug flag to redirect to file + */ +void Debug::SetDebugToFile (bool flag) { - if (!test) - { - return; - } - std::cerr << "gdcm::" << msg1 << ' ' << msg2 << std::endl; - Exit(1); + DebugToFile = flag; } /** - * \brief Error - * @param msg1 first message part - * @param msg2 second message part - * @param msg3 Third message part - */ -void Debug::Error(const char *msg1, const char *msg2, - const char *msg3) + * \brief Accessor + * @param level Get the debug flag to redirect to file + */ +bool Debug::GetDebugToFile () { - std::cerr << "gdcm::" << msg1 << ' ' << msg2 << ' ' << msg3 - << std::endl; - Exit(1); + return DebugToFile; } /** - * \brief Assert - * @param level level - * @param test test - * @param msg1 first message part - * @param msg2 second message part - */ -void Debug::Assert(int level, bool test, const char *msg1, - const char *msg2) + * \brief Accessor + * @param flag Set the debug flag to redirect to file + * Absolutely nothing is check. You have to pass in + * a correct filename + */ +void Debug::SetDebugFilename (std::string const& filename) { - if (level > DebugLevel) - { - return ; - } - if (!test) - { - std::cerr << "gdcm::" << msg1 << ' ' << msg2 - << std::endl; - } + DebugToFile = true; // Just in case ... + DebugFlag = true; // Just in case ... + DebugFile.open( filename.c_str() ); } -/** - * \brief Exit - * @param a return code - */ -void Debug::Exit(int a) +std::ofstream & Debug::GetDebugFile () { - exit(a); // Found in #include + return DebugFile; } } // end namespace gdcm + +