X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FgdcmUtil.h;h=997b8752071737828f232eafd9c00cc2789709f9;hb=4491b768d9529a24608e44d6ef77dc235d37dbb7;hp=2fb0ab22f192fad3adbc69cd4c9b903916dea2bc;hpb=2f27193f6cbd42d1143738e40563b4a4bd4a0c8a;p=gdcm.git diff --git a/src/gdcmUtil.h b/src/gdcmUtil.h index 2fb0ab22..997b8752 100644 --- a/src/gdcmUtil.h +++ b/src/gdcmUtil.h @@ -3,8 +3,8 @@ Program: gdcm Module: $RCSfile: gdcmUtil.h,v $ Language: C++ - Date: $Date: 2004/10/25 04:47:43 $ - Version: $Revision: 1.37 $ + Date: $Date: 2005/01/28 09:37:29 $ + Version: $Revision: 1.51 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -26,7 +26,7 @@ namespace gdcm { /** - * \defgroup Globals Utility functions + * \ingroup 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. @@ -37,18 +37,47 @@ namespace gdcm 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 void NormalizePath(std::string &name); + 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); + static std::string GetCurrentDate(); + static std::string GetCurrentTime(); + static std::string GetCurrentDateTime(); + static unsigned int GetCurrentThreadID(); + static unsigned int GetCurrentProcessID(); + + static std::string DicomString(const char *s, size_t l); + static std::string DicomString(const char *s); + static bool DicomStringEqual(const std::string &s1, const char *s2); + static bool IsCurrentProcessorBigEndian(); + + static std::string GetMACAddress(); + + static std::string CreateUniqueUID(const std::string &root = ""); + static void SetRootUID(const std::string &root = ""); + static const std::string &GetRootUID(); + +private: + static std::string GetIPAddress(); //Do not expose this method + + static std::string RootUID; + static const std::string GDCM_UID; }; + + template + GDCM_EXPORT std::ostream &binary_write(std::ostream &os, const T &val); + GDCM_EXPORT std::ostream &binary_write(std::ostream &os, const uint16_t &val); + GDCM_EXPORT std::ostream &binary_write(std::ostream &os, const uint32_t &val); + GDCM_EXPORT std::ostream &binary_write(std::ostream &os, const char *val); + GDCM_EXPORT std::ostream &binary_write(std::ostream &os, std::string const & val); } // end namespace gdcm //----------------------------------------------------------------------------- #endif