]> Creatis software - gdcm.git/blobdiff - src/gdcmDebug.cxx
2004-09-23 Jean-Pierre Roux
[gdcm.git] / src / gdcmDebug.cxx
index 9963df5a1e699001a949e5efcdfe76523b6b8491..2891b21cb6e358abdcc151f868420c160404a39a 100644 (file)
+/*=========================================================================
+                                                                                
+  Program:   gdcm
+  Module:    $RCSfile: gdcmDebug.cxx,v $
+  Language:  C++
+  Date:      $Date: 2004/08/31 14:24:47 $
+  Version:   $Revision: 1.5 $
+                                                                                
+  Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
+  l'Image). All rights reserved. See Doc/License.txt or
+  http://www.creatis.insa-lyon.fr/Public/Gdcm/License.htm for details.
+                                                                                
+     This software is distributed WITHOUT ANY WARRANTY; without even
+     the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+     PURPOSE.  See the above copyright notices for more information.
+                                                                                
+=========================================================================*/
+
 #include <iostream>
 #include "gdcmDebug.h"
 
-/**
- * \ingroup Globals
- * \brief   Instance of debugging utility.
- */
-gdcmDebug dbg;
+//-----------------------------------------------------------------------------
+gdcmDebug gdcmDebug::debug;
 
+//-----------------------------------------------------------------------------
 /**
- * \ingroup gdcmDebug
  * \brief   constructor
  * @param level debug level
  */ 
-gdcmDebug::gdcmDebug(int level) {
+gdcmDebug::gdcmDebug(int level) 
+{
    DebugLevel = level;
 }
 
 /**
- * \ingroup gdcmDebug
  * \brief   Accessor
  * @param   level Set the debug level
  */ 
-void gdcmDebug::SetDebug(int level) {
+void gdcmDebug::SetDebug(int level) 
+{
    DebugLevel = level;
 }
 
 /**
- * \ingroup gdcmDebug
  * \brief   Verbose 
- * @param Level level
- * @param Msg1 first message part
- * @param Msg2 second message part 
+ * @param level level
+ * @param msg1 first message part
+ * @param msg2 second message part 
  */
-void gdcmDebug::Verbose(int Level, const char * Msg1, const char * Msg2) {
-   if (Level > DebugLevel)
+void gdcmDebug::Verbose(int level, const char * msg1, const char * msg2) 
+{
+   if (level > DebugLevel)
+   {
       return ;
-   std::cerr << Msg1 << ' ' << Msg2 << std::endl;
+   }
+   std::cerr << msg1 << ' ' << msg2 << std::endl;
 }
 
 /**
- * \ingroup gdcmDebug
  * \brief   Error 
- * @param Test test
- * @param Msg1 first message part
- * @param Msg2 second message part 
+ * @param test test
+ * @param msg1 first message part
+ * @param msg2 second message part 
  */
-void gdcmDebug::Error( bool Test, const char * Msg1, const char * Msg2) {
-   if (!Test)
+void gdcmDebug::Error(bool test, const char * msg1, const char * msg2) 
+{
+   if (!test)
+   {
       return;
-   std::cerr << Msg1 << ' ' << Msg2 << std::endl;
+   }
+   std::cerr << msg1 << ' ' << msg2 << std::endl;
    Exit(1);
 }
 
 /**
- * \ingroup gdcmDebug
  * \brief   Error 
- * @param Msg1 first message part
- * @param Msg2 second message part
- * @param Msg3 Third message part  
+ * @param msg1 first message part
+ * @param msg2 second message part
+ * @param msg3 Third message part  
  */
-void gdcmDebug::Error(const char* Msg1, const char* Msg2,
-                      const char* Msg3) {
-   std::cerr << Msg1 << ' ' << Msg2 << ' ' << Msg3 << std::endl;
+void gdcmDebug::Error(const char* msg1, const char* msg2,
+                      const char* msg3) 
+{
+   std::cerr << msg1 << ' ' << msg2 << ' ' << msg3 << std::endl;
    Exit(1);
 }
 
 /**
- * \ingroup gdcmDebug
  * \brief   Assert 
- * @param Level level 
- * @param Test test
- * @param Msg1 first message part
- * @param Msg2 second message part
+ * @param level level 
+ * @param test test
+ * @param msg1 first message part
+ * @param msg2 second message part
  */
- void gdcmDebug::Assert(int Level, bool Test,
-                 const char * Msg1, const char * Msg2) {
-   if (Level > DebugLevel)
+void gdcmDebug::Assert(int level, bool test, const char * msg1, 
+                       const char * msg2) 
+{
+   if (level > DebugLevel)
+   {
       return ;
-   if (!Test)
-      std::cerr << Msg1 << ' ' << Msg2 << std::endl;
+   }
+   if (!test)
+   {
+      std::cerr << msg1 << ' ' << msg2 << std::endl;
+   }
 }
 
 /**
- * \ingroup gdcmDebug
  * \brief   Exit 
  * @param a return code 
  */
-void gdcmDebug::Exit(int a) {
+void gdcmDebug::Exit(int a) 
+{
 #ifdef __GNUC__
    std::exit(a);
 #endif
@@ -94,3 +118,13 @@ void gdcmDebug::Exit(int a) {
    exit(a);    // Found in #include <stdlib.h>
 #endif
 }
+
+/**
+ * \brief  Get the debug instance 
+ * \return Reference to the debug instance
+ */
+gdcmDebug &gdcmDebug::GetReference()
+{
+   return gdcmDebug::debug;
+}
+