结构
GLibHook
描述 [src]
struct GHook {
gpointer data;
GHook* next;
GHook* prev;
guint ref_count;
gulong hook_id;
guint flags;
gpointer func;
GDestroyNotify destroy;
}
GHook
结构代表 GHookList
中的单个挂钩函数。
结构成员
data
当这个挂钩被调用时传递给函数的数据。
next
指向列表中的下一个挂钩。
prev
指向列表中前一个挂钩。
ref_count
这个挂钩的引用计数。
hook_id
这个挂钩的 ID,在列表中是唯一的。
flags
为此挂钩设置的标志。参见
GHookFlagMask
以获取预定义标志。func
调用这个挂钩时要调用的函数。这个函数可能的签名是
GHookFunc
和GHookCheckFunc
。destroy
一个
GHookList
的默认finalize_hook
函数调用这个被终结的挂钩的成员。
函数
g_hook_first_valid
返回 GHookList
中第一个没有被销毁的 GHook
。该 GHook
的引用计数被增加,因此你必须在不再需要时调用 g_hook_unref()
来还原它。(如果你正在遍历 GHookList
请调用 g_hook_next_valid()
)。
g_hook_next_valid
返回 GHookList
中下一个没有被销毁的 GHook
。该 GHook
的引用计数被增加,因此你必须在不再需要时调用 g_hook_unref()
来还原它。(或者继续调用 g_hook_next_valid()
直到返回 NULL
)。