3 Copyright (c) 2018, Linaro. All rights reserved.
5 This program and the accompanying materials
6 are licensed and made available under the terms and conditions of the BSD License
7 which accompanies this distribution. The full text of the license may be found at
8 http://opensource.org/licenses/bsd-license.php
10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
15 #ifndef __PLATFORM_VIRTUAL_KEYBOARD_H__
16 #define __PLATFORM_VIRTUAL_KEYBOARD_H__
19 // Protocol interface structure
21 typedef struct _PLATFORM_VIRTUAL_KBD_PROTOCOL PLATFORM_VIRTUAL_KBD_PROTOCOL
;
23 typedef struct _VIRTUAL_KBD_KEY VIRTUAL_KBD_KEY
;
25 #define VIRTUAL_KEYBOARD_KEY_SIGNATURE SIGNATURE_32 ('v', 'k', 'b', 'd')
27 struct _VIRTUAL_KBD_KEY
{
34 (EFIAPI
*PLATFORM_VIRTUAL_KBD_REGISTER
) (
40 (EFIAPI
*PLATFORM_VIRTUAL_KBD_RESET
) (
46 (EFIAPI
*PLATFORM_VIRTUAL_KBD_QUERY
) (
47 IN VIRTUAL_KBD_KEY
*VirtualKey
52 (EFIAPI
*PLATFORM_VIRTUAL_KBD_CLEAR
) (
53 IN VIRTUAL_KBD_KEY
*VirtualKey
56 struct _PLATFORM_VIRTUAL_KBD_PROTOCOL
{
57 PLATFORM_VIRTUAL_KBD_REGISTER Register
;
58 PLATFORM_VIRTUAL_KBD_RESET Reset
;
59 PLATFORM_VIRTUAL_KBD_QUERY Query
;
60 PLATFORM_VIRTUAL_KBD_CLEAR Clear
;
63 extern EFI_GUID gPlatformVirtualKeyboardProtocolGuid
;
65 #endif /* __PLATFORM_VIRTUAL_KEYBOARD_H__ */