X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=ChangeLog;h=64efbb8a6445738872eaf41a8536e9ef242e5122;hb=985954a7af00b467b183bb3f5db9dc11f89fcaf5;hp=c14b7b48d9cdb381088a215223b740f7c8fe3144;hpb=e6ff7dc295436e9463650ea13ab965ce35ae126c;p=gdcm.git diff --git a/ChangeLog b/ChangeLog index c14b7b48..64efbb8a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,8 +1,297 @@ +2005-04-19 Benoit Regrain + * Builder/ : add something to facilitate the RPM creation of gdcm + +2005-04-15 Mathieu Malaterre + * Fix gdcmDirList::IsDirectory. Apparently borland did not like the ending + '/' + * Also fix compilation on gcc 3.3.5 does not have ios::failure either ... + +2005-04-11 Mathieu Malaterre + * vtk/vtkGdcmWriter fix bug when writing spacing. The Y spacing comes first + then the X spacing. + * Fix compilation on gcc 2.96 (which does not have ios::failure) + +2005-04-05 Benoit Regrain + * src/gdcmDictGroupName.[h|cxx] : add a correlation between a group (number) + and it's representation name (for the NIH) + +2005-03-31 Benoit Regrain + * src/gdcmPixelReadConvert.cxx : problems of around of double to uint8, when + conversion of YBR to RGB pixels. So, now, the conversion is made using + integers only + +2005-03-30 Benoit Regrain + * Testing/TestAllReadCompareDicom.cxx : now use test files (invented file + format) to replace 'at-run' dicom files generated by the + TestAllReadCompareDicom test + +2005-03-07 Benoit Regrain + * src/gdcmFileHelper.cxx : remove memory leaks and bugs when writing files + +2005-02-22 Benoit Regrain + * src/gdcmFileHelper.cxx : JPR bad personal choices fix + +2005-02-11 Benoit Regrain + * Testing/TestMAkeIcon.cxx : complete the test + +2005-02-10 Benoit Regrain + * Testing/TestWriteSimple.cxx, TestSequence.cxx : fix memroy leaks + +2005-02-09 Benoit Regrain + * src/gdcmFileHelper.[h|cxx] : now correctly set the VR of the datas when + writting the file + +2005-02-09 Benoit Regrain + * Test/VTKTestWriteSeq.cxx : add a VTK test to write sequences + +2005-02-09 Benoit Regrain + * Test/ : accelerate tests (it's not very significant accelerations). + Remove TestCopyDicom that is redundant with TestCopyRescaleDicom + +2005-02-07 Benoit Regrain + * Testing/TestSequence.cxx : add test for sequences of images... test that + we have the same serie or the same study UID + +2005-02-07 Benoit Regrain + * gdcmPython/gdcm.i : bug fix. Now string are correctly converted in python + string type + * src/gdcmDict.h : remove commented code + * src/gdcmDocument.cxx : initialize values + * src/gdcmFile.cxx : bug fix when reading values + * gdcmPython/demo/ : change file names. Remove useless files + +2005-02-04 Benoit Regrain + * src/gdcmFile.cxx : remove the default array of initialization. + The static array contained pointers to non-static values (comming from + strings). To have coherences, when creating files, these values can't be + static. So, the array can't be static, too ! To simplify, the array have + been replaced by repeted lines to insert values in the File + +2005-02-03 Benoit Regrain + * src/gdcmBinEntry.cxx : bug fix for BIG_ENDIAN part when writing the content + * gdcmPython/gdcm.i : rename gdcmHeader to gdcmHelper + +2005-02-02 Jean-Pierre Roux + * FIX SQItem::AddEntry inserts now *in the right place* any Entry + (Dicom Element) into the Sequence Item + +2005-01-31 Benoit Regrain + * src/*.cxx : first parss to normalize file organisation + +2005-01-31 Benoit Regrain + * src/gdcmDirList.[h|cxx] : add method to find a directory + * Test/TestAllReadCompareDicom.cxx : bug fix under Windows + +2005-01-31 Mathieu Malaterre + * Finish cleaning up my JPEG mess. Should be ok now. + * Getting toward a RLE very similar to JPEG. Every RLE stuff is now self + contained within the RLE* class(doh!) + +2005-01-30 Jean-Pierre Roux + * SerieHeader::SetDirectory() allow recursive exploration of the Directory + * SerieHeader::AddFileName() creates as many Coherent Files lists + (same Serie UID) as it founds different Serie UID + amongst the files instead of discarting any file + that doesn't match with the first one he found. + * SerieHeader::OrderGdcmFileList has now one parameter : + the Coherent Files list the user wants to sort + * SerieHeader::GetFirstCoherentFileList() | + * SerieHeader::GetLastCoherentFileList() | allow to parse + the set of Coherent Files lists + * const SerieHeader::GdcmFileList &GetGdcmFileList() is kept, for backwards + compatibility (it returns the *first* Coherent Files list, + since there was only one before) + * Test/TestSerieHeader gets gdcmData as a default root directory + +2005-01-28 Benoit Regrain + * Remove friend between DocEntry and File classes + * Remove friend between PixelReadConverter and RLEFramesInfo, + JPEGFragmentsInfo + +2005-01-28 Benoit Regrain + * src/gdcmFile.cxx, gdcmDocument.cxx : fix the bug on the group|element + 0002|0000. The value was incorrect. + +2005-01-28 Benoit Regrain + * vtk/vtkGdcmWriter.[h|cxx] : add the gestion of UID + +2005-01-28 Benoit Regrain + * src/gdcmUtil.cxx : compilation fix on Win32 + * src/gdcmUtil.[h|cxx] : Set the default GDCM UID in a static constant + variable, to be easy found. Add methods to change the default UID. + Amelioration of the CreateUniqueUID to use the correct default UID. + * src/gdcmFile.cxx : correct use of the CreateUniqueUID method to create + a new file + +2005-01-28 Benoit Regrain + * Test/TestVR.cxx : fix memory leaks + +2005-01-27 Mathieu Malaterre + * Rewrite the base 256 to base 10 conversion, using string operation only. + This allows us to get rid of the problematic 64bits integer type (does not + always exist on target platform). + +2005-01-27 Jean-Pierre Roux + * Add construct and destructor to class gdcm::Debug to close the debug file + automatically + * Don't let uset to open twice the same file + * gdcm has now an official UID prefix, + supplied by http://www.medicalconnections.co.uk + 1.2.826.0.1.3680043.2.1143 + (Thx to Mathieu for providing URL) + * Add a forty-entries private Dicom Dictionary (Philips MR Intera) + to be able to perform some more tests + * gdcm::ContentEntry : Contructors and Destructor are now protected, + in order to be sure no user will try to use them. + (at user level, only the children classes are meaningfull) + +2005-01-26 Benoit Regrain + * move RLEInfo & JPEGInfo from Document to File + +2005-01-26 Benoit Regrain + * FIX : remove so many friend between classes + +2005-01-25 Benoit Regrain + * src/gdcmDocEntrySet.cxx : Bug fix when getting the value + * src/gdcmContentEntry.[h|cxx], gdcmValEntry.cxx : amelioration of code + +2005-01-25 Jean-Pierre Roux + In order to avoid missbehaviour : + . gdcm::DocEntry is now specialized in + - gdcm::SeqEntry (Dicom Sequence) as opposed to : + - gdcm::ContentEntry (Dicom entry with a 'content') + . gdcm::ContentEntry is specialized in + - gdcm::ValEntry (Dicom entry with a std::string representable value, i.e. + characters value, or integers) + - gdcm::BinEntry (Dicom entry with a non strig representable value + (user hasn't any longer to thing about the precedence of his dynamic_casts) + +2005-01-25 Benoit Regrain + * Test/VTKTest*.cxx : bug fix under linux + +2005-01-25 Benoit Regrain + * src/ : rename some methods on Entry (SetXxx, InsertXxx) to have a better + use with python. Some methods are moved from Document to ElementSet or + DocEntrySet. The equivalent methods to ElementSet have been added to + SQItem and are virtual in DocEntrySet. Methods that may have the same code + in SQItem and ElementSet is directly placed in DocEntrySet + +2005-01-25 Benoit Regrain + * Test/VTKTest*.cxx : remove the show variable in each test method because + it's useless (the viewer variable replace this variable) + +2005-01-25 Benoit Regrain + * src/gdcmDocument.cxx : bug fix on potential memory leak + * src/gdcmSQItem.cxx : initialize the SQItemNumber value in the constructor + * src/gdcmSQItem.[h|cxx], gdcmElementSet.[h|cxx], gdcmDicomDir*.[h|cxx] : + Add ClearXxx methods to remove all the content of the list or map + * gdcmDocEntrySet.h : add GetFirst/NextEntry in pure virtual + +2005-01-25 Jean-Pierre Roux + * methods ReplaceOrCreate renamed as Insert + (nobody will be any longer confused by 'CreateOrReplace') + +2005-01-24 Mathieu Malaterre + * Grealty simplify the JPEg decompression, no need to differenciate based on + the JPEG possible type (with/without fragment, with/without multiple frame). + Everything is done throught the JPEG IO Suspension mechanism in IJG + +2005-01-24 Jean-Pierre Roux + * Stage 3 of normalization : + in order to avoid any missunderstanding while reading method names : + - All the methods xxxEntry now deal with dicom Entries + - Methods GetEntry splitted into + GetEntryValue + GetEntryBinArea + - Method SetEntry renamed as SetEntryValue + - Method SetEntryBinArea let as it was + +2005-01-24 Jean-Pierre Roux + - Add empty nutshell for JPEG-LS (JPG-LS in NOT jpeg 'lossless') + - Position correctly the entry points for JPEG2000 and JPEG-LS + (Now Fragments info is get from the file, even for JPEG2000 and JPEG-LS) + +2005-01-22 Benoit Regrain + * src/gdcmDicomDirElement.h, gdcmDict.h : rename AddNewXxx methods to AddXxx. + * src/gdcmDict.h : rename GetDictEntry moethod to GetEntry, to be coherent + with other method names + * gdcmPython/gdcm.i : bug fix. Add the typemaps for the TagName type + * Test/TestDicomDirElement.cxx : add new test + +2005-01-22 Mathieu Malaterre + * Finish the CreateUniqueUID stuff. Seems to compiled/runs on every + plateforms ITK support. Had some troubles with uint64_t on Win32, go to + http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vclang/html/_langref_data_type_ranges.asp + for more info. Basically you can not used 'unsigned' __int8 in an ostream. + So can't you use __int64 in ostream at all. + +2005-01-22 Benoit Regrain + * bug fix for compilation on MSVC6 + * gdcmPython/gdcm.i : rename of classes missed + +2005-01-21 Jean-Pierre Roux + * Stage 2 of names normalization : + - A gdcm::Document is now either a gdcm::DicomDir or a gdcm::File + (easy to understand ...) + - gdcm::FileHelper replaces old class gdcm::File + +2005-01-20 Benoit Regrain + * gdcmDicomDirElement.[h|cxx] : change the AddEntry method. Now, it gets a + type and not a string. So, there remove problems on the format of the + string. + +2005-01-20 Jean-Pierre Roux + * Add Example/TestPapyrus.cxx + - reads a Papyrus file (gdcm::Header compliant), + - gets the pixels of all the images, using low level iterators + - writes an multiframes Dicom image. + (Just to show it's *possible* to do that) + Uses SQItems accessors (we could use it as a 'Test' program, to improve test + coverage ...) + +2005-01-20 Benoit Regrain + * src/gdcmDicomDirObject.h : set the FillObject method in protected. + Thus, DicomDirXXX are created with a flad that indicates if the created + object is empty or not (when not empty, the DicomDirElement is used to + fill the object) + +2005-01-20 Benoit Regrain + * src/gdcmDicomDir.cxx : simplify the NewPatient method, like made in + gdcm::DicomDirPatient, gdcm::DicomDirStudy, gdcm::DicomDirSerie + +2005-01-20 Benoit Regrain + * src/gdcmSQItem[h|cxx] : rename some methods to have coherent names + +2005-01-20 Benoit Regrain + * src/gdcmDicomDir*.[h|cxx] : rename methods to be logik in their name. + Remove all access to the hash-tables or lists in the objects. + +2005-01-20 Benoit Regrain + * src/gdcmDebug.h : remove the Debug test in the gdcmErrorMacro + * src/gdcmDocument.[h|cxx] : rename the Initialise method to Initialize, to + be complient with all the gdcm source code + +2005-01-19 Benoit Regrain + * src/gdcmDocEntry.h : DocEntry is now secure. User can't change the + DictEntry or the VR. + +2005-01-19 Benoit Regrain + * gdcmPython/ : change GDCM_DATA_PATH to GDCM_DATA_ROOT to be complient with + all in gdcm + 2005-01-19 Benoit Regrain * Test/ : rename VTK tests to have a best name for the tests * gdcmPython/demo/*.py.in : Change the InitTraversal/GetNextEntry use to GetFirstEntry/GetNextEntry use +2005-01-18 Jean-Pierre Roux + * In SerieHeader::ImagePositionPatientOrdering() + // a Dicom 'Serie' may contain scout views + // and images may have differents directions. + // -> More than one may have the same 'pos' + // Sorting has then NO meaning ! + Thx to Eduardo Davila for reporting bug. + 2005-01-18 Benoit Regrain * Test/ShowDicom.cxx, ShowDicomSeq.cxx, TestWriteWithVTK.cxx : change the test. Now it's on image content and not on the resulting visualisation... @@ -10,14 +299,21 @@ 2005-01-18 Jean-Pierre Roux * ENH for DicomDir, DicomDirPatient, DicomDirStudy, - DicomDirSerie, DicomDirImage - Dict, DictSet classes : + DicomDirSerie, DicomDirImage + Dict, DictSet classes : -add method GetFirstEntry to replace call to InitTraversal+GetNextEntry -remove InitTraversal method. - * UPD Test programs + Example programs + * UPD Test programs + Example programs + +2005-01-18 Jean-Pierre Roux + * remove useless and never updated keyword \ingroup + * Solve pb when structure (list, map, ...) is empty. + Thx to Benoit for reporting bug 2005-01-18 Jean-Pierre Roux - remove useless and never updated keyword \ingroup + * Taking into account of 'Transfer Syntax' value + (for 'true' Dicom V3 files, the 'ACR-NEMA' heuristics sometimes gives + unaccurate result) 2005-01-17 Benoit Regrain * src/gdcmUtil.cxx : bug fix to find the Windows MAC address. Now, there @@ -25,42 +321,42 @@ * gdcmPython/demo : add python demos using VTK 2005-01-16 Jean-Pierre Roux - * FIX 'Dictionnary' is now spelt 'Dictionary' - 'wether' is now spelt 'whether' - 'archieve' is now spelt 'archive' ;-) + * FIX 'Dictionnary' is now spelt 'Dictionary' + 'wether' is now spelt 'whether' + 'archieve' is now spelt 'archive' ;-) 2005-01-15 Jean-Pierre Roux * ADD DicomDir, DicomDirPatient, DicomDirStudy, DicomDirSerie, DicomDirImage - related methods, in order not to expose internal mechanisms + related methods, in order not to expose internal mechanisms InitTraversal(); GetNextEntry(); - * REM methods that exposed internal mechanisms : + * REM methods that exposed internal mechanisms : DicomDir::GetDicomDirPatients() DicomDirPatient::GetDicomDirStudies() DicomDirStudy::GetDicomDirSeries() DicomDirSerie::GetDicomDirImages() - * UPD Test programs : - makeDicomDir.cxx - BuildUpDicomDir.cxx - TestDicomDir.cxx - * UPD Example program - PrintDicomDir.cxx + * UPD Test programs : + makeDicomDir.cxx + BuildUpDicomDir.cxx + TestDicomDir.cxx + * UPD Example program + PrintDicomDir.cxx * ADD DictSet methods InitTraversal() GetNextEntry() 2005-01-15 Mathieu Malaterre * Removed the Print/indent/default parameter mess. There is absolutely no - reason to have to methods, moreover with the second taking the ostream as - *SECOND* parameter. This was clearly a bad hack to get things compile. + reason to have to methods, moreover with the second taking the ostream as + *SECOND* parameter. This was clearly a bad hack to get things compile. 2005-01-15 Mathieu Malaterre * Complete rewrite of the GetMacAddress code. Now the code is *much* - smaller (no more MacOSX specific crap). A lot more POSIX oriented. - Unfortunately the main code does not work on SunOS, thus provide a specific - code for this platform only (and Win32 of course). Since this seems to be - working, change CreateUniqueUID to use GetMACAddress instead of the - problematic GctestetIPAddress + smaller (no more MacOSX specific crap). A lot more POSIX oriented. + Unfortunately the main code does not work on SunOS, thus provide a specific + code for this platform only (and Win32 of course). Since this seems to be + working, change CreateUniqueUID to use GetMACAddress instead of the + problematic GctestetIPAddress 2005-01-14 Mathieu Malaterre * Unfortunately to be able to test gdcmDirList I had to break the API @@ -74,16 +370,16 @@ 2005-01-13 Jean-Pierre Roux * ENH - Comment out Mathieu's (dangerous) Super Hack - for dealing with BIGENDIAN processors - - Move equivalent stuff to BinEntry::WriteContent - When necessary, 16 Bits Pixels are swapped in a small buffer - and then written. This avoid allocating a huge buffer, in - PixelWriteConvertor, and avoid modifying the Pixel Area. - Note : - Probabely, the same operation will have to be done when we want - to write image with Big Endian Transfert Syntax, - and we are working on Little Endian Processor - + for dealing with BIGENDIAN processors + - Move equivalent stuff to BinEntry::WriteContent + When necessary, 16 Bits Pixels are swapped in a small buffer + and then written. This avoid allocating a huge buffer, in + PixelWriteConvertor, and avoid modifying the Pixel Area. + Note : + Probabely, the same operation will have to be done when we want + to write image with Big Endian Transfert Syntax, + and we are working on Little Endian Processor + 2005-01-14 Benoit Regrain * src/gdcmDocument.[h|cxx] : comment all methods concerning a flat hash table. @@ -105,8 +401,8 @@ 2005-01-13 Jean-Pierre Roux * merging of Test/PrintDicomDir and Test/TestDicomDir - * removal of now redundant Test/PrintDicomDir - * enhancement of Example/PrintDicomDir + * removal of now redundant Test/PrintDicomDir + * enhancement of Example/PrintDicomDir 2005-01-13 Benoit Regrain * Now, python test might work on systems @@ -114,16 +410,16 @@ 2005-01-13 Jean-Pierre Roux * FIX : First entry following group 0002 was lost for - Explicit Big Endian Transfer Syntax files + Explicit Big Endian Transfer Syntax files (group and elem not swaped) - + 2005-01-12 Jean-Pierre Roux * FIX : Old quick and dirty 'optimistic' heuristic to deal with - Big Endian Transfer Syntax supposed the group following 0002 - begins always by element 0000 (element 0000 is *optional*) - To avoid further troubles, let's be pessimistic, and use - Document::HandleOutOfGroup0002() method - * FIX : comparison between GDCM_NOTLOADED and Transfer Syntax + Big Endian Transfer Syntax supposed the group following 0002 + begins always by element 0000 (element 0000 is *optional*) + To avoid further troubles, let's be pessimistic, and use + Document::HandleOutOfGroup0002() method + * FIX : comparison between GDCM_NOTLOADED and Transfer Syntax (related pb not yet solved) 2005-01-12 Benoit Regrain @@ -141,11 +437,11 @@ 2005-01-11 Jean-Pierre Roux * Replace confusing name SwitchSwapToBigEndian name by SwitchByteSwapCode * Add the Document::HandleOutOfGroup0002(uint16_t group) method - to swap the Swap Code, at parsing time, when we come out of group 0002 - and Transfer Syntax is Big Endian - We should be able to read now 'true DICOM" Big Endian coded images - * Add optional run time SetDebugOn (last param) for PrintHeader, PrintFile - * Replace the french 'Transfert Syntax' by the english 'Transfer Syntax' + to swap the Swap Code, at parsing time, when we come out of group 0002 + and Transfer Syntax is Big Endian + We should be able to read now 'true DICOM" Big Endian coded images + * Add optional run time SetDebugOn (last param) for PrintHeader, PrintFile + * Replace the french 'Transfert Syntax' by the english 'Transfer Syntax' 2005-01-10 Mathieu Malaterre * Hopefully fix the bug on MacOSX and static global initialization. @@ -157,9 +453,9 @@ 2005-01-08 Mathieu Malaterre * Fix bug on MacOSX with static initialization in a multy threaded - environment. static const string in a header file used to be ill - initialized provoquing the freeze of any tests. patch should solve this - issue. + environment. static const string in a header file used to be ill + initialized provoquing the freeze of any tests. patch should solve this + issue. 2005-01-08 Jean-Pierre Roux * According to Benoit's suggestion, and without any objection from anybody @@ -180,22 +476,22 @@ * Removal of useless and dangerous methods : GetEntryByName, GetEntryVRByName, GetDocEntryByName, SetEntryByName GetDocEntryByName, GetEntryByName, GetDictEntryByName - * Removal of usless methods : + * Removal of usless methods : Dict::PrintByName, Dict::GetDictEntryByName * Commenting out of probabely useless methods : Dict::GetDictEntryNames() Dict::GetDictEntryNamesByCategory() DictSet::GetPubDictEntryNames() - DictSet::GetPubDictEntryNamesByCategory() - * ENH : New Dicom Dictionary (with Value Multiplicity) is now used - * ENH : Use dicomTS.dic as described in 2004 version - * ENH : Removal out of the Dicom Dictionary of non dicom 'fourth' field + DictSet::GetPubDictEntryNamesByCategory() + * ENH : New Dicom Dictionary (with Value Multiplicity) is now used + * ENH : Use dicomTS.dic as described in 2004 version + * ENH : Removal out of the Dicom Dictionary of non dicom 'fourth' field Add to the Dicom Dictionary of Dicom 'Value Multiplicity' field - Add Accessors on VM (Value Multiplicity), and VM related methods + Add Accessors on VM (Value Multiplicity), and VM related methods * ADD : Add a list of 'Dicom Attribute types', as found in http://medical.nema.org/dicom/2004/04_15PU.PDF - Unused till now... - * ADD : Add dicomGroupNameAbbreviations.dic + Unused till now... + * ADD : Add dicomGroupNameAbbreviations.dic should be used to write a method to replace the former Dict::GetDictEntryNamesByCategory() @@ -232,11 +528,11 @@ 2005-01-05 Jean-Pierre Roux * ADD : Add the method Util::IsCurrentProcessorBigEndian (we'll need it for 'Explicit VR Big Endian' Transfert Syntax) - * ADD Method Document::ComputeGroupLength - * ENH : now parsing creates a Vitual DictEntry for Pixels Element, + * ADD Method Document::ComputeGroupLength + * ENH : now parsing creates a Vitual DictEntry for Pixels Element, in order to allow further VR modification by user - * REM : removal of once-called method File::WriteBase - integration of its code in formerly one-line method File::Write + * REM : removal of once-called method File::WriteBase + integration of its code in formerly one-line method File::Write 2005-01-05 Benoit Regrain * src/gdcmCommon.h : add the GDCM_UNKNOWN constant. This constant is to @@ -779,7 +1075,7 @@ 2004-10-13 Eric Boix * Doc/Website/MailingList.html added (Sidebar.html changed accordingly). * gdcmPython/gdcm.i: fix for compilation of wrappers (Note: %include order - matters, as stated in warning note at begining of %include section). + matters, as stated in warning note at beginning of %include section). * src/gdcmDicomDir*.[cxx|h]: coding style * src/gdcmDocument.h: doxygen \ref seems uncompatible with \todo. * src/gdcmJpeg8.cxx: doxygen fix. @@ -1188,7 +1484,7 @@ A lot of things should be OK again. It's really urgent to have a test suite that *tests*, to prevent Frog's beautifying sessions to break all the stuff - (twice, withing a fortnigh ...) + (twice, withing a fortnigh ...) 2004-06-28 Eric Boix * Test/TestWriteRead.cxx and TestReadWrite.cxx merged (because of @@ -1285,7 +1581,7 @@ ADD virtual gdcmDocEntry *GetDocEntryByNumber(guint16 group,guint16 element) = 0; ADD gdcmDocEntry *GetDocEntryByName(std::string name); ADD virtual std::string GetEntryByNumber(guint16 group,guint16 element) = 0; - ADD std::string GetEntryByName(TagName name); + ADD std::string GetEntryByName(TagName name); ADD gdcmDictEntry *NewVirtualDictEntry(guint16 group, guint16 element, std::string vr = "unkn", @@ -1323,22 +1619,22 @@ REM gdcmDocEntry *NewDocEntryByName (std::string Name); REM gdcmValEntry *NewValEntryByNumber(guint16 group, guint16 element); REM gdcmBinEntry *NewBinEntryByNumber(guint16 group, guint16 element); - - - gdcmElementSet - ADD virtual void Write(FILE *fp, FileType filetype); - + + - gdcmElementSet + ADD virtual void Write(FILE *fp, FileType filetype); + - gdcmSeqEntry - ADD virtual void Write(FILE *fp,FileType filetype); + ADD virtual void Write(FILE *fp,FileType filetype); - gdcmSQItem ADD virtual void Write(FILE *fp, FileType filetype); - ADD virtual std::string GetEntryByNumber(guint16 group, guint16 element); + ADD virtual std::string GetEntryByNumber(guint16 group, guint16 element); REM std::string GetEntryByNumber(guint16 group, guint16 element); REM std::string GetEntryByName(TagName name); - gdcmValEntry - ADD virtual void gdcmValEntry::Write(FILE *fp, FileType filetype); - + ADD virtual void gdcmValEntry::Write(FILE *fp, FileType filetype); + 2004-06-21 Eric Boix * Test/TestWriteSimple.cxx: fix to gdcmHeader-gdcmHeaderHelper revamping. The default constructor invoked by the line @@ -1448,23 +1744,23 @@ - Specific clean up of Parse7FE0() (umproperly named actually). * gdcmPython/testSuite.py: an odd temporary kludge introduced. -2004-06-14 Jean-Pierre Roux +2004-06-14 Jean-Pierre Roux * gdcmSeqEntry.cxx - - fix the display of Sequence Delimitor (SQDepthLevel pb) - - fix the display of SQItem ordinal number + - fix the display of Sequence Delimitor (SQDepthLevel pb) + - fix the display of SQItem ordinal number - add the GetSQItemByOrdinalNumber method - - remove some useless never written private methods - + - remove some useless never written private methods + 2004-06-14 Jean-Pierre Roux * gdcmBinEntry.cxx - adding a constructor taking a gdcmDocEntry as an input param - - ReplaceOrCreateByNumber now returns : - a gdcmBinEntry * if a Binary (void *) value is passed as a param - a gdcmValEntry * if a string value is passed as a param + - ReplaceOrCreateByNumber now returns : + a gdcmBinEntry * if a Binary (void *) value is passed as a param + a gdcmValEntry * if a string value is passed as a param * dcmDocument.cxx - SetEntryByNumber now allows setting gdcmValEntry or gdcmBinEntry, - according to the param type (no longer sets a gdcmDocEntry) - - GetValEntryByNumber, GetBinEntryByNumber added + according to the param type (no longer sets a gdcmDocEntry) + - GetValEntryByNumber, GetBinEntryByNumber added - NewValEntryByNumber and NewBinEntryByNumber added * gdcmFile.cxx - Pixel Data are now linked to the (7fe0,0010) elements, after reading @@ -1472,10 +1768,10 @@ - GetSQItemNumber and SetSQItemNumber added, to provide a (relative) Item identier inside a given Sequence \warning : some pb remaining around this number - will be solved asap - - AddEntry now takes the Item Number as a param + will be solved asap + - AddEntry now takes the Item Number as a param * gdcmValEntry.cxx - - adding a constructor taking a gdcmDocEntry as an input param + - adding a constructor taking a gdcmDocEntry as an input param 2004-06-14 Eric Boix * Memory leak hunt with the following command: @@ -1652,7 +1948,7 @@ 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 + 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 @@ -1673,9 +1969,9 @@ * ENH Minor changes to the Print() methods. * ADD gdcmParser::PrintEntryNiceSQ() to allow SQ-indented Header printing. Example given with : - > PrintHeader fileName 2 new + > PrintHeader fileName 2 new (SQ based tree-like structure still to be done for the Header ...) - + 2004-04-22 Mathieu Malaterre * ENH: Some cosmetic clean up for compilation with -W -Wall -Werror 1. I have added some unsigned where needed @@ -1696,17 +1992,17 @@ * 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 + 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 @@ -1714,7 +2010,7 @@ * 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...) @@ -1740,7 +2036,7 @@ from gdcmParser::WriteEntry to gdcmParser::WriteEntries * FIX : gdcmObject::ResetBoundaries now stops properly when end-of-list is reached - : gdcmVersion modified (as Benoit Regrain asked) + : gdcmVersion modified (as Benoit Regrain asked) 2004-03-29 Eric Boix * src/gdcmParser.cxx: removal of all TAB character. Indentation fixed. @@ -1805,14 +2101,14 @@ add gdcmDicomDirPatient:NewStudy add gdcmDicomDirStudy:NewSerie add gdcmDicomDirSerie:NewImage - to allow making gdcDicomDir object. + 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 * FIX : memory leaks and the set of ArgDelete methods in gdcmDicomDir when using from python - + 2004-02-10 Benoit Regrain * FIX : bug fix in the gdcmDirList for the recursivity in directories * FIX : in gdcmDicomDir when the directory is empty @@ -2031,19 +2327,19 @@ 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) + (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 + 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) + because gdcmElValSet::Add does not update ListElem + (to be written) 2003-11-07 Jean-Pierre Roux * FIX misstyping in Transfert Syntax name table @@ -2103,7 +2399,7 @@ 2003-10-29 Mathieu Malaterre * ENH: Can be used like this '$vtkgdcmViewer *.dcm' with *.dcm - being coherents dicom files. + being coherents dicom files. 2003-10-29 Mathieu Malaterre * FIX: DOH ! Forgot about windo$e users, they couldn't read lossless jpeg, @@ -2308,7 +2604,7 @@ - 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. + YBR_RCT files. (no sample found :-( 2003-10-02 Mathieu Malaterre @@ -2921,7 +3217,7 @@ entries within the associated public Dicom dictionary resp. the same information but sorted by the fourth field (PAT, IMG, DIR) of the dictionary. - - Dicts/dicomV3.dic Entries which had and unspecified fourth field + - Dicts/dicomV3.dic Entries which had an unspecified fourth field are now in the "???" group. - python/gdcm.i changed accordingly, - python/demo/printGroupedPublicDict.py added, that gives an example @@ -3010,7 +3306,7 @@ 2002-11-18 Eric Boix * src/gdcm.h and gdcmHeader.cxx are now "Big Endian transfer syntax" - aware. See the strategy comments in gdcmHeader::FindeLength(). + aware. See the strategy comments in gdcmHeader::FindLength(). * Test/test.cxx now accepts a filename as first argument. * Data/US-PAL-8-10x-echo.dcm and US-RGB-8-epicard.dcm added. * python/testSuite.py changed to integrate test on above files. @@ -3073,7 +3369,7 @@ 2002-10-31 Eric Boix * Straightforward temporary fixes for swig to build the python wrappers. src/Makefile now has a python working entry [by working we mean - that we can import de shadow classes without errors]. + that we can import the shadow classes without errors]. 2002-10-29 Eric Boix * hashtest.cxx removed (since already in Test)