rtai-core/include/xenomai/pod.h File Reference


Detailed Description

Real-time pod interface header.

Author:
Philippe Gerum
Copyright (C) 2001,2002,2003 Philippe Gerum <rpm@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.

As a special exception, the RTAI project gives permission for additional uses of the text contained in its release of Xenomai.

The exception is that, if you link the Xenomai libraries with other files to produce an executable, this does not by itself cause the resulting executable to be covered by the GNU General Public License. Your use of that executable is in no way restricted on account of linking the Xenomai libraries code into it.

This exception does not however invalidate any other reasons why the executable file might be covered by the GNU General Public License.

This exception applies only to the code released by the RTAI project under the name Xenomai. If you copy code from other RTAI project releases into a copy of Xenomai, as the General Public License permits, the exception does not apply to the code that you add in this way. To avoid misleading anyone as to the status of such modified files, you must delete this exception notice from them.

If you write modifications of your own for Xenomai, it is your choice whether to permit this exception to apply to your modifications. If you do not wish that, delete this exception notice.

Include dependency graph for pod.h:

Include dependency graph

This graph shows which files directly or indirectly include this file:

Included by dependency graph

Go to the source code of this file.

Data Structures

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

struct  xnsched
 Scheduling information structure. More...


Typedefs

typedef xnsched xnsched_t
 Scheduling information structure.

typedef xnpod xnpod_t
 Real-time pod descriptor.


Functions

void xnpod_schedule_runnable (xnthread_t *thread, int flags)
 Hidden rescheduling procedure - INTERNAL.

int xnpod_init (xnpod_t *pod, int minpri, int maxpri, xnflags_t flags)
 Initialize a new pod.

void xnpod_stop_timer (void)
 Stop the periodic timer.

void xnpod_shutdown (int xtype)
 Default shutdown handler.

int xnpod_init_thread (xnthread_t *thread, const char *name, int prio, xnflags_t flags, unsigned stacksize, void *adcookie, unsigned magic)
 Initialize a new thread.

void xnpod_start_thread (xnthread_t *thread, xnflags_t mode, int imask, void(*entry)(void *cookie), void *cookie)
 Initial start of a newly created thread.

xnflags_t xnpod_set_thread_mode (xnthread_t *thread, xnflags_t clrmask, xnflags_t setmask)
 Change a thread's control mode.

void xnpod_resume_thread (xnthread_t *thread, xnflags_t mask)
 Resume a thread.

void xnpod_unblock_thread (xnthread_t *thread)
 Unblock a thread.

void xnpod_renice_thread (xnthread_t *thread, int prio)
 Change the base priority of a thread.

void xnpod_rotate_readyq (int prio)
 Rotate a priority level in the ready queue.

void xnpod_activate_rr (xnticks_t quantum)
 Globally activate the round-robin scheduling.

void xnpod_deactivate_rr (void)
 Globally deactivate the round-robin scheduling.

void xnpod_set_time (xnticks_t newtime)
 Set the nanokernel idea of time.

xnticks_t xnpod_get_time (void)
 Get the nanokernel idea of time.

int xnpod_add_hook (int type, void(*routine)(xnthread_t *))
 Install a nanokernel hook.

int xnpod_remove_hook (int type, void(*routine)(xnthread_t *))
 Remove a nanokernel hook.


Generated on Sat Jul 24 19:36:12 2004 for RTAI API by doxygen 1.3.4