DCMTK Version 3.7.0 OFFIS DICOM Toolkit

Public Member Functions | Private Member Functions | Private Attributes | List of all members
DJDecompressIJG12Bit Class Reference

this class encapsulates the decompression routines of the IJG JPEG library configured for 12 bits/sample. More...

Inheritance diagram for DJDecompressIJG12Bit:

## Public Member Functions
| DJDecompressIJG12Bit (const DJCodecParameter &cp, OFBool isYBR)
| constructor More...
virtual | ~DJDecompressIJG12Bit ()
| destructor
virtual OFCondition | init ()
| initializes internal object structures. More...
virtual OFCondition | decode (Uint8 *compressedFrameBuffer, Uint32 compressedFrameBufferSize, Uint8 *uncompressedFrameBuffer, Uint32 uncompressedFrameBufferSize, OFBool isSigned)
| suspended decompression routine. More...
virtual Uint16 | bytesPerSample () const
| returns the number of bytes per sample that will be written when decoding.
virtual EP_Interpretation | getDecompressedColorModel () const
| after successful compression, returns the color model of the decompressed image
virtual void | emitMessage (int msg_level) const
| callback function used to report warning messages and the like. More...
Public Member Functions inherited from DJDecoder
| DJDecoder ()
| default constructor
virtual | ~DJDecoder ()
| destructor

## Private Member Functions
| DJDecompressIJG12Bit (const DJDecompressIJG12Bit &)
| private undefined copy constructor
DJDecompressIJG12Bit & | operator= (const DJDecompressIJG12Bit &)
| private undefined copy assignment operator
void | cleanup ()
| cleans up cinfo structure, called from destructor and error handlers

## Private Attributes
const DJCodecParameter * | cparam
| codec parameters
dcmtk_jpeg12_decompress_struct * | cinfo
| decompression structure
int | suspension
| position of last suspend
void * | jsampBuffer
| temporary storage for row buffer during suspension
OFBool | dicomPhotometricInterpretationIsYCbCr
| Flag indicating if DICOM photometric interpretation is YCbCr.
EP_Interpretation | decompressedColorModel
| color model after decompression

## Detailed Description

this class encapsulates the decompression routines of the IJG JPEG library configured for 12 bits/sample.

## Constructor & Destructor Documentation

## ◆ DJDecompressIJG12Bit()

DJDecompressIJG12Bit::DJDecompressIJG12Bit | ( | const DJCodecParameter & | cp,
|  | OFBool | isYBR
| ) |  |

constructor

Parameters

  cp | codec parameters
  isYBR | flag indicating if DICOM photometric interpretation is YCbCr

## Member Function Documentation

## ◆ decode()

virtual OFCondition DJDecompressIJG12Bit::decode | ( | Uint8 * | compressedFrameBuffer,
|  | Uint32 | compressedFrameBufferSize,
|  | Uint8 * | uncompressedFrameBuffer,
|  | Uint32 | uncompressedFrameBufferSize,
|  | OFBool | isSigned
| ) |  |
| virtual

suspended decompression routine.

Decompresses a JPEG frame until finished or out of data. Can be called with new data until a frame is complete.

Parameters

  compressedFrameBuffer | pointer to compressed input data, must not be NULL
  compressedFrameBufferSize | size of buffer, in bytes
  uncompressedFrameBuffer | pointer to uncompressed output data, must not be NULL. This buffer must not change between multiple decode() calls for a single frame.
  uncompressedFrameBufferSize | size of buffer, in bytes (!) Buffer must be large enough to contain a complete frame.
  isSigned | OFTrue, if uncompressed pixel data is signed, OFFalse otherwise

Returns
  EC_Normal if successful, EC_Suspend if more data is needed, an error code otherwise.

Implements DJDecoder.

## ◆ emitMessage()

virtual void DJDecompressIJG12Bit::emitMessage | ( | int | msg_level | ) | const
| virtual

callback function used to report warning messages and the like.

Should not be called by user code directly.

Parameters

  msg_level | -1 for warnings, 0 and above for trace messages

## ◆ init()

virtual OFCondition DJDecompressIJG12Bit::init | ( |  | ) |
| virtual

initializes internal object structures.

Must be called before a new frame is decompressed.

Returns
  EC_Normal if successful, an error code otherwise

Implements DJDecoder.

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

- dcmjpeg/include/dcmtk/dcmjpeg/djdijg12.h

Generated on Mon Dec 15 2025 for DCMTK Version 3.7.0 by Doxygen 1.9.1