Type Alias simics_api_sys::text_console_frontend_interface_t

source ·
pub type text_console_frontend_interface_t = text_console_frontend_interface;

Aliased Type§

struct text_console_frontend_interface_t {
    pub start: Option<unsafe extern "C" fn(_: *mut conf_object, _: *mut conf_object) -> i32>,
    pub stop: Option<unsafe extern "C" fn(_: *mut conf_object, _: i32)>,
    pub set_title: Option<unsafe extern "C" fn(_: *mut conf_object, _: i32, _: *const i8, _: *const i8)>,
    pub set_size: Option<unsafe extern "C" fn(_: *mut conf_object, _: i32, _: i32, _: i32)>,
    pub set_max_scrollback_size: Option<unsafe extern "C" fn(_: *mut conf_object, _: i32, _: i32)>,
    pub set_default_colours: Option<unsafe extern "C" fn(_: *mut conf_object, _: i32, _: u32, _: u32)>,
    pub set_visible: Option<unsafe extern "C" fn(_: *mut conf_object, _: i32, _: bool)>,
    pub set_contents: Option<unsafe extern "C" fn(_: *mut conf_object, _: i32, _: i32, _: i32, _: i32, _: i32, _: *const i8, _: *const text_console_attrib_t)>,
    pub set_cursor_pos: Option<unsafe extern "C" fn(_: *mut conf_object, _: i32, _: i32, _: i32)>,
    pub append_text: Option<unsafe extern "C" fn(_: *mut conf_object, _: i32, _: i32, _: *const i8, _: *const text_console_attrib_t)>,
    pub refresh_screen: Option<unsafe extern "C" fn(_: *mut conf_object, _: i32, _: *const i8, _: *const text_console_attrib_t, _: *const i8, _: *const text_console_attrib_t, _: i32)>,
}

Fields§

§start: Option<unsafe extern "C" fn(_: *mut conf_object, _: *mut conf_object) -> i32>

Called when the console is finalised. ‘backend’ is the calling text console.

§stop: Option<unsafe extern "C" fn(_: *mut conf_object, _: i32)>

Called when the console is being destroyed.

§set_title: Option<unsafe extern "C" fn(_: *mut conf_object, _: i32, _: *const i8, _: *const i8)>

Set the window title. Two title strings are given, where the long title is meant for a window title bar and the short for a window list. The long title string is at least as long as the short.

§set_size: Option<unsafe extern "C" fn(_: *mut conf_object, _: i32, _: i32, _: i32)>

Called when the screen size of the console changes. The width (columns) and height (rows) are given in characters.

§set_max_scrollback_size: Option<unsafe extern "C" fn(_: *mut conf_object, _: i32, _: i32)>

Specify the maximum scrollback size (in lines).

§set_default_colours: Option<unsafe extern "C" fn(_: *mut conf_object, _: i32, _: u32, _: u32)>

Specify new default text colours for the console. These are used for characters whose colours were set to Text_Console_Colour_Default_Background or Text_Console_Colour_Default_Foreground.

§set_visible: Option<unsafe extern "C" fn(_: *mut conf_object, _: i32, _: bool)>

Show/hide the console window.

§set_contents: Option<unsafe extern "C" fn(_: *mut conf_object, _: i32, _: i32, _: i32, _: i32, _: i32, _: *const i8, _: *const text_console_attrib_t)>

Update characters and attributes in a rectangle in the console. (top, left) is the line and column of the upper left corner; (bottom, right) is the line and column of the lower right corner (inclusive). Lines and columns are 0-based. Lines are counted from the top of the visible screen.

‘text’ and ‘attrib’ are the text and attribute arrays, respectively, into which the lines and columns are used as indices. For example, the start of the rectangle in the text array is &text[width * top + left], where width was set by set_size.

§set_cursor_pos: Option<unsafe extern "C" fn(_: *mut conf_object, _: i32, _: i32, _: i32)>

Move the cursor to a new position. row is the new cursor row (0-based), within the visible screen. col is the new cursor column (0-based).

§append_text: Option<unsafe extern "C" fn(_: *mut conf_object, _: i32, _: i32, _: *const i8, _: *const text_console_attrib_t)>

Append text at the bottom of the screen of the console, implicitly scrolling the text upwards. num_lines is the number of lines to append_scroll. ‘text’ and ‘attrib’ are the start of the newly scrolled-in data, representing the num_lines bottommost lines of the screen after scrolling.

§refresh_screen: Option<unsafe extern "C" fn(_: *mut conf_object, _: i32, _: *const i8, _: *const text_console_attrib_t, _: *const i8, _: *const text_console_attrib_t, _: i32)>

Replace the screen and scrollback data with new information. ‘text’ and ‘attrib’ each contain width * height elements, where width and height were set by set_size. ‘sb_text’ and ‘sb_attrib’ each contain width * scrollback_size elements.