]> Creatis software - gdcm.git/blobdiff - src/gdcmTS.cxx
* Test/PrintAllDocument.cxx: looping on files is now effective. It used to
[gdcm.git] / src / gdcmTS.cxx
index 7445b59c4787afe02cdccb6b3b5f742b66e93d6a..630ed7c6916b3dc0c194754aff58c160309e85d5 100644 (file)
@@ -1,22 +1,31 @@
-// gdcmTS.cxx
-//-----------------------------------------------------------------------------
+/*=========================================================================
+                                                                                
+  Program:   gdcm
+  Module:    $RCSfile: gdcmTS.cxx,v $
+  Language:  C++
+  Date:      $Date: 2004/06/23 03:36:24 $
+  Version:   $Revision: 1.21 $
+                                                                                
+  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.htm 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.
+                                                                                
+=========================================================================*/
+
 #include <fstream>
+#include <string>
+#include <iostream>
 
 #include "gdcmTS.h"
+#include "gdcmDebug.h"
 #include "gdcmUtil.h"
+#include "gdcmDictSet.h"
 
-#ifndef PUB_DICT_PATH
-#  define PUB_DICT_PATH     "../Dicts/"
-#endif
-#define DICT_TS "dicomTS.dic"
 
-#include <iostream>
-#ifdef GDCM_NO_ANSI_STRING_STREAM
-#  include <strstream>
-#  define  ostringstream ostrstream
-# else
-#  include <sstream>
-#endif
 
 //-----------------------------------------------------------------------------
 // Constructor / Destructor
@@ -26,20 +35,15 @@ gdcmTS::gdcmTS(void)
    std::ifstream from(filename.c_str());
    dbg.Error(!from, "gdcmTS::gdcmTS: can't open dictionary",filename.c_str());
 
-   char buff[1024];
+   //char buff[1024];  //not used
    std::string key;
    std::string name;
 
    while (!from.eof()) {
+      from >> key;
+
       eatwhite(from);
-      from.getline(buff, 1024, ' ');
-      key = buff;
-      if(key.size()%2==1)
-       key.push_back(0);
-       
-      eatwhite(from);
-      from.getline(buff, 1024, '\n');
-      name = buff;
+      getline(from, name);    /// MEMORY LEAK
 
       if(key!="") 
       {
@@ -82,7 +86,7 @@ int gdcmTS::Count(TSKey key)
 std::string gdcmTS::GetValue(TSKey key) 
 {
    if (ts.count(key) == 0) 
-      return (GDCM_UNFOUND);
+      return GDCM_UNFOUND;
    return ts[key];
 }