X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FgdcmSQItem.cxx;h=8a796aac73329ef459037449b138285a16aee393;hb=b06cbd9177331d793223eac6bf8b2bccf874e7e3;hp=801c7b40428c9ff9aa108412c0f6b5ef943acb9a;hpb=1b20e56c29494e7d1bef31d3ade5de833347c228;p=gdcm.git diff --git a/src/gdcmSQItem.cxx b/src/gdcmSQItem.cxx index 801c7b40..8a796aac 100644 --- a/src/gdcmSQItem.cxx +++ b/src/gdcmSQItem.cxx @@ -3,8 +3,8 @@ Program: gdcm Module: $RCSfile: gdcmSQItem.cxx,v $ Language: C++ - Date: $Date: 2005/11/29 17:14:17 $ - Version: $Revision: 1.82 $ + Date: $Date: 2007/08/29 15:30:49 $ + Version: $Revision: 1.87 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -25,7 +25,7 @@ #include -namespace gdcm +namespace GDCM_NAME_SPACE { //----------------------------------------------------------------------------- // Constructor / Destructor @@ -54,11 +54,12 @@ SQItem::~SQItem() * @param fp file pointer to an already open file. * @param filetype type of the file (ACR, ImplicitVR, ExplicitVR, ...) */ -void SQItem::WriteContent(std::ofstream *fp, FileType filetype) +void SQItem::WriteContent(std::ofstream *fp, FileType filetype, + bool insideMetaElements, bool dummy2) { int j; uint16_t item[4] = { 0xfffe, 0xe000, 0xffff, 0xffff }; - uint16_t itemt[4]= { 0xfffe, 0xe00d, 0xffff, 0xffff }; + uint16_t itemt[4]= { 0xfffe, 0xe00d, 0x0000, 0x0000 }; //we force the writting of an 'Item' Start Element // because we want to write the Item as a 'No Length' item @@ -87,15 +88,16 @@ void SQItem::WriteContent(std::ofstream *fp, FileType filetype) // --> makes no difference since the only bugged file we have // contains 'impossible tag' fffe|0000 in last position ! } - - (*it)->WriteContent(fp, filetype); + // false : we are not in MetaElements + // true : we are inside a Sequence + (*it)->WriteContent(fp, filetype, false, true); } //we force the writting of an 'Item Delimitation' item // because we wrote the Item as a 'no Length' item for(j=0;j<4;++j) { - binary_write( *fp, itemt[j]); // fffe e000 ffff ffff + binary_write( *fp, itemt[j]); // fffe e000 0000 0000 } }