frog [Wed, 9 Jun 2004 15:00:42 +0000 (15:00 +0000)]
* src/gdcmValEntry.h: member voidArea type changed from char* to void*.
* src/gdcmBinEntry.h: member voidArea commented out, since it potentially
conflicts with gdcmValEntry::voidArea.
* src/gdcmValEntry.cxx: unmatching comment wiped out.
* src/gdcmVR.[h|cxx]: added two predicates that partition the possible
Value representation between StringRepresentable and BinaryRepresentable.
* src/gdcmDocument.cxx:
- method ParseDES: proper indentation restored and usage of
gdcmVR::IsVROfGdcmStringRepresentable wired in.
- method LoadDocEntry: the fingerprint left in the SetValue() of
unloaded entries (length > MaxSizeLoadEntry) had curiously been
removed. Reverting to previous code segment with the proper
dynamic_cast< gdcmValEntry* >.
Note: this was (partially) breaking the python test suite
(gdcmPython/testSuite.py) that made usage of the above
fingerprint to check presence of "Pixel Data".
* src/gdcmDocEntry.h: coding style.
* gdcmPython/__init__.py: environement variable GDCM_DATA_PATH is
now taken into account.
* gdcmPython/gdcm.i: adaptation to the new internal representation
of gdcm (exit gdcmParser, hello gdcmDocument).
* gdcmPython/testSuite.py: quick and dirty fix for loading vtkgdcmPython
on posix.
* gdcmPython/demo/PrintHeader.py: doesn't use the gdcmDocument::Print()
anymore, but instead prints the loaded Python dictionary.
* .... alas, the python testSuite is still broken.
frog [Tue, 8 Jun 2004 10:51:34 +0000 (10:51 +0000)]
src/CMakeLists.txt :
* kernel (i.e. src/gdcm*) doesn't compile gdcmParser.cxx nor
gdcmHeaderEntry.cxx anymore.
* converted the file format from DOS return to un*x ones (it caused
my lincvs graphical diff mode to display kinky results). --- Frog
malaterre [Mon, 17 May 2004 04:26:23 +0000 (04:26 +0000)]
* Some more cleanup/enhancement in gdcmPython/CMakeLists.txt getting close
to right behavior
* Initial addition of automatic python testing
* Initial addition of automatic image comparison
jpr [Tue, 4 May 2004 15:03:01 +0000 (15:03 +0000)]
Taking into account the 'Dicom Sequences' leads up to introduce new concepts
(and new classes) :
a 'gdcmDocument' is composed of a set of Doc Entries, that are
- elementary gdcmDocEntries (former gdcmHeaderEntries)
- Sequence Doc Entries (gdcmSeqEntries)
a Sequence is composed of Items.
Each item is a set of Doc Entries (this is recursive)
The non uniqueness of the 'Dicom tag' is due to this recursivity
(never taken into account)
Our unability to add a new 'entry' in the header
at the proper location (neither in the H-Table (map or multimap), nor in
the Chained List is also due to this recursivity.
Don't try, right now, to use/modify/compile these new sources : nothing is
finished.
We just commit all the stuff, 'as is', in order not to loose it.
ENH: Add Example stuff with real main:
1. Should be easier to use
2. This is a real example on how to read + write a dicom image, thus make sense to have it
* Doc/CMakeLists.txt: the main page is now properly differentiated
between the developper and user version.
* Doc/doxygen.config.in: dropped search related obsolete flags
* src/gdcmParser.h: doxygenation
ENH: 1. Remove remp solution of gdcmTests.cxx+ gdcmMain directly in src director, 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 intersting for 3rd party lib like ITK, where we could set the institution anme / patient name...
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: 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 intersting when we add more and more tests, thus dsw don't have to load too many projects
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 ...)