X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;ds=sidebyside;f=src%2FgdcmUtil.cxx;h=1c521040b7e4ec7916a33d4f558dec67a960eb70;hb=208af9d6c03679fd7eb2045badc0f5ee8e263aff;hp=840d6f242cc186ad91b7b77c12268a55bc4fcd5e;hpb=e06d61ba347d7f5f692a682434e089d939f85653;p=gdcm.git diff --git a/src/gdcmUtil.cxx b/src/gdcmUtil.cxx index 840d6f24..1c521040 100644 --- a/src/gdcmUtil.cxx +++ b/src/gdcmUtil.cxx @@ -1,7 +1,11 @@ -// gdcmUtil.cxx +// $Header: /cvs/public/gdcm/src/gdcmUtil.cxx,v 1.11 2003/05/21 16:26:28 regrain Exp $ #include // For isspace #include "gdcmUtil.h" +using namespace std; + +// Library globals. +gdcmDebug dbg; gdcmDebug::gdcmDebug(int level) { DebugLevel = level; @@ -43,9 +47,33 @@ void gdcmDebug::Exit(int a) { #endif } -gdcmDebug dbg; +/////////////////////////////////////////////////////////////////////////// +gdcmVR * gdcmGlobal::VR = (gdcmVR*)0; +gdcmDictSet * gdcmGlobal::Dicts = (gdcmDictSet*)0; +gdcmGlobal gdcmGlob; + +gdcmGlobal::gdcmGlobal(void) { + if (VR || Dicts) + dbg.Verbose(0, "gdcmGlobal::gdcmGlobal: VR or Dicts allready allocated"); + VR = new gdcmVR(); + Dicts = new gdcmDictSet(); +} + +gdcmGlobal::~gdcmGlobal() { + delete VR; + delete Dicts; +} + +gdcmVR * gdcmGlobal::GetVR(void) { + return VR; +} -// Because is not yet available in g++2.06 +gdcmDictSet * gdcmGlobal::GetDicts(void) { + return Dicts; +} + +/////////////////////////////////////////////////////////////////////////// +// Because is not yet available in g++2.96 istream& eatwhite(istream& is) { char c; while (is.get(c)) { @@ -57,3 +85,14 @@ istream& eatwhite(istream& is) { return is; } +void Tokenize (const string& str, + vector& tokens, + const string& delimiters) { + string::size_type lastPos = str.find_first_not_of(delimiters,0); + string::size_type pos = str.find_first_of(delimiters,lastPos); + while (string::npos != pos || string::npos != lastPos) { + tokens.push_back(str.substr(lastPos, pos - lastPos)); + lastPos = str.find_first_not_of(delimiters, pos); + pos = str.find_first_of(delimiters, lastPos); + } +}