Yesterday, a new development snapshot of the DCMTK has been made available. This is the thirteenth snapshot after the official release of version 3.6.0. As always, we have updated the code for the latest changes to the DICOM standard. That means, the data dictionary, the list of UIDs and the like is up-to-date and based on the definitions of the current edition of the standard text DICOM 2015b.
These are the main changes of this snapshot:
- Further enhanced DICOM Structured Reporting implementation in module “dcmsr“, e.g. by adding convenience functions to some of the classes that are most often used. Also improved handling of incorrectly encoded DICOM SR documents.
- Added initial support for SR templates by introducing two general classes for root and non-root templates. These general classes can e.g. be used to derive specific classes for particular templates from DICOM Part 16 (DCMR).
- Also added support for CP-1031 (Support long code values) and CP-1417 (Clarify use and declaration of private mapping resource) to the SR implementation.
- Introduced advanced parameterization methods to “dcmtls” for fine-tuning the settings of the underlying OpenSSL library and/or implementing missing functionality.
- Enhanced C++11 legacy implementations to work with older compilers.
As usual, we have also fixed a number of issues that were detected after the publication of the previous version. All details on what has changed can be found in the corresponding CHANGES file. If you are interested in the differences on a source code level, please check the web interface of our public git repository.
By the way, right after this DCMTK snapshot has been published, we have moved the CHANGES.361 file from the main directory to the “docs” subdirectory.
A final note: Most of the enhancements that I did in the last couple of months on the DICOM SR implementation are supported in part by the QIICR project. So, in case you are missing a certain feature in the DCMTK, you might want to read this blog post 🙂