Arduino live555
All Classes Functions Pages
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
BasicTaskScheduler Class Reference
Inheritance diagram for BasicTaskScheduler:
BasicTaskScheduler0 TaskScheduler SimpleTaskScheduler

Public Types

typedef void BackgroundHandlerProc(void *clientData, int mask)
 

Public Member Functions

virtual TaskToken scheduleDelayedTask (int64_t microseconds, TaskFunc *proc, void *clientData)
 
virtual void unscheduleDelayedTask (TaskToken &prevTask)
 
virtual void doEventLoop (char volatile *watchVariable)
 
virtual EventTriggerId createEventTrigger (TaskFunc *eventHandlerProc)
 
virtual void deleteEventTrigger (EventTriggerId eventTriggerId)
 
virtual void triggerEvent (EventTriggerId eventTriggerId, void *clientData=NULL)
 
virtual void rescheduleDelayedTask (TaskToken &task, int64_t microseconds, TaskFunc *proc, void *clientData)
 
void disableBackgroundHandling (int socketNum)
 
void turnOnBackgroundReadHandling (int socketNum, BackgroundHandlerProc *handlerProc, void *clientData)
 
void turnOffBackgroundReadHandling (int socketNum)
 
virtual void internalError ()
 

Static Public Member Functions

static BasicTaskSchedulercreateNew (unsigned maxSchedulerGranularity=10000)
 

Protected Member Functions

 BasicTaskScheduler (unsigned maxSchedulerGranularity)
 
void schedulerTickTask ()
 
virtual void SingleStep (unsigned maxDelayTime=0)
 
virtual void setBackgroundHandling (int socketNum, int conditionSet, BackgroundHandlerProc *handlerProc, void *clientData)
 
virtual void moveSocketHandling (int oldSocketNum, int newSocketNum)
 

Static Protected Member Functions

static void schedulerTickTask (void *clientData)
 

Protected Attributes

unsigned fMaxSchedulerGranularity
 
int fMaxNumSockets
 
fd_set fReadSet
 
fd_set fWriteSet
 
fd_set fExceptionSet
 
intptr_t fTokenCounter
 
DelayQueue fDelayQueue
 
HandlerSetfHandlers
 
int fLastHandledSocketNum
 
EventTriggerId volatile fTriggersAwaitingHandling
 
EventTriggerId fLastUsedTriggerMask
 
TaskFunc * fTriggeredEventHandlers [MAX_NUM_EVENT_TRIGGERS]
 
void * fTriggeredEventClientDatas [MAX_NUM_EVENT_TRIGGERS]
 
unsigned fLastUsedTriggerNum
 

The documentation for this class was generated from the following files: