X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FgdcmUtil.h;h=9ef1c976134b930cd8cedb05fbc496b12c9d9dfe;hb=c2975ffb8c79fa4d745368d8d1c317c5a313dd0a;hp=1a0be66eae699c31abc456e2407bfc782e5984e3;hpb=eba2d1d91686d8e5ca1e3dc019742032b450c3b2;p=gdcm.git diff --git a/src/gdcmUtil.h b/src/gdcmUtil.h index 1a0be66e..9ef1c976 100644 --- a/src/gdcmUtil.h +++ b/src/gdcmUtil.h @@ -3,8 +3,8 @@ Program: gdcm Module: $RCSfile: gdcmUtil.h,v $ Language: C++ - Date: $Date: 2005/07/21 05:02:12 $ - Version: $Revision: 1.59 $ + Date: $Date: 2005/11/29 13:02:47 $ + Version: $Revision: 1.66 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -41,15 +41,21 @@ public: std::vector &tokens, const std::string &delimiters = " "); static int CountSubstring (const std::string &str, - const std::string &subStr); + const std::string &subStr); static std::string CreateCleanString(std::string const &s); + static std::string CreateCleanString(uint8_t *s, int l); + static bool IsCleanString(std::string const &s); + static bool IsCleanArea(uint8_t *s, int l); 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(); + /// Provides a simple static GetVersion() function + static std::string GetVersion() + { return GDCM_VERSION;} static unsigned int GetCurrentThreadID(); static unsigned int GetCurrentProcessID(); static bool IsCurrentProcessorBigEndian(); @@ -66,10 +72,46 @@ public: static const std::string &GetRootUID(); static const uint8_t *GetFileMetaInformationVersion() - { return FileMetaInformationVersion;}; + { return FileMetaInformationVersion;} static void SetFileMetaInformationVersion( uint16_t fmiv ) - { FileMetaInformationVersion = (uint8_t *)&fmiv; }; + { FileMetaInformationVersion = (uint8_t *)&fmiv; } +// ----------------- to be removed later -------------------------- +//To perform a full check of inline functions on all the platforms, +// we put here the two 'static' functions +// hifpswap and hNoifpswap in a .h +// They will be remove ASAP + + inline void hifpswap(double *a, double *b) + { + double tmp; + tmp = *a; + *a = *b; + *b = tmp; + } + void hNoifpswap(double *a, double *b) + { + double tmp; + tmp = *a; + *a = *b; + *b = tmp; + } + void hfpswap(double *a, double *b); + static inline void sthifpswap(double *a, double *b) + { + double tmp; + tmp = *a; + *a = *b; + *b = tmp; + } + static void sthNoifpswap(double *a, double *b) + { + double tmp; + tmp = *a; + *a = *b; + *b = tmp; + } +// ------------ end of functions to remove -------------------- private: static std::string GetIPAddress(); //Do not expose this method @@ -82,6 +124,7 @@ private: 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 double &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); GDCM_EXPORT std::ostream &binary_write(std::ostream &os, const uint8_t *val, size_t len);