Xenomai
3.1
queue.h
1
/*
2
* Copyright (C) 2008 Philippe Gerum <rpm@xenomai.org>.
3
*
4
* This library is free software; you can redistribute it and/or
5
* modify it under the terms of the GNU Lesser General Public
6
* License as published by the Free Software Foundation; either
7
* version 2 of the License, or (at your option) any later version.
8
*
9
* This library is distributed in the hope that it will be useful,
10
* but WITHOUT ANY WARRANTY; without even the implied warranty of
11
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12
* Lesser General Public License for more details.
13
14
* You should have received a copy of the GNU Lesser General Public
15
* License along with this library; if not, write to the Free Software
16
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
17
*/
18
19
#ifndef _PSOS_QUEUE_H
20
#define _PSOS_QUEUE_H
21
22
#include <sys/types.h>
23
#include <boilerplate/hash.h>
24
#include <copperplate/syncobj.h>
25
#include <copperplate/cluster.h>
26
27
#define Q_VARIABLE 0x40000000
28
#define Q_JAMMED 0x80000000
29
30
struct
psos_queue {
31
unsigned
int
magic;
/* Must be first. */
32
char
name[XNOBJECT_NAME_LEN];
33
34
u_long flags;
35
u_long maxmsg;
36
u_long maxlen;
37
u_long msgcount;
38
39
struct
syncobj sobj;
40
struct
listobj msg_list;
41
struct
clusterobj cobj;
42
};
43
44
struct
psos_queue_wait {
45
size_t
size;
46
dref_type(
void
*) ptr;
47
};
48
49
extern
struct
cluster psos_queue_table;
50
51
#endif
/* _PSOS_QUEUE_H */
lib
psos
queue.h
Generated by
1.8.14