fosi_interface.h File Reference

#include "oro_arch.h"
Include dependency graph for rtt/os/fosi_interface.h:

Go to the source code of this file.

Defines

#define ORO_SCHED_OTHER   1
#define ORO_SCHED_RT   0

Typedefs

typedef long long NANO_TIME
typedef struct cond_struct rt_cond_t
typedef struct mutex_struct rt_mutex_t
typedef struct
recursive_mutex_struct 
rt_rec_mutex_t
typedef struct sem_struct rt_sem_t
typedef struct MyTask RTOS_TASK
typedef long long TICK_TIME

Functions

TICK_TIME nano2ticks (NANO_TIME nano)
int rtos_cond_broadcast (rt_cond_t *cond)
int rtos_cond_destroy (rt_cond_t *cond)
int rtos_cond_init (rt_cond_t *cond)
int rtos_cond_timedwait (rt_cond_t *cond, rt_mutex_t *mutex, NANO_TIME abs_time)
int rtos_cond_wait (rt_cond_t *cond, rt_mutex_t *mutex)
void rtos_disable_rt_warning ()
void rtos_enable_rt_warning ()
NANO_TIME rtos_get_time_ns (void)
TICK_TIME rtos_get_time_ticks (void)
int rtos_mutex_destroy (rt_mutex_t *m)
int rtos_mutex_init (rt_mutex_t *m)
int rtos_mutex_lock (rt_mutex_t *m)
int rtos_mutex_lock_until (rt_rec_mutex_t *m, NANO_TIME abs_time)
int rtos_mutex_rec_destroy (rt_rec_mutex_t *m)
int rtos_mutex_rec_init (rt_rec_mutex_t *m)
int rtos_mutex_rec_lock (rt_rec_mutex_t *m)
int rtos_mutex_rec_lock_until (rt_rec_mutex_t *m, NANO_TIME abs_time)
int rtos_mutex_rec_trylock (rt_rec_mutex_t *m)
int rtos_mutex_rec_unlock (rt_rec_mutex_t *m)
int rtos_mutex_trylock (rt_mutex_t *m)
int rtos_mutex_unlock (rt_mutex_t *m)
int rtos_printf (const char *fmt,...)
int rtos_sem_destroy (rt_sem_t *m)
int rtos_sem_init (rt_sem_t *m, int value)
int rtos_sem_signal (rt_sem_t *m)
int rtos_sem_trywait (rt_sem_t *m)
int rtos_sem_value (rt_sem_t *m)
int rtos_sem_wait (rt_sem_t *m)
int rtos_sem_wait_timed (rt_sem_t *m, NANO_TIME delay)
int rtos_sem_wait_until (rt_sem_t *m, NANO_TIME abs_time)
NANO_TIME ticks2nano (TICK_TIME count)

Define Documentation

#define ORO_SCHED_OTHER   1

Definition at line 65 of file rtt/os/fosi_interface.h.

#define ORO_SCHED_RT   0

Definition at line 64 of file rtt/os/fosi_interface.h.


Typedef Documentation

typedef long long NANO_TIME

OS representation of nano seconds.

Definition at line 70 of file rtt/os/fosi_interface.h.

typedef struct cond_struct rt_cond_t

Definition at line 128 of file rtt/os/fosi_interface.h.

typedef struct mutex_struct rt_mutex_t

Definition at line 111 of file rtt/os/fosi_interface.h.

typedef struct recursive_mutex_struct rt_rec_mutex_t

Definition at line 112 of file rtt/os/fosi_interface.h.

typedef struct sem_struct rt_sem_t

Definition at line 97 of file rtt/os/fosi_interface.h.

typedef struct MyTask RTOS_TASK

Definition at line 58 of file rtt/os/fosi_interface.h.

typedef long long TICK_TIME

OS representation of system ticks.

Definition at line 74 of file rtt/os/fosi_interface.h.


Function Documentation

TICK_TIME nano2ticks ( long long  nano  )  [inline]

Time conversions from nano seconds to system ticks.

No conversions are needed in userspace. The HBGenerator needs this for accurate timekeeping, which is an anachronism in userspace.

Definition at line 97 of file rtt/os/ecos/fosi.h.

int rtos_cond_broadcast ( rt_cond_t cond  ) 
int rtos_cond_destroy ( rt_cond_t cond  ) 
int rtos_cond_init ( rt_cond_t cond  ) 
int rtos_cond_timedwait ( rt_cond_t cond,
rt_mutex_t mutex,
NANO_TIME  abs_time 
)
int rtos_cond_wait ( rt_cond_t cond,
rt_mutex_t mutex 
)
void rtos_disable_rt_warning (  ) 

Disallows the RTOS to print a warning when we violate real-time constraints.

void rtos_enable_rt_warning (  ) 

Allows the RTOS to print a warning when we violate real-time constraints.

NANO_TIME rtos_get_time_ns ( void   )  [inline]

Get "system" time in nanoseconds

Definition at line 110 of file rtt/os/ecos/fosi.h.

TICK_TIME rtos_get_time_ticks ( void   )  [inline]

Get "system" time in ticks FIXME see <https://proj.fmtc.be/orocos-bugzilla/show_bug.cgi?id=60>

This function should return ticks, but we use ticks == nsecs in userspace

Definition at line 115 of file rtt/os/ecos/fosi.h.

int rtos_mutex_destroy ( rt_mutex_t m  ) 

Definition at line 298 of file macosx/fosi_internal.cpp.

int rtos_mutex_init ( rt_mutex_t m  ) 

Definition at line 291 of file macosx/fosi_internal.cpp.

int rtos_mutex_lock ( rt_mutex_t m  ) 

Definition at line 307 of file macosx/fosi_internal.cpp.

int rtos_mutex_lock_until ( rt_rec_mutex_t m,
NANO_TIME  abs_time 
)
int rtos_mutex_rec_destroy ( rt_rec_mutex_t m  ) 
int rtos_mutex_rec_init ( rt_rec_mutex_t m  ) 
int rtos_mutex_rec_lock ( rt_rec_mutex_t m  ) 
int rtos_mutex_rec_lock_until ( rt_rec_mutex_t m,
NANO_TIME  abs_time 
)
int rtos_mutex_rec_trylock ( rt_rec_mutex_t m  ) 
int rtos_mutex_rec_unlock ( rt_rec_mutex_t m  ) 
int rtos_mutex_trylock ( rt_mutex_t m  ) 
int rtos_mutex_unlock ( rt_mutex_t m  ) 

Definition at line 315 of file macosx/fosi_internal.cpp.

int rtos_printf ( const char *  fmt,
  ... 
) [inline]

'real-time' print function.

Definition at line 33 of file ecos/fosi.c.

int rtos_sem_destroy ( rt_sem_t m  ) 
int rtos_sem_init ( rt_sem_t m,
int  value 
)

All these should return zero in case of succes. Their meaning is hopefully obvious

int rtos_sem_signal ( rt_sem_t m  ) 
int rtos_sem_trywait ( rt_sem_t m  ) 
int rtos_sem_value ( rt_sem_t m  ) 
int rtos_sem_wait ( rt_sem_t m  ) 
int rtos_sem_wait_timed ( rt_sem_t m,
NANO_TIME  delay 
)
int rtos_sem_wait_until ( rt_sem_t m,
NANO_TIME  abs_time 
)
NANO_TIME ticks2nano ( TICK_TIME  count  )  [inline]

Time conversions from system ticks to nano seconds.

Definition at line 104 of file rtt/os/ecos/fosi.h.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines


rtt
Author(s): RTT Developers
autogenerated on Fri Jan 11 09:46:09 2013