OXIESEC PANEL
- Current Dir:
/
/
usr
/
include
/
glib-2.0
/
glib
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
10/28/2024 06:50:15 AM
rwxr-xr-x
📁
deprecated
-
10/28/2024 06:50:15 AM
rwxr-xr-x
📄
galloca.h
3.82 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
garray.h
9.3 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gasyncqueue.h
5.53 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gatomic.h
14.75 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gbacktrace.h
2.51 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gbase64.h
2.27 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gbitlock.h
2.83 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gbookmarkfile.h
9.37 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gbytes.h
3.26 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gcharset.h
1.3 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gchecksum.h
3.77 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gconvert.h
5.78 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gdataset.h
6.1 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gdate.h
11.47 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gdatetime.h
11.96 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gdir.h
1.6 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
genviron.h
2.31 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gerror.h
3.85 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gfileutils.h
5.51 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
ggettext.h
2.37 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
ghash.h
7.37 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
ghmac.h
3.39 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
ghook.h
6.21 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
ghostutils.h
1.42 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gi18n-lib.h
1.34 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gi18n.h
1.14 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
giochannel.h
13.63 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gkeyfile.h
14.82 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
glib-autocleanups.h
4.04 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
glist.h
5.69 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gmacros.h
18.21 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gmain.h
23.55 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gmappedfile.h
1.94 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gmarkup.h
10.62 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gmem.h
13.01 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gmessages.h
24.81 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gnode.h
8.91 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
goption.h
15.65 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gpattern.h
1.74 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gpoll.h
4.03 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gprimes.h
1.65 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gprintf.h
1.94 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gqsort.h
1.46 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gquark.h
2.63 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gqueue.h
6.97 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
grand.h
3.11 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gregex.h
27.44 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gscanner.h
8.47 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gsequence.h
8.6 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gshell.h
1.71 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gslice.h
3.8 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gslist.h
5.46 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gspawn.h
10.77 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gstdio.h
4.73 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gstrfuncs.h
12.76 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gstring.h
7.79 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gstringchunk.h
2.08 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gtestutils.h
23.64 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gthread.h
11.34 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gthreadpool.h
3.73 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gtimer.h
2.31 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gtimezone.h
3.41 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gtrashstack.h
1.74 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gtree.h
4.1 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gtypes.h
18.98 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gunicode.h
38.2 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gurifuncs.h
2.65 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gutils.h
11.01 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
guuid.h
1.26 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gvariant.h
28.83 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gvarianttype.h
12.93 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gversion.h
1.93 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gversionmacros.h
16.33 KB
11/29/2021 04:42:57 PM
rw-r--r--
📄
gwin32.h
4.56 KB
11/29/2021 04:42:57 PM
rw-r--r--
Editing: ghook.h
Close
/* GLIB - Library of useful routines for C programming * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, see <http://www.gnu.org/licenses/>. */ /* * Modified by the GLib Team and others 1997-2000. See the AUTHORS * file for a list of people on the GLib Team. See the ChangeLog * files for a list of changes. These files are distributed with * GLib at ftp://ftp.gtk.org/pub/gtk/. */ #ifndef __G_HOOK_H__ #define __G_HOOK_H__ #if !defined (__GLIB_H_INSIDE__) && !defined (GLIB_COMPILATION) #error "Only <glib.h> can be included directly." #endif #include <glib/gmem.h> G_BEGIN_DECLS /* --- typedefs --- */ typedef struct _GHook GHook; typedef struct _GHookList GHookList; typedef gint (*GHookCompareFunc) (GHook *new_hook, GHook *sibling); typedef gboolean (*GHookFindFunc) (GHook *hook, gpointer data); typedef void (*GHookMarshaller) (GHook *hook, gpointer marshal_data); typedef gboolean (*GHookCheckMarshaller) (GHook *hook, gpointer marshal_data); typedef void (*GHookFunc) (gpointer data); typedef gboolean (*GHookCheckFunc) (gpointer data); typedef void (*GHookFinalizeFunc) (GHookList *hook_list, GHook *hook); typedef enum { G_HOOK_FLAG_ACTIVE = 1 << 0, G_HOOK_FLAG_IN_CALL = 1 << 1, G_HOOK_FLAG_MASK = 0x0f } GHookFlagMask; #define G_HOOK_FLAG_USER_SHIFT (4) /* --- structures --- */ struct _GHookList { gulong seq_id; guint hook_size : 16; guint is_setup : 1; GHook *hooks; gpointer dummy3; GHookFinalizeFunc finalize_hook; gpointer dummy[2]; }; struct _GHook { gpointer data; GHook *next; GHook *prev; guint ref_count; gulong hook_id; guint flags; gpointer func; GDestroyNotify destroy; }; /* --- macros --- */ #define G_HOOK(hook) ((GHook*) (hook)) #define G_HOOK_FLAGS(hook) (G_HOOK (hook)->flags) #define G_HOOK_ACTIVE(hook) ((G_HOOK_FLAGS (hook) & \ G_HOOK_FLAG_ACTIVE) != 0) #define G_HOOK_IN_CALL(hook) ((G_HOOK_FLAGS (hook) & \ G_HOOK_FLAG_IN_CALL) != 0) #define G_HOOK_IS_VALID(hook) (G_HOOK (hook)->hook_id != 0 && \ (G_HOOK_FLAGS (hook) & \ G_HOOK_FLAG_ACTIVE)) #define G_HOOK_IS_UNLINKED(hook) (G_HOOK (hook)->next == NULL && \ G_HOOK (hook)->prev == NULL && \ G_HOOK (hook)->hook_id == 0 && \ G_HOOK (hook)->ref_count == 0) /* --- prototypes --- */ /* callback maintenance functions */ GLIB_AVAILABLE_IN_ALL void g_hook_list_init (GHookList *hook_list, guint hook_size); GLIB_AVAILABLE_IN_ALL void g_hook_list_clear (GHookList *hook_list); GLIB_AVAILABLE_IN_ALL GHook* g_hook_alloc (GHookList *hook_list); GLIB_AVAILABLE_IN_ALL void g_hook_free (GHookList *hook_list, GHook *hook); GLIB_AVAILABLE_IN_ALL GHook * g_hook_ref (GHookList *hook_list, GHook *hook); GLIB_AVAILABLE_IN_ALL void g_hook_unref (GHookList *hook_list, GHook *hook); GLIB_AVAILABLE_IN_ALL gboolean g_hook_destroy (GHookList *hook_list, gulong hook_id); GLIB_AVAILABLE_IN_ALL void g_hook_destroy_link (GHookList *hook_list, GHook *hook); GLIB_AVAILABLE_IN_ALL void g_hook_prepend (GHookList *hook_list, GHook *hook); GLIB_AVAILABLE_IN_ALL void g_hook_insert_before (GHookList *hook_list, GHook *sibling, GHook *hook); GLIB_AVAILABLE_IN_ALL void g_hook_insert_sorted (GHookList *hook_list, GHook *hook, GHookCompareFunc func); GLIB_AVAILABLE_IN_ALL GHook* g_hook_get (GHookList *hook_list, gulong hook_id); GLIB_AVAILABLE_IN_ALL GHook* g_hook_find (GHookList *hook_list, gboolean need_valids, GHookFindFunc func, gpointer data); GLIB_AVAILABLE_IN_ALL GHook* g_hook_find_data (GHookList *hook_list, gboolean need_valids, gpointer data); GLIB_AVAILABLE_IN_ALL GHook* g_hook_find_func (GHookList *hook_list, gboolean need_valids, gpointer func); GLIB_AVAILABLE_IN_ALL GHook* g_hook_find_func_data (GHookList *hook_list, gboolean need_valids, gpointer func, gpointer data); /* return the first valid hook, and increment its reference count */ GLIB_AVAILABLE_IN_ALL GHook* g_hook_first_valid (GHookList *hook_list, gboolean may_be_in_call); /* return the next valid hook with incremented reference count, and * decrement the reference count of the original hook */ GLIB_AVAILABLE_IN_ALL GHook* g_hook_next_valid (GHookList *hook_list, GHook *hook, gboolean may_be_in_call); /* GHookCompareFunc implementation to insert hooks sorted by their id */ GLIB_AVAILABLE_IN_ALL gint g_hook_compare_ids (GHook *new_hook, GHook *sibling); /* convenience macros */ #define g_hook_append( hook_list, hook ) \ g_hook_insert_before ((hook_list), NULL, (hook)) /* invoke all valid hooks with the (*GHookFunc) signature. */ GLIB_AVAILABLE_IN_ALL void g_hook_list_invoke (GHookList *hook_list, gboolean may_recurse); /* invoke all valid hooks with the (*GHookCheckFunc) signature, * and destroy the hook if FALSE is returned. */ GLIB_AVAILABLE_IN_ALL void g_hook_list_invoke_check (GHookList *hook_list, gboolean may_recurse); /* invoke a marshaller on all valid hooks. */ GLIB_AVAILABLE_IN_ALL void g_hook_list_marshal (GHookList *hook_list, gboolean may_recurse, GHookMarshaller marshaller, gpointer marshal_data); GLIB_AVAILABLE_IN_ALL void g_hook_list_marshal_check (GHookList *hook_list, gboolean may_recurse, GHookCheckMarshaller marshaller, gpointer marshal_data); G_END_DECLS #endif /* __G_HOOK_H__ */