X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FgdcmDocEntry.cxx;h=c8e5b4baa328e4057b3f83aa7d39c1a9646e9ec4;hb=1fe405b2347a5f78d5ecc67d2d81f53bd9c7541d;hp=c1317163a9503b1c98a1b42d15aa0077d9b8c3df;hpb=9ca4fd0ccbfea12ed7760856de3a8faf41625869;p=gdcm.git diff --git a/src/gdcmDocEntry.cxx b/src/gdcmDocEntry.cxx index c1317163..c8e5b4ba 100644 --- a/src/gdcmDocEntry.cxx +++ b/src/gdcmDocEntry.cxx @@ -3,8 +3,8 @@ Program: gdcm Module: $RCSfile: gdcmDocEntry.cxx,v $ Language: C++ - Date: $Date: 2005/01/07 16:45:51 $ - Version: $Revision: 1.39 $ + Date: $Date: 2005/01/26 09:49:53 $ + Version: $Revision: 1.47 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -21,6 +21,7 @@ #include "gdcmVR.h" #include "gdcmGlobal.h" #include "gdcmUtil.h" +#include "gdcmDebug.h" #include // for std::ios::left, ... #include @@ -34,7 +35,6 @@ namespace gdcm //----------------------------------------------------------------------------- // Constructor / Destructor /** - * \ingroup DocEntry * \brief Constructor from a given DictEntry * @param in Pointer to existing dictionary entry */ @@ -53,11 +53,11 @@ DocEntry::DocEntry(DictEntry *in) //----------------------------------------------------------------------------- // Print /** - * \ingroup DocEntry * \brief Prints the common part of ValEntry, BinEntry, SeqEntry * @param os ostream we want to print in + * @param indent Indentation string to be prepended during printing */ -void DocEntry::Print(std::ostream &os) +void DocEntry::Print(std::ostream &os, std::string const & ) { size_t o; std::string st; @@ -115,10 +115,9 @@ void DocEntry::Print(std::ostream &os) } /** - * \ingroup DocEntry * \brief Writes the common part of any ValEntry, BinEntry, SeqEntry - * @param fp already open file pointer - * @param filetype type of the file to be written + * @param fp already open ofstream pointer + * @param filetype type of the file (ACR, ImplicitVR, ExplicitVR, ...) */ void DocEntry::WriteContent(std::ofstream *fp, FileType filetype) { @@ -151,11 +150,8 @@ void DocEntry::WriteContent(std::ofstream *fp, FileType filetype) // Hence we skip writing the VR. // In order to avoid further troubles, we choose to write them // as 'no-length' Item Delimitors (we pad by writing 0xffffffff) - // The end of a given Item will be found when : - // - a new Item Delimitor Item is encountered (the Seq goes on) - // - a Sequence Delimitor Item is encountered (the Seq just ended) - - // TODO : verify if the Sequence Delimitor Item was forced during Parsing + // We shall force the end of a given Item by writting + // a Item Delimitation Item (fffe, e00d) uint32_t ff = 0xffffffff; binary_write(*fp, ff); @@ -175,7 +171,7 @@ void DocEntry::WriteContent(std::ofstream *fp, FileType filetype) else { binary_write(*fp, vr); - assert( vr.size() == 2 ); + gdcmAssertMacro( vr.size() == 2 ); if ( (vr == "OB") || (vr == "OW") || (vr == "SQ") || (vr == "UN") ) { @@ -215,7 +211,6 @@ void DocEntry::WriteContent(std::ofstream *fp, FileType filetype) // Public /** - * \ingroup DocEntry * \brief Gets the full length of the elementary DocEntry (not only value * length) depending on the VR. */ @@ -241,20 +236,18 @@ uint32_t DocEntry::GetFullLength() } /** - * \ingroup DocEntry * \brief Copies all the attributes from an other DocEntry + * @param e entry to copy from */ -void DocEntry::Copy (DocEntry *e) +void DocEntry::Copy(DocEntry *e) { Length = e->Length; ReadLength = e->ReadLength; ImplicitVR = e->ImplicitVR; Offset = e->Offset; - // TODO : remove DocEntry SQDepth } /** - * \ingroup DocEntry * \brief tells us if entry is the last one of a 'no length' SequenceItem * (fffe,e00d) */ @@ -263,7 +256,6 @@ bool DocEntry::IsItemDelimitor() return (GetGroup() == 0xfffe && GetElement() == 0xe00d); } /** - * \ingroup DocEntry * \brief tells us if entry is the last one of a 'no length' Sequence * (fffe,e0dd) */