]> Creatis software - creaImageIO.git/blobdiff - src/creaImageIODicomImageReader2.cpp
new Output format and structure for Gimmick. Based on creaImageIO Output document...
[creaImageIO.git] / src / creaImageIODicomImageReader2.cpp
index 7361034b5e50c032797e7b7dbf4a9bf880eb5249..713655ba46ea1fda179f5681b4b2e0b9bcb98dbe 100644 (file)
@@ -67,8 +67,7 @@ namespace creaImageIO
     v.push_back("dcm");
     v.push_back("");
   }
-  //=====================================================================
-  
   //========================================================================
   std::string irclean(const std::string& str)
   {
@@ -91,7 +90,30 @@ namespace creaImageIO
     return str;
   }
   //========================================================================
+  //=====================================================================
+  
+
+       void DicomImageReader::getAttributes(const std::string filename, 
+               std::map <std::string , std::string> &infos,std::vector<std::string> i_attr)
+       {
+               gdcm::Reader reader;
+               reader.SetFileName( filename.c_str() );
+               if (reader.Read())
+               {
+                       std::vector<std::string>::iterator it = i_attr.begin();
+                       for(;it != i_attr.end(); it++)
+                       {
+                               unsigned short el;
+                               unsigned short gr;
+                               sscanf((*it).c_str(),"D%04hx_%04hx",&gr,&el);
+                               if ( ( gr!=0 ) && ( el!=0 ) )
+                               {
+                                       infos[(*it)] =  ( GetStringValueFromTag(reader.GetFile().GetDataSet().GetDataElement(gdcm::Tag(gr,el))) );
+                               }
+                       }
+               }
+               
+       }
   //=====================================================================
   void DicomImageReader::ReadAttributes(const std::string& filename, 
                      std::map<std::string,std::string>& attr)