Changeset 7bf29e5 in mainline for uspace/lib/system/include/system_srv.h
- Timestamp:
- 2025-01-09T11:29:38Z (5 months ago)
- Children:
- a5c2960e
- Parents:
- bc3d695 (diff), 4e1221c (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)
links above to see all the changes relative to each parent. - File:
-
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/system/include/system_srv.h
rbc3d695 r7bf29e5 1 1 /* 2 * Copyright (c) 20 11 Martin Decky2 * Copyright (c) 2024 Jiri Svoboda 3 3 * All rights reserved. 4 4 * … … 27 27 */ 28 28 29 /** @addtogroup output29 /** @addtogroup libsystem 30 30 * @{ 31 31 */ 32 /** @file System control protocol server stub 33 */ 32 34 33 #ifndef OUTPUT_PROTO_VT100_H_34 #define OUTPUT_PROTO_VT100_H_35 #ifndef _LIBSYSTEM_SYSTEM_SRV_H_ 36 #define _LIBSYSTEM_SYSTEM_SRV_H_ 35 37 36 #include <io/charfield.h> 38 #include <async.h> 39 #include <errno.h> 37 40 38 typedef void (*vt100_putuchar_t)(char32_t ch); 39 typedef void (*vt100_control_puts_t)(const char *str); 40 typedef void (*vt100_flush_t)(void); 41 typedef struct system_ops system_ops_t; 41 42 43 /** System server structure (per client session) */ 42 44 typedef struct { 43 sysarg_t cols; 44 sysarg_t rows; 45 async_sess_t *client_sess; 46 system_ops_t *ops; 47 void *arg; 48 } system_srv_t; 45 49 46 sysarg_t cur_col; 47 sysarg_t cur_row;48 char_attrs_t cur_attrs;50 struct system_ops { 51 errno_t (*shutdown)(void *); 52 }; 49 53 50 vt100_putuchar_t putuchar; 51 vt100_control_puts_t control_puts; 52 vt100_flush_t flush; 53 } vt100_state_t; 54 55 extern vt100_state_t *vt100_state_create(sysarg_t, sysarg_t, vt100_putuchar_t, 56 vt100_control_puts_t, vt100_flush_t); 57 extern void vt100_state_destroy(vt100_state_t *); 58 59 extern errno_t vt100_yield(vt100_state_t *); 60 extern errno_t vt100_claim(vt100_state_t *); 61 extern void vt100_get_dimensions(vt100_state_t *, sysarg_t *, sysarg_t *); 62 63 extern void vt100_goto(vt100_state_t *, sysarg_t, sysarg_t); 64 extern void vt100_set_attr(vt100_state_t *, char_attrs_t); 65 extern void vt100_cursor_visibility(vt100_state_t *, bool); 66 extern void vt100_putuchar(vt100_state_t *, char32_t); 67 extern void vt100_flush(vt100_state_t *); 54 extern void system_conn(ipc_call_t *, system_srv_t *); 55 extern void system_srv_initialize(system_srv_t *); 56 extern void system_srv_shutdown_complete(system_srv_t *); 57 extern void system_srv_shutdown_failed(system_srv_t *); 68 58 69 59 #endif
Note:
See TracChangeset
for help on using the changeset viewer.