source: rtems/cpukit/itron/include/itronsys/eventflags.h @ 4bf1801

4.104.114.84.95
Last change on this file since 4bf1801 was 9d9a3dd, checked in by Jennifer Averett <Jennifer.Averett@…>, on 11/17/99 at 16:47:58

+ Updated copyright information.

  • Property mode set to 100644
File size: 2.3 KB
Line 
1/*
2 *  COPYRIGHT (c) 1989-1999.
3 *  On-Line Applications Research Corporation (OAR).
4 *
5 *  The license and distribution terms for this file may be
6 *  found in the file LICENSE in this distribution or at
7 *  http://www.OARcorp.com/rtems/license.html.
8 *
9 *  $Id$
10 */
11
12#ifndef __ITRON_EVENTFLAGS_h_
13#define __ITRON_EVENTFLAGS_h_
14
15#ifdef __cplusplus
16extern "C" {
17#endif
18
19/*
20 *  Create Eventflags (cre_flg) Structure
21 */
22
23typedef struct t_cflg {
24  VP     exinf;     /* extended information */
25  ATR    flgatr;    /* eventflag attribute */
26  UINT   iflgptn;   /* initial eventflag */
27  /* additional information may be included depending on the implementation */
28} T_CFLG;
29
30/*
31 *  flgatr
32 */
33
34#define TA_WSGL   0x00   /* multiple tasks are not allowed to wait (Wait
35                                Single Task) */
36#define TA_WMUL   0x08   /* multiple tasks are allowed to wait (Wait
37                                Multiple Task) */
38
39/*
40 *  wfmode
41 */
42 
43#define TWF_ANDW   0x00   /* AND wait */
44#define TWF_ORW    0x02   /* OR wait */
45#define TWF_CLR    0x01   /* clear specification */
46
47/*
48 *  Reference Eventflags (ref_flg) Structure
49 */
50
51typedef struct t_rflg {
52  VP        exinf;      /* extended information */
53  BOOL_ID   wtsk;       /* indicates whether or not there is a waiting task */
54  UINT      flgptn;     /* eventflag bit pattern */
55  /* additional information may be included depending on the implementation */
56} T_RFLG;
57
58/*
59 *  Eventflag Functions
60 */
61
62/*
63 *  cre_flg - Create Eventflag
64 */
65
66ER cre_flg(
67  ID flgid,
68  T_CFLG *pk_cflg
69);
70
71/*
72 *  del_flg - Delete Eventflag
73 */
74
75ER del_flg(
76  ID flgid
77);
78
79/*
80 *  set_flg - Set Eventflag
81 */
82
83ER set_flg(
84  ID flgid,
85  UINT setptn
86);
87
88/*
89 *  clr_flg - Clear Eventflag
90 */
91
92ER clr_flg(
93  ID flgid,
94  UINT clrptn
95);
96
97/*
98 *  wai_flg - Wait on Eventflag
99 */
100
101ER wai_flg(
102  UINT *p_flgptn,
103  ID flgid,
104  UINT waiptn,
105  UINT wfmode
106);
107
108/*
109 *  pol_flg - Wait for Eventflag(Polling)
110 */
111
112ER pol_flg(
113  UINT *p_flgptn,
114  ID flgid,
115  UINT waiptn,
116  UINT wfmode
117);
118
119/*
120 *  twai_flg - Wait on Eventflag with Timeout
121 */
122
123ER twai_flg(
124  UINT *p_flgptn,
125  ID flgid,
126  UINT waiptn,
127  UINT wfmode,
128  TMO tmout
129);
130
131/*
132 *  ref_flg - Reference Eventflag Status
133 */
134
135ER ref_flg(
136  T_RFLG *pk_rflg,
137  ID flgid
138);
139
140#ifdef __cplusplus
141}
142#endif
143
144#endif
145/* end of include file */
146
Note: See TracBrowser for help on using the repository browser.