GDCM: gdcm::JPEGCodec Class Reference

GDCM 3.0.26

Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
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 )
| overrideprotectedvirtual

Reimplemented from gdcm::ImageCodec.

## ◆ AppendRowEncode()

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

Reimplemented from gdcm::ImageCodec.

## ◆ CanCode()

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

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
| overridevirtual

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

Reimplemented from gdcm::ImageCodec.

## ◆ Clone()

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

Implements gdcm::ImageCodec.

References gdcm::ImageCodec::ImageCodec().

## ◆ Code()

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

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 & | )
| overridevirtual

Decode.

Reimplemented from gdcm::ImageCodec.

## ◆ DecodeByStreams()

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

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 )
| overridevirtual

Reimplemented from gdcm::ImageCodec.

Examples
  GetJPEGSamplePrecision.cxx.

## ◆ GetLossless()

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

## ◆ GetQuality()

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

## ◆ IsFrameEncoder()

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

Reimplemented from gdcm::ImageCodec.

## ◆ IsRowEncoder()

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

Reimplemented from gdcm::ImageCodec.

## ◆ IsStateSuspension()

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

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

## ◆ IsValid()

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

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 | ) |
| overridevirtual

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 & |  | ) |
| overrideprotectedvirtual

Reimplemented from gdcm::ImageCodec.

## ◆ StopEncode()

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

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