32 #include "dcmtk/config/osconfig.h" 33 #include "dcmtk/ofstd/oftypes.h" 34 #include "dcmtk/dcmdata/dccodec.h" 35 #include "dcmtk/dcmjpeg/djutils.h" 36 #include "dcmtk/ofstd/oflist.h" 37 #include "dcmtk/ofstd/ofstring.h" 115 Uint32& startFragment,
118 OFString& decompressedColorModel)
const;
135 const Uint16 * pixelData,
157 const E_TransferSyntax fromRepType,
173 const E_TransferSyntax oldRepType,
174 const E_TransferSyntax newRepType)
const;
194 OFString &decompressedColorModel)
const;
223 const unsigned long numValues,
224 const Uint16 samplesPerPixel,
225 const Uint16 oldPlanarConfig);
240 const unsigned long numValues,
241 const Uint16 samplesPerPixel,
242 const Uint16 oldPlanarConfig);
268 double& compressionRatio)
const;
288 double& compressionRatio)
const;
362 OFString& derivationDescription)
const = 0;
374 Uint8 bitsPerSample)
const = 0;
388 const Uint16 newPlanConf)
const;
virtual OFCondition encodeTrueLossless(const DcmRepresentationParameter *toRepParam, DcmPixelSequence *&pixSeq, const DcmCodecParameter *cp, DcmStack &objStack) const
compresses the given uncompressed DICOM image and stores the result in the given pixSeq element...
a class representing a list of DICOM elements in which each element has a different tag and elements ...
this class implements a container for a fragment of compressed pixel data.
class maintaining a attribute tag (group and element number)
static OFCondition togglePlanarConfiguration16(Uint16 *pixelData, const unsigned long numValues, const Uint16 samplesPerPixel, const Uint16 oldPlanarConfig)
toggles Planar Configuration of 16-bit pixel data from "by pixel" to "by plane" and vice versa...
virtual DJEncoder * createEncoderInstance(const DcmRepresentationParameter *toRepParam, const DJCodecParameter *cp, Uint8 bitsPerSample) const =0
creates an instance of the compression library to be used for encoding/decoding.
abstract base class for compression classes.
virtual OFCondition determineDecompressedColorModel(const DcmRepresentationParameter *fromParam, DcmPixelSequence *fromPixSeq, const DcmCodecParameter *cp, DcmItem *dataset, OFString &decompressedColorModel) const
determine color model of the decompressed image
virtual OFCondition updateDerivationDescription(DcmItem *dataset, const DcmRepresentationParameter *toRepParam, const DJCodecParameter *cp, Uint8 bitsPerSample, double ratio) const
create Derivation Description.
DJCodecEncoder()
default constructor
abstract base class for codec representation parameter sets.
abstract codec class for JPEG encoders.
static OFCondition correctVOIWindows(DcmItem *dataset, double voiOffset, double voiFactor)
modifies all VOI window center/width settings in the image.
virtual void createDerivationDescription(const DcmRepresentationParameter *toRepParam, const DJCodecParameter *cp, Uint8 bitsPerSample, double ratio, OFString &derivationDescription) const =0
creates 'derivation description' string after encoding.
virtual OFBool isLosslessProcess() const =0
returns true if the transfer syntax supported by this codec is lossless.
virtual OFCondition decode(const DcmRepresentationParameter *fromRepParam, DcmPixelSequence *pixSeq, DcmPolymorphOBOW &uncompressedPixelData, const DcmCodecParameter *cp, const DcmStack &objStack) const
decompresses the given pixel sequence and stores the result in the given uncompressedPixelData elemen...
static OFCondition togglePlanarConfiguration8(Uint8 *pixelData, const unsigned long numValues, const Uint16 samplesPerPixel, const Uint16 oldPlanarConfig)
toggles Planar Configuration of 8-bit pixel data from "by pixel" to "by plane" and vice versa...
this class implements a sequence of pixel items, i.e.
virtual OFCondition encodeMonochromeImage(DcmItem *dataset, const DcmRepresentationParameter *toRepParam, DcmPixelSequence *&pixSeq, const DJCodecParameter *cp, double &compressionRatio) const
compresses the given uncompressed monochrome DICOM image and stores the result in the given pixSeq el...
virtual OFCondition adjustOverlays(DcmItem *dataset, DicomImage &image) const
for all overlay groups create (60xx,3000) Overlay Data.
abstract base class for a codec parameter object that describes the settings (modes of operations) fo...
this class manages a stack of pointers to DcmObject instances.
virtual ~DJCodecEncoder()
destructor
virtual OFCondition encode(const Uint16 *pixelData, const Uint32 length, const DcmRepresentationParameter *toRepParam, DcmPixelSequence *&pixSeq, const DcmCodecParameter *cp, DcmStack &objStack) const
compresses the given uncompressed DICOM image and stores the result in the given pixSeq element...
virtual OFCondition updateLossyCompressionRatio(DcmItem *dataset, double ratio) const
create Lossy Image Compression and Lossy Image Compression Ratio.
static void appendCompressionRatio(OFString &arg, double ratio)
format compression ratio as string and append to given string object.
a class handling the DICOM dataset format (files without meta header)
Interface class for dcmimgle/dcmimage module.
virtual OFBool canChangeCoding(const E_TransferSyntax oldRepType, const E_TransferSyntax newRepType) const
checks if this codec is able to convert from the given current transfer syntax to the given new trans...
abstract base class for a codec object that can be registered in dcmdata and performs transfer syntax...
a simple string class that implements a subset of std::string.
virtual E_TransferSyntax supportedTransferSyntax() const =0
returns the transfer syntax that this particular codec is able to encode and decode.
virtual OFCondition decodeFrame(const DcmRepresentationParameter *fromParam, DcmPixelSequence *fromPixSeq, const DcmCodecParameter *cp, DcmItem *dataset, Uint32 frameNo, Uint32 &startFragment, void *buffer, Uint32 bufSize, OFString &decompressedColorModel) const
decompresses a single frame from the given pixel sequence and stores the result in the given buffer...
a class representing DICOM elements (such as uncompressed pixel data) that can be interpreted either ...
virtual OFCondition encodeColorImage(OFBool YBRmode, DcmItem *dataset, const DcmRepresentationParameter *toRepParam, DcmPixelSequence *&pixSeq, const DJCodecParameter *cp, double &compressionRatio) const
compresses the given uncompressed DICOM color image and stores the result in the given pixSeq element...
codec parameter for IJG codecs
abstract base class for decompression classes.
General purpose class for condition codes.