📄 swfdecascontext.html
字号:
<a class="indexterm" name="id2616558"></a><pre class="programlisting">void swfdec_as_context_gc (<a href="SwfdecAsContext.html" title="SwfdecAsContext">SwfdecAsContext</a> *context);</pre><p>Calls the Swfdec Gargbage collector and reclaims any unused memory. You should call this function or <a href="SwfdecAsContext.html#swfdec-as-context-maybe-gc"><code class="function">swfdec_as_context_maybe_gc()</code></a> regularly.</p><div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Warning</h3>Calling the GC during execution of code or initialization is not allowed.</div><p></p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><em class="parameter"><code>context</code></em> :</span></td><td> a <a href="SwfdecAsContext.html" title="SwfdecAsContext"><span class="type">SwfdecAsContext</span></a></td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2621737"></a><h3><a name="swfdec-as-context-maybe-gc"></a>swfdec_as_context_maybe_gc ()</h3><a class="indexterm" name="id2621747"></a><pre class="programlisting">void swfdec_as_context_maybe_gc (<a href="SwfdecAsContext.html" title="SwfdecAsContext">SwfdecAsContext</a> *context);</pre><p>Calls the garbage collector if necessary. It's a good idea to call thisfunction regularly instead of <a href="SwfdecAsContext.html#swfdec-as-context-gc"><code class="function">swfdec_as_context_gc()</code></a> as it only does collectgarage as needed. For example, <a href="SwfdecPlayer.html" title="SwfdecPlayer"><span class="type">SwfdecPlayer</span></a> calls this function after everyframe advancement.</p><p></p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><em class="parameter"><code>context</code></em> :</span></td><td> a <a href="SwfdecAsContext.html" title="SwfdecAsContext"><span class="type">SwfdecAsContext</span></a></td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2621816"></a><h3><a name="swfdec-as-context-run"></a>swfdec_as_context_run ()</h3><a class="indexterm" name="id2621828"></a><pre class="programlisting">void swfdec_as_context_run (<a href="SwfdecAsContext.html" title="SwfdecAsContext">SwfdecAsContext</a> *context);</pre><p>Continues running the script engine. Executing code in this engine worksin 2 steps: First, you push the frame to be executed onto the stack, thenyou call this function to execute it. So this function is the single entrypoint to script execution. This might be helpful when debugging your application. </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Note</h3>A lot of convenience functions like <a href="swfdec-SwfdecAsObject.html#swfdec-as-object-run"><code class="function">swfdec_as_object_run()</code></a> call this function automatically.</div><p></p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><em class="parameter"><code>context</code></em> :</span></td><td> a <a href="SwfdecAsContext.html" title="SwfdecAsContext"><span class="type">SwfdecAsContext</span></a></td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2621902"></a><h3><a name="swfdec-as-context-unuse-mem"></a>swfdec_as_context_unuse_mem ()</h3><a class="indexterm" name="id2621914"></a><pre class="programlisting">void swfdec_as_context_unuse_mem (<a href="SwfdecAsContext.html" title="SwfdecAsContext">SwfdecAsContext</a> *context, gsize bytes);</pre><p>Releases a number of bytes previously allocated using <a href="SwfdecAsContext.html#swfdec-as-context-use-mem"><code class="function">swfdec_as_context_use_mem()</code></a>. See that function for details.</p><p></p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><em class="parameter"><code>context</code></em> :</span></td><td> a <a href="SwfdecAsContext.html" title="SwfdecAsContext"><span class="type">SwfdecAsContext</span></a></td></tr><tr><td><span class="term"><em class="parameter"><code>bytes</code></em> :</span></td><td> number of bytes to release</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2622002"></a><h3><a name="swfdec-as-context-eval"></a>swfdec_as_context_eval ()</h3><a class="indexterm" name="id2622014"></a><pre class="programlisting">void swfdec_as_context_eval (<a href="SwfdecAsContext.html" title="SwfdecAsContext">SwfdecAsContext</a> *context, <a href="swfdec-SwfdecAsObject.html#SwfdecAsObject">SwfdecAsObject</a> *obj, const char *str, <a href="swfdec-SwfdecAsValue.html#SwfdecAsValue">SwfdecAsValue</a> *val);</pre><p>This function works like the Actionscript eval function used on <em class="parameter"><code>obj</code></em>.It handles both slash-style and dot-style notation. If an error occuredduring evaluation, the return value will be the undefined value.</p><p></p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><em class="parameter"><code>context</code></em> :</span></td><td> a <a href="SwfdecAsContext.html" title="SwfdecAsContext"><span class="type">SwfdecAsContext</span></a></td></tr><tr><td><span class="term"><em class="parameter"><code>obj</code></em> :</span></td><td> <a href="swfdec-SwfdecAsObject.html#SwfdecAsObject"><span class="type">SwfdecAsObject</span></a> to use as source for evaluating or NULL for the current frame's scope</td></tr><tr><td><span class="term"><em class="parameter"><code>str</code></em> :</span></td><td> The string to evaluate</td></tr><tr><td><span class="term"><em class="parameter"><code>val</code></em> :</span></td><td> location for the return value</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2622153"></a><h3><a name="swfdec-as-context-eval-set"></a>swfdec_as_context_eval_set ()</h3><a class="indexterm" name="id2622165"></a><pre class="programlisting">void swfdec_as_context_eval_set (<a href="SwfdecAsContext.html" title="SwfdecAsContext">SwfdecAsContext</a> *context, <a href="swfdec-SwfdecAsObject.html#SwfdecAsObject">SwfdecAsObject</a> *obj, const char *str, const <a href="swfdec-SwfdecAsValue.html#SwfdecAsValue">SwfdecAsValue</a> *val);</pre><p>Sets the variable referenced by <em class="parameter"><code>str</code></em> to <em class="parameter"><code>val</code></em>. If <em class="parameter"><code>str</code></em> does not reference a valid property, nothing happens.</p><p></p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><em class="parameter"><code>context</code></em> :</span></td><td> a <a href="SwfdecAsContext.html" title="SwfdecAsContext"><span class="type">SwfdecAsContext</span></a></td></tr><tr><td><span class="term"><em class="parameter"><code>obj</code></em> :</span></td><td> <a href="swfdec-SwfdecAsObject.html#SwfdecAsObject"><span class="type">SwfdecAsObject</span></a> to use as source for evaluating or NULL for the default object.</td></tr><tr><td><span class="term"><em class="parameter"><code>str</code></em> :</span></td><td> The string to evaluate</td></tr><tr><td><span class="term"><em class="parameter"><code>val</code></em> :</span></td><td> the value to set the variable to</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2622314"></a><h3><a name="swfdec-as-context-get-time"></a>swfdec_as_context_get_time ()</h3><a class="indexterm" name="id2622326"></a><pre class="programlisting">void swfdec_as_context_get_time (<a href="SwfdecAsContext.html" title="SwfdecAsContext">SwfdecAsContext</a> *context, GTimeVal *tv);</pre><p>This function queries the time to be used inside this context. By default,this is the same as <code class="function">g_get_current_time()</code>, but it may be overwriten to allowthings such as slower or faster playback.</p><p></p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><em class="parameter"><code>context</code></em> :</span></td><td> a <a href="SwfdecAsContext.html" title="SwfdecAsContext"><span class="type">SwfdecAsContext</span></a></td></tr><tr><td><span class="term"><em class="parameter"><code>tv</code></em> :</span></td><td> a <span class="type">GTimeVal</span> to be set to the context's time</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2622424"></a><h3><a name="swfdec-as-context-get-frame"></a>swfdec_as_context_get_frame ()</h3><a class="indexterm" name="id2622435"></a><pre class="programlisting"><a href="swfdec-SwfdecAsFrame.html#SwfdecAsFrame">SwfdecAsFrame</a>* swfdec_as_context_get_frame (<a href="SwfdecAsContext.html" title="SwfdecAsContext">SwfdecAsContext</a> *context);</pre><p>This is a debugging function. It gets the topmost stack frame that is currently executing. If no function is executing, <code class="literal">NULL</code> is returned. You caneasily get a backtrace with code like this:</p><div class="informalexample"><pre class="programlisting">for (frame = swfdec_as_context_get_frame (context); frame != NULL; frame = swfdec_as_frame_get_next (frame)) { char *s = swfdec_as_object_get_debug (SWFDEC_AS_OBJECT (frame)); g_print ("%s\n", s); g_free (s);}</pre></div><p></p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><em class="parameter"><code>context</code></em> :</span></td><td> a <a href="SwfdecAsContext.html" title="SwfdecAsContext"><span class="type">SwfdecAsContext</span></a></td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> the currently executing frame or <code class="literal">NULL</code> if none</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2622535"></a><h3><a name="swfdec-as-context-is-constructing"></a>swfdec_as_context_is_constructing ()</h3><a class="indexterm" name="id2622549"></a><pre class="programlisting">gboolean swfdec_as_context_is_constructing (<a href="SwfdecAsContext.html" title="SwfdecAsContext">SwfdecAsContext</a> *context);</pre><p>Determines if the contexxt is currently constructing. This information isused by various constructors to do different things when they are constructing and when they are not. The Boolean, Number and String functionsfor example setup the newly constructed objects when constructing but onlycast the provided argument when being called.</p><p></p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><em class="parameter"><code>context</code></em> :</span></td><td> a <span class="type">SwfdecAsConstruct</span></td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> <code class="literal">TRUE</code> if the currently executing frame is a constructor</td></tr></tbody></table></div></div></div><div class="refsect1" lang="en"><a name="id2622633"></a><h2>See Also</h2>SwfdecPlayer</div><div class="refsect1" lang="en"><a name="id2622641"></a><div class="refsect2" lang="en"><a name="id2622642"></a></div><hr><div class="refsect2" lang="en"><a name="id2622643"></a></div></div></div></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -