X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;ds=sidebyside;f=src%2FgdcmDicomDirElement.cxx;h=88df039aa62ba30bd3e78863d11b9bfb1b89d48c;hb=f5575c1671810f3eeecae9967861dff3f1f75f05;hp=e7a1fdb14078dbe4a7bb188163191ea5e01c3c5c;hpb=19f72d139faa0f6a03f4e4a33be4c6b3e70b18b7;p=gdcm.git diff --git a/src/gdcmDicomDirElement.cxx b/src/gdcmDicomDirElement.cxx index e7a1fdb1..88df039a 100644 --- a/src/gdcmDicomDirElement.cxx +++ b/src/gdcmDicomDirElement.cxx @@ -3,12 +3,12 @@ Program: gdcm Module: $RCSfile: gdcmDicomDirElement.cxx,v $ Language: C++ - Date: $Date: 2004/06/23 03:36:24 $ - Version: $Revision: 1.13 $ + Date: $Date: 2004/10/08 04:43:37 $ + Version: $Revision: 1.17 $ 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. + http://www.creatis.insa-lyon.fr/Public/Gdcm/License.html for details. This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR @@ -16,15 +16,14 @@ =========================================================================*/ -#include -#include // For sprintf -#include - #include "gdcmDicomDirElement.h" #include "gdcmUtil.h" #include "gdcmDebug.h" #include "gdcmDictSet.h" +#include +#include // For sprintf +#include //----------------------------------------------------------------------------- // Constructor / Destructor @@ -33,17 +32,20 @@ * \brief constructor : populates the chained lists * from the file 'Dicts/DicomDir.dic' */ -gdcmDicomDirElement::gdcmDicomDirElement() { - std::string filename=gdcmDictSet::BuildDictPath() + std::string(DICT_ELEM); +gdcmDicomDirElement::gdcmDicomDirElement() +{ + std::string filename = gdcmDictSet::BuildDictPath() + std::string(DICT_ELEM); std::ifstream from(filename.c_str()); - dbg.Error(!from, "gdcmDicomDirElement::gdcmDicomDirElement: can't open dictionary",filename.c_str()); + dbg.Error(!from, "gdcmDicomDirElement::gdcmDicomDirElement: can't open dictionary", + filename.c_str()); char buff[1024]; std::string type; gdcmElement elem; - while (!from.eof()) { - eatwhite(from); + while (!from.eof()) + { + from >> std::ws; // used to be eatwhite(from); from.getline(buff, 1024, ' '); type = buff; @@ -53,22 +55,32 @@ gdcmDicomDirElement::gdcmDicomDirElement() { { from >> std::hex >> elem.group >> elem.elem; - eatwhite(from); + from >> std::ws; // used to be eatwhite(from); from.getline(buff, 1024, '"'); - eatwhite(from); + from >> std::ws; // Used to be eatwhite(from); from.getline(buff, 1024, '"'); elem.value = buff; - if(type=="metaElem") - DicomDirMetaList.push_back(elem); - else if(type=="patientElem") + if( type == "metaElem" ) + { + DicomDirMetaList.push_back(elem); + } + else if( type == "patientElem" ) + { DicomDirPatientList.push_back(elem); - else if(type=="studyElem") + } + else if( type == "studyElem" ) + { DicomDirStudyList.push_back(elem); - else if(type=="serieElem") + } + else if( type == "serieElem" ) + { DicomDirSerieList.push_back(elem); - else if(type=="imageElem") + } + else if( type == "imageElem" ) + { DicomDirImageList.push_back(elem); + } } from.getline(buff, 1024, '\n'); } @@ -79,7 +91,8 @@ gdcmDicomDirElement::gdcmDicomDirElement() { * \ingroup gdcmDicomDirElement * \brief canonical destructor */ -gdcmDicomDirElement::~gdcmDicomDirElement() { +gdcmDicomDirElement::~gdcmDicomDirElement() +{ DicomDirMetaList.clear(); DicomDirPatientList.clear(); DicomDirStudyList.clear(); @@ -95,41 +108,42 @@ gdcmDicomDirElement::~gdcmDicomDirElement() { * \todo add a 'Print Level' check * @param os The output stream to be written to. */ -void gdcmDicomDirElement::Print(std::ostream &os) { +void gdcmDicomDirElement::Print(std::ostream &os) +{ std::ostringstream s; std::list::iterator it; char greltag[10]; //group element tag s << "Meta Elements :"<group,it->elem); s << " ("<value<group,it->elem); s << " ("<value<group,it->elem); s << " ("<value<group,it->elem); s << " ("<value<group,it->elem); s << " ("<value<