Orocos Real-Time Toolkit  2.8.3
Namespaces | Functions
fosi_internal_interface.hpp File Reference

This file has all the (periodic) thread specific interfaces. More...

#include "ThreadInterface.hpp"
#include "fosi.h"

Go to the source code of this file.

Namespaces

 RTT
 Contains TaskContext, Activity, OperationCaller, Operation, Property, InputPort, OutputPort, Attribute.
 
 RTT::os
 OS Abstractions such as Mutexes, Semaphores and Threads.
 

Functions

INTERNAL_QUAL int RTT::os::rtos_task_create_main (RTOS_TASK *main_task)
 Initialise the main thread. More...
 
INTERNAL_QUAL int RTT::os::rtos_task_delete_main (RTOS_TASK *main_task)
 Cleanup the main thread. More...
 
INTERNAL_QUAL int RTT::os::rtos_task_create (RTOS_TASK *task, int priority, unsigned cpu_affinity, const char *name, int sched_type, size_t stack_size, void *(*start_routine)(void *), ThreadInterface *obj)
 Create a thread. More...
 
INTERNAL_QUAL void RTT::os::rtos_task_yield (RTOS_TASK *task)
 Yields the current thread. More...
 
unsigned int RTT::os::rtos_task_get_pid (const RTOS_TASK *task)
 Returns the process ID the OS gave to the task task. More...
 
int RTT::os::rtos_task_set_scheduler (RTOS_TASK *t, int sched_type)
 Set the scheduler of a given task t to a the type sched_type. More...
 
int RTT::os::rtos_task_get_scheduler (const RTOS_TASK *t)
 Returns the current scheduler set for task t. More...
 
INTERNAL_QUAL void RTT::os::rtos_task_make_periodic (RTOS_TASK *mytask, NANO_TIME nanosecs)
 This function is to inform the RTOS that a thread is switching between periodic or non-periodic execution. More...
 
void RTT::os::rtos_task_set_period (RTOS_TASK *mytask, NANO_TIME nanosecs)
 Change the period of a periodic RTOS task. More...
 
void RTT::os::rtos_task_set_wait_period_policy (RTOS_TASK *task, int policy)
 Set the wait policy of a thread. More...
 
int RTT::os::rtos_task_wait_period (RTOS_TASK *task)
 This function is called by a periodic thread which wants to go to sleep and wake up the next period. More...
 
void RTT::os::rtos_task_delete (RTOS_TASK *mytask)
 This function must join the thread created with rtos_task_create and then clean up the RTOS_TASK struct. More...
 
int RTT::os::rtos_task_check_scheduler (int *sched_type)
 This function checks (and corrects) if the given sched_type is valid for this RTOS. More...
 
INTERNAL_QUAL int RTT::os::rtos_task_check_priority (int *sched_type, int *priority)
 This function checks (and corrects) a given priority within a given scheduler type. More...
 
int RTT::os::rtos_task_set_priority (RTOS_TASK *task, int priority)
 Set the priority of a thread. More...
 
int RTT::os::rtos_task_get_priority (const RTOS_TASK *task)
 Return the priority of a thread. More...
 
int RTT::os::rtos_task_set_cpu_affinity (RTOS_TASK *task, unsigned cpu_affinity)
 Set the cpu affinity of a thread. More...
 
unsigned RTT::os::rtos_task_get_cpu_affinity (const RTOS_TASK *task)
 Return the cpu affinity of a thread. More...
 
const char * RTT::os::rtos_task_get_name (const RTOS_TASK *task)
 Returns the name by which a task is known in the RTOS. More...
 
int RTT::os::rtos_task_is_self (const RTOS_TASK *task)
 Returns 1 when task is the task struct of the thread calling this function, 0 otherwise. More...
 

Detailed Description

This file has all the (periodic) thread specific interfaces.

If a function does not apply to your OS, it may be left empty.

Definition in file fosi_internal_interface.hpp.