Xenomai API  2.6.5

Real-time pod interface header. More...

Include dependency graph for pod.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  xnpod
 Real-time pod descriptor. More...
 

Functions

int xnpod_init (void)
 Initialize the core pod. More...
 
int xnpod_enable_timesource (void)
 Activate the core time source. More...
 
void xnpod_disable_timesource (void)
 Stop the core time source. More...
 
void xnpod_shutdown (int xtype)
 Shutdown the current pod. More...
 
int xnpod_init_thread (struct xnthread *thread, const struct xnthread_init_attr *attr, struct xnsched_class *sched_class, const union xnsched_policy_param *sched_param)
 Initialize a new thread. More...
 
int xnpod_start_thread (xnthread_t *thread, const struct xnthread_start_attr *attr)
 Initial start of a newly created thread. More...
 
void xnpod_stop_thread (xnthread_t *thread)
 Stop a thread. More...
 
void xnpod_restart_thread (xnthread_t *thread)
 Restart a thread. More...
 
void xnpod_delete_thread (xnthread_t *thread)
 Delete a thread. More...
 
void xnpod_abort_thread (xnthread_t *thread)
 Abort a thread. More...
 
xnflags_t xnpod_set_thread_mode (xnthread_t *thread, xnflags_t clrmask, xnflags_t setmask)
 Change a thread's control mode. More...
 
void xnpod_suspend_thread (xnthread_t *thread, xnflags_t mask, xnticks_t timeout, xntmode_t timeout_mode, struct xnsynch *wchan)
 Suspend a thread. More...
 
void xnpod_resume_thread (xnthread_t *thread, xnflags_t mask)
 Resume a thread. More...
 
int xnpod_unblock_thread (xnthread_t *thread)
 Unblock a thread. More...
 
int xnpod_set_thread_schedparam (struct xnthread *thread, struct xnsched_class *sched_class, const union xnsched_policy_param *sched_param)
 Change the base scheduling parameters of a thread. More...
 
int xnpod_migrate_thread (int cpu)
 Migrate the current thread. More...
 
void xnpod_dispatch_signals (void)
 Deliver pending asynchronous signals to the running thread. More...
 
static void xnpod_schedule (void)
 Rescheduling procedure entry point. More...
 
int xnpod_set_thread_periodic (xnthread_t *thread, xnticks_t idate, xnticks_t period)
 Make a thread periodic. More...
 
int xnpod_wait_thread_period (unsigned long *overruns_r)
 Wait for the next periodic release point. More...
 
int xnpod_set_thread_tslice (struct xnthread *thread, xnticks_t quantum)
 Set thread time-slicing information. More...
 
int xnpod_add_hook (int type, void(*routine)(xnthread_t *))
 Install a nucleus hook. More...
 
int xnpod_remove_hook (int type, void(*routine)(xnthread_t *))
 Remove a nucleus hook. More...
 

Detailed Description

Real-time pod interface header.

Author
Philippe Gerum

Copyright (C) 2001-2007 Philippe Gerum rpm@x.nosp@m.enom.nosp@m.ai.or.nosp@m.g. Copyright (C) 2004 The RTAI project http://www.rtai.org Copyright (C) 2004 The HYADES project http://www.hyades-itea.org Copyright (C) 2004 The Xenomai project http://www.xenomai.org

Xenomai is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

Xenomai is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with Xenomai; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.