|
PACS System 0.1.0
PACS DICOM system library
|
Factory class for creating compression codec instances. More...
#include <codec_factory.h>

Static Public Member Functions | |
| static std::unique_ptr< compression_codec > | create (std::string_view transfer_syntax_uid) |
| Creates a codec instance for the given Transfer Syntax UID. | |
| static std::unique_ptr< compression_codec > | create (const transfer_syntax &ts) |
| Creates a codec instance for the given Transfer Syntax. | |
| static std::vector< std::string_view > | supported_transfer_syntaxes () |
| Returns a list of all supported Transfer Syntax UIDs. | |
| static bool | is_supported (std::string_view transfer_syntax_uid) |
| Checks if a Transfer Syntax is supported for compression. | |
| static bool | is_supported (const transfer_syntax &ts) |
| Checks if a Transfer Syntax is supported for compression. | |
Private Member Functions | |
| codec_factory ()=delete | |
Factory class for creating compression codec instances.
Provides a centralized registry for codec creation based on Transfer Syntax UID. Thread-safe: All factory methods can be called from multiple threads.
Usage:
Definition at line 38 of file codec_factory.h.
|
privatedelete |
|
staticnodiscard |
Creates a codec instance for the given Transfer Syntax.
| ts | The Transfer Syntax object |
Definition at line 135 of file codec_factory.cpp.
References create().

|
staticnodiscard |
Creates a codec instance for the given Transfer Syntax UID.
| transfer_syntax_uid | The DICOM Transfer Syntax UID |
Supported UIDs:
Definition at line 49 of file codec_factory.cpp.
References kcenon::pacs::encoding::compression::frame_deflate_codec::kTransferSyntaxUID, kcenon::pacs::encoding::compression::jpeg_baseline_codec::kTransferSyntaxUID, kcenon::pacs::encoding::compression::jpeg_lossless_codec::kTransferSyntaxUID, kcenon::pacs::encoding::compression::rle_codec::kTransferSyntaxUID, kcenon::pacs::encoding::compression::jpegxl_codec::kTransferSyntaxUIDJPEGRecompression, kcenon::pacs::encoding::compression::htj2k_codec::kTransferSyntaxUIDLossless, kcenon::pacs::encoding::compression::jpeg2000_codec::kTransferSyntaxUIDLossless, kcenon::pacs::encoding::compression::jpeg_ls_codec::kTransferSyntaxUIDLossless, kcenon::pacs::encoding::compression::jpegxl_codec::kTransferSyntaxUIDLossless, kcenon::pacs::encoding::compression::htj2k_codec::kTransferSyntaxUIDLossy, kcenon::pacs::encoding::compression::jpeg2000_codec::kTransferSyntaxUIDLossy, kcenon::pacs::encoding::compression::jpegxl_codec::kTransferSyntaxUIDLossy, kcenon::pacs::encoding::compression::hevc_codec::kTransferSyntaxUIDMain, kcenon::pacs::encoding::compression::hevc_codec::kTransferSyntaxUIDMain10, kcenon::pacs::encoding::compression::jpeg_ls_codec::kTransferSyntaxUIDNearLossless, and kcenon::pacs::encoding::compression::htj2k_codec::kTransferSyntaxUIDRPCL.
Referenced by create().

|
staticnodiscard |
Checks if a Transfer Syntax is supported for compression.
| ts | The Transfer Syntax object |
Definition at line 153 of file codec_factory.cpp.
References is_supported().

|
staticnodiscard |
Checks if a Transfer Syntax is supported for compression.
| transfer_syntax_uid | The DICOM Transfer Syntax UID |
Definition at line 144 of file codec_factory.cpp.
References uid.
Referenced by is_supported().

|
staticnodiscard |
Returns a list of all supported Transfer Syntax UIDs.
Definition at line 140 of file codec_factory.cpp.