Defines | Typedefs | Functions

XnScheduler.h File Reference

#include <XnOS.h>

Go to the source code of this file.

Defines

#define XN_MASK_SCHEDULER   "Scheduler"

Typedefs

typedef struct XnScheduler XnScheduler
typedef struct XnScheduledTask XnScheduledTask
typedef void(* XnTaskCallbackFuncPtr )(void *pCallbackArg)

Functions

XN_C_API XnStatus xnSchedulerStart (XnScheduler **ppScheduler)
XN_C_API XnStatus xnSchedulerShutdown (XnScheduler **ppScheduler)
XN_C_API XnStatus xnSchedulerAddTask (XnScheduler *pScheduler, XnUInt64 nInterval, XnTaskCallbackFuncPtr pCallback, void *pCallbackArg, XnScheduledTask **ppTask)
XN_C_API XnStatus xnSchedulerRemoveTask (XnScheduler *pScheduler, XnScheduledTask **ppTask)
XN_C_API XnStatus xnSchedulerRescheduleTask (XnScheduler *pScheduler, XnScheduledTask *pTask, XnUInt64 nInterval)

Define Documentation

#define XN_MASK_SCHEDULER   "Scheduler"

Typedef Documentation

typedef struct XnScheduler XnScheduler
typedef void(* XnTaskCallbackFuncPtr)(void *pCallbackArg)

Function Documentation

XN_C_API XnStatus xnSchedulerAddTask ( XnScheduler pScheduler,
XnUInt64  nInterval,
XnTaskCallbackFuncPtr  pCallback,
void *  pCallbackArg,
XnScheduledTask **  ppTask 
)

Adds a task to the scheduler.

Parameters:
pScheduler [in] The scheduler to handle this task.
nInterval [in] The interval, in milliseconds, in which callback should be called.
pCallback [in] The function to be called when time arrived.
pCallbackArg [in] The argument that will be passed to the callback method.
ppTask [out] Upon successful return, holds a handle to the started task.
XN_C_API XnStatus xnSchedulerRemoveTask ( XnScheduler pScheduler,
XnScheduledTask **  ppTask 
)

Removes a task from the scheduler.

Parameters:
pScheduler [in] The scheduler this task is registered to.
ppTask [in/out] The task to be removed from the scheduler.
XN_C_API XnStatus xnSchedulerRescheduleTask ( XnScheduler pScheduler,
XnScheduledTask pTask,
XnUInt64  nInterval 
)

Changes scheduling of a specific task.

Parameters:
pScheduler [in] The scheduler this task is registered to.
pTask [in] The task to be removed from the scheduler.
nInterval [in] The new interval to be used.
XN_C_API XnStatus xnSchedulerShutdown ( XnScheduler **  ppScheduler  ) 

Shuts down a scheduler thread. All timers on that scheduler will be stopped.

Parameters:
ppScheduler [in/out] A pointer to the scheduler to be shut down.
XN_C_API XnStatus xnSchedulerStart ( XnScheduler **  ppScheduler  ) 

Starts a scheduler thread. Multiple timers can be added to the created scheduler.

Parameters:
ppScheduler [out] Upon successful return, holds a handle to created scheduler.