2 Simple Pointer protocol from the EFI 1.1 specification.
4 Abstraction of a very simple pointer device like a mice or tracekballs.
6 Copyright (c) 2006, Intel Corporation
7 All rights reserved. This program and the accompanying materials
8 are licensed and made available under the terms and conditions of the BSD License
9 which accompanies this distribution. The full text of the license may be found at
10 http://opensource.org/licenses/bsd-license.php
12 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
13 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
17 #ifndef __SIMPLE_POINTER_H__
18 #define __SIMPLE_POINTER_H__
20 #define EFI_SIMPLE_POINTER_PROTOCOL_GUID \
22 0x31878c87, 0xb75, 0x11d5, {0x9a, 0x4f, 0x0, 0x90, 0x27, 0x3f, 0xc1, 0x4d } \
25 typedef struct _EFI_SIMPLE_POINTER_PROTOCOL EFI_SIMPLE_POINTER_PROTOCOL
;
31 INT32 RelativeMovementX
;
32 INT32 RelativeMovementY
;
33 INT32 RelativeMovementZ
;
36 } EFI_SIMPLE_POINTER_STATE
;
44 } EFI_SIMPLE_POINTER_MODE
;
47 Resets the pointer device hardware.
49 @param This A pointer to the EFI_SIMPLE_POINTER_PROTOCOL
51 @param ExtendedVerification Indicates that the driver may perform a more exhaustive
52 verification operation of the device during reset.
54 @retval EFI_SUCCESS The device was reset.
55 @retval EFI_DEVICE_ERROR The device is not functioning correctly and could not be reset.
60 (EFIAPI
*EFI_SIMPLE_POINTER_RESET
) (
61 IN EFI_SIMPLE_POINTER_PROTOCOL
*This
,
62 IN BOOLEAN ExtendedVerification
66 Retrieves the current state of a pointer device.
68 @param This A pointer to the EFI_SIMPLE_POINTER_PROTOCOL
70 @param State A pointer to the state information on the pointer device.
72 @retval EFI_SUCCESS The state of the pointer device was returned in State.
73 @retval EFI_NOT_READY The state of the pointer device has not changed since the last call to
75 @retval EFI_DEVICE_ERROR A device error occurred while attempting to retrieve the pointer device's
81 (EFIAPI
*EFI_SIMPLE_POINTER_GET_STATE
) (
82 IN EFI_SIMPLE_POINTER_PROTOCOL
*This
,
83 IN OUT EFI_SIMPLE_POINTER_STATE
*State
86 struct _EFI_SIMPLE_POINTER_PROTOCOL
{
87 EFI_SIMPLE_POINTER_RESET Reset
;
88 EFI_SIMPLE_POINTER_GET_STATE GetState
;
89 EFI_EVENT WaitForInput
;
90 EFI_SIMPLE_POINTER_MODE
*Mode
;
93 extern EFI_GUID gEfiSimplePointerProtocolGuid
;