PIC24 Support Libraries
Data Structures
esos_task.h File Reference
#include "lc.h"
#include "esos_mail.h"

Go to the source code of this file.

Data Structures

struct  stSemaphore
 

Macros

Initialization
#define __ESOS_INIT_TASK(TaskHandle)
 
Querying the state of a task
#define ESOS_IS_TASK_INITED(TaskHandle)
 
#define ESOS_IS_TASK_SLEEPING(TaskHandle)
 
#define ESOS_IS_TASK_KILLED(TaskHandle)
 
#define ESOS_IS_TASK_WAITING(TaskHandle)
 
#define ESOS_IS_TASK_ENDED(TaskHandle)
 
Declaration and definition
#define ESOS_USER_TASK(taskname)
 
#define ESOS_CHILD_TASK(taskname, ...)
 
#define ESOS_TASK_BEGIN()
 
#define ESOS_TASK_END()
 
#define ESOS_TASK_GET_TASK_HANDLE()
 
Calling an ESOS task
#define ESOS_SCHEDULE_TASK(pfnThread)
 
Blocked waits
#define ESOS_TASK_WAIT_UNTIL(condition)
 
#define ESOS_TASK_WAIT_WHILE(cond)
 
#define ESOS_TASK_WAIT_TICKS(u32_duration)
 
Tasks and child tasks
#define ESOS_TASK_WAIT_THREAD(pfnChild, ...)
 
#define ESOS_TASK_SPAWN_AND_WAIT(pstChild, pfnChild, ...)
 
#define ESOS_ALLOCATE_CHILD_TASK(pstName)
 
Sleeping, killing, exiting and restarting tasks
#define ESOS_TASK_SLEEP()
 
#define ESOS_TASK_RESTART()
 
#define ESOS_TASK_EXIT()
 
#define ESOS_WAKE_TASK(TaskHandle)
 
#define ESOS_KILL_TASK(TaskHandle)
 
#define ESOS_RESTART_TASK(TaskHandle)
 
Yielding from an ESOS task
#define ESOS_TASK_YIELD()
 
Task semaphores
#define ESOS_SEMAPHORE(semaphoreName)
 
#define ESOS_INIT_SEMAPHORE(semaphoreName, i16_val)
 
#define ESOS_TASK_WAIT_SEMAPHORE(semaphoreName, i16_val)
 
#define ESOS_SIGNAL_SEMAPHORE(semaphoreName, i16_val)
 

Detailed Description

This file contains macros for creating and managing ESOS tasks and semaphores. User need not include this file, but rather should include esos.h instead.

Definition in file esos_task.h.