gdcm::JPEGCodec Class Reference

JPEG codec. More...

`#include <gdcmJPEGCodec.h>`

Inheritance diagram for gdcm::JPEGCodec:
[legend]
Collaboration diagram for gdcm::JPEGCodec:
[legend]

## Public Member Functions

| JPEGCodec ()
| ~JPEGCodec () override
bool | CanCode (TransferSyntax const &ts) const override
| Return whether this coder support this transfer syntax (can code it).
bool | CanDecode (TransferSyntax const &ts) const override
| Return whether this decoder support this transfer syntax (can decode it).
ImageCodec * | Clone () const override
bool | Code (DataElement const &in, DataElement &out) override
| Compress into JPEG.
void | ComputeOffsetTable (bool b)
| Compute the offset table:
bool | Decode (DataElement const &is, DataElement &os) override
| Decode.
virtual bool | EncodeBuffer (std::ostream &out, const char *inbuffer, size_t inlen)
bool | GetHeaderInfo (std::istream &is, TransferSyntax &ts) override
bool | GetLossless () const
double | GetQuality () const
void | SetLossless (bool l)
void | SetPixelFormat (PixelFormat const &pf) override
void | SetQuality (double q)
Public Member Functions inherited from gdcm::ImageCodec
| ImageCodec ()
| ~ImageCodec () override
bool | CleanupUnusedBits (char *data, size_t datalen)
const unsigned int * | GetDimensions () const
bool | GetLossyFlag () const
const LookupTable & | GetLUT () const
bool | GetNeedByteSwap () const
unsigned int | GetNumberOfDimensions () const
const PhotometricInterpretation & | GetPhotometricInterpretation () const
PixelFormat & | GetPixelFormat ()
const PixelFormat & | GetPixelFormat () const
unsigned int | GetPlanarConfiguration () const
bool | IsLossy () const
void | SetDimensions (const std::vector< unsigned int > &d)
void | SetDimensions (const unsigned int d[3])
void | SetLossyFlag (bool l)
void | SetLUT (LookupTable const &lut)
void | SetNeedByteSwap (bool b)
void | SetNeedOverlayCleanup (bool b)
void | SetNumberOfDimensions (unsigned int dim)
void | SetPhotometricInterpretation (PhotometricInterpretation const &pi)
void | SetPlanarConfiguration (unsigned int pc)
Public Member Functions inherited from gdcm::Coder
virtual | ~Coder ()=default
Public Member Functions inherited from gdcm::Decoder
virtual | ~Decoder ()=default

## Protected Member Functions

bool | AppendFrameEncode (std::ostream &out, const char *data, size_t datalen) override
bool | AppendRowEncode (std::ostream &out, const char *data, size_t datalen) override
bool | DecodeByStreams (std::istream &is, std::ostream &os) override
bool | DecodeExtent (char *buffer, unsigned int xmin, unsigned int xmax, unsigned int ymin, unsigned int ymax, unsigned int zmin, unsigned int zmax, std::istream &is)
bool | IsFrameEncoder () override
bool | IsRowEncoder () override
virtual bool | IsStateSuspension () const
bool | IsValid (PhotometricInterpretation const &pi) override
void | SetBitSample (int bit)
bool | StartEncode (std::ostream &) override
bool | StopEncode (std::ostream &) override
Protected Member Functions inherited from gdcm::ImageCodec
bool | DoByteSwap (std::istream &is_, std::ostream &os)
bool | DoInvertMonochrome (std::istream &is_, std::ostream &os)
bool | DoOverlayCleanup (std::istream &is_, std::ostream &os)
bool | DoPaddedCompositePixelCode (std::istream &is_, std::ostream &os)
bool | DoPlanarConfiguration (std::istream &is_, std::ostream &os)
bool | DoSimpleCopy (std::istream &is_, std::ostream &os)
bool | DoYBR (std::istream &is_, std::ostream &os)
bool | DoYBRFull422 (std::istream &is_, std::ostream &os)
Protected Member Functions inherited from gdcm::Coder
virtual bool | InternalCode (const char *bv, unsigned long len, std::ostream &os)

## Protected Attributes

int | BitSample
int | Quality
Protected Attributes inherited from gdcm::ImageCodec
unsigned int | Dimensions [3]
bool | LossyFlag
LUTPtr | LUT
bool | NeedByteSwap
bool | NeedOverlayCleanup
unsigned int | NumberOfDimensions
PixelFormat | PF
PhotometricInterpretation | PI
unsigned int | PlanarConfiguration
bool | RequestPaddedCompositePixelCode
bool | RequestPlanarConfiguration

## Friends

class | ImageRegionReader

## Additional Inherited Members

Protected Types inherited from gdcm::ImageCodec
typedef SmartPointer< LookupTable > | LUTPtr

## Detailed Description

JPEG codec.

Class to do JPEG (8bits, 12bits, 16bits lossy & lossless). It redispatch in between the different codec implementation: JPEG8Codec, JPEG12Codec & JPEG16Codec It also support inconsistency in between DICOM header and JPEG compressed stream ImageCodec implementation for the JPEG case

Note
  Things you should know if you ever want to dive into DICOM/JPEG world (among other):

- http://groups.google.com/group/comp.protocols.dicom/browse_thread/thread/625e46919f2080e1
- http://groups.google.com/group/comp.protocols.dicom/browse_thread/thread/75fdfccc65a6243
- http://groups.google.com/group/comp.protocols.dicom/browse_thread/thread/2d525ef6a2f093ed
- http://groups.google.com/group/comp.protocols.dicom/browse_thread/thread/6b93af410f8c921f

Examples
  CompressLossyJPEG.cs, FileChangeTSLossy.cs, and GetJPEGSamplePrecision.cxx.

## Constructor & Destructor Documentation

## JPEGCodec()

gdcm::JPEGCodec::JPEGCodec | ( |  | ) |

## ~JPEGCodec()

gdcm::JPEGCodec::~JPEGCodec | ( |  | ) |

override

## Member Function Documentation

## AppendFrameEncode()

bool gdcm::JPEGCodec::AppendFrameEncode | ( | std::ostream & | out,
|  | const char * | data,
|  | size_t | datalen )

override protected virtual

Reimplemented from gdcm::ImageCodec.

## AppendRowEncode()

bool gdcm::JPEGCodec::AppendRowEncode | ( | std::ostream & | out,
|  | const char * | data,
|  | size_t | datalen )

override protected virtual

Reimplemented from gdcm::ImageCodec.

## CanCode()

bool gdcm::JPEGCodec::CanCode | ( | TransferSyntax const & |  | ) | const

override virtual

Return whether this coder support this transfer syntax (can code it).

Reimplemented from gdcm::ImageCodec.

Examples
  CompressLossyJPEG.cs.

## CanDecode()

bool gdcm::JPEGCodec::CanDecode | ( | TransferSyntax const & |  | ) | const

override virtual

Return whether this decoder support this transfer syntax (can decode it).

Reimplemented from gdcm::ImageCodec.

## Clone()

ImageCodec * gdcm::JPEGCodec::Clone | ( |  | ) | const

override virtual

Implements gdcm::ImageCodec.

References gdcm::ImageCodec::ImageCodec().

## Code()

bool gdcm::JPEGCodec::Code | ( | DataElement const & | in,
|  | DataElement & | out )

override virtual

Compress into JPEG.

Reimplemented from gdcm::Coder.

## ComputeOffsetTable()

void gdcm::JPEGCodec::ComputeOffsetTable | ( | bool | b | ) |

Compute the offset table:

## Decode()

bool gdcm::JPEGCodec::Decode | ( | DataElement const & | ,
|  | DataElement & | )

override virtual

Decode.

Reimplemented from gdcm::ImageCodec.

## DecodeByStreams()

bool gdcm::JPEGCodec::DecodeByStreams | ( | std::istream & | is,
|  | std::ostream & | os )

override protected virtual

Reimplemented from gdcm::ImageCodec.

## DecodeExtent()

bool gdcm::JPEGCodec::DecodeExtent | ( | char * | buffer,
|  | unsigned int | xmin,
|  | unsigned int | xmax,
|  | unsigned int | ymin,
|  | unsigned int | ymax,
|  | unsigned int | zmin,
|  | unsigned int | zmax,
|  | std::istream & | is )

protected

## EncodeBuffer()

virtual bool gdcm::JPEGCodec::EncodeBuffer | ( | std::ostream & | out,
|  | const char * | inbuffer,
|  | size_t | inlen )

virtual

Reimplemented in gdcm::JPEG12Codec, gdcm::JPEG16Codec, and gdcm::JPEG8Codec.

## GetHeaderInfo()

bool gdcm::JPEGCodec::GetHeaderInfo | ( | std::istream & | is,
|  | TransferSyntax & | ts )

override virtual

Reimplemented from gdcm::ImageCodec.

Examples
  GetJPEGSamplePrecision.cxx.

## GetLossless()

bool gdcm::JPEGCodec::GetLossless | ( |  | ) | const

## GetQuality()

double gdcm::JPEGCodec::GetQuality | ( |  | ) | const

## IsFrameEncoder()

bool gdcm::JPEGCodec::IsFrameEncoder | ( |  | ) |

override protected virtual

Reimplemented from gdcm::ImageCodec.

## IsRowEncoder()

bool gdcm::JPEGCodec::IsRowEncoder | ( |  | ) |

override protected virtual

Reimplemented from gdcm::ImageCodec.

## IsStateSuspension()

virtual bool gdcm::JPEGCodec::IsStateSuspension | ( |  | ) | const

protected virtual

Reimplemented in gdcm::JPEG12Codec, gdcm::JPEG16Codec, and gdcm::JPEG8Codec.

## IsValid()

bool gdcm::JPEGCodec::IsValid | ( | PhotometricInterpretation const & | pi | ) |

override protected virtual

Reimplemented from gdcm::ImageCodec.

## SetBitSample()

void gdcm::JPEGCodec::SetBitSample | ( | int | bit | ) |

protected

## SetLossless()

void gdcm::JPEGCodec::SetLossless | ( | bool | l | ) |

Examples
  CompressLossyJPEG.cs, and FileChangeTSLossy.cs.

## SetPixelFormat()

void gdcm::JPEGCodec::SetPixelFormat | ( | PixelFormat const & | pf | ) |

override virtual

Reimplemented from gdcm::ImageCodec.

Examples
  GetJPEGSamplePrecision.cxx.

## SetQuality()

void gdcm::JPEGCodec::SetQuality | ( | double | q | ) |

Examples
  CompressLossyJPEG.cs, and FileChangeTSLossy.cs.

## StartEncode()

bool gdcm::JPEGCodec::StartEncode | ( | std::ostream & |  | ) |

override protected virtual

Reimplemented from gdcm::ImageCodec.

## StopEncode()

bool gdcm::JPEGCodec::StopEncode | ( | std::ostream & |  | ) |

override protected virtual

Reimplemented from gdcm::ImageCodec.

## Friends And Related Symbol Documentation

## ImageRegionReader

friend class ImageRegionReader

friend

References ImageRegionReader.

Referenced by ImageRegionReader.

## Member Data Documentation

## BitSample

int gdcm::JPEGCodec::BitSample

protected

## Quality

int gdcm::JPEGCodec::Quality

protected

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

- gdcmJPEGCodec.h