]> Creatis software - gdcm.git/blobdiff - Doc/Website/News.html
Update Doc
[gdcm.git] / Doc / Website / News.html
index 47dffa00777656533003bf97abd81c5bf010d65e..01f4c67dbc3502a7cc374d4f365558722b0390ac 100644 (file)
 
 <!#######################################################################>
 <H1>Gdcm News</a></H1>
+
+<!#######################################################################>
 <HR size="1"><ADDRESS style="align: right;"></ADDRESS>
+<H2>
+   <A CLASS="anchor" NAME="NewsCurrentVersion">
+   <B>Current Version</B></A>
+      <B></B></A>
+</H2>
+<UL>
+   <LI>State of the art
+   <UL>    
+      <LI> Final check of the jpeg sub-library: all 'classical' jpeg
+        compressed Dicom files can be read<br>
+      <LI>All the previously gdcm-breaker images are now readable<br>
+      <LI> A huge number of memory leaks removed
+      <LI> Improvement of write process   
+   </UL>
+   <LI> New Features
+<UL>
+   <LI>
+   <LI>
+</UL>
+   <LI> A.P.I. breaking modifications (since previous version)
+   <UL>
+      <LI> Use of <TT> namespace</TT> : all the methods formerly called
+          <TT>className::gdcmXxx()</TT> are now called <TT>className::Xxx()</TT>
+      <LI> Removal of accessors <TT>GetXxxByname</TT>, <TT>SetXxxByname</TT> 
+           and <TT>GetXxxByNumber</TT>, <TT>SetXxxByNumber</TT> 
+           replaced by <TT>GetXxx</TT>, <TT>SetXxx</TT>
+      <LI> a <TT>gdcm::Document</TT> is now specialized 
+           in <TT>gdcm::DicomDir</TT> and <TT>gdcm::File</TT>
+   </UL>
+
+   <LI> Missing features
+   <UL>
+      <LI> gdcm doesn't read yet JPEG-LS and JPEG2000 encoded files.
+      <LI> Allow user to tell <TT>gdcm::Document</TT> constructor he doesn't 
+           want to deal with <TT>SeqEntry</TT (every time it's possible)
+      <LI> Allow user to tell <TT>gdcm::Document</TT> constructor he doesn't 
+           want to deal with Shadow groups 
+      <LI> Allow user to tell the Writer he doesn't want to write down
+           <TT>SeqEntry</TT> (if any) 
+      <LI> Allow user to tell the Writer he doesn't want to write down
+           Shadow groups (if any)
+      <LI> <TT>Icon Image</TT> management (Read and Write) 
+      <LI> <TT>DICOMDIR</TT> full management (not limited to
+           <TT> PATIENT</TT>/<TT>STUDY</TT>/<TT>SERIE</TT>/<TT>IMAGE</TT>)
+      <LI> Allow user to add an Entry to the default entry list, for
+           making a <TT>DICOMDIR</TT> from a root directory
+      <LI> 16-bits-LUT full Management
+      <LI> User friendly management of <TT>Rescale Slope</TT> and
+           <TT>Rescale Intercept</TT>
+      <LI> Allow parsing the Shadow groups against a user supplied 
+           Private Dicom Dictionary (pfff!...)
+      <LI> An accurate <TT>SerieHelper</TT>
+   </UL>
+
+   <LI> Known bugs
+   <UL>
+      <LI> <TT>DocEntrySet::InsertSeqEntry</TT> never used, never checked ...
+      <LI> The difference between <TT>MONOCHROME1</TT> and <TT>MONOCHROME2</TT>
+           is not taken into account. It's up to the user to change the pixels
+           value
+      <LI> Writing a 'True Dicom' image after reading an ACR-NEMA image resquest
+           from the user to build up 'manually' the Meta Elements group (0002) 
+   </UL> 
+</UL>
+
+
+<br>
+<pre>
+For people who get this new release :
+
+We consider now that :
+- any dicom related file is a gdcm::Document.
+- a gdcm::Document can be :
+      - a gdcm::File,     if it contains pixel data,
+      - a gdcm::DicomDir, if it contains only informations 
+                          on the files in a given directory
+
+- in a gdcm::Document, there are gdcm::DocEntry, that can be :
+     - gdcm::ContentEntry (any entry that has an actual value,
+                           *not* an embedded set of other gdcm::DocEntry)
+                           a gdcm::ContentEntry can be :
+          - gdcm::ValEntry (whose value is std::string representable 
+                            e.g. character values, or integers),
+          - gdcm::BinEntry (whose value is not std::string representable 
+                            e.g. color palettes, overlays, icons , ...)
+     - gdcm::Sequence (no proper 'value', but a set of gdcm::SQItems, 
+                       composed of a set of gdc::DocEntry, recursively)
+- in a gdcm::DicomDir, we only deal, hierarchically, with :
+     - gdcmPatient
+     - gdcmStudy
+     - gdcmSerie
+     - gdcmImage
+</pre>
+You can see <a href="uml-gdcm.pdf">gdcm UML Class Diagram</a>
+
+
+
+
+<!#######################################################################>
+<HR size="1"><ADDRESS style="align: right;"></ADDRESS>
+<H2>
+   <A CLASS="anchor" NAME="NewsVersion0_6">
+      <B>Version 0.6 (June 8 2004)</B></A>
+</H2>
+<UL>
+   This version will be used by Insight Tool Kit 
+   (<a href="http://www.itk.org">ITK</a> 1.10) at the beginning of 2005.<br>
+    It's not yet packaged ...<br><br>
+   <LI> The new <TT>gdcmDocument</TT> class is a parent class of 
+       <TT>gdcmHeader</TT> class and <TT>gdcmDicomDir</TT> class.
+   <LI> Massive modifications in the Class Diagram :
+   <UL>
+      <LI> Entries (<TT>gdcmEntry</TT>) are now separated into 
+          <TT>ValEntry</TT> and <TT>SeqEntry</TT> (whose VR =
+          <TT>SQ</TT>)
+      <LI> a <TT>gdcmDocument</TT> is_a <TT>gdcmElementSet</TT>,
+         composed of a set of <TT>gdcmValEntry</TT> 
+         and <TT>gdcmSeqEntry</TT>
+      <LI> a <TT>gdcmSeqEntry</TT> is considered as a set 
+          of <TT>gdcmSQItem</TT>
+      <LI> Dicom Sequences (VR = <TT>SQ</TT>) are now dealt as tree-like 
+          structures within <TT>gdcmSQItem</TT> class.<br>
+          they are considered as a set of <TT>gdcmSQItem</TT>s
+      <LI> a <TT>gdcmSQItem</TT> is_a <TT>gdcmElementSet</TT> 
+  </UL>
+  <LI> Improvement of the jpeg sub-library: jpeg
+        compressed Dicom files (lossless and lossy) 
+  might be read (check-it out)
+</UL>
 
 <!#######################################################################>
+<HR size="1"><ADDRESS style="align: right;"></ADDRESS>
 <H2>
    <A CLASS="anchor" NAME="NewsVersion0_4">
       <B>Version 0.4 (February 6 2004)</B></A>
 </H2>
 <UL>
-   <LI> <TT>gdcmFile</TT> class now enables acces to the data
-       i.e. the image[s] content. Previously only parsing of the
-       Dicom header was available through usage of <TT>gdcmHeader</TT>
-       class.
-   <LI> a <A HREF="http://public.kitware.com/VTK/">VTK</A> plugin
-       of gdcm is now available through the <TT>vtkGdcmReader</TT>
-       vtk class (see it as a vtk wrapper of gdcm), which enables
-       <UL>
-         <LI> Loading of a single image,
-         <LI> Loading of a stack of images from multiple Dicom files,
-         <LI> this class is wrapped for vtkPython (by using native vtk
-              wrappers).
-       </UL>
-   <LI> Introduction of a jpeg sub-library: some very simple jpeg
+   <LI> Introduction of a jpeg sub-library: some very simple jpeg-lossy
         compressed Dicom files might be working (check-it out).
    <LI> And also, fewer memory leaks, cleaned-up stl usage (should work
         with gcc-3.x), python disutil installer (see file setup.py)
         supporting both Swig and vtk wrapping.
+   <LI> Introduction of a RLE (Run-Time Encoding) library
+   <LI> Color images (RGB or Palette Color) are dealt with
 </UL>
 
 <!#######################################################################>
          <LI> this class is wrapped for vtkPython (by using native vtk
               wrappers).
        </UL>
-   <LI> Introduction of a jpeg sub-library: some very simple jpeg
-        compressed Dicom files might be working (check-it out).
-   <LI> And also, fewer memory leaks, cleaned-up stl usage (should work
-        with gcc-3.x), python disutil installer (see file setup.py)
-        supporting both Swig and vtk wrapping.
+   <LI> Introduction of a jpeg sub-library: lossless-jpeg
+        compressed Dicom files work.
+<LI> <TT>vtkgdcmViewer</TT> allows easy displaying of single/multiframe 
+     GreyLevel/RGB/PaletteColor images
 </UL>
 
 <!#######################################################################>