]> Creatis software - gdcm.git/blobdiff - src/gdcmDebug.h
BUG: Previous code did not compile with all (=busted) compilers
[gdcm.git] / src / gdcmDebug.h
index e1e8fde901a778abbcceaa60b87ef3a5d7bd3b03..83939678566cd0fec2582c939718a46140188b2c 100644 (file)
@@ -3,12 +3,12 @@
   Program:   gdcm
   Module:    $RCSfile: gdcmDebug.h,v $
   Language:  C++
-  Date:      $Date: 2004/06/20 18:08:47 $
-  Version:   $Revision: 1.3 $
+  Date:      $Date: 2004/10/12 04:35:44 $
+  Version:   $Revision: 1.8 $
                                                                                 
   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.
+  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
 #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, bool, const char*, const char*);
-   void Exit(int);
+   void Assert(int level, bool test, const char * msg1, const char * msg2);
+   void Exit(int a);
+
+   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