1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>paintlib: pljpegdec.h Source File</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.3.2 -->
<div class="qindex"><a class="qindex" href="index.html">Main Page</a> | <a class="qindex" href="hierarchy.html">Class Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical List</a> | <a class="qindex" href="annotated.html">Compound List</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="functions.html">Compound Members</a></div>
<h1>pljpegdec.h</h1><div class="fragment"><pre>00001 <span class="comment">/*</span>
00002 <span class="comment">/--------------------------------------------------------------------</span>
00003 <span class="comment">|</span>
00004 <span class="comment">| $Id: pljpegdec_8h-source.html,v 1.4 2004/09/15 15:26:29 uzadow Exp $</span>
00005 <span class="comment">|</span>
00006 <span class="comment">| Copyright (c) 1996-2002 Ulrich von Zadow</span>
00007 <span class="comment">|</span>
00008 <span class="comment">\--------------------------------------------------------------------</span>
00009 <span class="comment">*/</span>
00010
00011 <span class="preprocessor">#ifndef INCL_PLJPEGDEC</span>
00012 <span class="preprocessor"></span><span class="preprocessor">#define INCL_PLJPEGDEC</span>
00013 <span class="preprocessor"></span>
00014 <span class="preprocessor">#ifndef INCL_PLPICDEC</span>
00015 <span class="preprocessor"></span><span class="preprocessor">#include "plpicdec.h"</span>
00016 <span class="preprocessor">#endif</span>
00017 <span class="preprocessor"></span>
00018 <span class="preprocessor">#include <stdio.h></span>
00019
00020 <span class="keyword">extern</span> <span class="stringliteral">"C"</span>
00021 {
00022 <span class="preprocessor">#include "jpeglib.h"</span>
00023 }
00024
00025 <span class="keyword">class </span>PLExif;
00026 <span class="comment"></span>
00027 <span class="comment">//! JPEG file decoder. Uses the independent JPEG group's library</span>
00028 <span class="comment">//! to do the actual conversion.</span>
<a name="l00029"></a><a class="code" href="classPLJPEGDecoder.html">00029</a> <span class="comment"></span><span class="keyword">class </span><a class="code" href="classPLJPEGDecoder.html">PLJPEGDecoder</a> : <span class="keyword">public</span> <a class="code" href="classPLPicDecoder.html">PLPicDecoder</a>
00030 {
00031
00032 <span class="keyword">public</span>:<span class="comment"></span>
00033 <span class="comment"> //! Creates a decoder</span>
00034 <span class="comment"></span> <a class="code" href="classPLJPEGDecoder.html">PLJPEGDecoder</a>
00035 ();
00036 <span class="comment"></span>
00037 <span class="comment"> //! Destroys a decoder</span>
00038 <span class="comment"></span> ~<a class="code" href="classPLJPEGDecoder.html">PLJPEGDecoder</a>
00039 ();
00040 <span class="comment"></span>
00041 <span class="comment"> //!</span>
00042 <span class="comment"></span> <span class="keyword">virtual</span> <span class="keywordtype">void</span> Open (<a class="code" href="classPLDataSource.html">PLDataSource</a> * pDataSrc);
00043 <span class="comment"></span>
00044 <span class="comment"> //! Fills the bitmap with the image. </span>
00045 <span class="comment"></span> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classPLJPEGDecoder.html#a3">GetImage</a> (<a class="code" href="classPLBmpBase.html">PLBmpBase</a> & Bmp);
00046
00047 <span class="keywordtype">void</span> GetExifData(PLExif& ExifData);
00048
00049 <span class="keyword">virtual</span> <span class="keywordtype">void</span> Close();
00050 <span class="comment"></span>
00051 <span class="comment"> //! true (the default) selects fast but sloppy decoding.</span>
00052 <span class="comment"></span> <span class="keywordtype">void</span> <a class="code" href="classPLJPEGDecoder.html#a6">SetFast</a>
00053 ( <span class="keywordtype">bool</span> bFast
00054 );
00055
00056 <span class="comment">// Jo Hagelberg 15.4.99</span>
00057 <span class="comment">// this must be static as it's passed to extern C</span><span class="comment"></span>
00058 <span class="comment"> //! callback for jpeglib's progress notification</span>
00059 <span class="comment"></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classPLJPEGDecoder.html#e0">JNotification</a>
00060 (j_common_ptr cinfo
00061 );
00062
00063 <span class="keyword">private</span>:
00064 <span class="comment">// Assumes IJPEG decoder is already set up.</span>
00065 <span class="keywordtype">void</span> decodeGray
00066 ( <a class="code" href="classPLBmpBase.html">PLBmpBase</a> * pBmp);
00067
00068 <span class="comment">// Assumes IJPEG decoder is already set up.</span>
00069 <span class="keywordtype">void</span> decodeRGB
00070 ( <a class="code" href="classPLBmpBase.html">PLBmpBase</a> * pBmp);
00071
00072 jpeg_decompress_struct cinfo; <span class="comment">// IJPEG decoder state.</span>
00073 jpeg_error_mgr jerr; <span class="comment">// Custom error manager.</span>
00074
00075 <span class="keywordtype">bool</span> m_bFast; <span class="comment">// true selects fast but sloppy decoding.</span>
00076 PLExif * m_pExifData;
00077 };
00078
00079 <span class="preprocessor">#endif</span>
00080 <span class="preprocessor"></span><span class="comment">/*</span>
00081 <span class="comment">/--------------------------------------------------------------------</span>
00082 <span class="comment">|</span>
00083 <span class="comment">| $Log: pljpegdec_8h-source.html,v $
00083 <span class="comment">| Revision 1.4 2004/09/15 15:26:29 uzadow
00083 <span class="comment">| Linux compatibility changes, doc update.
00083 <span class="comment">|</span>
00084 <span class="comment">| Revision 1.7 2004/06/19 16:49:07 uzadow</span>
00085 <span class="comment">| Changed GetImage so it works with PLBmpBase</span>
00086 <span class="comment">|</span>
00087 <span class="comment">| Revision 1.6 2004/06/06 12:56:38 uzadow</span>
00088 <span class="comment">| Doxygenified documentation.</span>
00089 <span class="comment">|</span>
00090 <span class="comment">| Revision 1.5 2003/04/13 21:51:43 uzadow</span>
00091 <span class="comment">| Added exif loading - windows ver.</span>
00092 <span class="comment">|</span>
00093 <span class="comment">| Revision 1.4 2002/08/04 20:08:01 uzadow</span>
00094 <span class="comment">| Added PLBmpInfo class, ability to extract metainformation from images without loading the whole image and proper greyscale support.</span>
00095 <span class="comment">|</span>
00096 <span class="comment">| Revision 1.3 2002/03/31 13:36:42 uzadow</span>
00097 <span class="comment">| Updated copyright.</span>
00098 <span class="comment">|</span>
00099 <span class="comment">| Revision 1.2 2001/10/21 17:12:40 uzadow</span>
00100 <span class="comment">| Added PSD decoder beta, removed BPPWanted from all decoders, added PLFilterPixel.</span>
00101 <span class="comment">|</span>
00102 <span class="comment">| Revision 1.1 2001/09/16 19:03:22 uzadow</span>
00103 <span class="comment">| Added global name prefix PL, changed most filenames.</span>
00104 <span class="comment">|</span>
00105 <span class="comment">| Revision 1.8 2001/09/15 21:02:44 uzadow</span>
00106 <span class="comment">| Cleaned up stdpch.h and config.h to make them internal headers.</span>
00107 <span class="comment">|</span>
00108 <span class="comment">| Revision 1.7 2000/12/18 22:42:52 uzadow</span>
00109 <span class="comment">| Replaced RGBAPIXEL with PLPixel32.</span>
00110 <span class="comment">|</span>
00111 <span class="comment">| Revision 1.6 2000/01/16 20:43:13 anonymous</span>
00112 <span class="comment">| Removed MFC dependencies</span>
00113 <span class="comment">|</span>
00114 <span class="comment">| Revision 1.5 1999/12/08 15:39:45 Ulrich von Zadow</span>
00115 <span class="comment">| Unix compatibility changes</span>
00116 <span class="comment">|</span>
00117 <span class="comment">| Revision 1.4 1999/11/27 18:45:48 Ulrich von Zadow</span>
00118 <span class="comment">| Added/Updated doc comments.</span>
00119 <span class="comment">|</span>
00120 <span class="comment">|</span>
00121 <span class="comment">\--------------------------------------------------------------------</span>
00122 <span class="comment">*/</span>
</pre></div><hr size="1"><address style="align: right;"><small>Generated on Mon Sep 13 16:16:40 2004 for paintlib by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
</a>1.3.2 </small></address>
</body>
</html>
|