Blob Blame History Raw
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ClutterOffscreenEffect: Clutter Reference Manual</title>
<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot">
<link rel="home" href="index.html" title="Clutter Reference Manual">
<link rel="up" href="ch06.html" title="Effects">
<link rel="prev" href="ch06.html" title="Effects">
<link rel="next" href="ClutterShaderEffect.html" title="ClutterShaderEffect">
<meta name="generator" content="GTK-Doc V1.25.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
<td width="100%" align="left" class="shortcuts">
<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
                  <a href="#ClutterOffscreenEffect.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                  <a href="#ClutterOffscreenEffect.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
<td><a accesskey="u" href="ch06.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="ch06.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="ClutterShaderEffect.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="refentry">
<a name="ClutterOffscreenEffect"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="ClutterOffscreenEffect.top_of_page"></a>ClutterOffscreenEffect</span></h2>
<p>ClutterOffscreenEffect — Base class for effects using offscreen buffers</p>
</td>
<td class="gallery_image" valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
<a name="ClutterOffscreenEffect.functions"></a><h2>Functions</h2>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="functions_return">
<col class="functions_name">
</colgroup>
<tbody>
<tr>
<td class="function_type">
<span class="returnvalue">CoglMaterial</span> *
</td>
<td class="function_name">
<a class="link" href="ClutterOffscreenEffect.html#clutter-offscreen-effect-get-target" title="clutter_offscreen_effect_get_target ()">clutter_offscreen_effect_get_target</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">CoglHandle</span>
</td>
<td class="function_name">
<a class="link" href="ClutterOffscreenEffect.html#clutter-offscreen-effect-get-texture" title="clutter_offscreen_effect_get_texture ()">clutter_offscreen_effect_get_texture</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">CoglHandle</span>
</td>
<td class="function_name">
<a class="link" href="ClutterOffscreenEffect.html#clutter-offscreen-effect-create-texture" title="clutter_offscreen_effect_create_texture ()">clutter_offscreen_effect_create_texture</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="ClutterOffscreenEffect.html#clutter-offscreen-effect-paint-target" title="clutter_offscreen_effect_paint_target ()">clutter_offscreen_effect_paint_target</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
</td>
<td class="function_name">
<a class="link" href="ClutterOffscreenEffect.html#clutter-offscreen-effect-get-target-size" title="clutter_offscreen_effect_get_target_size ()">clutter_offscreen_effect_get_target_size</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
</td>
<td class="function_name">
<a class="link" href="ClutterOffscreenEffect.html#clutter-offscreen-effect-get-target-rect" title="clutter_offscreen_effect_get_target_rect ()">clutter_offscreen_effect_get_target_rect</a> <span class="c_punctuation">()</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="ClutterOffscreenEffect.other"></a><h2>Types and Values</h2>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="name">
<col class="description">
</colgroup>
<tbody>
<tr>
<td class="datatype_keyword">struct</td>
<td class="function_name"><a class="link" href="ClutterOffscreenEffect.html#ClutterOffscreenEffect-struct" title="struct ClutterOffscreenEffect">ClutterOffscreenEffect</a></td>
</tr>
<tr>
<td class="datatype_keyword">struct</td>
<td class="function_name"><a class="link" href="ClutterOffscreenEffect.html#ClutterOffscreenEffectClass" title="struct ClutterOffscreenEffectClass">ClutterOffscreenEffectClass</a></td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="ClutterOffscreenEffect.object-hierarchy"></a><h2>Object Hierarchy</h2>
<pre class="screen">    GObject
    <span class="lineart">╰──</span> GInitiallyUnowned
        <span class="lineart">╰──</span> <a class="link" href="ClutterActorMeta.html" title="ClutterActorMeta">ClutterActorMeta</a>
            <span class="lineart">╰──</span> <a class="link" href="ClutterEffect.html" title="ClutterEffect">ClutterEffect</a>
                <span class="lineart">╰──</span> ClutterOffscreenEffect
                    <span class="lineart">├──</span> <a class="link" href="ClutterBlurEffect.html" title="ClutterBlurEffect">ClutterBlurEffect</a>
                    <span class="lineart">├──</span> <a class="link" href="ClutterBrightnessContrastEffect.html" title="ClutterBrightnessContrastEffect">ClutterBrightnessContrastEffect</a>
                    <span class="lineart">├──</span> <a class="link" href="ClutterColorizeEffect.html" title="ClutterColorizeEffect">ClutterColorizeEffect</a>
                    <span class="lineart">├──</span> <a class="link" href="ClutterDeformEffect.html" title="ClutterDeformEffect">ClutterDeformEffect</a>
                    <span class="lineart">├──</span> <a class="link" href="ClutterDesaturateEffect.html" title="ClutterDesaturateEffect">ClutterDesaturateEffect</a>
                    <span class="lineart">╰──</span> <a class="link" href="ClutterShaderEffect.html" title="ClutterShaderEffect">ClutterShaderEffect</a>
</pre>
</div>
<div class="refsect1">
<a name="ClutterOffscreenEffect.description"></a><h2>Description</h2>
<p><a class="link" href="ClutterOffscreenEffect.html" title="ClutterOffscreenEffect"><span class="type">ClutterOffscreenEffect</span></a> is an abstract class that can be used by
<a class="link" href="ClutterEffect.html" title="ClutterEffect"><span class="type">ClutterEffect</span></a> sub-classes requiring access to an offscreen buffer.</p>
<p>Some effects, like the fragment shader based effects, can only use GL
textures, and in order to apply those effects to any kind of actor they
require that all drawing operations are applied to an offscreen framebuffer
that gets redirected to a texture.</p>
<p><a class="link" href="ClutterOffscreenEffect.html" title="ClutterOffscreenEffect"><span class="type">ClutterOffscreenEffect</span></a> provides all the heavy-lifting for creating the
offscreen framebuffer, the redirection and the final paint of the texture on
the desired stage.</p>
<p><a class="link" href="ClutterOffscreenEffect.html" title="ClutterOffscreenEffect"><span class="type">ClutterOffscreenEffect</span></a> is available since Clutter 1.4</p>
<div class="refsect3">
<a name="id-1.5.7.2.6.6"></a><h4>Implementing a ClutterOffscreenEffect</h4>
<p>Creating a sub-class of <a class="link" href="ClutterOffscreenEffect.html" title="ClutterOffscreenEffect"><span class="type">ClutterOffscreenEffect</span></a> requires, in case
of overriding the <a class="link" href="ClutterEffect.html" title="ClutterEffect"><span class="type">ClutterEffect</span></a> virtual functions, to chain up to the
<a class="link" href="ClutterOffscreenEffect.html" title="ClutterOffscreenEffect"><span class="type">ClutterOffscreenEffect</span></a>'s implementation.</p>
<p>On top of the <a class="link" href="ClutterEffect.html" title="ClutterEffect"><span class="type">ClutterEffect</span></a>'s virtual functions,
<a class="link" href="ClutterOffscreenEffect.html" title="ClutterOffscreenEffect"><span class="type">ClutterOffscreenEffect</span></a> also provides a <a class="link" href="ClutterOffscreenEffect.html#ClutterOffscreenEffectClass.paint-target"><code class="function">ClutterOffscreenEffectClass.paint_target()</code></a>
function, which encapsulates the effective painting of the texture that
contains the result of the offscreen redirection.</p>
<p>The size of the target material is defined to be as big as the
transformed size of the <a class="link" href="ClutterActor.html" title="ClutterActor"><span class="type">ClutterActor</span></a> using the offscreen effect.
Sub-classes of <a class="link" href="ClutterOffscreenEffect.html" title="ClutterOffscreenEffect"><span class="type">ClutterOffscreenEffect</span></a> can change the texture creation
code to provide bigger textures by overriding the
<a class="link" href="ClutterOffscreenEffect.html#ClutterOffscreenEffectClass.create-texture"><code class="function">ClutterOffscreenEffectClass.create_texture()</code></a> virtual function; no chain up
to the <a class="link" href="ClutterOffscreenEffect.html" title="ClutterOffscreenEffect"><span class="type">ClutterOffscreenEffect</span></a> implementation is required in this
case.</p>
</div>
</div>
<div class="refsect1">
<a name="ClutterOffscreenEffect.functions_details"></a><h2>Functions</h2>
<div class="refsect2">
<a name="clutter-offscreen-effect-get-target"></a><h3>clutter_offscreen_effect_get_target ()</h3>
<pre class="programlisting"><span class="returnvalue">CoglMaterial</span> *
clutter_offscreen_effect_get_target (<em class="parameter"><code><a class="link" href="ClutterOffscreenEffect.html" title="ClutterOffscreenEffect"><span class="type">ClutterOffscreenEffect</span></a> *effect</code></em>);</pre>
<p>Retrieves the material used as a render target for the offscreen
buffer created by <em class="parameter"><code>effect</code></em>
</p>
<p>You should only use the returned <span class="type">CoglMaterial</span> when painting. The
returned material might change between different frames.</p>
<div class="refsect3">
<a name="clutter-offscreen-effect-get-target.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>effect</p></td>
<td class="parameter_description"><p>a <a class="link" href="ClutterOffscreenEffect.html" title="ClutterOffscreenEffect"><span class="type">ClutterOffscreenEffect</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="clutter-offscreen-effect-get-target.returns"></a><h4>Returns</h4>
<p> a <span class="type">CoglMaterial</span> or <code class="literal">NULL</code>. The
returned material is owned by Clutter and it should not be
modified or freed. </p>
<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
</div>
<p class="since">Since: <a class="link" href="ix09.html#api-index-1.4">1.4</a></p>
</div>
<hr>
<div class="refsect2">
<a name="clutter-offscreen-effect-get-texture"></a><h3>clutter_offscreen_effect_get_texture ()</h3>
<pre class="programlisting"><span class="returnvalue">CoglHandle</span>
clutter_offscreen_effect_get_texture (<em class="parameter"><code><a class="link" href="ClutterOffscreenEffect.html" title="ClutterOffscreenEffect"><span class="type">ClutterOffscreenEffect</span></a> *effect</code></em>);</pre>
<p>Retrieves the texture used as a render target for the offscreen
buffer created by <em class="parameter"><code>effect</code></em>
</p>
<p>You should only use the returned texture when painting. The texture
may change after ClutterEffect::pre_paint is called so the effect
implementation should update any references to the texture after
chaining-up to the parent's pre_paint implementation. This can be
used instead of <a class="link" href="ClutterOffscreenEffect.html#clutter-offscreen-effect-get-target" title="clutter_offscreen_effect_get_target ()"><code class="function">clutter_offscreen_effect_get_target()</code></a> when the
effect subclass wants to paint using its own material.</p>
<div class="refsect3">
<a name="clutter-offscreen-effect-get-texture.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>effect</p></td>
<td class="parameter_description"><p>a <a class="link" href="ClutterOffscreenEffect.html" title="ClutterOffscreenEffect"><span class="type">ClutterOffscreenEffect</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="clutter-offscreen-effect-get-texture.returns"></a><h4>Returns</h4>
<p> a <span class="type">CoglHandle</span> or <code class="literal">COGL_INVALID_HANDLE</code>. The
returned texture is owned by Clutter and it should not be
modified or freed. </p>
<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
</div>
<p class="since">Since: <a class="link" href="ix12.html#api-index-1.10">1.10</a></p>
</div>
<hr>
<div class="refsect2">
<a name="clutter-offscreen-effect-create-texture"></a><h3>clutter_offscreen_effect_create_texture ()</h3>
<pre class="programlisting"><span class="returnvalue">CoglHandle</span>
clutter_offscreen_effect_create_texture
                               (<em class="parameter"><code><a class="link" href="ClutterOffscreenEffect.html" title="ClutterOffscreenEffect"><span class="type">ClutterOffscreenEffect</span></a> *effect</code></em>,
                                <em class="parameter"><code><span class="type">gfloat</span> width</code></em>,
                                <em class="parameter"><code><span class="type">gfloat</span> height</code></em>);</pre>
<p>Calls the <code class="function">create_texture()</code> virtual function of the <em class="parameter"><code>effect</code></em>
</p>
<div class="refsect3">
<a name="clutter-offscreen-effect-create-texture.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>effect</p></td>
<td class="parameter_description"><p>a <a class="link" href="ClutterOffscreenEffect.html" title="ClutterOffscreenEffect"><span class="type">ClutterOffscreenEffect</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>width</p></td>
<td class="parameter_description"><p>the minimum width of the target texture</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>height</p></td>
<td class="parameter_description"><p>the minimum height of the target texture</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="clutter-offscreen-effect-create-texture.returns"></a><h4>Returns</h4>
<p> a handle to a Cogl texture, or
<code class="literal">COGL_INVALID_HANDLE</code>. The returned handle has its reference
count increased. </p>
<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
</div>
<p class="since">Since: <a class="link" href="ix09.html#api-index-1.4">1.4</a></p>
</div>
<hr>
<div class="refsect2">
<a name="clutter-offscreen-effect-paint-target"></a><h3>clutter_offscreen_effect_paint_target ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
clutter_offscreen_effect_paint_target (<em class="parameter"><code><a class="link" href="ClutterOffscreenEffect.html" title="ClutterOffscreenEffect"><span class="type">ClutterOffscreenEffect</span></a> *effect</code></em>);</pre>
<p>Calls the <code class="function">paint_target()</code> virtual function of the <em class="parameter"><code>effect</code></em>
</p>
<div class="refsect3">
<a name="clutter-offscreen-effect-paint-target.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>effect</p></td>
<td class="parameter_description"><p>a <a class="link" href="ClutterOffscreenEffect.html" title="ClutterOffscreenEffect"><span class="type">ClutterOffscreenEffect</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="ix09.html#api-index-1.4">1.4</a></p>
</div>
<hr>
<div class="refsect2">
<a name="clutter-offscreen-effect-get-target-size"></a><h3>clutter_offscreen_effect_get_target_size ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
clutter_offscreen_effect_get_target_size
                               (<em class="parameter"><code><a class="link" href="ClutterOffscreenEffect.html" title="ClutterOffscreenEffect"><span class="type">ClutterOffscreenEffect</span></a> *effect</code></em>,
                                <em class="parameter"><code><span class="type">gfloat</span> *width</code></em>,
                                <em class="parameter"><code><span class="type">gfloat</span> *height</code></em>);</pre>
<div class="warning">
<p><code class="literal">clutter_offscreen_effect_get_target_size</code> has been deprecated since version 1.14 and should not be used in newly-written code.</p>
<p>Use <a class="link" href="ClutterOffscreenEffect.html#clutter-offscreen-effect-get-target-rect" title="clutter_offscreen_effect_get_target_rect ()"><code class="function">clutter_offscreen_effect_get_target_rect()</code></a> instead</p>
</div>
<p>Retrieves the size of the offscreen buffer used by <em class="parameter"><code>effect</code></em>
 to
paint the actor to which it has been applied.</p>
<p>This function should only be called by <a class="link" href="ClutterOffscreenEffect.html" title="ClutterOffscreenEffect"><span class="type">ClutterOffscreenEffect</span></a>
implementations, from within the <a class="link" href="ClutterOffscreenEffect.html#ClutterOffscreenEffectClass.paint-target"><code class="function">ClutterOffscreenEffectClass.paint_target()</code></a>
virtual function.</p>
<div class="refsect3">
<a name="clutter-offscreen-effect-get-target-size.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>effect</p></td>
<td class="parameter_description"><p>a <a class="link" href="ClutterOffscreenEffect.html" title="ClutterOffscreenEffect"><span class="type">ClutterOffscreenEffect</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>width</p></td>
<td class="parameter_description"><p> return location for the target width, or <code class="literal">NULL</code>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>height</p></td>
<td class="parameter_description"><p> return location for the target height, or <code class="literal">NULL</code>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="clutter-offscreen-effect-get-target-size.returns"></a><h4>Returns</h4>
<p> <code class="literal">TRUE</code> if the offscreen buffer has a valid size,
and <code class="literal">FALSE</code> otherwise</p>
</div>
<p class="since">Since: <a class="link" href="ix11.html#api-index-1.8">1.8</a></p>
</div>
<hr>
<div class="refsect2">
<a name="clutter-offscreen-effect-get-target-rect"></a><h3>clutter_offscreen_effect_get_target_rect ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
clutter_offscreen_effect_get_target_rect
                               (<em class="parameter"><code><a class="link" href="ClutterOffscreenEffect.html" title="ClutterOffscreenEffect"><span class="type">ClutterOffscreenEffect</span></a> *effect</code></em>,
                                <em class="parameter"><code><a class="link" href="clutter-Base-geometric-types.html#ClutterRect"><span class="type">ClutterRect</span></a> *rect</code></em>);</pre>
<p>Retrieves the origin and size of the offscreen buffer used by <em class="parameter"><code>effect</code></em>
 to
paint the actor to which it has been applied.</p>
<p>This function should only be called by <a class="link" href="ClutterOffscreenEffect.html" title="ClutterOffscreenEffect"><span class="type">ClutterOffscreenEffect</span></a>
implementations, from within the <a class="link" href="ClutterOffscreenEffect.html#ClutterOffscreenEffectClass.paint-target"><code class="function">ClutterOffscreenEffectClass.paint_target()</code></a>
virtual function.</p>
<div class="refsect3">
<a name="clutter-offscreen-effect-get-target-rect.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>effect</p></td>
<td class="parameter_description"><p>a <a class="link" href="ClutterOffscreenEffect.html" title="ClutterOffscreenEffect"><span class="type">ClutterOffscreenEffect</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>rect</p></td>
<td class="parameter_description"><p> return location for the target area. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>]</span></td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="clutter-offscreen-effect-get-target-rect.returns"></a><h4>Returns</h4>
<p> <code class="literal">TRUE</code> if the offscreen buffer has a valid rectangle,
and <code class="literal">FALSE</code> otherwise</p>
</div>
<p class="since">Since: <a class="link" href="ix14.html#api-index-1.14">1.14</a></p>
</div>
</div>
<div class="refsect1">
<a name="ClutterOffscreenEffect.other_details"></a><h2>Types and Values</h2>
<div class="refsect2">
<a name="ClutterOffscreenEffect-struct"></a><h3>struct ClutterOffscreenEffect</h3>
<pre class="programlisting">struct ClutterOffscreenEffect;</pre>
<p>The <a class="link" href="ClutterOffscreenEffect.html" title="ClutterOffscreenEffect"><span class="type">ClutterOffscreenEffect</span></a> structure contains only private data
and should be accessed using the provided API</p>
<p class="since">Since: <a class="link" href="ix09.html#api-index-1.4">1.4</a></p>
</div>
<hr>
<div class="refsect2">
<a name="ClutterOffscreenEffectClass"></a><h3>struct ClutterOffscreenEffectClass</h3>
<pre class="programlisting">struct ClutterOffscreenEffectClass {
  CoglHandle (* create_texture) (ClutterOffscreenEffect *effect,
                                 gfloat                  width,
                                 gfloat                  height);
  void       (* paint_target)   (ClutterOffscreenEffect *effect);
};
</pre>
<p>The <a class="link" href="ClutterOffscreenEffect.html#ClutterOffscreenEffectClass" title="struct ClutterOffscreenEffectClass"><span class="type">ClutterOffscreenEffectClass</span></a> structure contains only private data</p>
<div class="refsect3">
<a name="ClutterOffscreenEffectClass.members"></a><h4>Members</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="300px" class="struct_members_name">
<col class="struct_members_description">
<col width="200px" class="struct_members_annotations">
</colgroup>
<tbody>
<tr>
<td class="struct_member_name"><p><em class="structfield"><code><a name="ClutterOffscreenEffectClass.create-texture"></a>create_texture</code></em> ()</p></td>
<td class="struct_member_description"><p>virtual function</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><em class="structfield"><code><a name="ClutterOffscreenEffectClass.paint-target"></a>paint_target</code></em> ()</p></td>
<td class="struct_member_description"><p>virtual function</p></td>
<td class="struct_member_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="ix09.html#api-index-1.4">1.4</a></p>
</div>
</div>
<div class="refsect1">
<a name="ClutterOffscreenEffect.see-also"></a><h2>See Also</h2>
<p><a class="link" href="ClutterBlurEffect.html" title="ClutterBlurEffect"><span class="type">ClutterBlurEffect</span></a>, <a class="link" href="ClutterEffect.html" title="ClutterEffect"><span class="type">ClutterEffect</span></a></p>
</div>
</div>
<div class="footer">
<hr>Generated by GTK-Doc V1.25.1</div>
</body>
</html>