]> Creatis software - gdcm.git/blobdiff - ChangeLog
Slight modification
[gdcm.git] / ChangeLog
index 7679be8ebe126b77b05be31d896568bc2869f9cf..8d751950222a4daa2dcd7e1b49fd5d353263d5ec 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,148 @@
+2004-04-29  Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
+     * DEVELOPPER: added some helpfull comments for compile/test/install
+       when using cmake.
+
+2004-04-29  Mathieu Malaterre  <Mathieu.Malaterre@creatis.insa-lyon.fr>
+     * ENH: 1. Remove remp solution of gdcmTests.cxx+ gdcmMain directly in 
+               src directory, now generated in the build dir.
+            2. Tests as mentionned smarter
+            3. Some clean up
+            4. Add a new method in gdcmDict that return the PubDict by name 
+              this is interesting for 3rd party lib like ITK, 
+              where we could set the institution name / patient name...
+
+       * ENH: 1. Now the test suite is working for real
+              2. All binaries are now output in the gdcm-bin directory 
+                (this was not true before)              
+
+2004-04-28  Jean-Pierre Roux
+     * ENH add the provisional  gdcmHeader::SQDepthLevel to allow 
+           SeQuence indented printing of Dicom Header.
+     * ENH merge methods gdcmParser::Parse and gdcmParser::LoadHeaderEntries
+           into the single gdcmParser::LoadHeaderEntries for efficiency purpose.
+          Computation of SQDepthLevel is now part of gdcmHeader constructor
+     * ENH add self defined param 'new' to PrintHeader to 'show' the SeQuence
+           tree-like structure of a Dicom Header.
+     * FIX Test code cleaning     
+           
+2004-04-25  Mathieu Malaterre  <Mathieu.Malaterre@creatis.insa-lyon.fr>
+     * ENH: Adding automatic testing
+       1. Need a DartConfig.cmake to submit to public
+       2. Add a test driver gdcmTest.cxx
+       3. gdcmTestMain, an helper for the main test driver gdcmTest
+       4. Files in Test don't have a main anymore, this becomes interesting 
+          when we add more and more tests, thus dsw don't have to load 
+          too many projects
+     * ENH: Adding a GDCM_DATA_ROOT for testing
+     * ENH: Remove redundancie about GDCM_DICT stuff, now we only need to modify
+       one file instead of seven + some small cleanup
+
+2004-04-22  Jean-Pierre Roux
+     * ENH Minor changes to the Print() methods.
+     * ADD gdcmParser::PrintEntryNiceSQ() to allow SQ-indented
+           Header printing. Example given with :
+          > PrintHeader fileName  2 new
+          (SQ based tree-like structure still to be done for the Header ...)
+          
+2004-04-22  Mathieu Malaterre  <Mathieu.Malaterre@creatis.insa-lyon.fr>
+     * ENH: Some cosmetic clean up for compilation with -W -Wall -Werror
+         1. I have added some unsigned where needed
+         2. Some function parameter not used -> (void)
+         3. In gdcmDicomDir.cxx, add GDCM_DICOMDIR_NONE case
+         4. g++ don't like character '\' in comment
+         5. #define jpeg_create_decompress  jCreaDecompress
+                    this really need to be fixed
+         6. virtualize destructor of gdcmObject ... leakage
+         7. sscanf(g->first.c_str(),"%x",&gr_bid); 
+                    this also really need to be fixed
+         8. gdcm/src/jpeg/libijg8/CMakeLists.txt, 
+                    remove compression file 
+                    (as we only do decompression, right ?)     
+     * ENH: Change malloc/calloc/free with c++ equivalent
+
+2004-04-21  Jean-Pierre Roux
+     * FIX gdcmHeaderHelper::GetXSpacing
+           when a single value is found (bug ?), xpacing is now 
+           defaulted to yspacing
+          
+2004-04-19  Jean-Pierre Roux
+     * ADD gdcmData/Wrist.pap (PAPYRUS 3.0 -single frame-) for checking purpose
+     * ENH add parameters :
+               bool  exception_on_error = false, 
+               bool  enable_sequences   = false,
+              bool  ignore_shadow      = false
+           to the gdcmFile constructors to be full gdcmParser compliant
+     * FIX vtk/vtkGdcmReader.cxx now uses  enable_sequences = true in gdcmFile
+           to allow reading of PAPYRUS 3.0 files 
+             
+2004-04-06  Jean-Pierre Roux
+     * ADD gdcmData/E00001S03I0015.dcm for SQ checking purpose
+     
+2004-04-02  Jean-Pierre Roux
+     * ADD : Test/checksequence.sh, for a general recap on SQ pb
+     * FIX : gdcmParser::WriteEntryTagVRLength emprovement of special treatement
+             for Philips spurious Tag fffe|0000 while rewritting Dicom files
+            
+2004-03-30  Jean-Pierre Roux
+     * FIX gdcmParser::ReplaceOrCreateByNumber shouldn't seg fault any more 
+         for ACR file, written out as DICOM files (hope so...)
+
+2004-03-30  Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
+     * src/gdcmParser.[cxx|h] and gdcmHeader.[cxx.h]: gdcmHeader::Write split
+       in WriteEntryTagVRLength and WriteEntryValue. Those methods were
+       moved to base class gdcmParser and only the specialisation is kept
+       in gdcmHeader.
+     * src/gdcmParser.[cxx|h]: ReplaceOrCreateByNumber(char*, guint16, guint16)
+       trashed out (because ReplaceOrCreateByNumber(string, guint16, guint16)
+       already does the job.
+     * src/gdcmDicomDir.[cxx|h]: WriteDicomDirEntries renamed to WriteEntries
+       (to be consistent with gdcmParser::WriteEntries).
+
+2004-03-30 Benoit Regrain
+     * vtk/vtkGdcmReader.[h|cxx] : fix the read of 3 gdcmHeader when making an
+       upate of the object's instance. It's passed to 2 in the unfavorable
+       case : one in the ExecuteInformation, one in the ExecuteData
+
+2004-03-29  Jean-Pierre Roux
+     * ENH : Check on file type to be written moved
+             from gdcmParser::WriteEntry to gdcmParser::WriteEntries
+     * FIX : gdcmObject::ResetBoundaries now stops properly
+             when end-of-list is reached
+          : gdcmVersion modified (as Benoit Regrain asked)
+
+2004-03-29  Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
+     * src/gdcmParser.cxx: removal of all TAB character. Indentation fixed.
+     * src/gdcmUtil.cxx: added forgotten iostream include.
+     * src/gdcmCommon.h: FileType enum entry DICOMDIR removed (since
+       equivalent to ExplicitVR in existing code).
+
+2004-03-27  Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
+     * src/gdcmUtil.[cxx|h] split in two. Additional file gdcmGlobal.[cxx|h]
+       now contains all the gdcmGlobal related code.
+     * minor coding style and doxygenation changes.
+
+2004-03-26  Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
+     * src/gdcmUtil.[cxx|h] split in two. Additional file gdcmDebug.[cxx|h]
+       now contains all the Debug related code.
+     * minor clean-up of includes in src/*.cxx
+     * src/gdcmUtil.[cxx|h] _cleanString C style function (replaced with
+       CreateCleanString) removed.
+     * src/gdcmUtil.[cxx|h] _CreateCleanString renamed to CreateCleanString
+     * Doc/DoxyMainPageUser.txt added.
+     * Doc/Doc/DoxyfileUsers updated to version 1.3.4 of Doxygen.
+     * src/gdcmCommon.h now defines getcwd for Win32 (moved away from
+       src/gdcmDirList.cxx)
+
+2004-03-24  Jean-Pierre Roux
+     * FIX a lot of little surface modifications to be doxygen 1.3.6 compliant
+
+2004-03-23  Jean-Pierre Roux
+     * FIX Now gdcmFile::SwapZone doesn't seg faults any longer for
+           big endian made volumes
+     * ENH Now gdcmParser constructor and destructor are protected to forbid
+           end user to instanciate class gdcmParser
+          (only gdcmHeader and gdcmDicomDir are meaningfull)
+
 2004-03-22 Benoit Regrain
      * FIX : src/gdcmDicomDir.cxx : make windows compilable
      * FIX : gdcmPython/gdcm.i : change gdcmStudy to gdcmDicomDirStudy and
                        of gdcmDicomDirImage::NewImage as empty function.
 
 2004-02-28  Jean-Pierre Roux
-     *ENH add gdcmDicomDir:NewPatient
-          add gdcmDicomDirPatient:NewStudy
-          add gdcmDicomDirStudy:NewSerie
-          add gdcmDicomDirSerie:NewImage
-          to allow making gdcDicomDir object.
-     *ADD PrintDicomDir executable that uses gdcmDicomDir tree-like structure
+     * ENH add gdcmDicomDir:NewPatient
+           add gdcmDicomDirPatient:NewStudy
+           add gdcmDicomDirStudy:NewSerie
+           add gdcmDicomDirSerie:NewImage
+          to allow making gdcDicomDir object.
+     * ADD PrintDicomDir executable that uses gdcmDicomDir tree-like structure
           (as opposite to the gdcmHeader chained list)
 
 2004-02-11 Benoit Regrain
 
 2004-02-05 Benoit Regrain
      * ENH : add methods in gdcmObject to get the hash table or the list of
-       header entries
+             header entries
      * FIX : wrapping python for ListPatient, ListStudy, ListSerie, ListImage
      * FIX : wrapping python for TagHeaderEntryHT
 
      * bug fix under python
 
 2004-01-16 Jean-Pierre Roux
-     * removal of class gdcmHeaderEntrySet
-     * removal of files gdcmHeaderEntrySet.cxx, gdcmHeaderEntrySet.h
-     * add file gdcmHeader2.cxx
-     * add method gdcmHeader::SetPrintLevel (for PrintHeader)
+    * REM removal of class gdcmHeaderEntrySet
+    * REM removal of files gdcmHeaderEntrySet.cxx, gdcmHeaderEntrySet.h
+    * ADD add file gdcmHeader2.cxx 
+    * ADD add method gdcmHeader::SetPrintLevel (for PrintHeader)
 
 2004-01-15 Benoit Regrain
      * src/gdcmDicSet.[h|cxx] : add virtual entries to have a reference of
      * Update Windows projects and .cvsignore files
 
 2003-11-12 Jean-Pierre Roux
-     *ENH  gdcmHeader constructor has one more parameter (default value : false)
+     * ENH gdcmHeader constructor has one more parameter (default value : false)
            that allows the user to 'go inside' the SeQuences only
            if he wants to.
            gdcmElValSet:Print takes it into account
 
 2003-11-12  Mathieu Malaterre  <Mathieu.Malaterre@creatis.insa-lyon.fr>
-     *ENH: Update gdcmPython/CMakeLists
-     *FIX: (gdcmHeaderHelper) GetRescale and GetSlope
-     *FIX: (gdcmElValSet) char 'tag' was overiding private members (VC++)
+     * ENH: Update gdcmPython/CMakeLists
+     * FIX: (gdcmHeaderHelper) GetRescale and GetSlope
+     * FIX: (gdcmElValSet) char 'tag' was overiding private members (VC++)
 
 2003-11-10 Jean-Pierre Roux
-     *FIX : gdcmHeader::LoadElements is now based
-            on the ListTag listElem member,
-            not longer on the TagElValueHT tagHt member
-     *ENH : PrintPubElVal shows (temporarily) both results,
-            with the tagHt member and the listElem member.
-            (it's easier to 'see' the problems when using Printheader)
-     *FIX : old private member LgrElem is now splitted into
-            ReadLength   : Length actually found on disk (updated only
-                      if bug fixing is necessary), for internal use only
-            UsableLength : Updated by FixFoundLength, to fix a bug
-                           or to allow Parser going on.
-            Will allow to re-write a kosher header when a SeQuence
-            with a length (not 0000) is found
-            Warning : gdcmFile::Write still uses the TagHt (not ListElem)
-                      because gdcmElValSet::Add does not update ListElem
-                      (to be written)
+      * FIX : gdcmHeader::LoadElements is now based
+             on the ListTag listElem member,
+             not longer on the TagElValueHT tagHt member
+      * ENH : PrintPubElVal shows (temporarily) both results,
+             with the tagHt member and the listElem member.
+            (it's easier to 'see' the problems when using Printheader)
+
+      * FIX : old private member LgrElem is now splitted into
+             ReadLength   : Length actually found on disk (updated only
+                           if bug fixing is necessary), for internal
+                           use only
+            UsableLength : Updated by FixFoundLength, to fix a bug
+                           or to allow Parser going on.
+            Will allow to re-write a kosher header when a SeQuence
+            with a length (not 0000) is found
+      Warning : gdcmFile::Write still uses the TagHt (not ListElem)
+               because gdcmElValSet::Add does not update ListElem
+               (to be written)
 
 2003-11-07 Jean-Pierre Roux
-     *FIX misstyping in Transfert Syntax name table
-     *ENH gdcmHeader::FixFoundLength now allow to 'go inside' tge SeQuences
+     * FIX misstyping in Transfert Syntax name table
+     * ENH gdcmHeader::FixFoundLength now allow to 'go inside' tge SeQuences
           when they have an actual length (not 0000 nor FFFFF)
      (Nobody should care of it, but DICOMDIR explorers)
 
 2003-11-06  Mathieu Malaterre  <Mathieu.Malaterre@creatis.insa-lyon.fr>
-     *ENH: vtkgdcmViewer now works with LUT dicom (OT-PAL-face ...)
+     * ENH: vtkgdcmViewer now works with LUT dicom (OT-PAL-face ...)
 
 2003-11-05  Mathieu Malaterre  <Mathieu.Malaterre@creatis.insa-lyon.fr>
-     *ENH: vtkGdcmReader now supports LUT !
+     * ENH: vtkGdcmReader now supports LUT !
           (vtkgdcmViewer for now is not able to use them though)
 
 2003-11-05 Jean-Pierre Roux
      * in testSuite.py : new files names for checking the package
-     * Fix : Forgot to commit gdcmFile::GetImageDataSizeRaw();
+     * FIX : Forgot to commit gdcmFile::GetImageDataSizeRaw();
              that returns the pixel area size to the *aware* (vtk) user
              that DOESN'T want to turn the PALETTE COLOR image into an RGB image
 
        in order to loose the 'history' of un-anonymised images
        
 2003-10-31 Jean-Pierre Roux
-     *RMV : removal of useless jBitsInJsample.h 
-            for both 8 and 12 Bits JPEG Lossy Libraries
-      
+     * RMV : removal of useless jBitsInJsample.h 
+           for both 8 and 12 Bits JPEG Lossy Libraries
+
 2003-10-31 Jean-Pierre Roux
      * ENH : Add the functions gdcmFile::GetImageDataRaw 
                                gdcmFile::GetImageDataIntoVectorRaw
      * FIX : a VC++ intended syntax modif broke the 12/12 Bytes expanding
              
 2003-10-29  Mathieu Malaterre  <Mathieu.Malaterre@creatis.insa-lyon.fr>
-     *ENH: Can be used like this '$vtkgdcmViewer *.dcm' with *.dcm 
-           being coherents dicom files.
+     * ENH: Can be used like this '$vtkgdcmViewer *.dcm' with *.dcm 
+          being coherents dicom files.
      
 2003-10-29  Mathieu Malaterre  <Mathieu.Malaterre@creatis.insa-lyon.fr>
-     *FIX: DOH ! Forgot about windo$e users, they couldn't read lossless jpeg,
+     * FIX: DOH ! Forgot about windo$e users, they couldn't read lossless jpeg,
            from medcon lib !
-     *ENH: Turn it into DOS file type to match libgdcmijpeg8.dsp file type 
-     *ENH: Two steps is necessary to please VC++ compiler...
-     *FIX: DOH ! libgdcmijpg8 -> libgdcmljpeg
-     *ENH: Add include dir to medcon lib
-     *FIX: only one function is being exported for now ! 
+     * ENH: Turn it into DOS file type to match libgdcmijpeg8.dsp file type 
+     * ENH: Two steps is necessary to please VC++ compiler...
+     * FIX: DOH ! libgdcmijpg8 -> libgdcmljpeg
+     * ENH: Add include dir to medcon lib
+     * FIX: only one function is being exported for now ! 
            You should use GLOBAL(return type) see ljpg/jpeg.h for more info
             
 2003-10-29 Jean-Pierre Roux
 2003-10-24  Mathieu Malaterre  <Mathieu.Malaterre@creatis.insa-lyon.fr>
       * ENH: vtkGdcmReader.cxx can now read multiframe dicom
       * FIX: remove a call to ->Modified ... see comments
-      * FIX: vtkgdcmViewer.cxx was writting ASCII file...this is so slooooooow !
+      * FIX: vtkgdcmViewer.cxx was writting ASCII file...this is so slooooow !
       
 2003-10-23  Mathieu Malaterre  <Mathieu.Malaterre@creatis.insa-lyon.fr>
       * FIX: Problem with path for libvtkgdcmPython
       * ENH: Try adding a search script for python site-package
       * RMV: Remove some file from medcon lib that are not necessary
       * FIX: gdcm/Makefile.am fix for generating ljpg medcon
-      * ENH: CMakeLists.txt now generate 'pygdcm.so' instead of 'libpygdcm.so' 
+      * ENH: CMakeLists.txt now generate 'pygdcm.so' instead of 'libpygdcm.so'
       * FIX: More pragma disable fro VC++, 
-             I don't think I break something as it is also disable in VTK/ITK. 
+             I don't think I break something as it is also disable in VTK/ITK.
         But it fasten debug compilation time.
             
 2003-10-23 Jean-Pierre Roux
       no longer seg faults when file is not found
 
 2003-10-14  Jean-Pierre Roux
-     * Emprovement of reading for Dicom encapsulated Jpeg LossLess MultiFrame images
+     * Emprovement of reading for Dicom encapsulated Jpeg LossLess 
+       MultiFrame images
 
 2003-10-14  Mathieu Malaterre  <Mathieu.Malaterre@creatis.insa-lyon.fr>
      * TODO: *.in file to genereate a UseGDCM later
          - deals with MultiFrames MultiFragments Run Length Encoded files
          - deals with YcBcR (YBR_FULL) files
          - deals with YBR_YBR_FULL_422 files (they work as RBG files ?!?)
-          WARNING : nothing was checked for YBR_PARTIAL_422, YBR_ICT, YBR_RCT files.
+          WARNING : nothing was checked for YBR_PARTIAL_422, YBR_ICT, 
+                                           YBR_RCT files.
           (no sample found :-(
 
 2003-10-02  Mathieu Malaterre  <Mathieu.Malaterre@creatis.insa-lyon.fr>
       * vtk/win32/vtkgdcm.dsp : added /nodefaultlib "mscvrt" for debug mode
 
 2003-08-29  Mathieu Malaterre  <Mathieu.Malaterre@creatis.insa-lyon.fr>
-      * Corrected a leak in vtkGdcmREader.cxx, the pSource was find thanks to valgrind.
+      * Corrected a leak in vtkGdcmREader.cxx, the pSource was find thanks
+            to valgrind.
 
 2003-07-29  Mathieu Malaterre  <Mathieu.Malaterre@creatis.insa-lyon.fr>
       * src/win32/libgdcmjpeg12.dsp was not dos format
-      * src/win32/libgdcmjpeg12.dsp : libgdcmijpeg12_EXPORTS -> LIBGDCMIJPEG12_EXPORTS
+      * src/win32/libgdcmjpeg12.dsp : 
+                  libgdcmijpeg12_EXPORTS -> LIBGDCMIJPEG12_EXPORTS
       * src/win32/gdcmdll.dsp: + /I "..\jpeg\libijg12"
 
 2003-07-29 Benoit Regrain <Benoit.Regrain@creatis.insa-lyon.fr>