Expand description
Module containing the DICOM Transfer Syntax data structure and related methods.
Similar to the DcmCodec in DCMTK, the TransferSyntax
contains all of the necessary
algorithms for decoding and encoding DICOM data in a certain transfer syntax.
This crate does not host specific transfer syntaxes. Instead, they are created in
other crates and registered in the global transfer syntax registry,
which implements TransferSyntaxIndex
.
For more information, please see the dicom-transfer-syntax-registry
crate,
which provides built-in implementations.
This module allows you to register your own transfer syntaxes.
With the inventory-registry
Cargo feature,
you can use the macro submit_transfer_syntax
or submit_ele_transfer_syntax
to instruct the compiler to include your implementation in the registry.
Without the inventory
-based registry
(in case your environment does not support it),
you can still roll your own transfer syntax index.
Structs§
- A DICOM transfer syntax specifier.
- Wrapper type for a provider of transfer syntax descriptors.
Enums§
- A description and possible implementation regarding the encoding and decoding requirements of a transfer syntax. This is also used as a means to describe whether pixel data is encapsulated and whether this implementation supports decoding and/or encoding it.
- Enumerate for materializing the two kinds of machine byte order supported by Rust in a dynamic fashion. That is, the information of whether to read or write data in Little Endian or in Big Endian is resolved at run time by observing this value.
- An immaterial type representing a data set adapter which is never required, and as such is never instantiated. Most transfer syntaxes use this, as they do not have to adapt readers and writers for encoding and decoding data sets. The main exception is in the family of Deflated Explicit VR Little Endian transfer syntaxes.
Traits§
- An adapter of byte read and write streams.
- Trait for a container/repository of transfer syntax specifiers.
Type Aliases§
- An alias for a transfer syntax specifier with no pixel data encapsulation nor data set deflating.
- Alias type for a dynamically dispatched data adapter.
- A decoder with its type erased.
- An encoder with its type erased.