2004-01-13 Benoit Regrain
* gdcmPython/testSuite.py : test the readable flag of file for tests
+ * src/gdcmDict.cxx, gdcmElValSet.cxx : bug fix under windows for prints.
+ It's lied to the stl compilation by MSVC (windows, always windows...)
2004-01-12 Benoit Regrain
* src/*.h : add comments
-Microsoft Developer Studio Workspace File, Format Version 6.00\r
-# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!\r
-\r
-###############################################################################\r
-\r
-Project: "_vtkGdcm"=.\GDCMPYTHON\WIN32\_vtkGdcm.dsp - Package Owner=<4>\r
-\r
-Package=<5>\r
-{{{\r
-}}}\r
-\r
-Package=<4>\r
-{{{\r
- Begin Project Dependency\r
- Project_Dep_Name libgdcmljpeg\r
- End Project Dependency\r
- Begin Project Dependency\r
- Project_Dep_Name libgdcmijpeg8\r
- End Project Dependency\r
- Begin Project Dependency\r
- Project_Dep_Name libgdcmijpeg12\r
- End Project Dependency\r
-}}}\r
-\r
-###############################################################################\r
-\r
-Project: "gdcmdll"=.\src\win32\gdcmdll.dsp - Package Owner=<4>\r
-\r
-Package=<5>\r
-{{{\r
-}}}\r
-\r
-Package=<4>\r
-{{{\r
- Begin Project Dependency\r
- Project_Dep_Name libgdcmljpeg\r
- End Project Dependency\r
- Begin Project Dependency\r
- Project_Dep_Name libgdcmijpeg8\r
- End Project Dependency\r
- Begin Project Dependency\r
- Project_Dep_Name libgdcmijpeg12\r
- End Project Dependency\r
-}}}\r
-\r
-###############################################################################\r
-\r
-Project: "gdcmpyembedded"=.\gdcmPython\win32\gdcmpyembedded.dsp - Package Owner=<4>\r
-\r
-Package=<5>\r
-{{{\r
-}}}\r
-\r
-Package=<4>\r
-{{{\r
- Begin Project Dependency\r
- Project_Dep_Name libgdcmljpeg\r
- End Project Dependency\r
- Begin Project Dependency\r
- Project_Dep_Name libgdcmijpeg8\r
- End Project Dependency\r
- Begin Project Dependency\r
- Project_Dep_Name libgdcmijpeg12\r
- End Project Dependency\r
-}}}\r
-\r
-###############################################################################\r
-\r
-Project: "gdcmtest"=.\TEST\WIN32\gdcmtest\gdcmtest.dsp - Package Owner=<4>\r
-\r
-Package=<5>\r
-{{{\r
-}}}\r
-\r
-Package=<4>\r
-{{{\r
- Begin Project Dependency\r
- Project_Dep_Name gdcmdll\r
- End Project Dependency\r
-}}}\r
-\r
-###############################################################################\r
-\r
-Project: "libgdcmijpeg12"=.\SRC\WIN32\libgdcmijpeg12.dsp - Package Owner=<4>\r
-\r
-Package=<5>\r
-{{{\r
-}}}\r
-\r
-Package=<4>\r
-{{{\r
-}}}\r
-\r
-###############################################################################\r
-\r
-Project: "libgdcmijpeg8"=.\SRC\WIN32\libgdcmijpeg8.dsp - Package Owner=<4>\r
-\r
-Package=<5>\r
-{{{\r
-}}}\r
-\r
-Package=<4>\r
-{{{\r
-}}}\r
-\r
-###############################################################################\r
-\r
-Project: "libgdcmljpeg"=.\SRC\WIN32\libgdcmljpeg.dsp - Package Owner=<4>\r
-\r
-Package=<5>\r
-{{{\r
-}}}\r
-\r
-Package=<4>\r
-{{{\r
-}}}\r
-\r
-###############################################################################\r
-\r
-Project: "vtkGdcmTest"=.\VTK\WIN32\vtkGdcmTest.dsp - Package Owner=<4>\r
-\r
-Package=<5>\r
-{{{\r
-}}}\r
-\r
-Package=<4>\r
-{{{\r
- Begin Project Dependency\r
- Project_Dep_Name vtkgdcm\r
- End Project Dependency\r
-}}}\r
-\r
-###############################################################################\r
-\r
-Project: "vtkgdcm"=.\VTK\WIN32\vtkgdcm.dsp - Package Owner=<4>\r
-\r
-Package=<5>\r
-{{{\r
-}}}\r
-\r
-Package=<4>\r
-{{{\r
- Begin Project Dependency\r
- Project_Dep_Name libgdcmljpeg\r
- End Project Dependency\r
- Begin Project Dependency\r
- Project_Dep_Name libgdcmijpeg8\r
- End Project Dependency\r
- Begin Project Dependency\r
- Project_Dep_Name libgdcmijpeg12\r
- End Project Dependency\r
-}}}\r
-\r
-###############################################################################\r
-\r
-Global:\r
-\r
-Package=<5>\r
-{{{\r
-}}}\r
-\r
-Package=<3>\r
-{{{\r
-}}}\r
-\r
-###############################################################################\r
-\r
+Microsoft Developer Studio Workspace File, Format Version 6.00
+# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
+
+###############################################################################
+
+Project: "_vtkGdcm"=.\GDCMPYTHON\WIN32\_vtkGdcm.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+ Begin Project Dependency
+ Project_Dep_Name libgdcmljpeg
+ End Project Dependency
+ Begin Project Dependency
+ Project_Dep_Name libgdcmijpeg8
+ End Project Dependency
+ Begin Project Dependency
+ Project_Dep_Name libgdcmijpeg12
+ End Project Dependency
+}}}
+
+###############################################################################
+
+Project: "gdcmTest"=.\TEST\WIN32\gdcmTest.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+ Begin Project Dependency
+ Project_Dep_Name gdcmdll
+ End Project Dependency
+}}}
+
+###############################################################################
+
+Project: "gdcmdll"=.\src\win32\gdcmdll.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+ Begin Project Dependency
+ Project_Dep_Name libgdcmljpeg
+ End Project Dependency
+ Begin Project Dependency
+ Project_Dep_Name libgdcmijpeg8
+ End Project Dependency
+ Begin Project Dependency
+ Project_Dep_Name libgdcmijpeg12
+ End Project Dependency
+}}}
+
+###############################################################################
+
+Project: "gdcmpyembedded"=.\gdcmPython\win32\gdcmpyembedded.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+ Begin Project Dependency
+ Project_Dep_Name libgdcmljpeg
+ End Project Dependency
+ Begin Project Dependency
+ Project_Dep_Name libgdcmijpeg8
+ End Project Dependency
+ Begin Project Dependency
+ Project_Dep_Name libgdcmijpeg12
+ End Project Dependency
+}}}
+
+###############################################################################
+
+Project: "libgdcmijpeg12"=.\SRC\WIN32\libgdcmijpeg12.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+}}}
+
+###############################################################################
+
+Project: "libgdcmijpeg8"=.\SRC\WIN32\libgdcmijpeg8.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+}}}
+
+###############################################################################
+
+Project: "libgdcmljpeg"=.\SRC\WIN32\libgdcmljpeg.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+}}}
+
+###############################################################################
+
+Project: "vtkGdcmTest"=.\VTK\WIN32\vtkGdcmTest.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+ Begin Project Dependency
+ Project_Dep_Name vtkgdcm
+ End Project Dependency
+}}}
+
+###############################################################################
+
+Project: "vtkgdcm"=.\VTK\WIN32\vtkgdcm.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+ Begin Project Dependency
+ Project_Dep_Name libgdcmljpeg
+ End Project Dependency
+ Begin Project Dependency
+ Project_Dep_Name libgdcmijpeg8
+ End Project Dependency
+ Begin Project Dependency
+ Project_Dep_Name libgdcmijpeg12
+ End Project Dependency
+}}}
+
+###############################################################################
+
+Global:
+
+Package=<5>
+{{{
+}}}
+
+Package=<3>
+{{{
+}}}
+
+###############################################################################
+
#include "gdcmDict.h"
#include "gdcmUtil.h"
#include <fstream>
+#ifdef GDCM_NO_ANSI_STRING_STREAM
+# include <strstream>
+# define ostringstream ostrstream
+# else
+# include <sstream>
+#endif
/**
* \ingroup gdcmDict
* @param os The output stream to be written to.
*/
void gdcmDict::PrintByKey(std::ostream& os) {
+ std::ostringstream s;
+
for (TagKeyHT::iterator tag = KeyHt.begin(); tag != KeyHt.end(); ++tag){
- os << "Tag : ";
- os << "(" << std::hex << tag->second->GetGroup() << ',';
- os << std::hex << tag->second->GetElement() << ") = " << std::dec;
- os << tag->second->GetVR() << ", ";
- os << tag->second->GetFourth() << ", ";
- os << tag->second->GetName() << "." << std::endl;
+ s << "Tag : ";
+ s << "(" << std::hex << tag->second->GetGroup() << ',';
+ s << std::hex << tag->second->GetElement() << ") = " << std::dec;
+ s << tag->second->GetVR() << ", ";
+ s << tag->second->GetFourth() << ", ";
+ s << tag->second->GetName() << "." << std::endl;
}
+ os << s.str();
}
/**
* @param os The output stream to be written to.
*/
void gdcmDict::PrintByName(std::ostream& os) {
+ std::ostringstream s;
+
for (TagNameHT::iterator tag = NameHt.begin(); tag != NameHt.end(); ++tag){
- os << "Tag : ";
- os << tag->second->GetName() << ",";
- os << tag->second->GetVR() << ", ";
- os << tag->second->GetFourth() << ", ";
- os << "(" << std::hex << tag->second->GetGroup() << ',';
- os << std::hex << tag->second->GetElement() << ") = " << std::dec << std::endl;
+ s << "Tag : ";
+ s << tag->second->GetName() << ",";
+ s << tag->second->GetVR() << ", ";
+ s << tag->second->GetFourth() << ", ";
+ s << "(" << std::hex << tag->second->GetGroup() << ',';
+ s << std::hex << tag->second->GetElement() << ") = " << std::dec << std::endl;
}
+ os << s.str();
}
/**
gdcmElValue* EntryToDelete = tag->second;
if ( EntryToDelete )
delete EntryToDelete;
+ tag->second=NULL;
}
+
tagHt.clear();
// Since Add() adds symetrical in both tagHt and NameHt we can
// assume all the pointed gdcmElValues are already cleaned-up when
TSKey v;
std::string d2;
gdcmTS * ts = gdcmGlobal::GetTS();
+ std::ostringstream s;
for (TagElValueHT::iterator tag = tagHt.begin();
tag != tagHt.end();
v = tag->second->GetValue();
o = tag->second->GetOffset();
d2 = _CreateCleanString(v); // replace non printable characters by '.'
-
- os << tag->first << ": ";
- os << " lgr : " << tag->second->GetLength();
- os << ", Offset : " << o;
- os << " x(" << std::hex << o << std::dec << ") ";
- os << "\t[" << tag->second->GetVR() << "]";
- os << "\t[" << tag->second->GetName() << "]";
- os << "\t[" << d2 << "]";
-
+
+ s << tag->first << ": ";
+ s << " lgr : " <<tag->second->GetLength();
+ s << ",\t Offset : " << o;
+ s << " x(" << std::hex << o << std::dec << ") ";
+ s << "\t[" << tag->second->GetVR() << "]";
+ s << "\t[" << tag->second->GetName() << "]";
+ s << "\t[" << d2 << "]";
+
// Display the UID value (instead of displaying the rough code)
if (g == 0x0002) { // Some more to be displayed ?
if ( (e == 0x0010) || (e == 0x0002) )
- os << " ==>\t[" << ts->GetValue(v) << "]";
+ s << " ==>\t[" << ts->GetValue(v) << "]";
} else {
if (g == 0x0008) {
if ( (e == 0x0016) || (e == 0x1150) )
- os << " ==>\t[" << ts->GetValue(v) << "]";
+ s << " ==>\t[" << ts->GetValue(v) << "]";
}
}
- os << std::endl;
+ s << std::endl;
}
+
guint32 lgth;
char greltag[10]; //group element tag
o = (*i)->GetOffset();
sprintf(greltag,"%04x|%04x",g,e);
d2 = _CreateCleanString(v); // replace non printable characters by '.'
- os << greltag << ": lgth : ";
+ s << greltag << ": lgth : ";
lgth = (*i)->GetReadLength();
if ( lgth == 0xffffffff)
- os << std::hex << lgth << std::dec ;
+ s << std::hex << lgth << std::dec ;
else
- os << lgth;
- os << ", Offset : " << o;
- os << " x(" << std::hex << o << std::dec << ") ";
- os << "\t[" << (*i)->GetVR() << "]";
- os << "\t[" << (*i)->GetName() << "]";
- os << "\t[" << d2 << "]";
+ s << lgth;
+ s << ",\t Offset : " << o;
+ s << " x(" << std::hex << o << std::dec << ") ";
+ s << "\t[" << (*i)->GetVR() << "]";
+ s << "\t[" << (*i)->GetName() << "]";
+ s << "\t[" << d2 << "]";
// Display the UID value (instead of displaying the rough code)
if (g == 0x0002) { // Any more to be displayed ?
if ( (e == 0x0010) || (e == 0x0002) )
- os << " ==>\t[" << ts->GetValue(v) << "]";
+ s << " ==>\t[" << ts->GetValue(v) << "]";
} else {
if (g == 0x0008) {
if ( (e == 0x0016) || (e == 0x1150) )
- os << " ==>\t[" << ts->GetValue(v) << "]";
+ s << " ==>\t[" << ts->GetValue(v) << "]";
}
}
- os << std::endl;
- }
+ s << std::endl;
+ }
+ os<<s.str();
}
/**
-// $Header: /cvs/public/gdcm/src/Attic/gdcmHeader.cxx,v 1.121 2003/12/22 12:46:16 regrain Exp $
+// $Header: /cvs/public/gdcm/src/Attic/gdcmHeader.cxx,v 1.122 2004/01/13 11:13:08 regrain Exp $
#include "gdcmHeader.h"
// Refer to gdcmHeader::CheckSwap()
#define HEADER_LENGTH_TO_READ 256
// Refer to gdcmHeader::SetMaxSizeLoadElementValue()
-//#define _MaxSizeLoadElementValue_ 1024
#define _MaxSizeLoadElementValue_ 4096
/**
* \ingroup gdcmHeader
Dicts = (gdcmDictSet*)0;
RefPubDict = (gdcmDict*)0;
RefShaDict = (gdcmDict*)0;
+
+
return;
}
# Begin Special Build Tool\r
SOURCE="$(InputPath)"\r
PostBuild_Desc=Copy for test\r
-PostBuild_Cmds=copy ..\..\lib\gdcmdll.dll ..\..\gdcmPython\ copy ..\..\lib\gdcmdll.dll ..\..\test\ copy Release\gdcmdll.lib ..\..\lib\ \r
+PostBuild_Cmds=copy ..\..\lib\gdcmdll.dll ..\..\gdcmPython\ copy ..\..\lib\gdcmdll.dll ..\..\test\ copy Release\gdcmdll.lib ..\..\lib\ \r
# End Special Build Tool\r
\r
!ELSEIF "$(CFG)" == "gdcmdll - Win32 Debug"\r
# Begin Special Build Tool\r
SOURCE="$(InputPath)"\r
PostBuild_Desc=Copy for test\r
-PostBuild_Cmds=copy ..\..\lib\gdcmdll.dll ..\..\gdcmPython\ copy ..\..\lib\gdcmdll.dll ..\..\test\ copy Debug\gdcmdll.lib ..\..\lib\ \r
+PostBuild_Cmds=copy ..\..\lib\gdcmdll.dll ..\..\gdcmPython\ copy ..\..\lib\gdcmdll.dll ..\..\test\ copy Debug\gdcmdll.lib ..\..\lib\ \r
# End Special Build Tool\r
\r
!ENDIF \r
# Begin Group "Header Files"\r
\r
# PROP Default_Filter "h;hpp;hxx;hm;inl"\r
+# Begin Source File\r
+\r
+SOURCE=..\gdcm.h\r
+# End Source File\r
+# Begin Source File\r
+\r
+SOURCE=..\gdcmCommon.h\r
+# End Source File\r
+# Begin Source File\r
+\r
+SOURCE=..\gdcmDict.h\r
+# End Source File\r
+# Begin Source File\r
+\r
+SOURCE=..\gdcmDictEntry.h\r
+# End Source File\r
+# Begin Source File\r
+\r
+SOURCE=..\gdcmDictSet.h\r
+# End Source File\r
+# Begin Source File\r
+\r
+SOURCE=..\gdcmElValSet.h\r
+# End Source File\r
+# Begin Source File\r
+\r
+SOURCE=..\gdcmElValue.h\r
+# End Source File\r
+# Begin Source File\r
+\r
+SOURCE=..\gdcmException.h\r
+# End Source File\r
+# Begin Source File\r
+\r
+SOURCE=..\gdcmFile.h\r
+# End Source File\r
+# Begin Source File\r
+\r
+SOURCE=..\gdcmHeader.h\r
+# End Source File\r
+# Begin Source File\r
+\r
+SOURCE=..\gdcmHeaderHelper.h\r
+# End Source File\r
+# Begin Source File\r
+\r
+SOURCE=..\gdcmIdo.h\r
+# End Source File\r
+# Begin Source File\r
+\r
+SOURCE=..\gdcmTS.h\r
+# End Source File\r
+# Begin Source File\r
+\r
+SOURCE=..\gdcmUtil.h\r
+# End Source File\r
+# Begin Source File\r
+\r
+SOURCE=..\gdcmVR.h\r
+# End Source File\r
# End Group\r
# Begin Group "Resource Files"\r
\r