L4Re - L4 Runtime Environment
view.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 
34 {
44  F_l4re_video_view_fully_dynamic = F_l4re_video_view_set_buffer
50 
53 };
54 
59 typedef struct l4re_video_view_info_t
60 {
61  unsigned flags;
62  unsigned view_index;
63  unsigned long xpos, ypos, width, height;
64  unsigned long buffer_offset;
65  unsigned long bytes_per_line;
67  unsigned buffer_index;
69 
70 
78 typedef struct l4re_video_view_t
79 {
80  l4_cap_idx_t goos;
81  unsigned idx;
83 
84 
86 
96 L4_CV int
97 l4re_video_view_refresh(l4re_video_view_t *view, int x, int y, int w,
98  int h) L4_NOTHROW;
99 
106 L4_CV int
109 
120 L4_CV int
123 
139 L4_CV int
140 l4re_video_view_set_viewport(l4re_video_view_t *view, int x, int y, int w,
141  int h, unsigned long bofs) L4_NOTHROW;
142 
152 L4_CV int
154  int behind) L4_NOTHROW;
155 
157 
l4re_video_pixel_info_t pixel_info
Pixel info.
Definition: view.h:66
Set view as background for session.
Definition: view.h:42
unsigned view_index
Number of view in the goos.
Definition: view.h:62
C representation of a goos view.
Definition: view.h:78
unsigned buffer_index
Number of buffer of goos.
Definition: view.h:67
everything for this view is static (the VESA-FB case)
Definition: view.h:35
unsigned flags
Flags.
Definition: view.h:61
Mask containing all possible property flags.
Definition: view.h:52
int l4re_video_view_stack(l4re_video_view_t *view, l4re_video_view_t *pivot, int behind) L4_NOTHROW
Change the stacking order in the stack of visible views.
pixel type can be set
Definition: view.h:39
buffer object for this view can be changed
Definition: view.h:36
Common L4 ABI Data Types.
int l4re_video_view_get_info(l4re_video_view_t *view, l4re_video_view_info_t *info) L4_NOTHROW
Retrieve information about the given view.
#define EXTERN_C_END
End section with C types and functions.
Definition: compiler.h:187
View information structure.
Definition: view.h:59
unsigned long l4_cap_idx_t
L4 Capability selector Type.
Definition: types.h:342
unsigned long bytes_per_line
Size of line in view.
Definition: view.h:65
l4re_video_view_info_flags_t
Flags of information on a view.
Definition: view.h:33
Flag the view as stay on top.
Definition: view.h:51
buffer offset can be set
Definition: view.h:37
bytes per line can be set
Definition: view.h:38
Pixel_info structure.
Definition: colors.h:41
View is dynamically allocated.
Definition: view.h:41
int l4re_video_view_refresh(l4re_video_view_t *view, int x, int y, int w, int h) L4_NOTHROW
Flush the given rectangle of pixels of the given view.
struct l4re_video_view_info_t l4re_video_view_info_t
View information structure.
position on screen can be set
Definition: view.h:40
#define EXTERN_C_BEGIN
Start section with C types and functions.
Definition: compiler.h:186
Data space C interface.
unsigned long buffer_offset
Memory offset in goos buffer.
Definition: view.h:64
#define L4_CV
Define calling convention.
Definition: linkage.h:44
int l4re_video_view_set_viewport(l4re_video_view_t *view, int x, int y, int w, int h, unsigned long bofs) L4_NOTHROW
Set the viewport parameters of a view.
int l4re_video_view_set_info(l4re_video_view_t *view, l4re_video_view_info_t *info) L4_NOTHROW
Set properties of the view.
Set view property flags.
Definition: view.h:43
unsigned long height
Position in goos and size of view.
Definition: view.h:63
struct l4re_video_view_t l4re_video_view_t
C representation of a goos view.
#define L4_NOTHROW
Mark a function declaration and definition as never throwing an exception.
Definition: compiler.h:185