+* Split gdcmHeader through inheritance to create gdcmHeaderHelper
+ that would regroup all the heuristics above a gdcmHeader e.g. the
+ functions GetXsize(), GetXSpacing(), GetXImagePosition()...
+ Those functions are the one using the results of the parsing as
+ done by gdcmHeader to provide the user with heuristics above various
+ values found in the header (the simplest form being to default a value).
+* vtk/vtkGdcmHeader.cxx: if speed becomes a concern some changes can
+ be made a the cost of memory consumption (refer to header of
+ vtk/vtkGdcmHeader.cxx)
+* Add a GetVersion() global function.
+* gdcmElValSet::SetElValueLengthByNumber IMNSHO should be trashed.
+ It's only purpose is a onliner substitute to calling GetElValueByNumber
+ and then SetLength. This only obfuscates the caller code more than
+ clarifying it.
+ Besides the definition of gdcmElValSet::SetElValueLengthByNumber itself
+ it quite poor since it is a almost exact copy of
+ gdcmElValSet::GetElValueByNumber except for the returned code.
+ gdcmHeader::SetPubElValLengthByNumber (which is based on
+ gdcmElValSet::SetElValueLengthByNumber) is used nowhere...
* The declarations commented out and starting with "TODO Swig" (try
grep "TODO Swig" *.h) needed to be temporarily removed for swig to
proceed correctly (in fact problems appears at loading of _gdcm.[so/dll]).
* As stated by the first lines of Test/ExceptionAndPython/README, it looks
like we can move back to the exceptions and remove the errno stuff from
src/gdcm* !
-* adapt python/gdcmPython/Makefile to automake/autoconf tools
* Fix the bug in Test/bug1.cxx (see first comment line): Win32 only.
* All (or at least many of) the methods of gdcmHeader whose only arguments
are an ElValue* (e.g. FindLength, FindVR, LoadElementValue...) can
* GetPubElValByNumber doit faire la difference entre chaine vide
et chaine pas touve''. Eventuellement raiser une exception ?
* gdcmHeader::LoadElements only loads the element whose length is
- below the specified size. When accessing the value of such a element
+ below the specified size. When accessing the value of such an element
the content is unfound ! Find a decent way of loading the value on
explicit demand.
-* fournir une method qui ne fait que lire les elements passes en arguments
+* JPR: fournir une method qui ne fait que lire les elements passes en arguments
sous forme d'une liste.
-* gdcmHeader::CheckSwap() dans le cas ACR pas propre, degager tout de suite
- si on a deduit que c'en est pas...
+* JPR: gdcmHeader::CheckSwap() dans le cas ACR pas propre, degager tout de
+ suite si on a deduit que c'en est pas...
* python /usr/lib/python2.2/site-packages/DaVaW/demo/dvwDcmReader.py
and load image /home/frog/cvs/DCMlib/Data/CT-MONO2-16-ankle.dcm
will yield wrong coloring scheme as opposed to
affim filein=/home/frog/cvs/DCMlib/Data/CT-MONO2-16-ankle.dcm
+* gdcmFile should implement the following:
+ gdcmFile WriteDicom;
+ WriteDicom.SetFileName("MyDicomFile.dcm");
+ string * AllTags = gdcmHeader.GetDcmTagNames();
+ WriteDicom.SetDcmTag(AllTags[5], "253");
+ WriteDicom.SetDcmTag("Patient Name", "bozo");
+ WriteDicom.SetDcmTag("Patient Name", "bozo");
+ WriteDicom.SetImageData(Image);
+ WriteDicom.Write();
+
+ Anonymize(ostream& output) {
+ a = gdcmFile("toto1");
+ a.SetPubValueByName("Patient Name", "");
+ a.SetPubValueByName("Date", "");
+ a.SetPubValueByName("Study Date", "");
+ a.write(output);
+ }
+