X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=ChangeLog;h=ed60d8949e1ab9bc60f7ee7bc25f3a9e248b3607;hb=bb267016446eab423df841903f11dff35e4898f8;hp=36525709bb5bf44557453a3c67c0fc8280f0b839;hpb=f66abc53491ab130c2dbea483ba241edf6da2e88;p=gdcm.git diff --git a/ChangeLog b/ChangeLog index 36525709..ed60d894 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,228 @@ +2003-03-12 Eric Boix + * gdcmPython/__init__.py fix of GDCM_DICT_PATH which was not + to exported to the environement (see gdcmPython/testSuite.py + for usage). + * src/gdcmElValSet.[cxx/h], gdcmElValue.[cxx/h], gdcmFile.[cxx/h], + gdcmHeader.[cxx/h]: ElValSet class renamed to gdcmElValSet, and + ElValue class renamed to gdcmElValue for obvious consistency reasons. + +2003-03-10 Eric Boix + * gdcmPython/__init__.py doesn't crash anymore when running in + in InstallMode or PreInstallMode but with an environement given + value of GDCM_DICT_PATH. + * src/gdcmDictSet.[cxx/h] coding style. + +2003-03-06 Eric Boix + * src/gdcmHeader.h and gdcmHeader.cxx Coding style + doxigenation. + * src/gdcm.h general comments moved to TODO, and README + * src/gdcm.h should now be seen as a user commodity (including it + should suffice to fully use gdcm). It is nowhere including within + any of the kernel files src/*.cxx and src/*.h. + +2003-03-05 Eric Boix + * src/gdcm.h splitted in gdcmCommon.h, gdcmDict.h, gdcmDictEntry.h, + gdcmDictSet.h, gdcmElValSet.h, gdcmElValue.h, gdcmFile.h, + gdcmHeader.h + * src/gdcm*.cxx only include their corresponding include file + (as opposed to gdcm.h) + * gdcmPython/gdcm.i changed accordingly + * Test/Makefile.am corrected and added NEWS, AUTHORS in order for + the autogen.sh generated "make snapshot" command to work. + * autogen.sh removed history related references to crea package. + +2003-03-04 Eric Boix + * distutilsSwigCPlusPlus.py work around some swig portability + bug. + +2003-03-03 Eric Boix + * Eventually, python/gdcmPython was renamed to gdcmPython. This + was done in a last ditch attempt to get setup.py _really_ + operationnal. The python/gdcmPython layaout add the advantage + of hidding away the python related distutils specific files + (MANIFEST.in, setup.py, distutils*.py...) from the main directory. + Alas, the src directory was out of scope (i.e. it's relative + position to setup.py was ../src) which made things impossible to + handle (see previous version of python/setup.py). Crossing fingers... + +2003-02-20 Eric Boix + * python/setup.py now works on Un*x. (harder than I thougth) + * python/distutilsSwigCPlusPlus.py can now have include files + among the list of sources. + +2003-02-20 Benoit Regrain + * src/gdcmHeader.cxx : bug fix - opening dicom file in binary !!! + * modifications in MSVC projects + +2003-02-19 Eric Boix + * As stated by the first lines of Test/ExceptionAndPython/README, it + looks like we can move back to original usage of exception within + src/gdcm* and hence remove the errno stuff that was introduced + as a quick and dirty fixture of this problem (added to the TODO). + * Doc/Doxyfile configuration file for Doxygen and corresponding + README file for usage added. + * Test/testWrite.cxx added. This new test comes from a split of + test.cxx that is now reverted to its original purpous i.e. + testing the proper parsing of a Dicom related file. + testWrite.cxx concentrates on testing the IO part of gdcm. + * Test/bug1.cxx (containing a bug on WIn32) added. + * src/gdcm.h, gdcmHeader.cxx, gdcmDictSet.cxx: + - gdcmHeader::GetPubTagNames and gdcmHeader::GetPubTagNamesByCategory + whose purpose is to publish the content of the TagNames of the + Dicom public dictionnary were not accessible without an + instance of class gdcmHeader. + - those methods are now static methods of gdcmDictSet and hence + require no instances at all to be invocated. + - within gdcmDictSet this change required to change some method + to class methods (i.e. are now static) among which SetDictPath + (renamed to BuildDictPath) and LoadDefaultPubDict. + * python/gdcmPython/demo/printGroupedPublicDict.py changed to illustrate + the above changes by calling the new method classes of gdcmDictSet. + * python/gdcmPython/__init__.py now exposes gdcm.gdcmDictSet for + the above to be effective. + * python/gdcmPython: in order to wrap properly the above changes + for Python, swig version now needs to be > 1.3.17. + * python/gdcmPython/Makefile fixed to adapt itself to new + configure/make shema introduced by Johan Montagnat (thanks for the + contribution). Alas this Makefile cannot be turned into a proper + Makefile.am without some heavy changes in the configure.in + (for python dectection). + * python/gdcmPython/gdcm.i: the out typemap map>* + now avoids publishing the empty entries. + +2003-02-13 Benoit Regrain + * python/setup.py : bug fix concerning install under windows + ExtraPath reused :-P + * gdcm.dsw : bug fix concerning path for libraries for python !!! + +2003-02-13 Benoit Regrain + * Dicts/dicomV3.dic : remove double spaces !!! + * src/gdcmElValSet.cxx : bug fix concerning windows compiler + * python/gdcmPython/win32/gdcmpycomplet.dsp : bug fix concerning paths + and links + +2003-01-28 Eric Boix + * src/gdcmHeader.cxx added a post header parsing AddAndDefaultElements + method. Doxygenation. + * src/gdcm.h clean up of JPR spurious comments. + +2003-01-17 Eric Boix + * python/distutilsSwigCPlusPlus.py now properly collects the + shadow classes generated by "swig -c++" (gdcm.py in our case) + when using "python setup.py install". + * python/gdcmPython/__init__.py imports gdcm.py and only manually + reexports the working classes. + * src/gdcmHeader.cxx all the try/catch/throw calls were replaced + by the classical C errno scheme. This is to prevent an obscure + behavior of the python wrappers when importing wxPython.wx prior + to gdcmPython (which ended up in an abort call). An illustration + of this oddity can be found in the Test/ExceptionAndPython + subdir (see the README file). This problem probably due to + an combination of g++ and dynamic loading. + * added Test/ExceptionAndPython (see above) + +2003-01-17 Eric Boix + * Changed the layout of the python part to avoid bloating main + directory with setup.py, distutilsSwigCPlusPlus.py, MANIFEST.in + i.e. the distutils arsenal. All the python related stuff is + again in a python subdir, but the package itself is now in + python/gdcmPython. + * setup.py was cleaned up: + - pythonIncludePath removed + - python setup.py bdist target is now functional. + * gdcmPython/__init__.py doesn't export FileName any more (to avoid + collision with other packages). gdcmPython/demo/*.py changed + accordingly. +2003-01-15 Eric Boix + * python subdir moved to gdcmPython (preparation of distutils packaging). + * gdcmPython/setup.py and distutilsSwigCPlusPlus.py added. The + distutils installer is operational. + * - gdcmPython/__init__.py now properly loads the swig generated + shadow classes (from gdcm.py). + - gdcmPython/demo/*.py changed to import the package gdcmPython + instead of gdcmPython/demo/load.py. + - gdcmPython/testSuite.py changed to import the package gdcmPython. + + +2002-12-16 Eric Boix + * src/gdcm.h, src/gdcmHeader.cxx: added GetPubTagNames() resp. + GetPubTagNamesByCategory() to gdcmHeader that return a list of the + entries within the associated public Dicom dictionary resp. the same + information but sorted by the fourth field (PAT, IMG, DIR) of the + dictionary. + - Dicts/dicomV3.dic Entries which had and unspecified fourth field + are now in the "???" group. + - python/gdcm.i changed accordingly, + - python/demo/printGroupedPublicDict.py added, that gives an example + of the above new functionalities in Python. + +2002-12-11 Eric Boix + * src/gdcm.h, gdcmHeader.cxx: + - historic references to glib's g_malloc and g_free (#defined) + were definitively removed. + - gdcm.h: cosmetic changes (part of comments moved to Doc/requirements) + * src/gdcmElValSet.cxx: + - GetElement(guint32, guint32) renamed to GetElementByNumber. + - GetElValue(guint32, guint32) renamed to GetElValueByNumber. + - GetElValue(string) renamed to GetElValueByName. + - Added GetElementByName(string). + * src/gdcmHeader.cxx: added + - GetPubElValRepByNumber(guint16, guint16) + - GetPubElValRepByName(string) + - GetShaElValRepByNumber(guint16, guint16) + - GetShaElValRepByName(string) + - GetShaElValByNumber(guint16, guint16) + - GetShaElValRepByName(string) + - GetElValRepByNumber(guint16, guint16) + - GetElValRepByName(string) + - GetElValByNumber(guint16, guint16) + - GetElValRepByName(string) + * Doc/requirements.txt added. + +2002-12-9 Eric Boix + * Test/Makefile building now depends on the one of libgdcm.so + * src/gdcmHeader.cxx and gdcm.h are now OB (undefined length encoded + pixel data) aware which enables finding the address (offset) of + the pixel data of JPEG encoded DICOM files. This leaves only a single + file in the testSuite whose pixel data address (offset) is unknown. + * python/testSuite.py changed accordingly. + +2002-12-6 Christophe Odet + Hugues Benoit-Cattin + Eric.Boix + * VC++ has some strong limitations when working with the STL, as stated + in http://support.microsoft.com/support/kb/articles/Q168/9/58.ASP : + "Also note that some STL containers (map, set, queue, list, deque) + cannot be exported. [...] + Some STL classes contain nested classes. These classes can not + be exported. [...] + This is caused by a designed limitation that once a template + class is instantiated, it can not be re-instantiated and + exported." + Since our usage of map<> is ubiquitous in gdcm, this "designed + limitation" of VC++ is a pitfall. + Hence the Python wrappers of gdcm cannot be incrementally linked + against the c++ dynamic library. The dirty but only workaround is + to forget about incremental link of dynamic libraries and to generate + the Python wrappers library with the inclusions of the underlying C++ + library. + The following modifications concern this matter on Win32/VC++: + - wrapping python correct with standalone wrapped dll (don't use separate + dll under windows !!!!) + - python21_d debug mode enabled (ask Frog how to use it :-) + - NO problem with having an STL member of class for example string in C++ + WITH THE RESTRICTION OF FORGETING ABOUT INCREMENTAL LINK. + - Python test of dcmlib in Python is ok under windows on a large set + (one) of image(s). + * removed glib references + * typedef's inserted in gdcm.i for correct swig type management + +2002-11-27 Eric Boix + * python/demo/*.py load.py extracted from test.py. Added explore.py + that only displays required tags and testAll.py that parses all + the files of the testsuite without using unittest. + * python/testSuite.py other additional test on new files added. + * Data/* new test files added accordingly to the testSuite. + * src/gdcmHeader.cxx avoid overwriting of the dictionary when + the vr in the file differs from the one of the dictionary. + 2002-11-20 Eric Boix * src/gdcm.h and gdcmHeader.cxx gdcm no longer loads all the elements values, but limits itself to values which are below a user specified @@ -43,6 +268,17 @@ VR files. * src/gdcmHeader::FindVR: hard way fix of falsely explicit vr files. +2002-11-8 Eric Boix + * Adaptation for porting to VC++: + - src/gdcm.h + o forced to use std namespace (for string to be known) + o all class use __declspec export style on WIN32 + - src/gdcmUtil.cxx new Exit method that wraps the exit call + (in stdlib.h on Win32 but in std:: for gcc) + * src/gdcmDictSet::SetDictPath adds a trailing / to environement + variable GDCM_DICT_PATH. + * src/gdcmHeader.cxx verbose comments made discrete. + 2002-11-7 Eric Boix * python/gdcm.i: added a typemap that converts a C++ hashing table to native Python dictionary.