1 /*****************************************************************************/ 2 // Copyright 2006 Adobe Systems Incorporated 3 // All Rights Reserved. 4 // 5 // NOTICE: Adobe permits you to use, modify, and distribute this file in 6 // accordance with the terms of the Adobe license agreement accompanying it. 7 /*****************************************************************************/ 8 9 /* $Id: //mondo/dng_sdk_1_4/dng_sdk/source/dng_lossless_jpeg.h#1 $ */ 10 /* $DateTime: 2012/05/30 13:28:51 $ */ 11 /* $Change: 832332 $ */ 12 /* $Author: tknoll $ */ 13 14 /** \file 15 * Functions for encoding and decoding lossless JPEG format. 16 */ 17 18 /*****************************************************************************/ 19 20 #ifndef __dng_lossless_jpeg__ 21 #define __dng_lossless_jpeg__ 22 23 /*****************************************************************************/ 24 25 #include "dng_classes.h" 26 #include "dng_types.h" 27 28 /*****************************************************************************/ 29 30 class dng_spooler 31 { 32 33 protected: 34 ~dng_spooler()35 virtual ~dng_spooler () 36 { 37 } 38 39 public: 40 41 virtual void Spool (const void *data, 42 uint32 count) = 0; 43 44 }; 45 46 /*****************************************************************************/ 47 48 void DecodeLosslessJPEG (dng_stream &stream, 49 dng_spooler &spooler, 50 uint32 minDecodedSize, 51 uint32 maxDecodedSize, 52 bool bug16); 53 54 /*****************************************************************************/ 55 56 void EncodeLosslessJPEG (const uint16 *srcData, 57 uint32 srcRows, 58 uint32 srcCols, 59 uint32 srcChannels, 60 uint32 srcBitDepth, 61 int32 srcRowStep, 62 int32 srcColStep, 63 dng_stream &stream); 64 65 /*****************************************************************************/ 66 67 #endif 68 69 /*****************************************************************************/ 70