404

[ Avaa Bypassed ]




Upload:

Command:

botdev@18.119.255.198: ~ $
/* gpoll.h - poll(2) support
 * Copyright (C) 2008 Red Hat, Inc.
 *
 * 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/>.
 */

#ifndef __G_POLL_H__
#define __G_POLL_H__

#if !defined (__GLIB_H_INSIDE__) && !defined (__G_MAIN_H__) && !defined (GLIB_COMPILATION)
#error "Only <glib.h> can be included directly."
#endif

#include <glibconfig.h>
#include <glib/gtypes.h>

G_BEGIN_DECLS

/* Any definitions using GPollFD or GPollFunc are primarily
 * for Unix and not guaranteed to be the compatible on all
 * operating systems on which GLib runs. Right now, the
 * GLib does use these functions on Win32 as well, but interprets
 * them in a fairly different way than on Unix. If you use
 * these definitions, you are should be prepared to recode
 * for different operating systems.
 *
 * Note that on systems with a working poll(2), that function is used
 * in place of g_poll(). Thus g_poll() must have the same signature as
 * poll(), meaning GPollFD must have the same layout as struct pollfd.
 *
 * On Win32, the fd in a GPollFD should be Win32 HANDLE (*not* a file
 * descriptor as provided by the C runtime) that can be used by
 * MsgWaitForMultipleObjects. This does *not* include file handles
 * from CreateFile, SOCKETs, nor pipe handles. (But you can use
 * WSAEventSelect to signal events when a SOCKET is readable).
 *
 * On Win32, fd can also be the special value G_WIN32_MSG_HANDLE to
 * indicate polling for messages.
 *
 * But note that G_WIN32_MSG_HANDLE GPollFDs should not be used by GDK
 * (GTK) programs, as GDK itself wants to read messages and convert them
 * to GDK events.
 *
 * So, unless you really know what you are doing, it's best not to try
 * to use the main loop polling stuff for your own needs on
 * Windows.
 */
typedef struct _GPollFD GPollFD;

/**
 * GPollFunc:
 * @ufds: an array of #GPollFD elements
 * @nfsd: the number of elements in @ufds
 * @timeout_: the maximum time to wait for an event of the file descriptors.
 *     A negative value indicates an infinite timeout.
 *
 * Specifies the type of function passed to g_main_context_set_poll_func().
 * The semantics of the function should match those of the poll() system call.
 *
 * Returns: the number of #GPollFD elements which have events or errors
 *     reported, or -1 if an error occurred.
 */
typedef gint    (*GPollFunc)    (GPollFD *ufds,
                                 guint    nfsd,
                                 gint     timeout_);

/**
 * GPollFD:
 * @fd: the file descriptor to poll (or a HANDLE on Win32)
 * @events: a bitwise combination from #GIOCondition, specifying which
 *     events should be polled for. Typically for reading from a file
 *     descriptor you would use %G_IO_IN | %G_IO_HUP | %G_IO_ERR, and
 *     for writing you would use %G_IO_OUT | %G_IO_ERR.
 * @revents: a bitwise combination of flags from #GIOCondition, returned
 *     from the poll() function to indicate which events occurred.
 *
 * Represents a file descriptor, which events to poll for, and which events
 * occurred.
 */
struct _GPollFD
{
#if defined (G_OS_WIN32) && GLIB_SIZEOF_VOID_P == 8
#ifndef __GTK_DOC_IGNORE__
  gint64	fd;
#endif
#else
  gint		fd;
#endif
  gushort 	events;
  gushort 	revents;
};

/**
 * G_POLLFD_FORMAT:
 *
 * A format specifier that can be used in printf()-style format strings
 * when printing the @fd member of a #GPollFD.
 */
/* defined in glibconfig.h */

GLIB_AVAILABLE_IN_ALL
gint
g_poll (GPollFD *fds,
	guint    nfds,
	gint     timeout);

G_END_DECLS

#endif /* __G_POLL_H__ */

Filemanager

Name Type Size Permission Actions
deprecated Folder 0755
galloca.h File 3.82 KB 0644
garray.h File 9.3 KB 0644
gasyncqueue.h File 5.53 KB 0644
gatomic.h File 14.75 KB 0644
gbacktrace.h File 2.51 KB 0644
gbase64.h File 2.27 KB 0644
gbitlock.h File 2.83 KB 0644
gbookmarkfile.h File 9.37 KB 0644
gbytes.h File 3.26 KB 0644
gcharset.h File 1.3 KB 0644
gchecksum.h File 3.77 KB 0644
gconvert.h File 5.78 KB 0644
gdataset.h File 6.1 KB 0644
gdate.h File 11.47 KB 0644
gdatetime.h File 11.96 KB 0644
gdir.h File 1.6 KB 0644
genviron.h File 2.31 KB 0644
gerror.h File 3.85 KB 0644
gfileutils.h File 5.51 KB 0644
ggettext.h File 2.37 KB 0644
ghash.h File 7.37 KB 0644
ghmac.h File 3.39 KB 0644
ghook.h File 6.21 KB 0644
ghostutils.h File 1.42 KB 0644
gi18n-lib.h File 1.34 KB 0644
gi18n.h File 1.14 KB 0644
giochannel.h File 13.63 KB 0644
gkeyfile.h File 14.82 KB 0644
glib-autocleanups.h File 4.04 KB 0644
glist.h File 5.69 KB 0644
gmacros.h File 18.21 KB 0644
gmain.h File 23.55 KB 0644
gmappedfile.h File 1.94 KB 0644
gmarkup.h File 10.62 KB 0644
gmem.h File 13.01 KB 0644
gmessages.h File 24.81 KB 0644
gnode.h File 8.91 KB 0644
goption.h File 15.65 KB 0644
gpattern.h File 1.74 KB 0644
gpoll.h File 4.03 KB 0644
gprimes.h File 1.65 KB 0644
gprintf.h File 1.94 KB 0644
gqsort.h File 1.46 KB 0644
gquark.h File 2.63 KB 0644
gqueue.h File 6.97 KB 0644
grand.h File 3.11 KB 0644
gregex.h File 27.44 KB 0644
gscanner.h File 8.47 KB 0644
gsequence.h File 8.6 KB 0644
gshell.h File 1.71 KB 0644
gslice.h File 3.8 KB 0644
gslist.h File 5.46 KB 0644
gspawn.h File 10.77 KB 0644
gstdio.h File 4.73 KB 0644
gstrfuncs.h File 12.76 KB 0644
gstring.h File 7.79 KB 0644
gstringchunk.h File 2.08 KB 0644
gtestutils.h File 23.64 KB 0644
gthread.h File 11.34 KB 0644
gthreadpool.h File 3.73 KB 0644
gtimer.h File 2.31 KB 0644
gtimezone.h File 3.41 KB 0644
gtrashstack.h File 1.74 KB 0644
gtree.h File 4.1 KB 0644
gtypes.h File 18.98 KB 0644
gunicode.h File 38.2 KB 0644
gurifuncs.h File 2.65 KB 0644
gutils.h File 11.01 KB 0644
guuid.h File 1.26 KB 0644
gvariant.h File 28.83 KB 0644
gvarianttype.h File 12.93 KB 0644
gversion.h File 1.93 KB 0644
gversionmacros.h File 16.33 KB 0644
gwin32.h File 4.56 KB 0644