pub const PROTOCOL_GUID: crate::base::Guid = crate::base::Guid::from_fields(
0x387477c2,
0x69c7,
0x11d2,
0x8e,
0x39,
&[0x00, 0xa0, 0xc9, 0x69, 0x72, 0x3b],
);
#[repr(C)]
#[derive(Clone, Copy, Debug)]
pub struct Mode {
pub max_mode: i32,
pub mode: i32,
pub attribute: i32,
pub cursor_column: i32,
pub cursor_row: i32,
pub cursor_visible: crate::base::Boolean,
}
pub type ProtocolReset = eficall! {fn(
*mut Protocol,
crate::base::Boolean,
) -> crate::base::Status};
pub type ProtocolOutputString = eficall! {fn(
*mut Protocol,
*mut crate::base::Char16,
) -> crate::base::Status};
pub type ProtocolTestString = eficall! {fn(
*mut Protocol,
*mut crate::base::Char16,
) -> crate::base::Status};
pub type ProtocolQueryMode = eficall! {fn(
*mut Protocol,
usize,
*mut usize,
*mut usize,
) -> crate::base::Status};
pub type ProtocolSetMode = eficall! {fn(
*mut Protocol,
usize,
) -> crate::base::Status};
pub type ProtocolSetAttribute = eficall! {fn(
*mut Protocol,
usize,
) -> crate::base::Status};
pub type ProtocolClearScreen = eficall! {fn(
*mut Protocol,
) -> crate::base::Status};
pub type ProtocolSetCursorPosition = eficall! {fn(
*mut Protocol,
usize,
usize,
) -> crate::base::Status};
pub type ProtocolEnableCursor = eficall! {fn(
*mut Protocol,
crate::base::Boolean,
) -> crate::base::Status};
#[repr(C)]
pub struct Protocol {
pub reset: ProtocolReset,
pub output_string: ProtocolOutputString,
pub test_string: ProtocolTestString,
pub query_mode: ProtocolQueryMode,
pub set_mode: ProtocolSetMode,
pub set_attribute: ProtocolSetAttribute,
pub clear_screen: ProtocolClearScreen,
pub set_cursor_position: ProtocolSetCursorPosition,
pub enable_cursor: ProtocolEnableCursor,
pub mode: *mut Mode,
}