]> Creatis software - gdcm.git/blobdiff - src/gdcmDebug.h
Removal of useless and dangerous methods :
[gdcm.git] / src / gdcmDebug.h
index 86a2002203cc564cba8308fcc4376a43f0ac895d..4b6d6824dd84c0f45a921d05bcd71dc19c0def37 100644 (file)
@@ -1,11 +1,33 @@
-// gdcmDebug.h
-//-----------------------------------------------------------------------------
+/*=========================================================================
+                                                                                
+  Program:   gdcm
+  Module:    $RCSfile: gdcmDebug.h,v $
+  Language:  C++
+  Date:      $Date: 2005/01/06 20:03:26 $
+  Version:   $Revision: 1.10 $
+                                                                                
+  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.html 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.
+                                                                                
+=========================================================================*/
+
 #ifndef GDCMDEBUG_H
 #define GDCMDEBUG_H
 
+#include "gdcmCommon.h"
+
+namespace gdcm 
+{
+//-----------------------------------------------------------------------------
+
 /**
- * \ingroup gdcmDebug
- * \brief gdcmDebug is an object for debugging in program.
+ * \ingroup Debug
+ * \brief Debug is an object for debugging in program.
  * It has 2 debugging modes :
  *  - error : for bad library use
  *  - debug : for debugging messages
  * Shown only when the debug level is higher than the 
  * message level.
  */
-class gdcmDebug {
+class GDCM_EXPORT Debug
+{
 public:
-   gdcmDebug(int level = -1);
+   Debug(int level = -1);
 
    void SetDebug (int level);
-   void Verbose(int, const char*, const char* ="");
-   void Error(bool, const char*,  const char* ="");
-   void Error(const char*, const char* ="", const char* ="");
+   void Verbose(int level, const char *msg1, const char *msg2 = "") ;
+   void Error  (bool test, const char *msg1, const char *msg2 = "");
+   void Error  (const char *msg1, const char *msg2 = "", const char *msg3 = "");
+
+   void Assert(int level, bool test, const char *msg1, const char *msg2);
+   void Exit(int a);
 
-   void Assert(int, bool, const char*, const char*);
-   void Exit(int);
+   static Debug &GetReference();
 
 private:
 /// warning message level to be displayed
    int DebugLevel;
+
 };
 
-extern gdcmDebug dbg;
+} // end namespace gdcm
+/// Instance of debugging utility.
+static gdcm::Debug dbg;
 
 #endif