X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FgdcmUtil.h;h=3dca634d1b3b8ca6c54a2f0a79a84361447531d9;hb=e503428831ed53cbd0d206d87ac25bac3254af2b;hp=d06e8cdeac839da0f96be9e4f3a1f677cbb016c1;hpb=a631c1cc8f402dcef308999aefe5aec531934e8f;p=gdcm.git diff --git a/src/gdcmUtil.h b/src/gdcmUtil.h index d06e8cde..3dca634d 100644 --- a/src/gdcmUtil.h +++ b/src/gdcmUtil.h @@ -1,15 +1,77 @@ +// gdcmUtil.h +//----------------------------------------------------------------------------- +#ifndef GDCMUTIL_H +#define GDCMUTIL_H + +#include "gdcmVR.h" +#include "gdcmTS.h" +#include "gdcmDictSet.h" +#include "gdcmDicomDirElement.h" #include +#include +#include + +//----------------------------------------------------------------------------- +/* + * gdcmDebug is an object for debugging in program. + * It has 2 debugging modes : + * - error : for bad library use + * - debug : for debugging messages + * + * A debugging message has a level of priority and is + * Shown only when the debug level is higher than the + * message level. + */ class gdcmDebug { -private: - int DebugLevel; public: - gdcmDebug(int); - void Verbose(int, const char*, const char* =""); + gdcmDebug(int = 0); + void SetDebug (int i) {DebugLevel = i;} + + void Verbose(int, const char*, const char* =""); void Error(bool, const char*, const char* =""); void Error(const char*, const char* ="", const char* =""); + void Assert(int, bool, const char*, const char*); + void Exit(int); + +private: + int DebugLevel; }; -istream& eatwhite(istream& is); +//----------------------------------------------------------------------------- +/* + * This class contains all globals elements that might be + * instanciated only one time + */ +class GDCM_EXPORT gdcmGlobal { +public: + gdcmGlobal(void); + ~gdcmGlobal(); + + static gdcmDictSet *GetDicts(void); + static gdcmVR *GetVR(void); + static gdcmTS *GetTS(void); + static gdcmDicomDirElement *GetDicomDirElements(void); + +private: + static gdcmDictSet *Dicts; + static gdcmVR *VR; + static gdcmTS *TS; + static gdcmDicomDirElement *ddElem; +}; + +//----------------------------------------------------------------------------- +std::istream & eatwhite(std::istream & is); + +void Tokenize (const std::string& str, + std::vector& tokens, + const std::string& delimiters = " "); extern gdcmDebug dbg; + +char *_cleanString(char *v); +std::string _CreateCleanString(std::string s); + +//----------------------------------------------------------------------------- +#endif +