dicom_encoding/
lib.rs

1#![deny(trivial_numeric_casts, unsafe_code, unstable_features)]
2#![warn(
3    missing_debug_implementations,
4    unused_qualifications,
5    unused_import_braces
6)]
7#![allow(clippy::derive_partial_eq_without_eq)]
8//! DICOM encoding and decoding primitives.
9//!
10//! This crate provides interfaces and data structures for reading and writing
11//! data in accordance to the DICOM standard. This crate also hosts the concept
12//! of [transfer syntax specifier], which can be used to produce DICOM encoders
13//! and decoders at run-time.
14//!
15//! For the time being, all APIs are based on synchronous I/O.
16//!
17//! [transfer syntax specifier]: ./transfer_syntax/index.html
18
19pub mod adapters;
20pub mod decode;
21pub mod encode;
22pub mod text;
23pub mod transfer_syntax;
24
25pub use adapters::NeverPixelAdapter;
26pub use byteordered::Endianness;
27pub use decode::Decode;
28pub use encode::Encode;
29pub use transfer_syntax::AdapterFreeTransferSyntax;
30pub use transfer_syntax::Codec;
31pub use transfer_syntax::DataRWAdapter;
32pub use transfer_syntax::NeverAdapter;
33pub use transfer_syntax::TransferSyntax;
34pub use transfer_syntax::TransferSyntaxIndex;
35
36// public dependency re-export
37pub use snafu;
38
39// public dependency re-export
40#[cfg(feature = "inventory-registry")]
41pub use inventory;