L4Re - L4 Runtime Environment
goos.h
Go to the documentation of this file.
1 
6 /*
7  * (c) 2008-2009 Adam Lackorzynski <adam@os.inf.tu-dresden.de>
8  * economic rights: Technische Universit├Ąt Dresden (Germany)
9  *
10  * This file is part of TUD:OS and distributed under the terms of the
11  * GNU General Public License 2.
12  * Please see the COPYING-GPL-2 file for details.
13  *
14  * As a special exception, you may use this file as part of a free software
15  * library without restriction. Specifically, if other files instantiate
16  * templates or use macros or inline functions from this file, or you compile
17  * this file and link it with other files to produce an executable, this
18  * file does not by itself cause the resulting executable to be covered by
19  * the GNU General Public License. This exception does not however
20  * invalidate any other reasons why the executable file might be covered by
21  * the GNU General Public License.
22  */
23 #pragma once
24 
25 #include <l4/sys/types.h>
26 #include <l4/re/c/dataspace.h>
27 #include <l4/re/c/video/colors.h>
28 #include <l4/re/c/video/view.h>
29 
40 {
45 };
46 
51 typedef struct
52 {
53  unsigned long width;
54  unsigned long height;
55  unsigned flags;
56  unsigned num_static_views;
57  unsigned num_static_buffers;
60 
66 
68 
80 L4_CV int
83 
93 L4_CV int
94 l4re_video_goos_refresh(l4re_video_goos_t goos, int x, int y, int w,
95  int h) L4_NOTHROW;
96 
108 L4_CV int
109 l4re_video_goos_create_buffer(l4re_video_goos_t goos, unsigned long size,
110  l4_cap_idx_t buffer) L4_NOTHROW;
111 
119 L4_CV int
121 
132 L4_CV int
134  l4_cap_idx_t buffer) L4_NOTHROW;
135 
142 L4_CV int
145 
153 L4_CV int
156 
157 
170 L4_CV int
173 
unsigned long width
Width of the goos.
Definition: goos.h:53
C representation of a goos view.
Definition: view.h:78
int l4re_video_goos_delete_view(l4re_video_goos_t goos, l4re_video_view_t *view) L4_NOTHROW
Delete a view.
The graphics display is automatically refreshed.
Definition: goos.h:41
Supports dynamically allocated buffers.
Definition: goos.h:44
Common L4 ABI Data Types.
l4re_video_goos_info_flags_t
Flags of information on the goos.
Definition: goos.h:39
#define EXTERN_C_END
End section with C types and functions.
Definition: compiler.h:187
int l4re_video_goos_delete_buffer(l4re_video_goos_t goos, unsigned idx) L4_NOTHROW
Delete a pixel buffer.
Supports dynamically allocated views.
Definition: goos.h:43
unsigned long l4_cap_idx_t
L4 Capability selector Type.
Definition: types.h:342
unsigned long height
Height of the goos.
Definition: goos.h:54
l4_cap_idx_t l4re_video_goos_t
Goos object type.
Definition: goos.h:65
int l4re_video_goos_get_static_buffer(l4re_video_goos_t goos, unsigned idx, l4_cap_idx_t buffer) L4_NOTHROW
Get the data-space capability of the static pixel buffer.
l4re_video_pixel_info_t pixel_info
Pixel layout of the goos.
Definition: goos.h:58
Pixel_info structure.
Definition: colors.h:41
int l4re_video_goos_info(l4re_video_goos_t goos, l4re_video_goos_info_t *ginfo) L4_NOTHROW
Get information on a goos.
#define EXTERN_C_BEGIN
Start section with C types and functions.
Definition: compiler.h:186
Data space C interface.
#define L4_CV
Define calling convention.
Definition: linkage.h:44
unsigned flags
Flags of the framebuffer, see l4re_video_goos_info_flags_t.
Definition: goos.h:55
int l4re_video_goos_refresh(l4re_video_goos_t goos, int x, int y, int w, int h) L4_NOTHROW
Flush a rectangle of pixels of the goos screen.
We have a mouse pointer.
Definition: goos.h:42
Goos information structure.
Definition: goos.h:51
int l4re_video_goos_create_buffer(l4re_video_goos_t goos, unsigned long size, l4_cap_idx_t buffer) L4_NOTHROW
Create a new buffer (memory buffer) for pixel data.
int l4re_video_goos_create_view(l4re_video_goos_t goos, l4re_video_view_t *view) L4_NOTHROW
Create a new view (.
#define L4_NOTHROW
Mark a function declaration and definition as never throwing an exception.
Definition: compiler.h:185
int l4re_video_goos_get_view(l4re_video_goos_t goos, unsigned idx, l4re_video_view_t *view) L4_NOTHROW
Get a view for the given index.
unsigned num_static_buffers
Number of static buffers.
Definition: goos.h:57
unsigned num_static_views
Number of static views.
Definition: goos.h:56