#include "../../rtt-config.h"
#include <sys/mman.h>
#include <sys/time.h>
#include <unistd.h>
#include <stdlib.h>
#include <math.h>
#include <stdio.h>
#include <stdarg.h>
#include <string.h>
#include <signal.h>
#include <getopt.h>
#include <time.h>
#include <limits.h>
#include <float.h>
#include "../oro_limits.h"
#include <xeno_config.h>
#include <native/task.h>
#include <native/timer.h>
#include <native/mutex.h>
#include <native/sem.h>
#include <native/cond.h>
Go to the source code of this file.
Classes | |
struct | RTOS_TASK |
Defines | |
#define | _GNU_SOURCE |
#define | _XOPEN_SOURCE 600 |
#define | CHK_XENO_CALL() |
#define | CHK_XENO_PTR(a) |
#define | HAVE_FOSI_API |
#define | ORO_SCHED_OTHER 1 /** Soft real-time */ |
#define | ORO_SCHED_RT 0 /** Hard real-time */ |
#define | ORO_WAIT_ABS 0 /** Not supported for the xenomai target */ |
#define | ORO_WAIT_REL 1 /** Not supported for the xenomai target */ |
#define | rt_mutex_acquire rt_mutex_lock |
#define | rt_mutex_release rt_mutex_unlock |
#define | rtos_printf printf |
#define | SCHED_XENOMAI_HARD 0 /** Hard real-time */ |
#define | SCHED_XENOMAI_SOFT 1 /** Soft real-time */ |
Typedefs | |
typedef SRTIME | NANO_TIME |
typedef RT_COND | rt_cond_t |
typedef RT_MUTEX | rt_mutex_t |
typedef RT_MUTEX | rt_rec_mutex_t |
typedef RT_SEM | rt_sem_t |
typedef RT_TASK | RTOS_XENO_TASK |
typedef SRTIME | TICK_TIME |
typedef struct timespec | TIME_SPEC |
Functions | |
static TICK_TIME | nano2ticks (NANO_TIME t) |
static int | rtos_cond_broadcast (rt_cond_t *cond) |
static int | rtos_cond_destroy (rt_cond_t *cond) |
static int | rtos_cond_init (rt_cond_t *cond) |
static int | rtos_cond_timedwait (rt_cond_t *cond, rt_mutex_t *mutex, NANO_TIME abs_time) |
static int | rtos_cond_wait (rt_cond_t *cond, rt_mutex_t *mutex) |
static void | rtos_disable_rt_warning () |
static void | rtos_enable_rt_warning () |
static NANO_TIME | rtos_get_time_ns (void) |
static TICK_TIME | rtos_get_time_ticks (void) |
static int | rtos_mutex_destroy (rt_mutex_t *m) |
static int | rtos_mutex_init (rt_mutex_t *m) |
static int | rtos_mutex_lock (rt_mutex_t *m) |
static int | rtos_mutex_lock_until (rt_mutex_t *m, NANO_TIME abs_time) |
static int | rtos_mutex_rec_destroy (rt_mutex_t *m) |
static int | rtos_mutex_rec_init (rt_mutex_t *m) |
static int | rtos_mutex_rec_lock (rt_rec_mutex_t *m) |
static int | rtos_mutex_rec_lock_until (rt_rec_mutex_t *m, NANO_TIME abs_time) |
static int | rtos_mutex_rec_trylock (rt_rec_mutex_t *m) |
static int | rtos_mutex_rec_unlock (rt_rec_mutex_t *m) |
static int | rtos_mutex_trylock (rt_mutex_t *m) |
static int | rtos_mutex_unlock (rt_mutex_t *m) |
static int | rtos_nanosleep (const TIME_SPEC *rqtp, TIME_SPEC *rmtp) |
static int | rtos_sem_destroy (rt_sem_t *m) |
static int | rtos_sem_init (rt_sem_t *m, int value) |
static int | rtos_sem_signal (rt_sem_t *m) |
static int | rtos_sem_trywait (rt_sem_t *m) |
static int | rtos_sem_value (rt_sem_t *m) |
static int | rtos_sem_wait (rt_sem_t *m) |
static int | rtos_sem_wait_timed (rt_sem_t *m, NANO_TIME delay) |
static int | rtos_sem_wait_until (rt_sem_t *m, NANO_TIME when) |
static NANO_TIME | ticks2nano (TICK_TIME t) |
static TIME_SPEC | ticks2timespec (TICK_TIME hrt) |
static TICK_TIME | ticksPerSec (void) |
static TICK_TIME | timespec2ticks (const TIME_SPEC *ts) |
Variables | |
static const NANO_TIME | InfiniteNSecs = LONG_LONG_MAX |
static const double | InfiniteSeconds = DBL_MAX |
static const TICK_TIME | InfiniteTicks = LONG_LONG_MAX |
#define _GNU_SOURCE |
Definition at line 58 of file xenomai/fosi.h.
#define _XOPEN_SOURCE 600 |
Definition at line 43 of file xenomai/fosi.h.
#define CHK_XENO_CALL | ( | ) |
Definition at line 153 of file xenomai/fosi.h.
#define CHK_XENO_PTR | ( | a | ) |
Definition at line 154 of file xenomai/fosi.h.
#define HAVE_FOSI_API |
Definition at line 46 of file xenomai/fosi.h.
#define ORO_SCHED_OTHER 1 /** Soft real-time */ |
Definition at line 120 of file xenomai/fosi.h.
#define ORO_SCHED_RT 0 /** Hard real-time */ |
Definition at line 119 of file xenomai/fosi.h.
#define ORO_WAIT_ABS 0 /** Not supported for the xenomai target */ |
Definition at line 122 of file xenomai/fosi.h.
#define ORO_WAIT_REL 1 /** Not supported for the xenomai target */ |
Definition at line 123 of file xenomai/fosi.h.
#define rt_mutex_acquire rt_mutex_lock |
Definition at line 84 of file xenomai/fosi.h.
#define rt_mutex_release rt_mutex_unlock |
Definition at line 85 of file xenomai/fosi.h.
#define rtos_printf printf |
Definition at line 373 of file xenomai/fosi.h.
#define SCHED_XENOMAI_HARD 0 /** Hard real-time */ |
Definition at line 117 of file xenomai/fosi.h.
#define SCHED_XENOMAI_SOFT 1 /** Soft real-time */ |
Definition at line 118 of file xenomai/fosi.h.
typedef SRTIME NANO_TIME |
Definition at line 100 of file xenomai/fosi.h.
typedef RT_COND rt_cond_t |
Definition at line 96 of file xenomai/fosi.h.
typedef RT_MUTEX rt_mutex_t |
Definition at line 93 of file xenomai/fosi.h.
typedef RT_MUTEX rt_rec_mutex_t |
Definition at line 94 of file xenomai/fosi.h.
typedef RT_SEM rt_sem_t |
Definition at line 95 of file xenomai/fosi.h.
typedef RT_TASK RTOS_XENO_TASK |
Definition at line 103 of file xenomai/fosi.h.
typedef SRTIME TICK_TIME |
Definition at line 101 of file xenomai/fosi.h.
typedef struct timespec TIME_SPEC |
Definition at line 102 of file xenomai/fosi.h.
static TICK_TIME nano2ticks | ( | NANO_TIME | t | ) | [inline, static] |
Definition at line 168 of file xenomai/fosi.h.
static int rtos_cond_broadcast | ( | rt_cond_t * | cond | ) | [inline, static] |
Definition at line 366 of file xenomai/fosi.h.
static int rtos_cond_destroy | ( | rt_cond_t * | cond | ) | [inline, static] |
Definition at line 340 of file xenomai/fosi.h.
static int rtos_cond_init | ( | rt_cond_t * | cond | ) | [inline, static] |
Definition at line 334 of file xenomai/fosi.h.
static int rtos_cond_timedwait | ( | rt_cond_t * | cond, |
rt_mutex_t * | mutex, | ||
NANO_TIME | abs_time | ||
) | [inline, static] |
Definition at line 355 of file xenomai/fosi.h.
static int rtos_cond_wait | ( | rt_cond_t * | cond, |
rt_mutex_t * | mutex | ||
) | [inline, static] |
Definition at line 346 of file xenomai/fosi.h.
static void rtos_disable_rt_warning | ( | ) | [inline, static] |
Definition at line 328 of file xenomai/fosi.h.
static void rtos_enable_rt_warning | ( | ) | [inline, static] |
Definition at line 322 of file xenomai/fosi.h.
static NANO_TIME rtos_get_time_ns | ( | void | ) | [inline, static] |
Definition at line 157 of file xenomai/fosi.h.
static TICK_TIME rtos_get_time_ticks | ( | void | ) | [inline, static] |
Definition at line 159 of file xenomai/fosi.h.
static int rtos_mutex_destroy | ( | rt_mutex_t * | m | ) | [inline, static] |
Definition at line 238 of file xenomai/fosi.h.
static int rtos_mutex_init | ( | rt_mutex_t * | m | ) | [inline, static] |
Definition at line 231 of file xenomai/fosi.h.
static int rtos_mutex_lock | ( | rt_mutex_t * | m | ) | [inline, static] |
Definition at line 257 of file xenomai/fosi.h.
static int rtos_mutex_lock_until | ( | rt_mutex_t * | m, |
NANO_TIME | abs_time | ||
) | [inline, static] |
Definition at line 280 of file xenomai/fosi.h.
static int rtos_mutex_rec_destroy | ( | rt_mutex_t * | m | ) | [inline, static] |
Definition at line 251 of file xenomai/fosi.h.
static int rtos_mutex_rec_init | ( | rt_mutex_t * | m | ) | [inline, static] |
Definition at line 244 of file xenomai/fosi.h.
static int rtos_mutex_rec_lock | ( | rt_rec_mutex_t * | m | ) | [inline, static] |
Definition at line 298 of file xenomai/fosi.h.
static int rtos_mutex_rec_lock_until | ( | rt_rec_mutex_t * | m, |
NANO_TIME | abs_time | ||
) | [inline, static] |
Definition at line 310 of file xenomai/fosi.h.
static int rtos_mutex_rec_trylock | ( | rt_rec_mutex_t * | m | ) | [inline, static] |
Definition at line 304 of file xenomai/fosi.h.
static int rtos_mutex_rec_unlock | ( | rt_rec_mutex_t * | m | ) | [inline, static] |
Definition at line 316 of file xenomai/fosi.h.
static int rtos_mutex_trylock | ( | rt_mutex_t * | m | ) | [inline, static] |
Definition at line 263 of file xenomai/fosi.h.
static int rtos_mutex_unlock | ( | rt_mutex_t * | m | ) | [inline, static] |
Definition at line 292 of file xenomai/fosi.h.
static int rtos_nanosleep | ( | const TIME_SPEC * | rqtp, |
TIME_SPEC * | rmtp | ||
) | [inline, static] |
Definition at line 171 of file xenomai/fosi.h.
static int rtos_sem_destroy | ( | rt_sem_t * | m | ) | [inline, static] |
Definition at line 185 of file xenomai/fosi.h.
static int rtos_sem_init | ( | rt_sem_t * | m, |
int | value | ||
) | [inline, static] |
Definition at line 179 of file xenomai/fosi.h.
static int rtos_sem_signal | ( | rt_sem_t * | m | ) | [inline, static] |
Definition at line 191 of file xenomai/fosi.h.
static int rtos_sem_trywait | ( | rt_sem_t * | m | ) | [inline, static] |
Definition at line 203 of file xenomai/fosi.h.
static int rtos_sem_value | ( | rt_sem_t * | m | ) | [inline, static] |
Definition at line 209 of file xenomai/fosi.h.
static int rtos_sem_wait | ( | rt_sem_t * | m | ) | [inline, static] |
Definition at line 197 of file xenomai/fosi.h.
static int rtos_sem_wait_timed | ( | rt_sem_t * | m, |
NANO_TIME | delay | ||
) | [inline, static] |
Definition at line 219 of file xenomai/fosi.h.
static int rtos_sem_wait_until | ( | rt_sem_t * | m, |
NANO_TIME | when | ||
) | [inline, static] |
Definition at line 225 of file xenomai/fosi.h.
static NANO_TIME ticks2nano | ( | TICK_TIME | t | ) | [inline, static] |
Definition at line 169 of file xenomai/fosi.h.
static TIME_SPEC ticks2timespec | ( | TICK_TIME | hrt | ) | [inline, static] |
Definition at line 126 of file xenomai/fosi.h.
static TICK_TIME ticksPerSec | ( | void | ) | [inline, static] |
Definition at line 161 of file xenomai/fosi.h.
static TICK_TIME timespec2ticks | ( | const TIME_SPEC * | ts | ) | [inline, static] |
Definition at line 135 of file xenomai/fosi.h.
const NANO_TIME InfiniteNSecs = LONG_LONG_MAX [static] |
Definition at line 114 of file xenomai/fosi.h.
const double InfiniteSeconds = DBL_MAX [static] |
Definition at line 115 of file xenomai/fosi.h.
const TICK_TIME InfiniteTicks = LONG_LONG_MAX [static] |
Definition at line 113 of file xenomai/fosi.h.