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