17
17
<link rel="chapter" href="ch01.html" title="Abstract classes and interfaces">
18
18
<link rel="chapter" href="ch02.html" title="Base actors">
19
19
<link rel="chapter" href="ch03.html" title="Container actors">
20
<link rel="chapter" href="ch04.html" title="Layout managers">
20
21
<link rel="part" href="clutteranimation.html" title="Part V. Clutter Animation Framework">
21
<link rel="chapter" href="ch04.html" title="Base classes">
22
<link rel="chapter" href="ch05.html" title="Behaviours">
23
<link rel="chapter" href="ch06.html" title="High Level API">
22
<link rel="chapter" href="ch05.html" title="Base classes">
23
<link rel="chapter" href="ch06.html" title="Behaviours">
24
<link rel="chapter" href="ch07.html" title="High Level API">
24
25
<link rel="part" href="cluttertools.html" title="Part VI. Clutter Tools">
25
<link rel="chapter" href="ch07.html" title="General purpose API">
26
<link rel="chapter" href="ch08.html" title="User interface definition">
27
<link rel="chapter" href="ch09.html" title="Generic list model">
26
<link rel="chapter" href="ch08.html" title="General purpose API">
27
<link rel="chapter" href="ch09.html" title="User interface definition">
28
<link rel="chapter" href="ch10.html" title="Generic list model">
28
29
<link rel="part" href="clutterbackends.html" title="Part VII. Clutter Backends">
29
30
<link rel="part" href="additionaldocs.html" title="Part VIII. Additional Documentation">
30
31
<link rel="chapter" href="clutter-subclassing-ClutterActor.html" title="Implementing a new actor">
69
71
<div class="refnamediv"><table width="100%"><tr>
71
73
<h2><span class="refentrytitle"><a name="clutter-Utilities.top_of_page"></a>Utilities</span></h2>
72
<p>Utilities — Misc utility functions.</p>
74
<p>Utilities — Utility functions</p>
74
76
<td valign="top" align="right"></td>
75
77
</tr></table></div>
76
78
<div class="refsynopsisdiv" title="Synopsis">
77
79
<a name="clutter-Utilities.synopsis"></a><h2>Synopsis</h2>
78
<pre class="synopsis">
79
int <a class="link" href="clutter-Utilities.html#clutter-util-next-p2" title="clutter_util_next_p2 ()">clutter_util_next_p2</a> (int a);
81
ClutterTimeoutPool * <a class="link" href="clutter-Utilities.html#clutter-timeout-pool-new" title="clutter_timeout_pool_new ()">clutter_timeout_pool_new</a> (<a
82
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"
85
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
86
>guint</a> <a class="link" href="clutter-Utilities.html#clutter-timeout-pool-add" title="clutter_timeout_pool_add ()">clutter_timeout_pool_add</a> (ClutterTimeoutPool *pool,
88
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
91
href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#GSourceFunc"
92
>GSourceFunc</a> func,
94
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"
97
href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"
98
>GDestroyNotify</a> notify);
99
void <a class="link" href="clutter-Utilities.html#clutter-timeout-pool-remove" title="clutter_timeout_pool_remove ()">clutter_timeout_pool_remove</a> (ClutterTimeoutPool *pool,
101
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
105
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
106
>guint</a> <a class="link" href="clutter-Utilities.html#clutter-frame-source-add" title="clutter_frame_source_add ()">clutter_frame_source_add</a> (<a
107
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
110
href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#GSourceFunc"
111
>GSourceFunc</a> func,
113
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"
116
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
117
>guint</a> <a class="link" href="clutter-Utilities.html#clutter-frame-source-add-full" title="clutter_frame_source_add_full ()">clutter_frame_source_add_full</a> (<a
118
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"
121
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
124
href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#GSourceFunc"
125
>GSourceFunc</a> func,
127
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"
130
href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"
131
>GDestroyNotify</a> notify);
80
<pre class="synopsis"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> <a class="link" href="clutter-Utilities.html#clutter-util-next-p2" title="clutter_util_next_p2 ()">clutter_util_next_p2</a> (<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> a);
82
<span class="returnvalue">ClutterTimeoutPool</span> * <a class="link" href="clutter-Utilities.html#clutter-timeout-pool-new" title="clutter_timeout_pool_new ()">clutter_timeout_pool_new</a> (<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> priority);
83
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> <a class="link" href="clutter-Utilities.html#clutter-timeout-pool-add" title="clutter_timeout_pool_add ()">clutter_timeout_pool_add</a> (<span class="returnvalue">ClutterTimeoutPool</span> *pool,
84
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> fps,
85
<a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#GSourceFunc"><span class="returnvalue">GSourceFunc</span></a> func,
86
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> data,
87
<a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="returnvalue">GDestroyNotify</span></a> notify);
88
<span class="returnvalue">void</span> <a class="link" href="clutter-Utilities.html#clutter-timeout-pool-remove" title="clutter_timeout_pool_remove ()">clutter_timeout_pool_remove</a> (<span class="returnvalue">ClutterTimeoutPool</span> *pool,
89
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> id);
91
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> <a class="link" href="clutter-Utilities.html#clutter-frame-source-add" title="clutter_frame_source_add ()">clutter_frame_source_add</a> (<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> fps,
92
<a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#GSourceFunc"><span class="returnvalue">GSourceFunc</span></a> func,
93
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> data);
94
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> <a class="link" href="clutter-Utilities.html#clutter-frame-source-add-full" title="clutter_frame_source_add_full ()">clutter_frame_source_add_full</a> (<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> priority,
95
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> fps,
96
<a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#GSourceFunc"><span class="returnvalue">GSourceFunc</span></a> func,
97
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> data,
98
<a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="returnvalue">GDestroyNotify</span></a> notify);
133
100
<a class="link" href="clutter-Utilities.html#ClutterParamSpecFixed" title="ClutterParamSpecFixed">ClutterParamSpecFixed</a>;
135
href="http://library.gnome.org/devel/gobject/unstable/gobject-GParamSpec.html#GParamSpec"
136
>GParamSpec</a> * <a class="link" href="clutter-Utilities.html#clutter-param-spec-fixed" title="clutter_param_spec_fixed ()">clutter_param_spec_fixed</a> (const <a
137
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"
140
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"
143
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"
146
href="../cogl/cogl-Fixed-Point-API.html#CoglFixed"
147
>CoglFixed</a> minimum,
149
href="../cogl/cogl-Fixed-Point-API.html#CoglFixed"
150
>CoglFixed</a> maximum,
152
href="../cogl/cogl-Fixed-Point-API.html#CoglFixed"
153
>CoglFixed</a> default_value,
155
href="http://library.gnome.org/devel/gobject/unstable/gobject-GParamSpec.html#GParamFlags"
156
>GParamFlags</a> flags);
157
#define <a class="link" href="clutter-Utilities.html#CLUTTER-VALUE-HOLDS-FIXED--CAPS" title="CLUTTER_VALUE_HOLDS_FIXED()">CLUTTER_VALUE_HOLDS_FIXED</a> (x)
158
void <a class="link" href="clutter-Utilities.html#clutter-value-set-fixed" title="clutter_value_set_fixed ()">clutter_value_set_fixed</a> (<a
159
href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"
162
href="../cogl/cogl-Fixed-Point-API.html#CoglFixed"
163
>CoglFixed</a> fixed_);
165
href="../cogl/cogl-Fixed-Point-API.html#CoglFixed"
166
>CoglFixed</a> <a class="link" href="clutter-Utilities.html#clutter-value-get-fixed" title="clutter_value_get_fixed ()">clutter_value_get_fixed</a> (const <a
167
href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"
101
<a href="http://library.gnome.org/devel/gobject/unstable/gobject-GParamSpec.html#GParamSpec"><span class="returnvalue">GParamSpec</span></a> * <a class="link" href="clutter-Utilities.html#clutter-param-spec-fixed" title="clutter_param_spec_fixed ()">clutter_param_spec_fixed</a> (const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *name,
102
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *nick,
103
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *blurb,
104
<a href="../cogl/cogl-Fixed-Point-API.html#CoglFixed"><span class="returnvalue">CoglFixed</span></a> minimum,
105
<a href="../cogl/cogl-Fixed-Point-API.html#CoglFixed"><span class="returnvalue">CoglFixed</span></a> maximum,
106
<a href="../cogl/cogl-Fixed-Point-API.html#CoglFixed"><span class="returnvalue">CoglFixed</span></a> default_value,
107
<a href="http://library.gnome.org/devel/gobject/unstable/gobject-GParamSpec.html#GParamFlags"><span class="returnvalue">GParamFlags</span></a> flags);
108
#define <a class="link" href="clutter-Utilities.html#CLUTTER-VALUE-HOLDS-FIXED:CAPS" title="CLUTTER_VALUE_HOLDS_FIXED()">CLUTTER_VALUE_HOLDS_FIXED</a> (x)
109
<span class="returnvalue">void</span> <a class="link" href="clutter-Utilities.html#clutter-value-set-fixed" title="clutter_value_set_fixed ()">clutter_value_set_fixed</a> (<a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *value,
110
<a href="../cogl/cogl-Fixed-Point-API.html#CoglFixed"><span class="returnvalue">CoglFixed</span></a> fixed_);
111
<a href="../cogl/cogl-Fixed-Point-API.html#CoglFixed"><span class="returnvalue">CoglFixed</span></a> <a class="link" href="clutter-Utilities.html#clutter-value-get-fixed" title="clutter_value_get_fixed ()">clutter_value_get_fixed</a> (const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *value);
171
114
<div class="refsect1" title="Description">
172
115
<a name="clutter-Utilities.description"></a><h2>Description</h2>
174
Various misc utilility functions.</p>
117
Various miscellaneous utilility functions.</p>
178
119
<div class="refsect1" title="Details">
179
120
<a name="clutter-Utilities.details"></a><h2>Details</h2>
180
121
<div class="refsect2" title="clutter_util_next_p2 ()">
181
122
<a name="clutter-util-next-p2"></a><h3>clutter_util_next_p2 ()</h3>
182
<pre class="programlisting">int clutter_util_next_p2 (int a);</pre>
123
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> clutter_util_next_p2 (<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> a);</pre>
124
<div class="warning" title="Warning" style="margin-left: 0.5in; margin-right: 0.5in;">
125
<h3 class="title">Warning</h3>
126
<p><code class="literal">clutter_util_next_p2</code> is deprecated and should not be used in newly-written code. 1.2</p>
184
129
Calculates the nearest power of two, greater than or equal to <em class="parameter"><code>a</code></em>.</p>
187
130
<div class="variablelist"><table border="0">
188
131
<col align="left" valign="top">
204
148
<div class="refsect2" title="clutter_timeout_pool_new ()">
205
149
<a name="clutter-timeout-pool-new"></a><h3>clutter_timeout_pool_new ()</h3>
206
<pre class="programlisting">ClutterTimeoutPool * clutter_timeout_pool_new (<a
207
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"
208
>gint</a> priority);</pre>
150
<pre class="programlisting"><span class="returnvalue">ClutterTimeoutPool</span> * clutter_timeout_pool_new (<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> priority);</pre>
210
152
Creates a new timeout pool source. A timeout pool should be used when
211
153
multiple timeout functions, running at the same priority, are needed and
213
href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#g-timeout-add"
214
><code class="function">g_timeout_add()</code></a> API might lead to starvation of the time slice of
154
the <a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#g-timeout-add"><code class="function">g_timeout_add()</code></a> API might lead to starvation of the time slice of
215
155
the main loop. A timeout pool allocates a single time slice of the main
216
156
loop and runs every timeout function inside it. The timeout pool is
217
157
always sorted, so that the extraction of the next timeout function is
218
a constant time operation.
221
Inside Clutter, every <a class="link" href="ClutterTimeline.html" title="ClutterTimeline"><span class="type">ClutterTimeline</span></a> share the same timeout pool, unless
222
the CLUTTER_TIMELINE=no-pool environment variable is set.
225
<span class="type">ClutterTimeoutPool</span> is part of the <a class="link" href="ClutterTimeline.html" title="ClutterTimeline"><span class="type">ClutterTimeline</span></a> implementation
226
and should not be used by application developers.</p>
158
a constant time operation.</p>
229
159
<div class="variablelist"><table border="0">
230
160
<col align="left" valign="top">
233
163
<td><p><span class="term"><em class="parameter"><code>priority</code></em> :</span></p></td>
234
164
<td> the priority of the timeout pool. Typically this will
236
href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#G-PRIORITY-DEFAULT--CAPS"
237
><span class="type">G_PRIORITY_DEFAULT</span></a>
165
be <a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#G-PRIORITY-DEFAULT:CAPS"><span class="type">G_PRIORITY_DEFAULT</span></a>
256
182
<div class="refsect2" title="clutter_timeout_pool_add ()">
257
183
<a name="clutter-timeout-pool-add"></a><h3>clutter_timeout_pool_add ()</h3>
258
<pre class="programlisting"><a
259
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
260
>guint</a> clutter_timeout_pool_add (ClutterTimeoutPool *pool,
262
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
265
href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#GSourceFunc"
266
>GSourceFunc</a> func,
268
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"
271
href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"
272
>GDestroyNotify</a> notify);</pre>
184
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> clutter_timeout_pool_add (<span class="returnvalue">ClutterTimeoutPool</span> *pool,
185
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> fps,
186
<a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#GSourceFunc"><span class="returnvalue">GSourceFunc</span></a> func,
187
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> data,
188
<a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="returnvalue">GDestroyNotify</span></a> notify);</pre>
274
190
Sets a function to be called at regular intervals, and puts it inside
275
the <em class="parameter"><code>pool</code></em>. The function is repeatedly called until it returns <a
276
href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE--CAPS"
277
><code class="literal">FALSE</code></a>,
191
the <em class="parameter"><code>pool</code></em>. The function is repeatedly called until it returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>,
278
192
at which point the timeout is automatically destroyed and the function
279
won't be called again. If <em class="parameter"><code>notify</code></em> is not <a
280
href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL--CAPS"
281
><code class="literal">NULL</code></a>, the <em class="parameter"><code>notify</code></em> function
193
won't be called again. If <em class="parameter"><code>notify</code></em> is not <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, the <em class="parameter"><code>notify</code></em> function
282
194
will be called. The first call to <em class="parameter"><code>func</code></em> will be at the end of <em class="parameter"><code>interval</code></em>.
285
Since version 0.8 this will try to compensate for delays. For
197
Since Clutter 0.8 this will try to compensate for delays. For
286
198
example, if <em class="parameter"><code>func</code></em> takes half the interval time to execute then the
287
199
function will be called again half the interval time after it
288
200
finished. Before version 0.8 it would not fire until a full
415
307
<div class="refsect2" title="clutter_frame_source_add_full ()">
416
308
<a name="clutter-frame-source-add-full"></a><h3>clutter_frame_source_add_full ()</h3>
417
<pre class="programlisting"><a
418
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
419
>guint</a> clutter_frame_source_add_full (<a
420
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"
423
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
426
href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#GSourceFunc"
427
>GSourceFunc</a> func,
429
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"
432
href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"
433
>GDestroyNotify</a> notify);</pre>
309
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> clutter_frame_source_add_full (<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> priority,
310
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> fps,
311
<a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#GSourceFunc"><span class="returnvalue">GSourceFunc</span></a> func,
312
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> data,
313
<a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="returnvalue">GDestroyNotify</span></a> notify);</pre>
435
315
Sets a function to be called at regular intervals with the given
436
316
priority. The function is called repeatedly until it returns
438
href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE--CAPS"
439
><code class="literal">FALSE</code></a>, at which point the timeout is automatically destroyed and
317
<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>, at which point the timeout is automatically destroyed and
440
318
the function will not be called again. The <em class="parameter"><code>notify</code></em> function is
441
319
called when the timeout is destroyed. The first call to the
442
320
function will be at the end of the first <em class="parameter"><code>interval</code></em>.
445
This function is similar to <a
446
href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#g-timeout-add-full"
447
><code class="function">g_timeout_add_full()</code></a> except that it
323
This function is similar to <a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#g-timeout-add-full"><code class="function">g_timeout_add_full()</code></a> except that it
448
324
will try to compensate for delays. For example, if <em class="parameter"><code>func</code></em> takes half
449
325
the interval time to execute then the function will be called again
450
326
half the interval time after it finished. In contrast
452
href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#g-timeout-add-full"
453
><code class="function">g_timeout_add_full()</code></a> would not fire until a full interval after the
327
<a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#g-timeout-add-full"><code class="function">g_timeout_add_full()</code></a> would not fire until a full interval after the
454
328
function completes so the delay between calls would be 1.0 / <em class="parameter"><code>fps</code></em> *
455
329
1.5. This function does not however try to invoke the function
456
330
multiple times to catch up missing frames if <em class="parameter"><code>func</code></em> takes more than
457
331
<em class="parameter"><code>interval</code></em> ms to execute.</p>
460
332
<div class="variablelist"><table border="0">
461
333
<col align="left" valign="top">
464
336
<td><p><span class="term"><em class="parameter"><code>priority</code></em> :</span></p></td>
465
337
<td> the priority of the frame source. Typically this will be in the
467
href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#G-PRIORITY-DEFAULT--CAPS"
468
><span class="type">G_PRIORITY_DEFAULT</span></a> and <a
469
href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#G-PRIORITY-HIGH--CAPS"
470
><span class="type">G_PRIORITY_HIGH</span></a>.
338
range between <a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#G-PRIORITY-DEFAULT:CAPS"><code class="literal">G_PRIORITY_DEFAULT</code></a> and <a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#G-PRIORITY-HIGH:CAPS"><code class="literal">G_PRIORITY_HIGH</code></a>.
547
405
<div class="refsect2" title="clutter_param_spec_fixed ()">
548
406
<a name="clutter-param-spec-fixed"></a><h3>clutter_param_spec_fixed ()</h3>
549
<pre class="programlisting"><a
550
href="http://library.gnome.org/devel/gobject/unstable/gobject-GParamSpec.html#GParamSpec"
551
>GParamSpec</a> * clutter_param_spec_fixed (const <a
552
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"
555
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"
558
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"
561
href="../cogl/cogl-Fixed-Point-API.html#CoglFixed"
562
>CoglFixed</a> minimum,
564
href="../cogl/cogl-Fixed-Point-API.html#CoglFixed"
565
>CoglFixed</a> maximum,
567
href="../cogl/cogl-Fixed-Point-API.html#CoglFixed"
568
>CoglFixed</a> default_value,
570
href="http://library.gnome.org/devel/gobject/unstable/gobject-GParamSpec.html#GParamFlags"
571
>GParamFlags</a> flags);</pre>
574
href="http://library.gnome.org/devel/gobject/unstable/gobject-GParamSpec.html#GParamSpec"
575
><span class="type">GParamSpec</span></a> for properties using <a
576
href="../cogl/cogl-Fixed-Point-API.html#CoglFixed"
577
><span class="type">CoglFixed</span></a> values</p>
407
<pre class="programlisting"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-GParamSpec.html#GParamSpec"><span class="returnvalue">GParamSpec</span></a> * clutter_param_spec_fixed (const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *name,
408
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *nick,
409
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *blurb,
410
<a href="../cogl/cogl-Fixed-Point-API.html#CoglFixed"><span class="returnvalue">CoglFixed</span></a> minimum,
411
<a href="../cogl/cogl-Fixed-Point-API.html#CoglFixed"><span class="returnvalue">CoglFixed</span></a> maximum,
412
<a href="../cogl/cogl-Fixed-Point-API.html#CoglFixed"><span class="returnvalue">CoglFixed</span></a> default_value,
413
<a href="http://library.gnome.org/devel/gobject/unstable/gobject-GParamSpec.html#GParamFlags"><span class="returnvalue">GParamFlags</span></a> flags);</pre>
415
Creates a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> for properties using <a href="../cogl/cogl-Fixed-Point-API.html#CoglFixed"><span class="type">CoglFixed</span></a> values</p>
580
416
<div class="variablelist"><table border="0">
581
417
<col align="left" valign="top">
688
506
<div class="refsect2" title="clutter_value_get_fixed ()">
689
507
<a name="clutter-value-get-fixed"></a><h3>clutter_value_get_fixed ()</h3>
690
<pre class="programlisting"><a
691
href="../cogl/cogl-Fixed-Point-API.html#CoglFixed"
692
>CoglFixed</a> clutter_value_get_fixed (const <a
693
href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"
694
>GValue</a> *value);</pre>
508
<pre class="programlisting"><a href="../cogl/cogl-Fixed-Point-API.html#CoglFixed"><span class="returnvalue">CoglFixed</span></a> clutter_value_get_fixed (const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *value);</pre>
696
510
Gets the fixed point value stored inside <em class="parameter"><code>value</code></em>.</p>
699
511
<div class="variablelist"><table border="0">
700
512
<col align="left" valign="top">
703
515
<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
705
href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"
706
><span class="type">GValue</span></a> initialized to <code class="literal">COGL_TYPE_FIXED</code>
516
<td> a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> initialized to <code class="literal">COGL_TYPE_FIXED</code>
710
520
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
711
<td> the value inside the passed <a
712
href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"
713
><span class="type">GValue</span></a>
521
<td> the value inside the passed <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a>