Orocos Real-Time Toolkit  2.8.3
Classes | Macros | Typedefs | Functions | Variables
fosi.h File Reference
#include <stdio.h>
#include <cyg/kernel/kapi.h>
#include "os_ecos.h"
#include <pkgconf/kernel.h>
#include <cyg/infra/diag.h>
#include "ecos_rec_mutex.h"
#include <time.h>
#include <unistd.h>

Go to the source code of this file.

Classes

struct  RTOS_TASK
 

Macros

#define HAVE_FOSI_API
 
#define SCHED_ECOS_FIFO   0 /** eCos Scheduler */
 
#define ORO_SCHED_RT   0
 
#define ORO_SCHED_OTHER   0
 
#define ORO_WAIT_ABS   0 /** Not supported for the ecos target */
 
#define ORO_WAIT_REL   1 /** Not supported for the ecos target */
 
#define rtos_printf   diag_printf
 

Typedefs

typedef long long NANO_TIME
 
typedef cyg_tick_count_t TICK_TIME
 
typedef struct timespec TIME_SPEC
 
typedef cyg_sem_t rt_sem_t
 
typedef cyg_mutex_t rt_mutex_t
 
typedef cyg_recursive_mutex_t rt_rec_mutex_t
 

Functions

TICK_TIME nano2ticks (NANO_TIME nano)
 Time conversions from nano seconds to system ticks. More...
 
NANO_TIME ticks2nano (TICK_TIME count)
 Time conversions from system ticks to nano seconds. More...
 
NANO_TIME rtos_get_time_ns (void)
 Get "system" time in nanoseconds. More...
 
TICK_TIME rtos_get_time_ticks (void)
 Get "system" time in ticks FIXME see https://proj.fmtc.be/orocos-bugzilla/show_bug.cgi?id=60 More...
 

Variables

const TICK_TIME InfiniteTicks = ULONG_LONG_MAX
 
const NANO_TIME InfiniteNSecs = LONG_LONG_MAX
 
const double InfiniteSeconds = DBL_MAX
 

Macro Definition Documentation

#define HAVE_FOSI_API

Definition at line 31 of file fosi.h.

#define ORO_SCHED_OTHER   0
#define ORO_SCHED_RT   0
#define ORO_WAIT_ABS   0 /** Not supported for the ecos target */
#define ORO_WAIT_REL   1 /** Not supported for the ecos target */

Definition at line 53 of file fosi.h.

Referenced by RTT::types::RealTimeTypekitPlugin::loadGlobals().

#define rtos_printf   diag_printf

Definition at line 260 of file fosi.h.

Referenced by RTT::os::printbufs::sputc(), and RTT::os::printbufs::sputn().

#define SCHED_ECOS_FIFO   0 /** eCos Scheduler */

Definition at line 48 of file fosi.h.

Referenced by RTT::os::rtos_task_make_periodic().

Typedef Documentation

typedef long long NANO_TIME

Definition at line 55 of file fosi.h.

typedef cyg_mutex_t rt_mutex_t

Definition at line 185 of file fosi.h.

Definition at line 186 of file fosi.h.

typedef cyg_sem_t rt_sem_t

Definition at line 131 of file fosi.h.

typedef cyg_tick_count_t TICK_TIME

Definition at line 56 of file fosi.h.

typedef struct timespec TIME_SPEC

Definition at line 97 of file fosi.h.

Function Documentation

TICK_TIME nano2ticks ( NANO_TIME  nano)
inline

Time conversions from nano seconds to system ticks.

Definition at line 100 of file fosi.h.

Referenced by RTT::os::TimeService::nsecs2ticks(), rtos_printf(), RTT::os::rtos_task_get_scheduler(), RTT::os::rtos_task_make_periodic(), and RTT::os::rtos_task_wait_period().

NANO_TIME rtos_get_time_ns ( void  )
inline
TICK_TIME rtos_get_time_ticks ( void  )
inline
NANO_TIME ticks2nano ( TICK_TIME  count)
inline

Time conversions from system ticks to nano seconds.

Definition at line 107 of file fosi.h.

Referenced by rtos_get_time_ns(), rtos_printf(), and RTT::os::TimeService::ticks2nsecs().

Variable Documentation

const NANO_TIME InfiniteNSecs = LONG_LONG_MAX

Definition at line 59 of file fosi.h.

const double InfiniteSeconds = DBL_MAX

Definition at line 60 of file fosi.h.

const TICK_TIME InfiniteTicks = ULONG_LONG_MAX

Definition at line 58 of file fosi.h.