| /** @file | |
| Copyright (c) 2018, Linaro. All rights reserved. | |
| SPDX-License-Identifier: BSD-2-Clause-Patent | |
| **/ | |
| #ifndef __PLATFORM_VIRTUAL_KEYBOARD_H__ | |
| #define __PLATFORM_VIRTUAL_KEYBOARD_H__ | |
| // | |
| // Protocol interface structure | |
| // | |
| typedef struct _PLATFORM_VIRTUAL_KBD_PROTOCOL PLATFORM_VIRTUAL_KBD_PROTOCOL; | |
| typedef struct _VIRTUAL_KBD_KEY VIRTUAL_KBD_KEY; | |
| #define VIRTUAL_KEYBOARD_KEY_SIGNATURE SIGNATURE_32 ('v', 'k', 'b', 'd') | |
| struct _VIRTUAL_KBD_KEY { | |
| UINTN Signature; | |
| EFI_INPUT_KEY Key; | |
| }; | |
| typedef | |
| EFI_STATUS | |
| (EFIAPI *PLATFORM_VIRTUAL_KBD_REGISTER)( | |
| IN VOID | |
| ); | |
| typedef | |
| EFI_STATUS | |
| (EFIAPI *PLATFORM_VIRTUAL_KBD_RESET)( | |
| IN VOID | |
| ); | |
| typedef | |
| BOOLEAN | |
| (EFIAPI *PLATFORM_VIRTUAL_KBD_QUERY)( | |
| IN VIRTUAL_KBD_KEY *VirtualKey | |
| ); | |
| typedef | |
| EFI_STATUS | |
| (EFIAPI *PLATFORM_VIRTUAL_KBD_CLEAR)( | |
| IN VIRTUAL_KBD_KEY *VirtualKey | |
| ); | |
| struct _PLATFORM_VIRTUAL_KBD_PROTOCOL { | |
| PLATFORM_VIRTUAL_KBD_REGISTER Register; | |
| PLATFORM_VIRTUAL_KBD_RESET Reset; | |
| PLATFORM_VIRTUAL_KBD_QUERY Query; | |
| PLATFORM_VIRTUAL_KBD_CLEAR Clear; | |
| }; | |
| extern EFI_GUID gPlatformVirtualKeyboardProtocolGuid; | |
| #endif /* __PLATFORM_VIRTUAL_KEYBOARD_H__ */ |