Program: gdcm
Module: $RCSfile: gdcmDicomDirMeta.cxx,v $
Language: C++
- Date: $Date: 2005/11/03 16:49:45 $
- Version: $Revision: 1.31 $
+ Date: $Date: 2007/08/29 15:30:48 $
+ Version: $Revision: 1.39 $
Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
l'Image). All rights reserved. See Doc/License.txt or
#include "gdcmGlobal.h"
#include "gdcmUtil.h"
#include "gdcmDataEntry.h"
-namespace gdcm
+
+namespace GDCM_NAME_SPACE
{
//-----------------------------------------------------------------------------
// Constructor / Destructor
{
if ( !empty )
{
- uint8_t fmiv[2] = {0x02,0x00};
ListDicomDirStudyElem const &elemList =
Global::GetDicomDirElements()->GetDicomDirMetaElements();
FillObject(elemList);
- SetEntryBinArea(fmiv, 0x0002,0x0001, 2);
}
}
/**
* \brief Writes the Meta Elements
* @param fp ofstream to write to
- * @param filetype type of the file (ACR, ImplicitVR, ExplicitVR, ...)
+ * @param filetype type of the file (ImplicitVR, ExplicitVR, JPEG, JPEG2000 ...)
* @return
*/
-void DicomDirMeta::WriteContent(std::ofstream *fp, FileType filetype)
-{
+void DicomDirMeta::WriteContent(std::ofstream *fp, FileType filetype,
+ bool dummy, bool dummy2)
+{
+ // 'File Meta Information Version'
+
+ uint8_t fmiv[2] = {0x02,0x00};
+ // FIXME : the following doesn't make the job (?!?)
+ //SetEntryBinArea(fmiv, 0x0002,0x0001, 2);
+ DataEntry *e00002_0001 = GetDataEntry(0x0002,0x0001);
+ e00002_0001->CopyBinArea(fmiv, 2);
+
// 'Media Storage SOP Instance UID'
DataEntry *e00002_0003 = GetDataEntry(0x0002,0x0003);
e00002_0003->SetString(Util::CreateUniqueUID());
e0000->SetString(sLen.str());
for (ListDocEntry::iterator i = DocEntries.begin();
- i != DocEntries.end();
- ++i)
- {
- (*i)->WriteContent(fp, filetype);
+ i!= DocEntries.end();
+ ++i)
+ {
+ // true : we are in MetaElements
+ (*i)->WriteContent(fp, filetype, true, false);
}
}