]> Creatis software - gdcm.git/blobdiff - ChangeLog
* src/*.[h] all occurences of stl classes are now prefixed with
[gdcm.git] / ChangeLog
index 302a1eca8619fa90b8aeb2a6ddb1a9d0f6f1a146..1c75af2fbb2303221a791b7c0c478cb8cec9538b 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,208 @@
+2003-05-21  Eric Boix <Eric.Boix@creatis.insa-lyon.fr> with JPR
+      * Added python wrappers of vtkGdcmReader vtk class (see the
+        source in vtk/vtkGdcmReader.cxx) :
+        - vtk/Makefile.am now builds a library
+        - gdcmPython/Makefile.am now builds vtkgdcmPython a second import
+          python library (as opposed to _gdcm.so wich are the python
+          wrappers of gdcm). vtkgdcmPython.so uses the vtk python wrappers
+          (vtkWrapPython and vtkWrapPythonInit utility) to build vtkgdcmPython
+          import library.
+        - configure.in has an additional flag --enable-vtk that needs
+          to be set to enable compilation of vtk related code, that is:
+          + vtk/vtkGdcmReader.so and
+          + vtk/testvtkGdcmReader C++ demo of vtk wrappers of gdcm)
+          + gdcmPython/vtkgdcmPython.so (see above)
+        - gdcmPython/demo/vtkGdcmDemo.py corrected (some images cannot
+          be read when compressed or when HighBit + 1 != BitsStored),
+        - gdcmPython/demo/vtkGdcmReader.py added. This demo illustrates
+          the usage of the python wrapper of vtkGdcmReader vtk class.
+      * vtk/vtkGdcmReader.cxx: bug fixed (thanks to Benoit Regrain).  
+      * src/*.[h] all occurences of stl classes are now prefixed with
+        std::, and all occurences of "using namespace std;" where removed.
+        This is to avoid pollution of global namespace in included files.
+        Apparently vtk does not avoid this pitfall: when using both
+        gdcm and vtk (as in vtk/vtkGdcmReader.cxx) this ended up in a
+        collision of various stl members (principally cout...).
+
+2003-05-12  Eric Boix <Eric.Boix@creatis.insa-lyon.fr> with JPR
+      * src/gdcmHeader>[h/cxx] added gdcmHeader::GetPixelSize()
+      * vtk/vtkGdcmReader.cxx now properly inports the image in the
+        vtk data structure (an image Flip was required).
+      * vtk/testvtkGdcmReader.cxx refers to gdcmData subdir instead of Data.
+      * cosmetic changes in documentation.
+
+2003-05-7  Eric Boix <Eric.Boix@creatis.insa-lyon.fr> with JPR
+      * src/gdcmHeader.cxx: the constructor no longer exits when an
+        unexisting file is given as argument.
+      * The subdirectory Data (containing all the images used for the
+        test suite) is not part of this repository anymore. A new module
+        containing those images is now available at 
+          :pserver:xxx@cvs.creatis.insa-lyon.fr:2402/cvs/public
+        with the name gdcmData.
+        All the python scripts (including the package initialisation file
+        gdcmPython/__init__.py) were adapated to take this change into
+        account (basically GDCM_DATA_PATH is now GDCM_TEST_DATA_PATH).
+
+2003-05-5  Eric Boix <Eric.Boix@creatis.insa-lyon.fr> with JPR
+      * vtk subdir added. Contains vtkGdcmReader.[cxx|h] a vtk class
+        inherinting from vtkImageReader and testvtkGdcmReader.cxx a small
+        demo of the usage of this class.
+        Compilation of this vtk part is only done when using the --enable-vtk
+        at configure (or autogen.sh) stage.
+
+2003-04-16  Eric Boix <Eric.Boix@creatis.insa-lyon.fr> with JPR
+      * More memmory link related corrections and documentation fixes.
+        Notes on valgrind:
+          - maximum info is obtained with a command of the form:
+            valgrind --leak-check=yes --leak-resolution=high --num-callers=40
+                   --show-reachable=yes PrintHeader
+          - the remaining reachable blocks seem to come from the STL
+            allocation scheme through the usage of map and list. It looks 
+            like this memory cannot be freed but it is not a memory leak
+            (in fact further invocation to the STL would recollect the
+             unused memory allthough it cannot explicitely be freed).
+      * gdcmPython/demo/vtkGdcmDemo.py added: this is a small demo
+        of displaying an image parsed with gdcm and displayed with VTK.
+        Note: some images don't seem to work e.g.
+            python vtkGdcmDemo.py  ../../Data/US-RGB-8-esopecho.dcm
+      * src/gdcmHeader.x: dicom_vr and Dicts are not class members anymore.
+        Allthough this weakens the semantics, it is a ditch attempt to
+        make gdcm more thread friendly.
+
+2003-04-15  Eric Boix <Eric.Boix@creatis.insa-lyon.fr> with JPR
+      * Memory link hunt (by using valgrind through the command
+          valgrind --show-reachable=yes --leak-check=yes PrintHeader).
+        - added src/gdcmVR.cxx gdcmVR.h that objectify the previous
+          gdcmHeader::_dicom_vr.
+        - gdcmHeader::InitVRDict transfered as gdcmVR::gdcmVR().
+        - gdcmHeader::dicom_vr is now of type gdcmVR* as opposed to
+          VRHT*.
+        - gdcmGlobal global object contained class added (see src/gdcmUtil.x)
+
+2003-04-9  Eric Boix <Eric.Boix@creatis.insa-lyon.fr> with JPR
+      * src/Makefile.am now exports all the necessary include files at
+        make install stage.
+
+2003-04-9 JPR
+      * UpdateGroupLength replaced by new one
+
+2003-04-7 JPR
+      * UpdateGroupLength re-written using H-Table
+        (named UpdateGroupLengthNew untill checks are over)
+      
+2003-04-7 Eric Boix <Eric.Boix@creatis.insa-lyon.fr> with JPR
+      * Data/im_00001 renamed to gdcm-MR-PHILIPS-16-Multi-Seq.dcm
+      * gdcmPython/testSuite.py now include a test of gdcmFile::Write.
+      * src:
+        - gdcmHeader::GetPubElValSet removed.
+        - gdcmElValSet::WriteDcm, WriteAcr, WriteExplVR, revamped to
+          UpdateGroupLength, WriteElements, Write.
+        - gdcmHeader::FileType moved to gdcmCommon.h. The enum FileType
+          doesn't contain TrueDicom anymore since ExplicitVR and ImplicitVR
+          carried the same semantics.
+          - src/gdcmHeaderIdo.cxx changed accordingly.
+        - gdcmFile::WriteBase now regroups all the codes from previous
+          versions of WriteDcm, WriteDcmImplVR, and WriteACR.
+        - enum FileType moved to gdcmCommon.h
+      * src/gdcmHeader.cxx AddDefault trashed
+      * gdcmGetXSize added
+      * getimageDataSize now calls gdcmGetXSize
+      * Test/*.cxx changed to agree with above changes
+
+2003-03-31 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
+      * src/gdcmHeader.h: LoadElements() is not a public method anymore
+        (to avoid double call by end user).
+      * Test/*.cxx LoadElements() doesn't need to be called explicitely
+        by end user, since gdcmHeader::gdcmHeader now handles it.
+
+2003-03-29 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
+      * gdcm/Doc many doxygen changes:
+        - Doxyfile now has two different versions, DoxyfileUsers that generates
+          the html.users end users oriented documentation and
+          DoxyfileDeveloppers that generates the html.developper developper
+          oriented documentation.
+        - README changed accordingly
+        - requirement.txt removed (old design info moved to TODO).
+        - Additional files DoxyInstallation.txt, DoxyIntroduction.txt,
+          DoxyMainPage.txt, DoxyPython.txt provide more information.
+        - Note: the website http://www.creatis.insa-lyon.fr/Public/Gdcm/ can now
+          be updated by simply regenerating the docs with doxygen and copying 
+          html.developper and html.users to tux:/home/httpd/html/Public/Gdcm
+      * src/gdcmElValSet.cxx: stl <map>.count() can only return 0 or 1. Hence
+        all the tests in the form "if (<map>.count() >1)" were removed.
+      * src/gdcmFile.cxx: cosmetic changes to avoid messages of doxygen about
+        ill-formed documentation sections.
+      * src/gdcmHeader.cxx: ditto
+
+2003-03-27 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
+      * setup.py fixed for un*x (needed macro for stdint.h)
+      * Test/test.cxx renamed to PrintHeader.cxx to avoid collision on
+        un*ces with sh-utils test utility.
+      * gdcmPython/demo/test.py renamed to PrintHeader.py
+      * gdcmPython/demo/ReorganiseFiles.py new demo script added.
+      * gdcmPython/win32/gdcmpycomplet.dsp renamed to gdcmpyembedded.dsp.
+      * gdcmPython/win32/gdcmpy.dsp trashed away (brain damaged).
+      * src/gdcm*.cxx JPR's bad inclusion fixed.
+
+2003-03-26 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
+      * src/gdcmHeader[h, cxx] gdcmHeader now has an IsReadable predicate.
+      * gdcmPython/demo/test.py changed accordingly.
+
+2003-03-25 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
+      * gdcmPython/Makefile.am fixed linking against libstdc++
+      * gdcmPython/_gdcm.so symbolic link to gdcmPython/.libs/pygdcm.so added.
+      * Swig subdir (historical tests of swig version 1.3.17++) removed
+      * Test/testChangeEntete.cxx some lines commented out in order to make
+        compilation work.
+      * src/gdcmHeader.cxx cleaned up wild JPR's dirty kludge.
+      * src/gdcmElValSet.cxx cleaned up frog's forgotten debug message
+
+2003-03-24 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
+      * src/gdcmHeader.cxx gdcmHeader::gdcmHeader now calls LoadElements(),
+        hence the user doesn't need this explicit call.
+        - gdcmPython/testSuite.py, gdcmPython/demo/*.py changed accordingly
+          i.e. LoadElements() call removed.
+      * src/gdcmCommon.h now defines UINT32_MAX (see stdint.h).
+        - src/Makefile.am declares the proper flag for g++.
+      * src/gdcmElValSet.h added gdcmElValSet::GenerateFreeTagKeyInGroup
+        for adding user defined new tags.
+        - src/gdcmHeader.cxx gdcmHeader::NewManualElValToPubDict added.
+        - src/gdcmHeader.cxx gdcmHeader::AddAndDefaultElements now
+          cleanly adds some gdcm added tags (like gdcmXSize, gdcmYSize...)
+
+2003-03-17 Fabrice Bellet <Fabrice.Bellet@creatis.insa-lyon.fr>
+      * Makefile.am, acinclude.m4, configure.in, python.m4, Dicts/Makefile.am,
+   Doc/Makefile.am, Test/Makefile.am, gdcmPython/Makefile.am, 
+   src/Makefile.am : the project should properly compile and install
+   with the autotools, included the python wrappers part. 
+      * gdcm.spec.in : added a spec file for RPM packaging.
+
+2003-03-14 Benoit Regrain <Benoit.Regrain@creatis.insa-lyon.fr>
+      * src/gdcmUtils.cxx : redifinition of defaults parameters in code
+
+2003-03-12 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
+      * 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.
+      * src/gdcmElValSet.cxx, src/gdcmUtil.[cxx-h] Tokenize utility function
+        moved away from gdcmElValSet.cxx to gdcmUtil.cxx.
+
+2003-03-10 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
+      * 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 <Eric.Boix@creatis.insa-lyon.fr>
+      * 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 <Eric.Boix@creatis.insa-lyon.fr>
       * src/gdcm.h splitted in gdcmCommon.h, gdcmDict.h, gdcmDictEntry.h,
         gdcmDictSet.h, gdcmElValSet.h, gdcmElValue.h, gdcmFile.h,