X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=TODO;h=7b9bf3fe0233d0970f3ae6ccd81002c321d7c37a;hb=2b320cf0cf4f79fda840939bf205503a9cbb59be;hp=51890575e48d2a14aa0a59b1765eb3623a70dd14;hpb=91e773ef94e63d181ea8e2a322ced8bf0427aa27;p=gdcm.git diff --git a/TODO b/TODO index 51890575..7b9bf3fe 100644 --- a/TODO +++ b/TODO @@ -10,22 +10,6 @@ Details: Comments: ------------- - ------------------------------------------------------------------------------ -Description: gdcmJpeg8 is strictly a copy/paste of gdcmJpeg12.cxx. -Date: 2004 Oct 13 -Attributed: -Details: -We should write the code in a common place, then include this 'cxx' file so the the define from gdcm_mangle redefine to the proper one. -Comments: -This will be usefull since I may need in the future a 16bits version of this reading ------------------------------------------------------------------------------ -Description: Change jpeg 'exit' call to standard c++ exception using the jpeg error -handler -Date: 2004 Oct 8 -Attributed: -Details: -Comments: ----------------------------------------------------------------------------- Description: Add kwsys as a subdir somewhere in gdcm Date: 2004 Oct 8 @@ -33,40 +17,63 @@ Attributed: Mathieu Details: Comments: ----------------------------------------------------------------------------- -Description: ljpeg -Date: 2004 Oct 8 -Attributed: Mathieu -Details: -Comments: ljpeg was rip from medcon and not the official one. medcon tried to -optimised function using MACRO (doh!), so it make its very unreadable and very -hard to fix warnings. Should go back to official source, copy proper copyright -and fix warnings on dashboard -13/10: update apparently no dicom toolkit use this lib as it is too buggy. We should use the ls-patch for ijg instead. Thus we can safely get rid of that lib. -14/10: PHILIPS_Gyroscan-12-MONO2-Jpeg_Lossless.dcm prove that I was right the old Cornwell lib is buggy and does not read anything. ------------------------------------------------------------------------------ Description: Extent reading support Date: 2004 Oct 8 Attributed: Mathieu Details: -Comments: All ITK/VTK readers support selecting extent. gdcm should support selecting -extent before being inserted into ITK +Comments: All ITK/VTK readers support selecting extent. gdcm should support +selecting extent before being inserted into ITK ----------------------------------------------------------------------------- -Description: Generate new UID each time we write DICOM -Date: 2004 Oct 8 -Attributed: Mathieu -Details: -Comments: According to DICOM ref a new UID should be created each we write a -DICOM images. I guess it should be an option so that we can still use md5sum to -check dicom file. The proposed way was: -http://www.creatis.insa-lyon.fr/pipermail/dcmlib/2004-September/000611.html - -Bah, comme Win32 pose encore pb: - echo "gdcm" | od -b - 0000000 147 144 143 155 012 -et si on prenait: - radical + 147.144.143.155 + IP + time() +Description: gdcmDicomDir and SQItem creation +Date: 2004 Nov 16 +Attributed: +Details: DicomDir creates some SQItem (by new). After that, it creates + the corresponding DicomDirPatient, etc. using the content of the SQItem + (the content is composed with some DocEntry's that can't be destroyed). + So, if the SQItem is deleted, then it's content is deleted to. But the + DicomDirPatient, etc. use the content of the SQItem. Then, the SQItem can't + be deleted, and when have memory leaks ----------------------------------------------------------------------------- +Description: [BUG] Better handling of unfound Dicom dictionary. + When gdcm doesn't find the Dicom dictionary (because it's + path to the directory of dictionary is uncorrect, either + because the install relative layout was broken after file moves + or because the environnement variable GDCM_DICT_PATH is + unpropely set), gdcm will: + 1/ print a warning + 2/ throw an exception (that is internaly UNcatched by gdcm) + that in most cases provoques the caller application to + exit uncleanly (uncatched excpetions in fine call abort() ). + Additionaly on Win32 the warning print isn't displayed because + exiting occurs prior to cerr or cout is flushed properly. +Date: 2004 Oct 15 +Attributed: +Details: fixes (from dirty to clean) + 1/ force Win32 to flush it's buffer so at least the user gets some + reason why it's application exited (when called in command + environement). Note: it looks like the "cerr << flush" fails. Sigh. + 2/ within gdcm catch the exception, display a decent warning, and + return to caller. + 3/ see the comment below on how to enhance the API and fix things + really cleanly. +Comments: ENH proposal: + The caller migth not be aware of the path to the dictionaries + on invocation of gdcm (think this path is set by the Interface + because the caller wants to skip the default gdcm dictionary in order + to provide his own ones e.g. another language based one). + Hence, gdcm should postpone the parsing of the default dictionary + instead of doing it on library entry. + This would enable two things: + - It would give a chance to the caller to set the path to + the dictionaries he whishes to use, through a call to + newly created DictSet::SetDictionaryPath( string ). + - It would avoid the burden of using the GDCM_DICT_PATH + environnement variable and enable GDCM CONTROL FROM WITHIN + THE API. Optionaly, if the caller didn't use the API to + provide his prefered path, gdcm could still default to + GDCM_DICT_PATH... +----------------------------------------------------------------------------- Description: vtk/vtkGdcmReader doesn't positionate the normal to the image Date: 2004 Oct 1 Attributed: @@ -88,43 +95,6 @@ Comments: should be an option defined with a flag (On/Off) in the vtkGdcmReader... ----------------------------------------------------------------------------- -Description: Fix the Python wrappers -Date: 2004 Sep 24 -Attributed: no -Details: -Comments: ------------------------------------------------------------------------------ -Description: clean up gdcmFile/gdcmHeader relationship -Date: 2004 Sep 24 -Attributed: -Details: - * simplify the API for the user (no need to call GetImageData() before - calling Write(). - * avoid memory leaks with with Pixel_Data. -Comments: ------------------------------------------------------------------------------ -Description: remove all autotools references -Date: 2004 Sep 24 -Attributed: no -Details: -Comments: ------------------------------------------------------------------------------ -Description: introduce namespace "gdcm" -Date: 2004 Jul 30 -Attributed: -Details: -Comments: - 1/ Problem: using enum with name like 'Unknow' on .Net, or LP on cygwin - causes problems. - 2/ Question: when introducing the namespace, should we remove the gdcm - prefix from classes or keep it ? ------------------------------------------------------------------------------ -Description: complete the doxygen Documentation -Date: 2004 Sep 24 -Attributed: -Details: -Comments: ------------------------------------------------------------------------------ Description: test the private dictionary part. Date: 2004 Sep 24 Attributed: @@ -133,58 +103,6 @@ Comments: * Frog: where can we obtain such a private/dictionary and the corresponding Dicom file ? Any examples on-line ? ----------------------------------------------------------------------------- -Description: fix definitively the memory leaks problems. -Date: 2004 Sep 24 -Attributed: -Details: -Comments: There is a nightly dashboard that run valgrind every night -(zorglub | GDCM-Linux-g++) ------------------------------------------------------------------------------ -Description: test gdcm on a big endian OS. -Date: 2004 Sep 24 -Attributed: -Details: -Comments: There is a nightly dashboard that run on MacOSX each nite -(midworld.kitwarein | GDCM-DarwinG5-g++ ) ------------------------------------------------------------------------------ -Description: More tests ! -Date: 2004 Sep 24 -Attributed: -Details: - * an example of new test could be to clone a Dicom image by - copying gdcmDocEntry one after the other -Comments: - * look at traversal used in Example/FlatHashTablePrint.cxx ------------------------------------------------------------------------------ -Description: revoir la gestion des resources, win32 permet d'inclure des - fichiers texte (=dicomV3.dic) dans une dll ou quelquechose du genre. -Date: 2004 Sep 24 -Attributed: Mathieu -Details: -Comments: - * Frog: no comprendo !? De plus est-ce portable ? - * To improve load time it could be usefull to have the dictionary directly in - 'c++' code or in a more binary format. - * This will also solve some issues where /dummy/ user did nor set - GDCM_DICT_PATH properly neither 'make install' ------------------------------------------------------------------------------ -Description: Convert the C-like IO to C++ IO: -Date: 2004 Jul 30 -Attributed: -Details: - remove all the C-oriented IO references like FILE*, fread... - and replace them with the C++ fstream notation. - Provide overload of operators << and >> for any gdcm class using file IO. -Comments: - * Question: the underlying jpeg libraries (written in C) use the FILE* - notation. Is there a way to still use fstream in gdcm, and - build or pass the proper FILE* to jpeg libs ? - * Binary IO references are available at - http://www.angelfire.com/country/aldev0/cpphowto/cpp_BinaryFileIO.html - * The internal API should be rewritten so that gdcm speaking to jpeg lib is - done with stream/string and not directly opened FILE* - * No stdio.h anymore anywhere tolerated ! ------------------------------------------------------------------------------ Description: generate methods based on VM. Date: 2004 Jul 30 Attributed: @@ -222,7 +140,6 @@ Attributed: Details: This is to be used for version assertion with gdcmPython Comments: ----------------------------------------------------------------------------- ------------------------------------------------------------------------------ * vtk/vtkGdcmHeader.cxx: if speed becomes a concern some changes can be made at the cost of memory consumption (refer to header of vtk/vtkGdcmHeader.cxx) @@ -237,8 +154,6 @@ Comments: gdcmHeader::SetPubElValLengthByNumber (which is based on gdcmElValSet::SetElValueLengthByNumber) is used nowhere... ----------------------------------------------------------------------------- -* 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 be moved away to ElValue class on condition of transmitting the @@ -246,9 +161,6 @@ Comments: would allow those method to avoid artificial calls to ElValue::GetElement(), ElValue::GetVR()... ----------------------------------------------------------------------------- -* Eat leading_trailing_whitespace (found in python/gdcmPython/gdcmi) should - be used when parsing the dictionary in C++ ! ------------------------------------------------------------------------------ * Group length is not a unique tag in a file. Hence avoid putting it in the element values dictionary without doing something smarter (say, instead of storing the length store the group and the length @@ -291,3 +203,4 @@ Comments: a.write(output); } ----------------------------------------------------------------------------- +