<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <!-- /home/espenr/tmp/qt-3.3.8-espenr-2499/qt-x11-free-3.3.8/src/kernel/qasyncimageio.cpp:51 --> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>QImageConsumer Class</title> <style type="text/css"><!-- fn { margin-left: 1cm; text-indent: -1cm; } a:link { color: #004faf; text-decoration: none } a:visited { color: #672967; text-decoration: none } body { background: #ffffff; color: black; } --></style> </head> <body> <table border="0" cellpadding="0" cellspacing="0" width="100%"> <tr bgcolor="#E5E5E5"> <td valign=center> <a href="index.html"> <font color="#004faf">Home</font></a> | <a href="classes.html"> <font color="#004faf">All Classes</font></a> | <a href="mainclasses.html"> <font color="#004faf">Main Classes</font></a> | <a href="annotated.html"> <font color="#004faf">Annotated</font></a> | <a href="groups.html"> <font color="#004faf">Grouped Classes</font></a> | <a href="functions.html"> <font color="#004faf">Functions</font></a> </td> <td align="right" valign="center"><img src="logo32.png" align="right" width="64" height="32" border="0"></td></tr></table><h1 align=center>QImageConsumer Class Reference</h1> <p>The QImageConsumer class is an abstraction used by QImageDecoder. <a href="#details">More...</a> <p><tt>#include <<a href="qasyncimageio-h.html">qasyncimageio.h</a>></tt> <p><a href="qimageconsumer-members.html">List of all member functions.</a> <h2>Public Members</h2> <ul> <li class=fn>virtual void <a href="#end"><b>end</b></a> () = 0</li> <li class=fn>virtual void <a href="#changed"><b>changed</b></a> ( const QRect & ) = 0</li> <li class=fn>virtual void <a href="#frameDone"><b>frameDone</b></a> () = 0</li> <li class=fn>virtual void <a href="#frameDone-2"><b>frameDone</b></a> ( const QPoint & offset, const QRect & rect ) = 0</li> <li class=fn>virtual void <a href="#setLooping"><b>setLooping</b></a> ( int n ) = 0</li> <li class=fn>virtual void <a href="#setFramePeriod"><b>setFramePeriod</b></a> ( int milliseconds ) = 0</li> <li class=fn>virtual void <a href="#setSize"><b>setSize</b></a> ( int, int ) = 0</li> </ul> <hr><a name="details"></a><h2>Detailed Description</h2> The QImageConsumer class is an abstraction used by <a href="qimagedecoder.html">QImageDecoder</a>. <p> <p> The <a href="qmovie.html">QMovie</a> class, or <a href="qlabel.html#setMovie">QLabel::setMovie</a>(), are easy to use and for most situations do what you want with regards animated images. <p> A QImageConsumer consumes information about changes to the <a href="qimage.html">QImage</a> maintained by a QImageDecoder. Think of the QImage as the model or source of the image data, with the QImageConsumer as a view of that data and the QImageDecoder being the controller that orchestrates the relationship between the model and the view. <p> You'd use the QImageConsumer class, for example, if you were implementing a web browser with your own image loaders. <p> <p>See also <a href="qimagedecoder.html">QImageDecoder</a>, <a href="graphics.html">Graphics Classes</a>, <a href="images.html">Image Processing Classes</a>, and <a href="multimedia.html">Multimedia Classes</a>. <hr><h2>Member Function Documentation</h2> <h3 class=fn>void <a name="changed"></a>QImageConsumer::changed ( const <a href="qrect.html">QRect</a> & )<tt> [pure virtual]</tt> </h3> <p> Called when the given area of the image has changed. <h3 class=fn>void <a name="end"></a>QImageConsumer::end ()<tt> [pure virtual]</tt> </h3> <p> Called when all the data from all the frames has been decoded and revealed as <a href="#changed">changed</a>(). <h3 class=fn>void <a name="frameDone"></a>QImageConsumer::frameDone ()<tt> [pure virtual]</tt> </h3> <p> One of the two <a href="#frameDone">frameDone</a>() functions will be called when a frame of an animated image has ended and been revealed as <a href="#changed">changed</a>(). <p> When this function is called, the current image should be displayed. <p> The decoder will not make any further changes to the image until the next call to <a href="qimageformat.html#decode">QImageFormat::decode</a>(). <h3 class=fn>void <a name="frameDone-2"></a>QImageConsumer::frameDone ( const <a href="qpoint.html">QPoint</a> & offset, const <a href="qrect.html">QRect</a> & rect )<tt> [pure virtual]</tt> </h3> This is an overloaded member function, provided for convenience. It behaves essentially like the above function. <p> One of the two <a href="#frameDone">frameDone</a>() functions will be called when a frame of an animated image has ended and been revealed as <a href="#changed">changed</a>(). <p> When this function is called, the area <em>rect</em> in the current image should be moved by <em>offset</em> and displayed. <p> The decoder will not make any further changes to the image until the next call to <a href="qimageformat.html#decode">QImageFormat::decode</a>(). <h3 class=fn>void <a name="setFramePeriod"></a>QImageConsumer::setFramePeriod ( int milliseconds )<tt> [pure virtual]</tt> </h3> <p> Notes that the frame about to be decoded should not be displayed until the given number of <em>milliseconds</em> after the time that this function is called. Of course, the image may not have been decoded by then, in which case the frame should not be displayed until it is complete. A value of -1 (the assumed default) indicates that the image should be displayed even while it is only partially loaded. <h3 class=fn>void <a name="setLooping"></a>QImageConsumer::setLooping ( int n )<tt> [pure virtual]</tt> </h3> <p> Called to indicate that the sequence of frames in the image should be repeated <em>n</em> times, including the sequence during decoding. <p> <ul> <li> 0 = Forever <li> 1 = Only display frames the first time through <li> 2 = Repeat once after first pass through images <li> etc. </ul> <p> To make the <a href="qimagedecoder.html">QImageDecoder</a> do this, just delete it and pass the information to it again for decoding (<a href="#setLooping">setLooping</a>() will be called again, of course, but that can be ignored), or keep copies of the changed areas at the ends of frames. <h3 class=fn>void <a name="setSize"></a>QImageConsumer::setSize ( int, int )<tt> [pure virtual]</tt> </h3> <p> This function is called as soon as the size of the image has been determined. <!-- eof --> <hr><p> This file is part of the <a href="index.html">Qt toolkit</a>. Copyright © 1995-2007 <a href="http://www.trolltech.com/">Trolltech</a>. All Rights Reserved.<p><address><hr><div align=center> <table width=100% cellspacing=0 border=0><tr> <td>Copyright © 2007 <a href="troll.html">Trolltech</a><td align=center><a href="trademarks.html">Trademarks</a> <td align=right><div align=right>Qt 3.3.8</div> </table></div></address></body> </html>