X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;ds=sidebyside;f=src%2FgdcmUtil.h;h=a32b5f2c4bff926aecd4c26edce227abfe8b535d;hb=5e64f1feb4d82a4da9893dca043212ac90807fe4;hp=69cd609e56d6e9024e114c9f5e08d10c24e53d8f;hpb=1b5fd950fda2fb2dbe9aa69bac545a8b588b71d0;p=gdcm.git diff --git a/src/gdcmUtil.h b/src/gdcmUtil.h index 69cd609e..a32b5f2c 100644 --- a/src/gdcmUtil.h +++ b/src/gdcmUtil.h @@ -1,82 +1,64 @@ -// gdcmUtil.h -//----------------------------------------------------------------------------- +/*========================================================================= + + Program: gdcm + Module: $RCSfile: gdcmUtil.h,v $ + Language: C++ + Date: $Date: 2004/11/05 20:23:14 $ + Version: $Revision: 1.40 $ + + 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 GDCMUTIL_H #define GDCMUTIL_H #include "gdcmCommon.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. +namespace gdcm +{ +/** + * \defgroup Globals Utility functions + * \brief Here are some utility functions, belonging to the Util class, + * dealing with strings, file names... that can be called + * from anywhere by whomsoever they can help. */ -class gdcmDebug { -public: - gdcmDebug(int level = GDCM_DEBUG); - - 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; -}; //----------------------------------------------------------------------------- -/* - * This class contains all globals elements that might be - * instanciated only one time - */ -class GDCM_EXPORT gdcmGlobal { + +class GDCM_EXPORT Util +{ public: - gdcmGlobal(void); - ~gdcmGlobal(); + static std::string Format(const char* format, ...); + static void Tokenize (const std::string& str, + std::vector& tokens, + const std::string& delimiters = " "); + static int CountSubstring (const std::string& str, + const std::string& subStr); - static gdcmDictSet *GetDicts(void); - static gdcmVR *GetVR(void); - static gdcmTS *GetTS(void); - static gdcmDicomDirElement *GetDicomDirElements(void); + static std::string CreateCleanString(std::string const & s); + static std::string NormalizePath(std::string const & name); + static std::string GetPath(std::string const &fullName); + static std::string GetName(std::string const &fullName); -private: - static gdcmDictSet *Dicts; - static gdcmVR *VR; - static gdcmTS *TS; - static gdcmDicomDirElement *ddElem; + static std::string DicomString(const char* s, size_t l); + static std::string DicomString(const char* s); }; -//----------------------------------------------------------------------------- -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); - -void NormalizePath(std::string &name); -std::string GetPath(std::string fullName); -std::string GetName(std::string fullName); + template + std::ostream& binary_write(std::ostream& os, const T& val); + std::ostream& binary_write(std::ostream& os, const uint16_t& val); + std::ostream& binary_write(std::ostream& os, const uint32_t& val); + std::ostream& binary_write(std::ostream& os, const char* val); + std::ostream& binary_write(std::ostream& os, std::string const & val); +} // end namespace gdcm //----------------------------------------------------------------------------- #endif -