Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
p6eventq.h File Reference
#include "p6queue.h"
#include "p6net.h"
#include "p6file.h"
#include "p6iobuffer.h"

Go to the source code of this file.

Classes

interface  P6R::p6IEventQ
 
struct  P6R::p6IEventQFactory
 
interface  P6R::p6IEventQHooks
 
struct  P6R::p6IEventQIO
 
struct  P6R::p6IEventQTimer
 
interface  P6R::p6IEventSource
 
struct  P6R::P6IOCONTEXT
 

Namespaces

 P6R
 

Macros

#define COMP_p6EventQ   {0xE021593C,0x7B84,0x45C4,{0xB0,0x8B,0x5C,0xE5,0x85,0x98,0xD6,0x69}}
 
#define COMP_p6EventQFactory   {0x0675CF7E,0x3BFA,0x459E,{0x9E,0x43,0x0A,0xF7,0xB9,0xAD,0xE7,0x22}}
 
#define IF_p6IEventQ   {0xB54E9FA6,0x1475,0x4BED,{0x89,0xE3,0xD2,0x03,0x34,0x95,0x79,0xD9}}
 
#define IF_p6IEventQFactory   {0xA5D9B7B1,0xFB97,0x41D8,{0xB0,0x9F,0x95,0xD7,0x72,0xB0,0xF6,0x4A}}
 
#define IF_p6IEventQIO   {0x9E6C7695,0x8BD8,0x423B,{0x81,0xC1,0x36,0x3C,0xCE,0x16,0xFE,0x31}}
 
#define IF_p6IEventQTimer   {0xC9AF6A73,0xF5EE,0x4F0D,{0x83,0xE5,0x01,0x48,0x5E,0x6D,0x03,0x8A}}
 
#define IF_p6IEventSource   {0xF8F6A0A2,0x815C,0x4472,{0x9D,0x6F,0x51,0x40,0xFB,0xC7,0x18,0x61}}
 
#define INTERFACE   p6IEventQHooks
 
#define INTERFACE   p6IEventQ
 
#define INTERFACE   p6IEventQIO
 
#define INTERFACE   p6IEventQTimer
 
#define INTERFACE   p6IEventQFactory
 
#define INTERFACE   p6IEventSource
 
#define P6EQMAKEEVENT(type, op)   ((P6EVENTTYPE)((((P6UINT32)(op) & 0xffff)<<16)|(((P6UINT32)(type) & 0xffff))))
 
#define P6EQOP(op)   (((P6UINT32)(op) >> 16 ) & 0xffff) /** high 16 bits */
 
#define P6EQTYPE(type)   ((P6UINT32)(type) & 0xffff) /** low 16 bits */
 
#define P6IORESERVEDFLAGS(flags)   ((flags) >> 16 ) & 0xffff) /** high 16 bits */
 
#define P6IOUSERFLAGS(flags)   ((flags) & 0xffff) /** low 16 bits */
 

Typedefs

typedef P6UINT32 P6R::P6EVENTTYPE
 
typedef P6R::P6UINT32 P6R::P6IOFLAG
 
typedef P6UINT32 P6R::P6IOSOURCEFLAG
 

Enumerations

enum  P6R::P6EQIOTYPE {
  P6R::P6ET_IO = 1, P6R::P6ET_TIMER = 2, P6R::P6ET_MSG = 3, P6R::P6ET_USER = 400,
  P6R::P6ET_MAX
}
 
enum  P6R::P6IOOP {
  P6R::P6IO_ACCEPT = 0, P6R::P6IO_CONNECT = 1, P6R::P6IO_READ = 2, P6R::P6IO_WRITE = 3,
  P6R::P6IO_CLOSE = 4, P6R::P6IO_MAX
}
 
enum  P6R::P6TIMEROP { P6R::P6TO_FIRED = 0, P6R::P6TO_MAX }
 
typedef P6UINT32 P6R::P6EVENTQFLAG
 

Detailed Description

Asynchronous Unified Event Queue.

The asynchronous unified event queue is a high performance asychronous event demultiplexer. It allows I/O and other event types (such as timers or user generated events) to be demultiplexed and processed.

Definition in file p6eventq.h.