]> Creatis software - gdcm.git/blob - ChangeLog
* The subdirectory Data (containing all the images used for the
[gdcm.git] / ChangeLog
1 2003-05-7  Eric Boix <Eric.Boix@creatis.insa-lyon.fr> with JPR
2       * src/gdcmHeader.cxx: the constructor no longer exits when an
3         unexisting file is given as argument.
4       * The subdirectory Data (containing all the images used for the
5         test suite) is not part of this repository anymore. A new module
6         containing those images is now available at 
7           :pserver:frog@cvs.creatis.insa-lyon.fr:2402/cvs/public
8         with the name gdcmData.
9         All the python scripts (including the package initialisation file
10         gdcmPython/__init__.py) were adapated to take this change into
11         account (basically GDCM_DATA_PATH is now GDCM_TEST_DATA_PATH).
12
13 2003-05-5  Eric Boix <Eric.Boix@creatis.insa-lyon.fr> with JPR
14       * vtk subdir added. Contains vtkGdcmReader.[cxx|h] a vtk class
15         inherinting from vtkImageReader and testvtkGdcmReader.cxx a small
16         demo of the usage of this class.
17         Compilation of this vtk part is only done when using the --enable-vtk
18         at configure (or autogen.sh) stage.
19
20 2003-04-16  Eric Boix <Eric.Boix@creatis.insa-lyon.fr> with JPR
21       * More memmory link related corrections and documentation fixes.
22         Notes on valgrind:
23           - maximum info is obtained with a command of the form:
24             valgrind --leak-check=yes --leak-resolution=high --num-callers=40
25                    --show-reachable=yes PrintHeader
26           - the remaining reachable blocks seem to come from the STL
27             allocation scheme through the usage of map and list. It looks 
28             like this memory cannot be freed but it is not a memory leak
29             (in fact further invocation to the STL would recollect the
30              unused memory allthough it cannot explicitely be freed).
31       * gdcmPython/demo/vtkGdcmDemo.py added: this is a small demo
32         of displaying an image parsed with gdcm and displayed with VTK.
33         Note: some images don't seem to work e.g.
34             python vtkGdcmDemo.py  ../../Data/US-RGB-8-esopecho.dcm
35       * src/gdcmHeader.x: dicom_vr and Dicts are not class members anymore.
36         Allthough this weakens the semantics, it is a ditch attempt to
37         make gdcm more thread friendly.
38
39 2003-04-15  Eric Boix <Eric.Boix@creatis.insa-lyon.fr> with JPR
40       * Memory link hunt (by using valgrind through the command
41           valgrind --show-reachable=yes --leak-check=yes PrintHeader).
42         - added src/gdcmVR.cxx gdcmVR.h that objectify the previous
43           gdcmHeader::_dicom_vr.
44         - gdcmHeader::InitVRDict transfered as gdcmVR::gdcmVR().
45         - gdcmHeader::dicom_vr is now of type gdcmVR* as opposed to
46           VRHT*.
47         - gdcmGlobal global object contained class added (see src/gdcmUtil.x)
48
49 2003-04-9  Eric Boix <Eric.Boix@creatis.insa-lyon.fr> with JPR
50       * src/Makefile.am now exports all the necessary include files at
51         make install stage.
52
53 2003-04-9 JPR
54       * UpdateGroupLength replaced by new one
55
56 2003-04-7 JPR
57       * UpdateGroupLength re-written using H-Table
58         (named UpdateGroupLengthNew untill checks are over)
59       
60 2003-04-7 Eric Boix <Eric.Boix@creatis.insa-lyon.fr> with JPR
61       * Data/im_00001 renamed to gdcm-MR-PHILIPS-16-Multi-Seq.dcm
62       * gdcmPython/testSuite.py now include a test of gdcmFile::Write.
63       * src:
64         - gdcmHeader::GetPubElValSet removed.
65         - gdcmElValSet::WriteDcm, WriteAcr, WriteExplVR, revamped to
66           UpdateGroupLength, WriteElements, Write.
67         - gdcmHeader::FileType moved to gdcmCommon.h. The enum FileType
68           doesn't contain TrueDicom anymore since ExplicitVR and ImplicitVR
69           carried the same semantics.
70           - src/gdcmHeaderIdo.cxx changed accordingly.
71         - gdcmFile::WriteBase now regroups all the codes from previous
72           versions of WriteDcm, WriteDcmImplVR, and WriteACR.
73         - enum FileType moved to gdcmCommon.h
74       * src/gdcmHeader.cxx AddDefault trashed
75       * gdcmGetXSize added
76       * getimageDataSize now calls gdcmGetXSize
77       * Test/*.cxx changed to agree with above changes
78
79 2003-03-31 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
80       * src/gdcmHeader.h: LoadElements() is not a public method anymore
81         (to avoid double call by end user).
82       * Test/*.cxx LoadElements() doesn't need to be called explicitely
83         by end user, since gdcmHeader::gdcmHeader now handles it.
84
85 2003-03-29 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
86       * gdcm/Doc many doxygen changes:
87         - Doxyfile now has two different versions, DoxyfileUsers that generates
88           the html.users end users oriented documentation and
89           DoxyfileDeveloppers that generates the html.developper developper
90           oriented documentation.
91         - README changed accordingly
92         - requirement.txt removed (old design info moved to TODO).
93         - Additional files DoxyInstallation.txt, DoxyIntroduction.txt,
94           DoxyMainPage.txt, DoxyPython.txt provide more information.
95         - Note: the website http://www.creatis.insa-lyon.fr/Public/Gdcm/ can now
96           be updated by simply regenerating the docs with doxygen and copying 
97           html.developper and html.users to tux:/home/httpd/html/Public/Gdcm
98       * src/gdcmElValSet.cxx: stl <map>.count() can only return 0 or 1. Hence
99         all the tests in the form "if (<map>.count() >1)" were removed.
100       * src/gdcmFile.cxx: cosmetic changes to avoid messages of doxygen about
101         ill-formed documentation sections.
102       * src/gdcmHeader.cxx: ditto
103
104 2003-03-27 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
105       * setup.py fixed for un*x (needed macro for stdint.h)
106       * Test/test.cxx renamed to PrintHeader.cxx to avoid collision on
107         un*ces with sh-utils test utility.
108       * gdcmPython/demo/test.py renamed to PrintHeader.py
109       * gdcmPython/demo/ReorganiseFiles.py new demo script added.
110       * gdcmPython/win32/gdcmpycomplet.dsp renamed to gdcmpyembedded.dsp.
111       * gdcmPython/win32/gdcmpy.dsp trashed away (brain damaged).
112       * src/gdcm*.cxx JPR's bad inclusion fixed.
113
114 2003-03-26 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
115       * src/gdcmHeader[h, cxx] gdcmHeader now has an IsReadable predicate.
116       * gdcmPython/demo/test.py changed accordingly.
117
118 2003-03-25 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
119       * gdcmPython/Makefile.am fixed linking against libstdc++
120       * gdcmPython/_gdcm.so symbolic link to gdcmPython/.libs/pygdcm.so added.
121       * Swig subdir (historical tests of swig version 1.3.17++) removed
122       * Test/testChangeEntete.cxx some lines commented out in order to make
123         compilation work.
124       * src/gdcmHeader.cxx cleaned up wild JPR's dirty kludge.
125       * src/gdcmElValSet.cxx cleaned up frog's forgotten debug message
126
127 2003-03-24 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
128       * src/gdcmHeader.cxx gdcmHeader::gdcmHeader now calls LoadElements(),
129         hence the user doesn't need this explicit call.
130         - gdcmPython/testSuite.py, gdcmPython/demo/*.py changed accordingly
131           i.e. LoadElements() call removed.
132       * src/gdcmCommon.h now defines UINT32_MAX (see stdint.h).
133         - src/Makefile.am declares the proper flag for g++.
134       * src/gdcmElValSet.h added gdcmElValSet::GenerateFreeTagKeyInGroup
135         for adding user defined new tags.
136         - src/gdcmHeader.cxx gdcmHeader::NewManualElValToPubDict added.
137         - src/gdcmHeader.cxx gdcmHeader::AddAndDefaultElements now
138           cleanly adds some gdcm added tags (like gdcmXSize, gdcmYSize...)
139
140 2003-03-17 Fabrice Bellet <Fabrice.Bellet@creatis.insa-lyon.fr>
141       * Makefile.am, acinclude.m4, configure.in, python.m4, Dicts/Makefile.am,
142    Doc/Makefile.am, Test/Makefile.am, gdcmPython/Makefile.am, 
143    src/Makefile.am : the project should properly compile and install
144    with the autotools, included the python wrappers part. 
145       * gdcm.spec.in : added a spec file for RPM packaging.
146
147 2003-03-14 Benoit Regrain <Benoit.Regrain@creatis.insa-lyon.fr>
148       * src/gdcmUtils.cxx : redifinition of defaults parameters in code
149
150 2003-03-12 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
151       * gdcmPython/__init__.py fix of GDCM_DICT_PATH which was not
152         to exported to the environement (see gdcmPython/testSuite.py
153         for usage).
154       * src/gdcmElValSet.[cxx/h], gdcmElValue.[cxx/h], gdcmFile.[cxx/h],
155         gdcmHeader.[cxx/h]: ElValSet class renamed to gdcmElValSet, and
156         ElValue class renamed to gdcmElValue for obvious consistency reasons.
157       * src/gdcmElValSet.cxx, src/gdcmUtil.[cxx-h] Tokenize utility function
158         moved away from gdcmElValSet.cxx to gdcmUtil.cxx.
159
160 2003-03-10 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
161       * gdcmPython/__init__.py doesn't crash anymore when running in
162         in InstallMode or PreInstallMode but with an environement given
163         value of GDCM_DICT_PATH.
164       * src/gdcmDictSet.[cxx/h] coding style.
165
166 2003-03-06 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
167       * src/gdcmHeader.h and gdcmHeader.cxx Coding style + doxigenation.
168       * src/gdcm.h general comments moved to TODO, and README
169       * src/gdcm.h should now be seen as a user commodity (including it
170         should suffice to fully use gdcm). It is nowhere including within
171         any of the kernel files src/*.cxx and src/*.h.
172
173 2003-03-05 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
174       * src/gdcm.h splitted in gdcmCommon.h, gdcmDict.h, gdcmDictEntry.h,
175         gdcmDictSet.h, gdcmElValSet.h, gdcmElValue.h, gdcmFile.h,
176         gdcmHeader.h
177       * src/gdcm*.cxx only include their corresponding include file
178         (as opposed to gdcm.h)
179       * gdcmPython/gdcm.i changed accordingly
180       * Test/Makefile.am corrected and added NEWS, AUTHORS in order for
181         the autogen.sh generated "make snapshot" command to work.
182       * autogen.sh removed history related references to crea package.
183
184 2003-03-04 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
185       * distutilsSwigCPlusPlus.py work around some swig portability
186         bug.
187
188 2003-03-03 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
189       * Eventually, python/gdcmPython was renamed to gdcmPython. This
190         was done in a last ditch attempt to get setup.py _really_
191         operationnal. The python/gdcmPython layaout add the advantage
192         of hidding away the python related distutils specific files
193         (MANIFEST.in, setup.py, distutils*.py...) from the main directory.
194         Alas, the src directory was out of scope (i.e. it's relative
195         position to setup.py was ../src) which made things impossible to
196         handle (see previous version of python/setup.py). Crossing fingers...
197
198 2003-02-20 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
199       * python/setup.py now works on Un*x. (harder than I thougth)
200       * python/distutilsSwigCPlusPlus.py can now have include files
201         among the list of sources.
202       
203 2003-02-20 Benoit Regrain <Benoit.Regrain@creatis.insa-lyon.fr>
204       * src/gdcmHeader.cxx : bug fix - opening dicom file in binary !!!
205       * modifications in MSVC projects
206
207 2003-02-19 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
208       * As stated by the first lines of Test/ExceptionAndPython/README, it
209         looks like we can move back to original usage of exception within
210         src/gdcm* and hence remove the errno stuff that was introduced
211         as a quick and dirty fixture of this problem (added to the TODO).
212       * Doc/Doxyfile configuration file for Doxygen and corresponding
213         README file for usage added.
214       * Test/testWrite.cxx added. This new test comes from a split of
215         test.cxx that is now reverted to its original purpous i.e. 
216         testing the proper parsing of a Dicom related file.
217         testWrite.cxx concentrates on testing the IO part of gdcm.
218       * Test/bug1.cxx (containing a bug on WIn32) added.
219       * src/gdcm.h, gdcmHeader.cxx, gdcmDictSet.cxx: 
220         - gdcmHeader::GetPubTagNames and  gdcmHeader::GetPubTagNamesByCategory
221           whose purpose is to publish the content of the TagNames of the
222           Dicom public dictionnary were not accessible without an
223           instance of class gdcmHeader.
224         - those methods are now static methods of gdcmDictSet and hence
225           require no instances at all to be invocated.
226         - within gdcmDictSet this change required to change some method
227           to class methods (i.e. are now static) among which SetDictPath
228           (renamed to BuildDictPath) and LoadDefaultPubDict.
229       * python/gdcmPython/demo/printGroupedPublicDict.py changed to illustrate
230         the above changes by calling the new method classes of gdcmDictSet.
231       * python/gdcmPython/__init__.py now exposes gdcm.gdcmDictSet for
232         the above to be effective.
233       * python/gdcmPython: in order to wrap properly the above changes
234         for Python, swig version now needs to be > 1.3.17.
235       * python/gdcmPython/Makefile fixed to adapt itself to new 
236         configure/make shema introduced by Johan Montagnat (thanks for the
237         contribution). Alas this Makefile cannot be turned into a proper
238         Makefile.am without some heavy changes in the configure.in
239         (for python dectection).
240       * python/gdcmPython/gdcm.i: the out typemap map<string, list<string>>*
241         now avoids publishing the empty entries.
242
243 2003-02-13 Benoit Regrain <Benoit.Regrain@creatis.insa-lyon.fr>
244       * python/setup.py : bug fix concerning install under windows
245         ExtraPath reused :-P
246       * gdcm.dsw : bug fix concerning path for libraries for python !!!
247
248 2003-02-13 Benoit Regrain <Benoit.Regrain@creatis.insa-lyon.fr>
249       * Dicts/dicomV3.dic : remove double spaces !!!
250       * src/gdcmElValSet.cxx : bug fix concerning windows compiler
251       * python/gdcmPython/win32/gdcmpycomplet.dsp : bug fix concerning paths
252         and links
253
254 2003-01-28 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
255       * src/gdcmHeader.cxx added a post header parsing AddAndDefaultElements
256         method. Doxygenation.
257       * src/gdcm.h clean up of JPR spurious comments.
258
259 2003-01-17 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
260       * python/distutilsSwigCPlusPlus.py now properly collects the
261         shadow classes generated by "swig -c++" (gdcm.py in our case)
262         when using "python setup.py install".
263       * python/gdcmPython/__init__.py imports gdcm.py and only manually
264         reexports the working classes.
265       * src/gdcmHeader.cxx all the try/catch/throw calls were replaced
266         by the classical C errno scheme. This is to prevent an obscure
267         behavior of the python wrappers when importing wxPython.wx prior
268         to gdcmPython (which ended up in an abort call). An illustration
269         of this oddity can be found in the Test/ExceptionAndPython
270         subdir (see the README file). This problem probably due to
271         an combination of g++ and dynamic loading.
272       * added Test/ExceptionAndPython (see above)
273
274 2003-01-17 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
275       * Changed the layout of the python part to avoid bloating main
276         directory with setup.py, distutilsSwigCPlusPlus.py, MANIFEST.in
277         i.e. the distutils arsenal. All the python related stuff is
278         again in a python subdir, but the package itself is now in
279         python/gdcmPython.
280       * setup.py was cleaned up:
281         - pythonIncludePath removed
282         - python setup.py bdist target is now functional.
283       * gdcmPython/__init__.py doesn't export FileName any more (to avoid
284         collision with other packages). gdcmPython/demo/*.py changed
285         accordingly.
286 2003-01-15 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
287       * python subdir moved to gdcmPython (preparation of distutils packaging).
288       * gdcmPython/setup.py and distutilsSwigCPlusPlus.py added. The
289         distutils installer is operational.
290       * - gdcmPython/__init__.py now properly loads the swig generated
291           shadow classes (from gdcm.py).
292         - gdcmPython/demo/*.py changed to import the package gdcmPython
293           instead of gdcmPython/demo/load.py.
294         - gdcmPython/testSuite.py changed to import the package gdcmPython.
295         
296
297 2002-12-16 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
298       * src/gdcm.h, src/gdcmHeader.cxx: added GetPubTagNames() resp.
299         GetPubTagNamesByCategory() to gdcmHeader that return a list of the
300         entries within the associated public Dicom dictionary resp. the same
301         information but sorted by the fourth field (PAT, IMG, DIR) of the
302         dictionary.
303         - Dicts/dicomV3.dic Entries which had and unspecified fourth field
304           are now in the "???" group.
305         - python/gdcm.i changed accordingly,
306         - python/demo/printGroupedPublicDict.py added, that gives an example
307           of the above new functionalities in Python.
308
309 2002-12-11 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
310       * src/gdcm.h, gdcmHeader.cxx:
311         - historic references to glib's g_malloc and g_free (#defined)
312           were definitively removed.
313         - gdcm.h: cosmetic changes (part of comments moved to Doc/requirements)
314       * src/gdcmElValSet.cxx:
315         - GetElement(guint32, guint32) renamed to GetElementByNumber.
316         - GetElValue(guint32, guint32) renamed to GetElValueByNumber.
317         - GetElValue(string) renamed to GetElValueByName.
318         - Added GetElementByName(string).
319       * src/gdcmHeader.cxx: added
320         - GetPubElValRepByNumber(guint16, guint16)
321         - GetPubElValRepByName(string)
322         - GetShaElValRepByNumber(guint16, guint16)
323         - GetShaElValRepByName(string)
324         - GetShaElValByNumber(guint16, guint16)
325         - GetShaElValRepByName(string)
326         - GetElValRepByNumber(guint16, guint16)
327         - GetElValRepByName(string)
328         - GetElValByNumber(guint16, guint16)
329         - GetElValRepByName(string)
330       * Doc/requirements.txt added.
331
332 2002-12-9 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
333       * Test/Makefile building now depends on the one of libgdcm.so
334       * src/gdcmHeader.cxx and gdcm.h are now OB (undefined length encoded
335         pixel data) aware which enables finding the address (offset) of 
336         the pixel data of JPEG encoded DICOM files. This leaves only a single
337         file in the testSuite whose pixel data address (offset) is unknown.
338       * python/testSuite.py changed accordingly.
339
340 2002-12-6 Christophe Odet + Hugues Benoit-Cattin + Eric.Boix
341       * VC++ has some strong limitations when working with the STL, as stated
342         in http://support.microsoft.com/support/kb/articles/Q168/9/58.ASP :
343              "Also note that some STL containers (map, set, queue, list, deque)
344               cannot be exported. [...]
345               Some STL classes contain nested classes. These classes can not
346               be exported. [...]
347               This is caused by a designed limitation that once a template
348               class is instantiated, it can not be re-instantiated and
349               exported."
350         Since our usage of map<> is ubiquitous in gdcm, this "designed
351         limitation" of VC++ is a pitfall.
352         Hence the Python wrappers of gdcm cannot be incrementally linked 
353         against the c++ dynamic library. The dirty but only workaround is
354         to forget about incremental link of dynamic libraries and to generate
355         the Python wrappers library with the inclusions of the underlying C++
356         library. 
357         The following modifications concern this matter on Win32/VC++:
358       - wrapping python correct with standalone wrapped dll (don't use separate
359          dll under windows !!!!)
360       - python21_d debug mode enabled (ask Frog how to use it :-)
361       - NO problem with having an STL member of class for example string in C++
362         WITH THE RESTRICTION OF FORGETING ABOUT INCREMENTAL LINK.
363       - Python test of dcmlib in Python is ok under windows on a large set 
364         (one) of image(s).
365       * removed glib references
366       * typedef's inserted in gdcm.i for correct swig type management
367
368 2002-11-27 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
369       * python/demo/*.py load.py extracted from test.py. Added explore.py
370         that only displays required tags and testAll.py that parses all
371         the files of the testsuite without using unittest.
372       * python/testSuite.py other additional test on new files added.
373       * Data/* new test files added accordingly to the testSuite.
374       * src/gdcmHeader.cxx avoid overwriting of the dictionary when
375         the vr in the file differs from the one of the dictionary.
376
377 2002-11-20 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
378       * src/gdcm.h and gdcmHeader.cxx gdcm no longer loads all the elements
379         values, but limits itself to values which are below a user specified
380         size (by default 1024 bytes).
381       * python/gdcm.i : elements not loaded (because their size is above the
382         user specified treshold) are exported with their TagKey as key of the
383         python dictionary. This enables the testsuite to make some checks
384         on the unloaded elements (since we have their offset and size).
385       * python/testSuite.py
386         - now tests for the existence and proper value of the pixel data
387         - two new examples added.
388       * Data/gdcm-MR-SIEMENS-16.acr[12] added.
389
390 2002-11-18 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
391       * src/gdcm.h and gdcmHeader.cxx are now "Big Endian transfer syntax"
392         aware. See the strategy comments in gdcmHeader::FindeLength().
393       * Test/test.cxx now accepts a filename as first argument.
394       * Data/US-PAL-8-10x-echo.dcm and US-RGB-8-epicard.dcm added.
395       * python/testSuite.py changed to integrate test on above files.
396
397 2002-11-15 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
398       * Dicts/dicomV3.dic removed all the trailing (RET) when the
399         the vr was also RET.
400       * python/testSuite.py more tests added.
401
402 2002-11-14 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
403       * python/testSuite.py unittest test suite added (uses Data)
404       * Data/* dcm and acr files for the test suite.
405       * glib dependance removed from un*x version. We now use ISO C99
406         7.18 Integer types (see stdint.h)
407         - python/Makefile, src/Makefile src/gdcm.h
408       * src/ when an explicit vr (like dicom files) suddenly poped an
409         implicit element we use to mark the underlying DictEntry of the
410         concerned ElValue with "Implicit". This strategy was damageable
411         too the public or provite dictionaries, since some of their vr
412         would be changed. Since Header::FindLength heavily relies on the
413         detection by Header::FindVR of falsely explicit elements, I
414         added an extra ImplicitVr member to ElValue (boolean).
415         The rest of the changes we the necessary adaptations.
416
417 2002-11-12 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
418       * src/gdcmHeader::FindLength bug fix when trapping falsely explicit
419         VR files.
420       * src/gdcmHeader::FindVR: hard way fix of falsely explicit vr files.
421
422 2002-11-8 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
423       * Adaptation for porting to VC++:
424         - src/gdcm.h
425           o forced to use std namespace (for string to be known)
426           o all class use __declspec export style on WIN32
427         - src/gdcmUtil.cxx new Exit method that wraps the exit call
428           (in stdlib.h on Win32 but in std:: for gcc)
429       * src/gdcmDictSet::SetDictPath adds a trailing / to environement
430         variable GDCM_DICT_PATH.
431       * src/gdcmHeader.cxx verbose comments made discrete.
432
433 2002-11-7 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
434       * python/gdcm.i: added a typemap that converts a C++ hashing table
435         to native Python dictionary.
436       * python/demo/test.py:
437         - now uses the native dictionary for exploration of gdcmHeader.
438         - takes an optional filename argument (the file to parse).
439       * src/gdcm.h and gdcmHeader.cxx: gdcmHeader now has an accessor on
440         PubElVals hashing table. 
441       * Dicts/dicomV3.dic removed error prone trailing spaces.
442
443 2002-11-6 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
444       * Python wrapping process moved away from src/Makefile to
445         newly created python/Makefile (as well as gdcm.i)
446       * python/demo/test.py (that mirrors Test/test.cxx) is effective.
447       * src/gdcmHeader::FindLength only looks for current vr when necessary.
448       * src/gdcmDictSet.cxx: the dictionnaries directory path is now imported
449         from the environement variable GDCM_DICT_PATH (when existing).
450       * src/gdcmDict::GetTag bug fix.
451
452 2002-10-31 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
453       * Straightforward temporary fixes for swig to build the python wrappers.
454         src/Makefile now has a python working entry [by working we mean
455         that we can import de shadow classes without errors].
456
457 2002-10-29 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
458       * hashtest.cxx removed (since allready in Test)
459       * src/gdcmlib.h renamed to src/gdcm.h
460       * src/dcm.i renamed to src/gdcm.i
461       * src/Makefile prepared for python wrapping
462
463 2002-10-29 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
464       * src/gdcmHeader.cxx :
465         - Parsing of header is now separated from loading of element values
466           (see gdcmHeader::LoadElements).
467         - general clean up of hopefully all file access (creation of
468           ReadInt16 and ReadInt32)
469
470 2002-10-22 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
471       * src/gdcmHeader.cxx :
472         - RecupLgr renamed to FindLength and cut off with new IsAnInteger
473           method.
474         - SetLgrElem renamed to SetLength
475         - GetLgrElem renamed to GetLength
476         - ~gdcmHeader() made virtual to pesky warning messages at compile.
477       * src/gdcmElValSet.cxx fixed both GetElValue methods
478       * Dicts/dicomV3.dic falacious entry [7fe0 0010 OT PXL Pixel Data]
479         due to IdoDude was cleaned out.
480
481 2002-10-21 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
482       * src/gdcmHeader.cxx RecupLgr split in FindVR and RecupLgr. FindVR
483         concentrates on finding the value representation (when it exists).
484         RecupLgr now only finds the element value length, and it avoids
485         returning the unecessary skL (skipped length).
486         Also, offsetCourant was simply removed (with taille_fich) since
487         it was redundant with the File position internals (by using
488         ftell and fseek). This also made skL (see above in RecupLgr) usage
489         jajun.
490       * src/gdcmHeaderIdo.cxx src/gdcmIdo.h added. Those files concentrate
491         on the libido specificities which are handled through class 
492         inheritance.
493       * Test/implicit_vr.dcm dicom v3 in implicit value representation
494         added. 
495
496 2002-10-17 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
497       * Truckload of changes. Parsing of header is barely functional
498         (see Test/test) with the standard dictionary (see Dicts/dicomV3.dic).
499
500 2002-10-10 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
501       * src/gdcmHeader.cxx many addons of low level methods
502
503 2002-10-07 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
504       * src/gdcmHeader now contains_IdDcmCheckSwap, _IdDcmRecupLgr,
505         and _IdDcmSWAP_LONG.
506
507 2002-09-12 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
508       * This corresponds to all the changes decided at the meeting of
509         May 23 2002. Needless to say we are running late...
510