DCMTK: DJEncoderRegistration Class Reference

DCMTK Version 3.6.9 OFFIS DICOM Toolkit

Loading...
Searching...
No Matches
Static Public Member Functions | Static Private Attributes | List of all members
DJEncoderRegistration Class Reference

singleton class that registers encoders for all supported JPEG processes. More...

## Static Public Member Functions
static void | registerCodecs (E_CompressionColorSpaceConversion pCompressionCSConversion=ECC_lossyYCbCr, E_UIDCreation pCreateSOPInstanceUID=EUC_default, OFBool pOptimizeHuffman=OFFalse, int pSmoothingFactor=0, int pForcedBitDepth=0, Uint32 pFragmentSize=0, OFBool pCreateOffsetTable=OFTrue, E_SubSampling pSampleFactors=ESS_422, OFBool pWriteYBR422=OFTrue, OFBool pConvertToSC=OFFalse, unsigned long pWindowType=0, unsigned long pWindowParameter=0, double pVoiCenter=0.0, double pVoiWidth=0.0, unsigned long pRoiLeft=0, unsigned long pRoiTop=0, unsigned long pRoiWidth=0, unsigned long pRoiHeight=0, OFBool pUsePixelValues=OFTrue, OFBool pUseModalityRescale=OFFalse, OFBool pAcceptWrongPaletteTags=OFFalse, OFBool pAcrNemaCompatibility=OFFalse, OFBool pRealLossless=OFTrue)
| registers encoders for all supported JPEG processes.
static void | cleanup ()
| deregisters encoders.

## Static Private Attributes
static OFBool | registered
| flag indicating whether the encoders are already registered.
static DJCodecParameter * | cp
| pointer to codec parameter shared by all encoders
static DJEncoderBaseline * | encbas
| pointer to encoder for baseline JPEG
static DJEncoderExtended * | encext
| pointer to encoder for extended JPEG
static DJEncoderSpectralSelection * | encsps
| pointer to encoder for spectral selection JPEG
static DJEncoderProgressive * | encpro
| pointer to encoder for progressive JPEG
static DJEncoderP14SV1 * | encsv1
| pointer to encoder for lossless SV1 JPEG
static DJEncoderLossless * | enclol
| pointer to encoder for lossless JPEG

## Detailed Description

singleton class that registers encoders for all supported JPEG processes.

## Member Function Documentation

## ◆ cleanup()

static void DJEncoderRegistration::cleanup | ( |  | ) |
| static

deregisters encoders.

Attention: Must not be called while other threads might still use the registered codecs, e.g. because they are currently encoding DICOM data sets through dcmdata.

## ◆ registerCodecs()

static void DJEncoderRegistration::registerCodecs | ( | E_CompressionColorSpaceConversion | pCompressionCSConversion = ECC_lossyYCbCr,
|  | E_UIDCreation | pCreateSOPInstanceUID = EUC_default,
|  | OFBool | pOptimizeHuffman = OFFalse,
|  | int | pSmoothingFactor = 0,
|  | int | pForcedBitDepth = 0,
|  | Uint32 | pFragmentSize = 0,
|  | OFBool | pCreateOffsetTable = OFTrue,
|  | E_SubSampling | pSampleFactors = ESS_422,
|  | OFBool | pWriteYBR422 = OFTrue,
|  | OFBool | pConvertToSC = OFFalse,
|  | unsigned long | pWindowType = 0,
|  | unsigned long | pWindowParameter = 0,
|  | double | pVoiCenter = 0.0,
|  | double | pVoiWidth = 0.0,
|  | unsigned long | pRoiLeft = 0,
|  | unsigned long | pRoiTop = 0,
|  | unsigned long | pRoiWidth = 0,
|  | unsigned long | pRoiHeight = 0,
|  | OFBool | pUsePixelValues = OFTrue,
|  | OFBool | pUseModalityRescale = OFFalse,
|  | OFBool | pAcceptWrongPaletteTags = OFFalse,
|  | OFBool | pAcrNemaCompatibility = OFFalse,
|  | OFBool | pRealLossless = OFTrue )
| static

registers encoders for all supported JPEG processes.

If already registered, call is ignored unless cleanup() has been performed before.

Parameters

  pCompressionCSConversion | color conversion mode for compression
  pCreateSOPInstanceUID | mode for SOP Instance UID creation
  pOptimizeHuffman | perform huffman table optimization for 8 bits/pixel compression?
  pSmoothingFactor | smoothing factor for image compression, 0..100
  pForcedBitDepth | forced bit depth for image compression, 0 (auto) or 8/12/16
  pFragmentSize | maximum fragment size (in kbytes) for compression, 0 for unlimited.
  pCreateOffsetTable | create offset table during image compression?
  pSampleFactors | subsampling mode for lossy YCbCr color image compression
  pWriteYBR422 | flag indicating whether a compressed YBR color stream should be marked as YBR_FULL_422 (if true) or YBR_FULL (if false) on DICOM level
  pConvertToSC | flag indicating whether image should be converted to Secondary Capture upon compression
  pWindowType | mode for VOI transformation of monochrome images
  pWindowParameter | parameter for VOI transform of monochrome images, used in modes 1, 2, 4, 6
  pVoiCenter | VOI window center for mode 5
  pVoiWidth | VOI window width for mode 5
  pRoiLeft | Region of Interest left corner for for VOI transform of monochrome images, mode 7
  pRoiTop | Region of Interest upper corner for for VOI transform of monochrome images, mode 7
  pRoiWidth | Region of Interest width for for VOI transform of monochrome images, mode 7
  pRoiHeight | Region of Interest height for for VOI transform of monochrome images, mode 7
  pUsePixelValues | Check smallest and largest pixel value and optimize compression, mode 0 only
  pUseModalityRescale | Create Rescale Slope/Intercept to scale back to original pixel range, mode 0 only
  pAcceptWrongPaletteTags | Accept wrong palette attribute tags (only "pseudo lossless" encoder)
  pAcrNemaCompatibility | Accept old ACR-NEMA images without photometric interpretation (only "pseudo lossless" encoder)
  pRealLossless | Enables true lossless compression (replaces old "pseudo" lossless encoders)

References ECC_lossyYCbCr, ESS_422, and EUC_default.

The documentation for this class was generated from the following file:

- dcmjpeg/include/dcmtk/dcmjpeg/djencode.h

Generated on Wed Apr 30 2025 for DCMTK Version 3.6.9 by Doxygen 1.13.2