Main Page   Modules   Class Hierarchy   Data Structures   File List   Data Fields   Globals  

OsclSocketMethod Class Reference

#include <oscl_socket_method.h>

Inheritance diagram for OsclSocketMethod:

OsclTimerObject HeapBase PVActiveBase _OsclHeapBase OsclAcceptMethod OsclBindMethod OsclConnectMethod OsclListenMethod OsclRecvFromMethod OsclRecvMethod OsclSendMethod OsclSendToMethod OsclShutdownMethod

Public Methods

 OsclSocketMethod (OsclIPSocketI &aContainer, const char *name, TPVSocketFxn fxn)
virtual ~OsclSocketMethod ()
void Abort ()
void AbortAll ()
void CancelMethod ()
Oscl_DefAllocAlloc ()

Data Fields

OsclIPSocketIiContainer
TPVSocketFxn iSocketFxn

Protected Methods

void ConstructL (OsclSocketRequestAO *aAO)
bool StartMethod (int32 aTimeoutMsec)
void MethodDone ()
void Run ()

Protected Attributes

OsclSocketRequestAOiSocketRequestAO

Detailed Description

OsclSocketMethod is the base class for all socket methods. Two AOs are required for each socket operation-- one to provide a timeout, and one to detect request completion. The OsclSocketMethod class implements the timeout and contains the request completion AO.


Constructor & Destructor Documentation

OsclSocketMethod::OsclSocketMethod OsclIPSocketI   aContainer,
const char *    name,
TPVSocketFxn    fxn
[inline]
 

virtual OsclSocketMethod::~OsclSocketMethod   [inline, virtual]
 


Member Function Documentation

void OsclSocketMethod::Abort   [inline]
 

void OsclSocketMethod::AbortAll   [inline]
 

Oscl_DefAlloc& OsclSocketMethod::Alloc   [inline]
 

void OsclSocketMethod::CancelMethod   [inline]
 

void OsclSocketMethod::ConstructL OsclSocketRequestAO   aAO [inline, protected]
 

void OsclSocketMethod::MethodDone   [inline, protected]
 

void OsclSocketMethod::Run   [protected, virtual]
 

Handles an active object's request completion event.

A derived class must provide an implementation to handle the completed request. If appropriate, it may issue another request.

The function is called by the active scheduler when a request completion event occurs, i.e. after the active scheduler's WaitForAnyRequest() function completes.

Before calling this active object's Run() function, the active scheduler has:

1. decided that this is the highest priority active object with a completed request

2. marked this active object's request as complete (i.e. the request is no longer outstanding)

Run() runs under a trap harness in the active scheduler. If it leaves, then the active scheduler calls ExecError() to handle the leave.

Note that once the active scheduler's Start() function has been called, all user code is run under one of the program's active object's Run() or RunError() functions.

Implements PVActiveBase.

bool OsclSocketMethod::StartMethod int32    aTimeoutMsec [protected]
 


Field Documentation

OsclIPSocketI& OsclSocketMethod::iContainer
 

TPVSocketFxn OsclSocketMethod::iSocketFxn
 

OsclSocketRequestAO* OsclSocketMethod::iSocketRequestAO [protected]
 


The documentation for this class was generated from the following file:
OSCL API
Posting Version: OPENCORE_20090310