Conversation
1a17b4b to
b38f206
Compare
Enet4
commented
Jun 30, 2025
Enet4
commented
Jun 30, 2025
728dcb5 to
9026c9e
Compare
- [parser] add LazyDataSetReader::peek and LazyDataSetReader::new_with_ts - [parser] change Debug impl for LazyDataToken so that it works for any data source - [object] add collector module and DicomCollector abstraction - allows users to fetch DICOM data in chunks - pub use DicomCollector and DicomCollectorOptions at crate root - Adjust documentation
- add read_up_to_pixeldata, shortcut method - add read_basic_offset_table
- add missing backtrace fields - add documentation to `Error` - format code
- make fields public - document it
- with odd length strategy support
- make it a consuming builder type - add support for odd_length strategy option - support overriding the data dictionary
9026c9e to
7dc935d
Compare
- use `read_dataset_up_to_pixeldata` where possible
and remove unused variants
- so that their size is not too large
- impl Debug for CollectionSource - add "source" field to DicomCollector Debug impl
- move transfer syntax UID resolution to inside CollectionSource - remove type parameter 't
- add ts_hint through option method `expected_ts` and `unset_expected_ts` - remove `open_file_with_ts` and `from_reader_with_ts`
- type parameters less likely to change should appear last - provide type parameter defaults for DicomCollector, simplify impls accordingly
- move all examples and extended explanation to module-level documentation
8fae262 to
3efc39f
Compare
- only available in 1.83.0, whereas MSRV is still 1.72.0
- add method `DicomCollector::take_file_meta` - add samples per pixel in sample data
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
The DICOM collector API in
DicomObjectCollectorcan be used for reading DICOM objects in contiguous chunks, thus being able to collect meta-data earlier and reducing memory footprint by not having to keep the full data set in memory.Summary
LazyDataSetReader::peekandLazyDataSetReader::new_with_tsDebugimpl forLazyDataTokenso that it works for any data sourceDicomCollectorabstractionDicomCollectorandDicomCollectorOptionsat crate rootKnown caveats
read_next_fragmentallows consumers to retrieve the basic offset table as plain bytes, despite being the fragment reserved for the basic offset table. Users who are interested in the offset table should callread_basic_offset_tablebefore callingread_next_fragment, because it is not saved by the collector.