Adds all new VRs up until DICOM standard 2021a, fixing decoding failures when trying to read newer DICOMs with VRs of e.g. UC, UR, OV, etc. #116
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Sometime between 2014 and 2021, the default handling for the tag length of new explicit VRs also changed (it defaults to 4 bytes now as opposed to 2 bytes) and a range of new VRs having a 4 byte tag length was introduced.
Unfortunately, the current implementation of the DicomDecoder class means that it is not able to properly distinguish between implicit and explicit VR DICOM Data Sets and assumes explicit only if the respective 2-byte-snippet matches a known VR. As a consequence, all future new VRs have to be added explicitly to the DicomDecoder class to prevent errors until the standard is implemented in a more complete way (having a proper default tag length of 4 bytes for explicit VRs would have prevented decoding errors for the new VRs from 2014 even if they would not have been explicitly know to the DicomDecoder class).
This pull request adds all new VRs up until the DICOM standard 2021a to the DicomDecoder class.