Loading...
Searching...
No Matches
view.h
Go to the documentation of this file.
/*
* (c) 2008-2009 Adam Lackorzynski <adam@os.inf.tu-dresden.de>
* economic rights: Technische Universität Dresden (Germany)
*
* License: see LICENSE.spdx (in this directory or the directories above)
*/
#pragma once
#include <l4/sys/compiler.h>
#include <l4/sys/types.h>
#include <l4/re/c/dataspace.h>
#include <l4/re/c/video/colors.h>
enum l4re_video_view_info_flags_t
{
F_l4re_video_view_none = 0x00,
F_l4re_video_view_set_buffer = 0x01,
F_l4re_video_view_set_buffer_offset = 0x02,
F_l4re_video_view_set_bytes_per_line = 0x04,
F_l4re_video_view_set_pixel = 0x08,
F_l4re_video_view_set_position = 0x10,
F_l4re_video_view_dyn_allocated = 0x20,
F_l4re_video_view_set_background = 0x40,
F_l4re_video_view_set_flags = 0x80,
F_l4re_video_view_fully_dynamic = F_l4re_video_view_set_buffer
| F_l4re_video_view_set_buffer_offset
| F_l4re_video_view_set_bytes_per_line
| F_l4re_video_view_set_pixel
| F_l4re_video_view_set_position
| F_l4re_video_view_dyn_allocated,
F_l4re_video_view_above = 0x01000,
F_l4re_video_view_flags_mask = 0xff000,
};
typedef struct l4re_video_view_info_t
{
unsigned flags;
unsigned view_index;
unsigned long xpos, ypos, width, height;
unsigned long buffer_offset;
unsigned long bytes_per_line;
l4re_video_pixel_info_t pixel_info;
unsigned buffer_index;
} l4re_video_view_info_t;
typedef struct l4re_video_view_t
{
l4_cap_idx_t goos;
unsigned idx;
} l4re_video_view_t;
L4_BEGIN_DECLS
L4_CV int
l4re_video_view_refresh(l4re_video_view_t *view, int x, int y, int w,
int h) L4_NOTHROW;
L4_CV int
l4re_video_view_get_info(l4re_video_view_t *view,
l4re_video_view_info_t *info) L4_NOTHROW;
L4_CV int
l4re_video_view_set_info(l4re_video_view_t *view,
l4re_video_view_info_t *info) L4_NOTHROW;
L4_CV int
l4re_video_view_set_viewport(l4re_video_view_t *view, int x, int y, int w,
int h, unsigned long bofs) L4_NOTHROW;
L4_CV int
l4re_video_view_stack(l4re_video_view_t *view, l4re_video_view_t *pivot,
int behind) L4_NOTHROW;
L4_END_DECLS
colors.h
compiler.h
L4 compiler related defines.
dataspace.h
Data space C interface.
l4re_video_view_stack
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.
l4re_video_view_set_viewport
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.
l4re_video_view_get_info
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.
l4re_video_view_refresh
L4_BEGIN_DECLS 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.
l4re_video_view_info_flags_t
l4re_video_view_info_flags_t
Flags of information on a view.
Definition view.h:24
l4re_video_view_set_info
int l4re_video_view_set_info(l4re_video_view_t *view, l4re_video_view_info_t *info) L4_NOTHROW
Set properties of the view.
F_l4re_video_view_set_flags
@ F_l4re_video_view_set_flags
Set view property flags.
Definition view.h:33
F_l4re_video_view_above
@ F_l4re_video_view_above
Flag the view as stay on top.
Definition view.h:41
F_l4re_video_view_set_buffer
@ F_l4re_video_view_set_buffer
buffer object for this view can be changed
Definition view.h:26
F_l4re_video_view_flags_mask
@ F_l4re_video_view_flags_mask
Mask containing all possible property flags.
Definition view.h:42
F_l4re_video_view_dyn_allocated
@ F_l4re_video_view_dyn_allocated
View is dynamically allocated.
Definition view.h:31
F_l4re_video_view_set_pixel
@ F_l4re_video_view_set_pixel
pixel type can be set
Definition view.h:29
F_l4re_video_view_none
@ F_l4re_video_view_none
everything for this view is static (the VESA-FB case)
Definition view.h:25
F_l4re_video_view_set_bytes_per_line
@ F_l4re_video_view_set_bytes_per_line
bytes per line can be set
Definition view.h:28
F_l4re_video_view_set_background
@ F_l4re_video_view_set_background
Set view as background for session.
Definition view.h:32
F_l4re_video_view_set_position
@ F_l4re_video_view_set_position
position on screen can be set
Definition view.h:30
F_l4re_video_view_set_buffer_offset
@ F_l4re_video_view_set_buffer_offset
buffer offset can be set
Definition view.h:27
l4_cap_idx_t
unsigned long l4_cap_idx_t
Capability selector type.
Definition types.h:336
L4_CV
#define L4_CV
Define calling convention.
Definition linkage.h:33
L4_NOTHROW
#define L4_NOTHROW
Mark a function declaration and definition as never throwing an exception.
Definition compiler.h:161
L4_BEGIN_DECLS
#define L4_BEGIN_DECLS
Start section with C types and functions.
Definition compiler.h:165
L4_END_DECLS
#define L4_END_DECLS
End section with C types and functions.
Definition compiler.h:166
types.h
Common L4 ABI Data Types.
l4re_video_pixel_info_t
Pixel_info structure.
Definition colors.h:31
l4re_video_view_info_t
View information structure.
Definition view.h:50
l4re_video_view_info_t::buffer_index
unsigned buffer_index
Number of buffer of goos.
Definition view.h:57
l4re_video_view_info_t::buffer_offset
unsigned long buffer_offset
Memory offset in goos buffer.
Definition view.h:54
l4re_video_view_info_t::height
unsigned long height
Position in goos and size of view.
Definition view.h:53
l4re_video_view_info_t::bytes_per_line
unsigned long bytes_per_line
Size of line in view.
Definition view.h:55
l4re_video_view_info_t::view_index
unsigned view_index
Number of view in the goos.
Definition view.h:52
l4re_video_view_info_t::flags
unsigned flags
Flags.
Definition view.h:51
l4re_video_view_info_t::pixel_info
l4re_video_pixel_info_t pixel_info
Pixel info.
Definition view.h:56
l4re_video_view_t
C representation of a goos view.
Definition view.h:69