|
PACS System 0.1.0
PACS DICOM system library
|
JPEG Baseline (Process 1) codec implementation. More...
#include <jpeg_baseline_codec.h>


Classes | |
| class | impl |
| PIMPL implementation for jpeg_baseline_codec. More... | |
Public Member Functions | |
| jpeg_baseline_codec () | |
| Constructs a JPEG Baseline codec instance. | |
| ~jpeg_baseline_codec () override | |
| jpeg_baseline_codec (const jpeg_baseline_codec &)=delete | |
| jpeg_baseline_codec & | operator= (const jpeg_baseline_codec &)=delete |
| jpeg_baseline_codec (jpeg_baseline_codec &&) noexcept | |
| jpeg_baseline_codec & | operator= (jpeg_baseline_codec &&) noexcept |
Codec Information | |
| std::string_view | transfer_syntax_uid () const noexcept override |
| Returns the Transfer Syntax UID supported by this codec. | |
| std::string_view | name () const noexcept override |
| Returns a human-readable name for the codec. | |
| bool | is_lossy () const noexcept override |
| Checks if this codec produces lossy compression. | |
| bool | can_encode (const image_params ¶ms) const noexcept override |
| Checks if this codec supports the given image parameters. | |
| bool | can_decode (const image_params ¶ms) const noexcept override |
| Checks if this codec can decode data with given parameters. | |
Compression Operations | |
| codec_result | encode (std::span< const uint8_t > pixel_data, const image_params ¶ms, const compression_options &options={}) const override |
| Compresses pixel data to JPEG Baseline format. | |
| codec_result | decode (std::span< const uint8_t > compressed_data, const image_params ¶ms) const override |
| Decompresses JPEG Baseline data. | |
Public Member Functions inherited from kcenon::pacs::encoding::compression::compression_codec | |
| virtual | ~compression_codec ()=default |
Static Public Attributes | |
| static constexpr std::string_view | kTransferSyntaxUID = "1.2.840.10008.1.2.4.50" |
| DICOM Transfer Syntax UID for JPEG Baseline. | |
Private Attributes | |
| std::unique_ptr< impl > | impl_ |
Additional Inherited Members | |
Protected Member Functions inherited from kcenon::pacs::encoding::compression::compression_codec | |
| compression_codec ()=default | |
| compression_codec (const compression_codec &)=default | |
| compression_codec & | operator= (const compression_codec &)=default |
| compression_codec (compression_codec &&)=default | |
| compression_codec & | operator= (compression_codec &&)=default |
JPEG Baseline (Process 1) codec implementation.
Implements DICOM Transfer Syntax 1.2.840.10008.1.2.4.50. Uses libjpeg-turbo for high-performance SIMD-accelerated encoding/decoding.
Supported Features:
Limitations:
Thread Safety:
Integration:
Definition at line 47 of file jpeg_baseline_codec.h.
| kcenon::pacs::encoding::compression::jpeg_baseline_codec::jpeg_baseline_codec | ( | ) |
Constructs a JPEG Baseline codec instance.
Definition at line 365 of file jpeg_baseline_codec.cpp.
|
overridedefault |
|
delete |
|
defaultnoexcept |
|
nodiscardoverridevirtualnoexcept |
Checks if this codec can decode data with given parameters.
| params | The image parameters |
Implements kcenon::pacs::encoding::compression::compression_codec.
Definition at line 390 of file jpeg_baseline_codec.cpp.
|
nodiscardoverridevirtualnoexcept |
Checks if this codec supports the given image parameters.
| params | The image parameters to check |
Implements kcenon::pacs::encoding::compression::compression_codec.
Definition at line 386 of file jpeg_baseline_codec.cpp.
|
nodiscardoverridevirtual |
Decompresses JPEG Baseline data.
| compressed_data | JPEG compressed data |
| params | Image parameters (width/height for validation) |
Output format:
Implements kcenon::pacs::encoding::compression::compression_codec.
Definition at line 409 of file jpeg_baseline_codec.cpp.
References kcenon::pacs::encoding::compression::jpeg_baseline_codec::impl::decode(), and impl_.

|
nodiscardoverridevirtual |
Compresses pixel data to JPEG Baseline format.
| pixel_data | Uncompressed pixel data (8-bit) |
| params | Image parameters |
| options | Compression options (quality, subsampling) |
Quality mapping:
Implements kcenon::pacs::encoding::compression::compression_codec.
Definition at line 402 of file jpeg_baseline_codec.cpp.
References kcenon::pacs::encoding::compression::jpeg_baseline_codec::impl::encode(), and impl_.
Referenced by kcenon::pacs::web::dicomweb::render_dicom_image().


|
nodiscardoverridevirtualnoexcept |
Checks if this codec produces lossy compression.
Implements kcenon::pacs::encoding::compression::compression_codec.
Definition at line 382 of file jpeg_baseline_codec.cpp.
|
nodiscardoverridevirtualnoexcept |
Returns a human-readable name for the codec.
Implements kcenon::pacs::encoding::compression::compression_codec.
Definition at line 378 of file jpeg_baseline_codec.cpp.
|
delete |
|
defaultnoexcept |
|
nodiscardoverridevirtualnoexcept |
Returns the Transfer Syntax UID supported by this codec.
Implements kcenon::pacs::encoding::compression::compression_codec.
Definition at line 374 of file jpeg_baseline_codec.cpp.
|
private |
Definition at line 117 of file jpeg_baseline_codec.h.
|
staticconstexpr |
DICOM Transfer Syntax UID for JPEG Baseline.
Definition at line 50 of file jpeg_baseline_codec.h.
Referenced by kcenon::pacs::encoding::compression::codec_factory::create().