L4Re Operating System Framework
Interface and Usage Documentation
•All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
event_buffer.h
1#pragma once
2/*
3 * (c) 2008-2009 Adam Lackorzynski <adam@os.inf.tu-dresden.de>
4 * economic rights: Technische Universität Dresden (Germany)
5 *
6 * License: see LICENSE.spdx (in this directory or the directories above)
7 */
8
9#include <l4/sys/compiler.h>
10#include <l4/sys/linkage.h>
11#include <l4/re/c/event.h>
12
14
15typedef struct l4re_event_buffer_consumer_t
16{
17 unsigned long _obj_buf[8];
18} l4re_event_buffer_consumer_t;
19
20L4_CV void
21l4re_event_free(l4re_event_t *e) L4_NOTHROW;
22
23L4_CV long
24l4re_event_buffer_attach(l4re_event_buffer_consumer_t *evbuf,
26
27L4_CV long
28l4re_event_buffer_detach(l4re_event_buffer_consumer_t *evbuf,
30
32l4re_event_buffer_next(l4re_event_buffer_consumer_t *evbuf) L4_NOTHROW;
33
34typedef L4_CV void l4re_event_buffer_cb_t(l4re_event_t *ev, void *data);
35
36L4_CV void
37l4re_event_buffer_consumer_foreach_available_event(l4re_event_buffer_consumer_t *evbuf,
38 void *data, l4re_event_buffer_cb_t *cb);
39
40
41L4_CV void
42l4re_event_buffer_consumer_process(l4re_event_buffer_consumer_t *evbuf,
43 l4_cap_idx_t irq, l4_cap_idx_t thread, void *data,
44 l4re_event_buffer_cb_t *cb);
45
Event C interface.
L4 compiler related defines.
L4_BEGIN_DECLS typedef l4_cap_idx_t l4re_ds_t
Dataspace type.
Definition dataspace.h:29
unsigned long l4_cap_idx_t
Capability selector type.
Definition types.h:336
#define L4_CV
Define calling convention.
Definition linkage.h:33
#define L4_NOTHROW
Mark a function declaration and definition as never throwing an exception.
Definition compiler.h:161
#define L4_BEGIN_DECLS
Start section with C types and functions.
Definition compiler.h:165
#define L4_END_DECLS
End section with C types and functions.
Definition compiler.h:166
Event structure used in buffer.
Definition event.h:31