Modules | |
| Contiki processes | |
| A process in Contiki consists of a single Protothreads protothread. | |
| Event timers | |
| Event timers provides a way to generate timed events. | |
| The Contiki service mechanism | |
| The Contiki service mechanism enables cross-process functions. | |
| Argument buffer | |
| The argument buffer can be used when passing an argument from an exiting process to a process that has not been created yet. | |
| The Contiki program loader | |
| The Contiki program loader is an abstract interface for loading and starting programs. | |
| Clock library | |
| The clock library is the interface between Contiki and the platform specific clock functionality. | |
| Multi-threading library | |
| The event driven Contiki kernel does not provide multi-threading by itself - instead, preemptive multi-threading is implemented as a library that optionally can be linked with applications. | |
| Protothreads | |
| Protothreads are a type of lightweight stackless threads designed for severly memory constrained systems such as deeply embedded systems or sensor network nodes. | |
| The Contiki file system interface | |
| The Contiki file system interface (CFS) defines an abstract API for reading directories and for reading and writing files. | |
| Timer library | |
| The Contiki kernel does not provide support for timed events. | |
Return values | |
| #define | PROCESS_ERR_OK 0 |
| Return value indicating that an operation was successful. | |
| #define | PROCESS_ERR_FULL 1 |
| Return value indicating that the event queue was full. | |
Service declaration and defition | |
| #define | SERVICE_INTERFACE(name, interface) |
| Define the name and interface of a service. | |
| #define | SERVICE(name, service_name,) |
| Define an implementation of a service interface. | |
Functions called from application programs | |
| void | etimer_set (struct etimer *et, clock_time_t interval) |
| Set an event timer. | |
| void | etimer_reset (struct etimer *et) |
| Reset an event timer with the same interval as was previously set. | |
| void | etimer_restart (struct etimer *et) |
| Restart an event timer from the current point in time. | |
| void | etimer_adjust (struct etimer *et, int td) |
| Adjust the expiration time for an event timer. | |
| clock_time_t | etimer_expiration_time (struct etimer *et) |
| Get the expiration time for the event timer. | |
| clock_time_t | etimer_start_time (struct etimer *et) |
| Get the start time for the event timer. | |
| int | etimer_expired (struct etimer *et) |
| Check if an event timer has expired. | |
| void | etimer_stop (struct etimer *et) |
| Stop a pending event timer. | |
Defines | |
| #define | PROCESS_NONE NULL |
| #define | PROCESS_CONF_NUMEVENTS 32 |
| #define | PROCESS_EVENT_NONE 0x80 |
| #define | PROCESS_EVENT_INIT 0x81 |
| #define | PROCESS_EVENT_POLL 0x82 |
| #define | PROCESS_EVENT_EXIT 0x83 |
| #define | PROCESS_EVENT_SERVICE_REMOVED 0x84 |
| #define | PROCESS_EVENT_CONTINUE 0x85 |
| #define | PROCESS_EVENT_MSG 0x86 |
| #define | PROCESS_EVENT_EXITED 0x87 |
| #define | PROCESS_EVENT_TIMER 0x88 |
| #define | PROCESS_EVENT_MAX 0x89 |
| #define | PROCESS_BROADCAST NULL |
| #define | PROCESS_ZOMBIE ((struct process *)0x1) |
|
|
Return value indicating that the event queue was full. This value is returned from process_post() to indicate that the event queue was full and that an event could not be posted. Definition at line 83 of file process.h. Referenced by process_post(). |
|
|
Return value indicating that an operation was successful. This value is returned to indicate that an operation was successful. Definition at line 75 of file process.h. Referenced by process_post(), and PROCESS_THREAD(). |
|
|
Define an implementation of a service interface.
|
|
|
Define the name and interface of a service. This statement defines the name and interface of a service.
|
|
||||||||||||
|
Adjust the expiration time for an event timer.
Definition at line 194 of file etimer.c. References timer::start, and etimer::timer. |
|
|
Get the expiration time for the event timer.
Definition at line 207 of file etimer.c. References timer::interval, timer::start, and etimer::timer. |
|
|
Check if an event timer has expired.
Definition at line 201 of file etimer.c. References etimer::p, and PROCESS_NONE. Referenced by tcpip_uipcall(). |
|
|
Reset an event timer with the same interval as was previously set.
Definition at line 180 of file etimer.c. References etimer::timer, and timer_reset(). |
|
|
Restart an event timer from the current point in time.
Definition at line 187 of file etimer.c. References etimer::timer, and timer_restart(). Referenced by tcpip_uipcall(). |
|
||||||||||||
|
Set an event timer.
Definition at line 173 of file etimer.c. References etimer::timer, and timer_set(). |
|
|
Get the start time for the event timer.
Definition at line 213 of file etimer.c. References timer::start, and etimer::timer. |
|
|
Stop a pending event timer.
Definition at line 231 of file etimer.c. References etimer::next, NULL, etimer::p, and PROCESS_NONE. |
1.4.4