X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FgdcmDicomDirObject.cxx;h=1d3d8ce28a85857c1cd81a72b6592ad23ad62b90;hb=d97e9432393b8515630a11586e0e95df6be9eb43;hp=0a623225fb30808573b679001fae431e3a8e6e02;hpb=4672e071f29ed17f7258b27e40d47642abfbb53f;p=gdcm.git diff --git a/src/gdcmDicomDirObject.cxx b/src/gdcmDicomDirObject.cxx index 0a623225..1d3d8ce2 100644 --- a/src/gdcmDicomDirObject.cxx +++ b/src/gdcmDicomDirObject.cxx @@ -3,8 +3,8 @@ Program: gdcm Module: $RCSfile: gdcmDicomDirObject.cxx,v $ Language: C++ - Date: $Date: 2004/10/13 14:15:29 $ - Version: $Revision: 1.5 $ + Date: $Date: 2004/12/07 13:39:33 $ + Version: $Revision: 1.12 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -20,6 +20,8 @@ #include "gdcmGlobal.h" #include "gdcmDebug.h" #include "gdcmValEntry.h" +#include "gdcmDictSet.h" + namespace gdcm { @@ -33,10 +35,9 @@ namespace gdcm * @param depth Sequence depth level */ -DicomDirObject::DicomDirObject(TagDocEntryHT *ptagHT, int depth) +DicomDirObject::DicomDirObject(int depth) : SQItem (depth) { - PtagHT = ptagHT; } @@ -64,11 +65,11 @@ DicomDirObject::~DicomDirObject() TagDocEntryHT DicomDirObject::GetEntry() { TagDocEntryHT HT; - docEntries=GetDocEntries(); - for(ListDocEntry::iterator i = docEntries.begin(); - i != docEntries.end(); ++i) + DocEntries = GetDocEntries(); + for(ListDocEntry::iterator i = DocEntries.begin(); + i != DocEntries.end(); ++i) { - HT[(*i)->GetKey()]=*i; + HT[(*i)->GetKey()] = *i; } return HT; } @@ -79,11 +80,11 @@ TagDocEntryHT DicomDirObject::GetEntry() * \brief add the 'Object' related Dicom Elements to the listEntries * of a partially created DICOMDIR */ -void DicomDirObject::FillObject(ListDicomDirMetaElem elemList) +void DicomDirObject::FillObject(ListDicomDirMetaElem const & elemList) { // FillObject rempli le SQItem qui sera accroche au bon endroit - std::list::iterator it; + ListDicomDirMetaElem::const_iterator it; uint16_t tmpGr,tmpEl; DictEntry *dictEntry; ValEntry *entry; @@ -98,29 +99,7 @@ void DicomDirObject::FillObject(ListDicomDirMetaElem elemList) entry->SetOffset(0); // just to avoid further missprinting entry->SetValue(it->Value); - // dealing with value length ... - - if(dictEntry->GetGroup()==0xfffe) - { - entry->SetLength(entry->GetValue().length()); - } - else if( dictEntry->GetVR() == "UL" || dictEntry->GetVR() == "SL" ) - { - entry->SetLength(4); - } - else if( dictEntry->GetVR() == "US" || dictEntry->GetVR() == "SS" ) - { - entry->SetLength(2); - } - else if( dictEntry->GetVR() == "SQ" ) - { - entry->SetLength(0xffffffff); - } - else - { - entry->SetLength(entry->GetValue().length()); - } - AddDocEntry(entry); + AddEntry(entry); } } } // end namespace gdcm