X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=TODO;h=4a208ce45e71d7b454f77bb83f35f059fa87a870;hb=738c5370d807730d3e59ada72a1534876c51c8fd;hp=420485aefda6dc4d0e1a3ee16aef7cfcd292e6a0;hpb=d74d6412b83d9f596597b54c3413d1a6ee9fb617;p=gdcm.git diff --git a/TODO b/TODO index 420485ae..4a208ce4 100644 --- a/TODO +++ b/TODO @@ -1,3 +1,22 @@ +* 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]). @@ -6,7 +25,6 @@ * 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 @@ -23,14 +41,32 @@ * 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); + } +