source: mainline/contrib/arch/uspace/srv/fb/fb.adl

Last change on this file was f1380b7, checked in by Jiří Zárevúcky <zarevucky.jiri@…>, 7 years ago

style: Remove trailing whitespace on _all_ lines, including empty ones, remaining files.

  • Property mode set to 100644
File size: 3.2 KB
Line 
1interface fb extends service {
2 /* Get screen resolution */
3 sysarg_t get_resolution(out sysarg_t width, out sysarg_t height);
4
5 /* Yield screen */
6 sysarg_t screen_yield(void);
7
8 /* Reclaim screen */
9 sysarg_t screen_reclaim(void);
10
11 /* Set mouse cursor position on screen */
12 sysarg_t pointer_move(in sysarg_t x, in sysarg_t y);
13
14 /* Create new viewport */
15 sysarg_t viewport_create(in sysarg_t origin, in sysarg_t dimension);
16
17 /* Get viewport size in character cells */
18 sysarg_t get_csize(out sysarg_t width, out sysarg_t height);
19
20 /* Clear viewport character buffer */
21 sysarg_t clear(void);
22
23 /* Scroll viewport character buffer */
24 sysarg_t scroll(in sysarg_t lines);
25
26 /* Set active viewport */
27 sysarg_t viewport_switch(in sysarg_t index);
28
29 /* Delete viewport */
30 sysarg_t viewport_delete(in sysarg_t index);
31
32 /* Get color capabilities of the screen */
33 sysarg_t get_color_cap(void);
34
35 /* Set abstract text style */
36 sysarg_t set_style(in sysarg_t style);
37
38 /* Set EGA-based text color */
39 sysarg_t set_color(in sysarg_t fg_color, in sysarg_t bg_color, in sysarg_t atrr);
40
41 /* Set RGB-based text color */
42 sysarg_t set_rgb_color(in sysarg_t fg_color, in sysarg_t bg_color);
43
44 /* Put a character to a given position in viewport character buffer */
45 sysarg_t putchar(in sysarg_t char, in sysarg_t col, in sysarg_t row);
46
47 /* Set character cursor visibility in viewport */
48 sysarg_t cursor_visibility(in sysarg_t visible);
49
50 /* Set character cursor position in viewport */
51 sysarg_t cursor_goto(in sysarg_t col, in sysarg_t row);
52
53 /* Prepare memory sharing of bitmaps */
54 sysarg_t prepare_shm(in sysarg_t as_area_base);
55
56 /* Share bitmap or text data */
57 sysarg_t ipc_m_share_out(in sysarg_t as_area_base, in sysarg_t as_area_size, out sysarg_t dst_as_area);
58
59 /* Drop memory sharing */
60 sysarg_t drop_shm(void);
61
62 /* Draw PPM data from shared memory to viewport */
63 sysarg_t draw_ppm(in sysarg_t x, in sysarg_t y);
64
65 /* Put characters from shared memory to viewport */
66 sysarg_t draw_text_data(in sysarg_t x, in sysarg_t y, in sysarg_t width, in sysarg_t height);
67
68 /* Convert PPM data from shared memory to pixmap */
69 sysarg_t shm2pixmap(void);
70
71 /* Save viewport contents to a pixmap */
72 sysarg_t vp2pixmap(in sysarg_t vp_index);
73
74 /* Draw pixmap to viewport */
75 sysarg_t vp_draw_pixmap(in sysarg_t vp_index, in sysarg_t pm_index);
76
77 /* Discard pixmap */
78 sysarg_t drop_pixmap(in sysarg_t pm_index);
79
80 /* Create new (empty) animation for a viewport */
81 sysarg_t anim_create(in sysarg_t vp_index);
82
83 /* Append a pixmap to an animation */
84 sysarg_t anim_addpixmap(in sysarg_t anim_index, in sysarg_t pm_index);
85
86 /* Change a viewport associated with an animation */
87 sysarg_t anim_chgvp(in sysarg_t anim_index, in sysarg_t vp_index);
88
89 /* Start animation playback */
90 sysarg_t anim_start(in sysarg_t anim_index);
91
92 /* Stop animation playback */
93 sysarg_t anim_stop(in sysarg_t anim_index);
94
95 /* Delete animation */
96 sysarg_t anim_drop(in sysarg_t anim_index);
97 protocol:
98 [fb.bp]
99};
100
101frame fb {
102 provides:
103 fb fb;
104 requires:
105 [/uspace/lib/libc/requires]
106 ns ns;
107 initialization:
108 !ns.ipc_m_connect_to_me /* fb */
109 protocol:
110 [/uspace/lib/libc/protocol]
111};
Note: See TracBrowser for help on using the repository browser.