📄 glib-hook-functions.html
字号:
<a href="glib-Hook-Functions.html#g-hook-unref"><code class="function">g_hook_unref()</code></a> to restore it when no longer needed. (Or call<a href="glib-Hook-Functions.html#g-hook-next-valid"><code class="function">g_hook_next_valid()</code></a> if you are stepping through the <a href="glib-Hook-Functions.html#GHookList"><span class="type">GHookList</span></a>.)</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><em class="parameter"><code>hook_list</code></em> :</span></td><td>a <a href="glib-Hook-Functions.html#GHookList"><span class="type">GHookList</span></a>.</td></tr><tr><td><span class="term"><em class="parameter"><code>may_be_in_call</code></em> :</span></td><td><code class="literal">TRUE</code> if hooks which are currently running (e.g. in anotherthread) are considered valid. If set to <code class="literal">FALSE</code>, these are skipped.</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the first valid <a href="glib-Hook-Functions.html#GHook"><span class="type">GHook</span></a>, or <code class="literal">NULL</code> if none are valid.</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id3012281"></a><h3><a name="g-hook-next-valid"></a>g_hook_next_valid ()</h3><a class="indexterm" name="id3012292"></a><pre class="programlisting"><a href="glib-Hook-Functions.html#GHook">GHook</a>* g_hook_next_valid (<a href="glib-Hook-Functions.html#GHookList">GHookList</a> *hook_list, <a href="glib-Hook-Functions.html#GHook">GHook</a> *hook, <a href="glib-Basic-Types.html#gboolean">gboolean</a> may_be_in_call);</pre><p>Returns the next <a href="glib-Hook-Functions.html#GHook"><span class="type">GHook</span></a> in a <a href="glib-Hook-Functions.html#GHookList"><span class="type">GHookList</span></a> which has not been destroyed.The reference count for the <a href="glib-Hook-Functions.html#GHook"><span class="type">GHook</span></a> is incremented, so you must call<a href="glib-Hook-Functions.html#g-hook-unref"><code class="function">g_hook_unref()</code></a> to restore it when no longer needed. (Or continue to call<a href="glib-Hook-Functions.html#g-hook-next-valid"><code class="function">g_hook_next_valid()</code></a> until <code class="literal">NULL</code> is returned.)</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><em class="parameter"><code>hook_list</code></em> :</span></td><td>a <a href="glib-Hook-Functions.html#GHookList"><span class="type">GHookList</span></a>.</td></tr><tr><td><span class="term"><em class="parameter"><code>hook</code></em> :</span></td><td>the current <a href="glib-Hook-Functions.html#GHook"><span class="type">GHook</span></a>.</td></tr><tr><td><span class="term"><em class="parameter"><code>may_be_in_call</code></em> :</span></td><td><code class="literal">TRUE</code> if hooks which are currently running (e.g. in anotherthread) are considered valid. If set to <code class="literal">FALSE</code>, these are skipped.</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the next valid <a href="glib-Hook-Functions.html#GHook"><span class="type">GHook</span></a>, or <code class="literal">NULL</code> if none are valid.</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id3012488"></a><h3><a name="GHookFlagMask"></a>enum GHookFlagMask</h3><a class="indexterm" name="id3012498"></a><pre class="programlisting">typedef enum{ G_HOOK_FLAG_ACTIVE = 1 << 0, G_HOOK_FLAG_IN_CALL = 1 << 1, G_HOOK_FLAG_MASK = 0x0f} GHookFlagMask;</pre><p>Flags used internally in the <a href="glib-Hook-Functions.html#GHook"><span class="type">GHook</span></a> implementation.</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><code class="literal">G_HOOK_FLAG_ACTIVE</code></span></td><td>set if the hook has not been destroyed.</td></tr><tr><td><span class="term"><code class="literal">G_HOOK_FLAG_IN_CALL</code></span></td><td>set if the hook is currently being run.</td></tr><tr><td><span class="term"><code class="literal">G_HOOK_FLAG_MASK</code></span></td><td></td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id3012576"></a><h3><a name="G-HOOK-FLAGS:CAPS"></a>G_HOOK_FLAGS()</h3><a class="indexterm" name="id3012586"></a><pre class="programlisting">#define G_HOOK_FLAGS(hook) (G_HOOK (hook)->flags)</pre><p>Returns the flags of a hook.</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><em class="parameter"><code>hook</code></em> :</span></td><td>a <a href="glib-Hook-Functions.html#GHook"><span class="type">GHook</span></a>.</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id3012629"></a><h3><a name="G-HOOK-FLAG-USER-SHIFT:CAPS"></a>G_HOOK_FLAG_USER_SHIFT</h3><a class="indexterm" name="id3012640"></a><pre class="programlisting">#define G_HOOK_FLAG_USER_SHIFT (4)</pre><p>The position of the first bit which is not reserved for internaluse be the <a href="glib-Hook-Functions.html#GHook"><span class="type">GHook</span></a> implementation, i.e. <code class="literal">1 << G_HOOK_FLAG_USER_SHIFT</code> is the first bitwhich can be used for application-defined flags.</p></div><hr><div class="refsect2" lang="en"><a name="id3012673"></a><h3><a name="G-HOOK:CAPS"></a>G_HOOK()</h3><a class="indexterm" name="id3012683"></a><pre class="programlisting">#define G_HOOK(hook) ((GHook*) (hook))</pre><p>Casts a pointer to a <code class="literal">GHook*</code>.</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><em class="parameter"><code>hook</code></em> :</span></td><td>a pointer.</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id3012723"></a><h3><a name="G-HOOK-IS-VALID:CAPS"></a>G_HOOK_IS_VALID()</h3><a class="indexterm" name="id3012734"></a><pre class="programlisting">#define G_HOOK_IS_VALID(hook)</pre><p>Returns <code class="literal">TRUE</code> if the <a href="glib-Hook-Functions.html#GHook"><span class="type">GHook</span></a> is valid, i.e. it is in a <a href="glib-Hook-Functions.html#GHookList"><span class="type">GHookList</span></a>, it is activeand it has not been destroyed.</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><em class="parameter"><code>hook</code></em> :</span></td><td>a <a href="glib-Hook-Functions.html#GHook"><span class="type">GHook</span></a>.</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td><code class="literal">TRUE</code> if the <a href="glib-Hook-Functions.html#GHook"><span class="type">GHook</span></a> is valid.</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id3012821"></a><h3><a name="G-HOOK-ACTIVE:CAPS"></a>G_HOOK_ACTIVE()</h3><a class="indexterm" name="id3012832"></a><pre class="programlisting">#define G_HOOK_ACTIVE(hook)</pre><p>Returns <code class="literal">TRUE</code> if the <a href="glib-Hook-Functions.html#GHook"><span class="type">GHook</span></a> is active, which is normally <code class="literal">TRUE</code> until the <a href="glib-Hook-Functions.html#GHook"><span class="type">GHook</span></a>is destroyed.</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><em class="parameter"><code>hook</code></em> :</span></td><td>a <a href="glib-Hook-Functions.html#GHook"><span class="type">GHook</span></a>.</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td><code class="literal">TRUE</code> if the <a href="glib-Hook-Functions.html#GHook"><span class="type">GHook</span></a> is active.</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id3012925"></a><h3><a name="G-HOOK-IN-CALL:CAPS"></a>G_HOOK_IN_CALL()</h3><a class="indexterm" name="id3012935"></a><pre class="programlisting">#define G_HOOK_IN_CALL(hook)</pre><p>Returns <code class="literal">TRUE</code> if the <a href="glib-Hook-Functions.html#GHook"><span class="type">GHook</span></a> function is currently executing.</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><em class="parameter"><code>hook</code></em> :</span></td><td>a <a href="glib-Hook-Functions.html#GHook"><span class="type">GHook</span></a>.</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td><code class="literal">TRUE</code> if the <a href="glib-Hook-Functions.html#GHook"><span class="type">GHook</span></a> function is currently executing.</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id3013014"></a><h3><a name="G-HOOK-IS-UNLINKED:CAPS"></a>G_HOOK_IS_UNLINKED()</h3><a class="indexterm" name="id3013026"></a><pre class="programlisting">#define G_HOOK_IS_UNLINKED(hook)</pre><p>Returns <code class="literal">TRUE</code> if the <a href="glib-Hook-Functions.html#GHook"><span class="type">GHook</span></a> is not in a <a href="glib-Hook-Functions.html#GHookList"><span class="type">GHookList</span></a>.</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><em class="parameter"><code>hook</code></em> :</span></td><td>a <a href="glib-Hook-Functions.html#GHook"><span class="type">GHook</span></a>.</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td><code class="literal">TRUE</code> if the <a href="glib-Hook-Functions.html#GHook"><span class="type">GHook</span></a> is not in a <a href="glib-Hook-Functions.html#GHookList"><span class="
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -