Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
P6R::p6IEventSource Interface Referenceabstract

#include <p6eventq.h>

Inherits P6R::p6ICom.

Public Member Functions

virtual P6INT32 addref (void)=0
 
virtual P6R::P6ERR associate (p6ICom *pIoIface, P6VOID *pHandleContext)=0
 
virtual P6R::P6ERR disassociate (p6ICom *pIoIface)=0
 
virtual P6R::P6ERR enableLogging (P6BOOL bEnable)=0
 
virtual P6R::P6ERR initialize (p6IEventQ *pIfQueue, p6IEventQHooks *pHooks, p6IIoBufferFactory *pFactory, P6IOSOURCEFLAG fFlags)=0
 
virtual P6R::P6ERR isSupportedInterface (p6ICom *pIface)=0
 
virtual P6R::P6ERR postAccept (p6ICom *pIoIface)=0
 
virtual P6R::P6ERR postClose (p6ICom *pIoIface, P6IOCONTEXT *pIoContext)=0
 
virtual P6R::P6ERR postConnect (p6ICom *pIoIface, P6IOCONTEXT *pIoContext)=0
 
virtual P6R::P6ERR postRead (p6ICom *pIoIface, p6IIoBuffer *pIoBuffer, P6IOCONTEXT *pIoContext)=0
 
virtual P6R::P6ERR postWrite (p6ICom *pIoIface, p6IIoBuffer *pIoBuffer, P6IOCONTEXT *pIoContext)=0
 
virtual P6R::P6ERR queryInterface (const P6R::P6IID &iid, P6VOID **ppIface)=0
 
virtual P6INT32 release (void)=0
 
virtual P6R::P6ERR start (void)=0
 
virtual P6R::P6ERR stop (void)=0
 

Detailed Description

This interface is used by p6IEventQ to perform I/O operations.

You only need to implement this interface if you are creating a new event source. The P6Platform has many event sources already provided, as a result creating your own event source should be rare. The P6Platform has many implementations of this interface that are tailored to support I/O on many different platforms. p6IEventQ chooses the best one for each platform, based on rules in a defintion file. This allows new event sources to be added in the future without code changes as well as providing a way to force a specific event source to be used.

Definition at line 617 of file p6eventq.h.


The documentation for this interface was generated from the following file: