logo top
Main Page   Widgets   Namespaces   Book  

The Main Event Loop

Manages all available sources of events. More...

Classes

class  Glib::PollFD
class  Glib::SignalTimeout
class  Glib::SignalIdle
class  Glib::SignalIO
class  Glib::MainContext
 Main context. More...

class  Glib::MainLoop
class  Glib::Source
class  Glib::TimeoutSource
class  Glib::IdleSource
class  Glib::IOSource

Enumerations

enum  {
  Glib::PRIORITY_HIGH = -100,
  Glib::PRIORITY_DEFAULT = 0,
  Glib::PRIORITY_HIGH_IDLE = 100,
  Glib::PRIORITY_DEFAULT_IDLE = 200,
  Glib::PRIORITY_LOW = 300
}
enum  Glib::IOCondition {
  Glib::IO_IN,
  Glib::IO_OUT,
  Glib::IO_PRI,
  Glib::IO_ERR,
  Glib::IO_HUP,
  Glib::IO_NVAL
}
 A bitwise combination representing an I/O condition to watch for on an event source. More...


Functions

IOCondition Glib::operator| (IOCondition lhs, IOCondition rhs)
IOCondition Glib::operator& (IOCondition lhs, IOCondition rhs)
IOCondition Glib::operator^ (IOCondition lhs, IOCondition rhs)
IOCondition Glib::operator~ (IOCondition flags)
IOConditionGlib::operator|= (IOCondition& lhs, IOCondition rhs)
IOConditionGlib::operator&= (IOCondition& lhs, IOCondition rhs)
IOConditionGlib::operator^= (IOCondition& lhs, IOCondition rhs)
SignalTimeout Glib::signal_timeout ()
 Convenience timeout signal.

SignalIdle Glib::signal_idle ()
 Convenience idle signal.

SignalIO Glib::signal_io ()
 Convenience I/O signal.

Glib::RefPtr<MainContext> Glib::MainContext::wrap (GMainContext* gobject, bool take_copy=false)
Glib::RefPtr<MainLoop> Glib::MainLoop::wrap (GMainLoop* gobject, bool take_copy=false)

Detailed Description

Manages all available sources of events.


Enumeration Type Documentation

anonymous enum
 

Enumeration values:
PRIORITY_HIGH  Use this for high priority event sources. It is not used within GLib or GTK+.

PRIORITY_DEFAULT  Use this for default priority event sources. In glibmm this priority is used by default when installing timeout handlers with SignalTimeout::connect(). In GDK this priority is used for events from the X server.

PRIORITY_HIGH_IDLE  Use this for high priority idle functions. GTK+ uses PRIORITY_HIGH_IDLE + 10 for resizing operations, and PRIORITY_HIGH_IDLE + 20 for redrawing operations. (This is done to ensure that any pending resizes are processed before any pending redraws, so that widgets are not redrawn twice unnecessarily.)

PRIORITY_DEFAULT_IDLE  Use this for default priority idle functions. In glibmm this priority is used by default when installing idle handlers with SignalIdle::connect().

PRIORITY_LOW  Use this for very low priority background tasks. It is not used within GLib or GTK+.

enum Glib::IOCondition
 

A bitwise combination representing an I/O condition to watch for on an event source.

The flags correspond to those used by the poll() system call on UNIX (see man 2 poll). To test for individual flags, do something like this:

if((condition & Glib::IO_OUT) != 0) do_some_output();
Bitwise operators:
IOCondition operator|(IOCondition, IOCondition)
IOCondition operator&(IOCondition, IOCondition)
IOCondition operator^(IOCondition, IOCondition)
IOCondition operator~(IOCondition)
IOCondition& operator|=(IOCondition&, IOCondition)
IOCondition& operator&=(IOCondition&, IOCondition)
IOCondition& operator^=(IOCondition&, IOCondition)
Enumeration values:
IO_IN  There is data to read.
IO_OUT  Data can be written (without blocking).
IO_PRI  There is urgent data to read.
IO_ERR  Error condition.
IO_HUP  Hung up (the connection has been broken, usually for pipes and sockets).
IO_NVAL  Invalid request. The file descriptor is not open.


Function Documentation

IOCondition operator& ( IOCondition  lhs,
IOCondition  rhs
[inline]
 

IOCondition& operator&= ( IOCondition lhs,
IOCondition  rhs
[inline]
 

IOCondition operator^ ( IOCondition  lhs,
IOCondition  rhs
[inline]
 

IOCondition& operator^= ( IOCondition lhs,
IOCondition  rhs
[inline]
 

IOCondition operator| ( IOCondition  lhs,
IOCondition  rhs
[inline]
 

IOCondition& operator|= ( IOCondition lhs,
IOCondition  rhs
[inline]
 

IOCondition operator~ ( IOCondition  flags  )  [inline]
 

SignalIdle signal_idle (  ) 
 

Convenience idle signal.

Returns:
A signal proxy; you want to use SignalIdle::connect().
Examples:
thread/dispatcher.cc.

SignalIO signal_io (  ) 
 

Convenience I/O signal.

Returns:
A signal proxy; you want to use SignalIO::connect().

SignalTimeout signal_timeout (  ) 
 

Convenience timeout signal.

Returns:
A signal proxy; you want to use SignalTimeout::connect().

Glib::RefPtr<MainLoop> wrap ( GMainLoop*  gobject,
bool  take_copy = false
[related, inherited]
 

Glib::RefPtr<MainContext> wrap ( GMainContext*  gobject,
bool  take_copy = false
[related, inherited]
 


Generated for glibmm 2.4 by Doxygen 1.3.7 © 1997-2001