sipxportlib  Version 3.3
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | List of all members
OsTaskBase Class Referenceabstract

#include <OsTask.h>

Inheritance diagram for OsTaskBase:
Inheritance graph
[legend]
Collaboration diagram for OsTaskBase:
Collaboration graph
[legend]

Public Types

enum  TaskState { UNINITIALIZED, STARTED, SHUTTING_DOWN, SHUT_DOWN }
 

Public Member Functions

virtual OsStatus deleteForce (void)=0
 enumcode: UNINITIALIZED - no low-level task, no name DB entries enumcode: STARTED - low-level task and name DB entries exist enumcode: SHUTTING_DOWN - requested low-level task shutdown enumcode: SHUT_DOWN - no low-level task, name DB entries still exist More...
 
virtual void requestShutdown (void)
 
virtual UtlBoolean restart (void)=0
 
virtual OsStatus resume (void)=0
 
virtual UtlBoolean start (void)=0
 
virtual OsStatus suspend (void)=0
 
virtual OsStatus setErrno (int errno)=0
 
virtual OsStatus setOptions (int options)=0
 
virtual OsStatus setPriority (int priority)=0
 
virtual void setUserData (int data)
 
virtual OsStatus varAdd (int *pVar)=0
 
virtual OsStatus varDelete (int *pVar)=0
 
virtual OsStatus varSet (int *pVar, int value)=0
 
virtual OsStatus syslog (const OsSysLogFacility facility, const OsSysLogPriority priority, const char *format,...)
 
virtual void * getArg (void)
 
virtual OsStatus getErrno (int &rErrno)=0
 
virtual const UtlStringgetName (void)
 
virtual int getOptions (void)=0
 
virtual OsStatus getPriority (int &rPriority)=0
 
virtual int getUserData (void)
 
virtual OsStatus varGet (void)=0
 
virtual OsStatus id (OsTaskId_t &rId)=0
 
virtual UtlBoolean isReady (void)
 
virtual UtlBoolean isShutDown (void)
 
virtual UtlBoolean isShuttingDown (void)
 
virtual UtlBoolean isStarted (void)
 
virtual UtlBoolean isSuspended (void)=0
 
virtual UtlBoolean isUnInitialized (void)
 

Static Public Member Functions

static OsStatus delay (const int milliSecs)
 param: facility - Defines the facility responsible for adding the More...
 
static OsStatus safe (void)
 
static OsStatus unsafe (void)
 
static void yield (void)
 
static OsTaskBasegetCurrentTask (void)
 
static OsStatus getCurrentTaskId (int &rid)
 
static OsTaskBasegetTaskByName (const UtlString &taskName)
 
static OsTaskBasegetTaskById (const int taskId)
 

Static Public Attributes

static const int DEF_OPTIONS = 0
 
static const int DEF_PRIO = 128
 
static const int DEF_STACKSIZE = 256*1024
 
static const UtlString TASK_PREFIX
 
static const UtlString TASKID_PREFIX
 
static OsAtomicInt taskCount
 

Protected Member Functions

 OsTaskBase (const UtlString &name, void *pArg, const int priority, const int options, const int stackSize)
 
virtual ~OsTaskBase ()
 
virtual int run (void *pArg)=0
 
virtual UtlBoolean waitUntilShutDown (int milliSecToWait=20000)
 
virtual void ackShutdown (void)
 

Protected Attributes

OsMutex mDataGuard
 
UtlString mName
 
volatile TaskState mState
 

Member Enumeration Documentation

enum TaskState
Enumerator
UNINITIALIZED 
STARTED 
SHUTTING_DOWN 
SHUT_DOWN 

Constructor & Destructor Documentation

OsTaskBase ( const UtlString name,
void *  pArg,
const int  priority,
const int  options,
const int  stackSize 
)
protected
~OsTaskBase ( )
protectedvirtual

Member Function Documentation

virtual OsStatus deleteForce ( void  )
pure virtual

enumcode: UNINITIALIZED - no low-level task, no name DB entries enumcode: STARTED - low-level task and name DB entries exist enumcode: SHUTTING_DOWN - requested low-level task shutdown enumcode: SHUT_DOWN - no low-level task, name DB entries still exist

Implemented in OsTaskLinux, and OsTaskWnt.

void requestShutdown ( void  )
virtual
virtual UtlBoolean restart ( void  )
pure virtual

Implemented in OsTaskLinux, and OsTaskWnt.

virtual OsStatus resume ( void  )
pure virtual

Implemented in OsTaskLinux, and OsTaskWnt.

virtual UtlBoolean start ( void  )
pure virtual

Implemented in OsTaskLinux, and OsTaskWnt.

virtual OsStatus suspend ( void  )
pure virtual

Implemented in OsTaskLinux, and OsTaskWnt.

virtual OsStatus setErrno ( int  errno)
pure virtual

Implemented in OsTaskLinux, and OsTaskWnt.

virtual OsStatus setOptions ( int  options)
pure virtual

Implemented in OsTaskLinux, and OsTaskWnt.

virtual OsStatus setPriority ( int  priority)
pure virtual

Implemented in OsTaskLinux, and OsTaskWnt.

void setUserData ( int  data)
virtual
virtual OsStatus varAdd ( int *  pVar)
pure virtual

Implemented in OsTaskLinux, and OsTaskWnt.

virtual OsStatus varDelete ( int *  pVar)
pure virtual

Implemented in OsTaskLinux, and OsTaskWnt.

virtual OsStatus varSet ( int *  pVar,
int  value 
)
pure virtual

Implemented in OsTaskLinux, and OsTaskWnt.

OsStatus syslog ( const OsSysLogFacility  facility,
const OsSysLogPriority  priority,
const char *  format,
  ... 
)
virtual
OsStatus delay ( const int  milliSecs)
static

param: facility - Defines the facility responsible for adding the

param: priority - Defines the priority of the event. See

static OsStatus safe ( void  )
static
static OsStatus unsafe ( void  )
static
void yield ( void  )
static
static OsTaskBase* getCurrentTask ( void  )
static
static OsStatus getCurrentTaskId ( int &  rid)
static
static OsTaskBase* getTaskByName ( const UtlString taskName)
static
static OsTaskBase* getTaskById ( const int  taskId)
static
void * getArg ( void  )
virtual
virtual OsStatus getErrno ( int &  rErrno)
pure virtual

Implemented in OsTaskLinux, and OsTaskWnt.

const UtlString & getName ( void  )
virtual
virtual int getOptions ( void  )
pure virtual

Implemented in OsTaskLinux, and OsTaskWnt.

virtual OsStatus getPriority ( int &  rPriority)
pure virtual

Implemented in OsTaskLinux, and OsTaskWnt.

int getUserData ( void  )
virtual
virtual OsStatus varGet ( void  )
pure virtual

Implemented in OsTaskLinux, and OsTaskWnt.

virtual OsStatus id ( OsTaskId_t &  rId)
pure virtual

Implemented in OsTaskLinux, and OsTaskWnt.

UtlBoolean isReady ( void  )
virtual
UtlBoolean isShutDown ( void  )
virtual
UtlBoolean isShuttingDown ( void  )
virtual
UtlBoolean isStarted ( void  )
virtual
virtual UtlBoolean isSuspended ( void  )
pure virtual

Implemented in OsTaskLinux, and OsTaskWnt.

UtlBoolean isUnInitialized ( void  )
virtual
virtual int run ( void *  pArg)
protectedpure virtual

Implemented in OsTaskWnt, and OsTaskLinux.

UtlBoolean waitUntilShutDown ( int  milliSecToWait = 20000)
protectedvirtual
void ackShutdown ( void  )
protectedvirtual

Member Data Documentation

const int DEF_OPTIONS = 0
static
const int DEF_PRIO = 128
static
const int DEF_STACKSIZE = 256*1024
static
const UtlString TASK_PREFIX
static
const UtlString TASKID_PREFIX
static
OsAtomicInt taskCount
static
OsMutex mDataGuard
protected
UtlString mName
protected
volatile TaskState mState
protected