X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FgdcmUtil.h;h=0d3334fec9f1646a5e19f26b7fcf2e1647507045;hb=559c3639fc5b255b36a951f352db1addead9f78f;hp=e00e8934f71e24994abad4fb2ac3d6931d974c33;hpb=05abd393cf82392c894dd1d852e2273b0648671d;p=gdcm.git diff --git a/src/gdcmUtil.h b/src/gdcmUtil.h index e00e8934..0d3334fe 100644 --- a/src/gdcmUtil.h +++ b/src/gdcmUtil.h @@ -1,43 +1,61 @@ -// $Header: /cvs/public/gdcm/src/gdcmUtil.h,v 1.9 2003/05/21 14:42:46 frog Exp $ +/*========================================================================= + + Program: gdcm + Module: $RCSfile: gdcmUtil.h,v $ + Language: C++ + Date: $Date: 2004/11/03 20:52:13 $ + Version: $Revision: 1.39 $ + + 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 +#include "gdcmCommon.h" #include #include -#include "gdcmVR.h" -#include "gdcmDictSet.h" -class gdcmDebug { -private: - int DebugLevel; -public: - gdcmDebug(int = 0); - 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); -}; - -class gdcmGlobal { -private: - static gdcmVR *VR; - static gdcmDictSet *Dicts; -public: - gdcmGlobal(void); - ~gdcmGlobal(); - static gdcmVR * GetVR(void); - static gdcmDictSet * GetDicts(void); -}; - -istream & eatwhite(istream & is); +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. + */ -void Tokenize (const std::string& str, - std::vector& tokens, - const std::string& delimiters = " "); +//----------------------------------------------------------------------------- -extern gdcmDebug dbg; +class GDCM_EXPORT Util +{ +public: + 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 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); +}; + 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