Orocos Real-Time Toolkit
2.8.3
|
#include "../ThreadInterface.hpp"
#include "fosi.h"
#include "../fosi_internal_interface.hpp"
#include "../../Logger.hpp"
#include <cassert>
#include "../Mutex.hpp"
Go to the source code of this file.
Classes | |
struct | rt_mutex_impl_t |
Namespaces | |
RTT | |
Contains TaskContext, Activity, OperationCaller, Operation, Property, InputPort, OutputPort, Attribute. | |
RTT::os | |
OS Abstractions such as Mutexes, Semaphores and Threads. | |
Macros | |
#define | INTERNAL_QUAL |
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... | |
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... | |
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... | |
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_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 | rtos_mutex_init (rt_mutex_t *m) |
int | rtos_mutex_destroy (rt_mutex_t *m) |
int | rtos_mutex_lock (rt_mutex_t *m) |
int | rtos_mutex_unlock (rt_mutex_t *m) |
#define INTERNAL_QUAL |
Definition at line 41 of file fosi_internal.cpp.
int rtos_mutex_destroy | ( | rt_mutex_t * | m | ) |
Definition at line 305 of file fosi_internal.cpp.
Referenced by rtos_nanosleep(), rtos_printf(), and RTT::os::Mutex::~Mutex().
int rtos_mutex_init | ( | rt_mutex_t * | m | ) |
Definition at line 298 of file fosi_internal.cpp.
Referenced by RTT::os::Mutex::Mutex(), rtos_nanosleep(), and rtos_printf().
int rtos_mutex_lock | ( | rt_mutex_t * | m | ) |
Definition at line 314 of file fosi_internal.cpp.
Referenced by RTT::os::Mutex::lock(), rtos_nanosleep(), and rtos_printf().
int rtos_mutex_unlock | ( | rt_mutex_t * | m | ) |
Definition at line 322 of file fosi_internal.cpp.
Referenced by rtos_nanosleep(), rtos_printf(), and RTT::os::Mutex::unlock().