Google

logo top
Main Page   Widgets   Namespaces   Book  

The Main Event Loop

Manages all available sources of events. More...

Compounds

class  IdleSource
class  IOSource
class  MainContext
 Main context. More...

class  MainLoop
class  PollFD
class  SignalIdle
class  SignalIO
class  SignalTimeout
class  Source
class  TimeoutSource

Enumerations

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


Functions

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

SignalIdle signal_idle ()
 Convenience idle signal.

SignalIO signal_io ()
 Convenience I/O signal.

Glib::RefPtr<MainContext> wrap (GMainContext* gobject, bool take_copy=false)
Glib::RefPtr<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 gtkmm by Doxygen 1.3-rc1 © 1997-2001