/** @file\r
Simple Pointer protocol from the UEFI 2.0 specification.\r
\r
- Abstraction of a very simple pointer device like a mice or tracekballs.\r
+ Abstraction of a very simple pointer device like a mouse or trackball.\r
\r
- Copyright (c) 2006 - 2008, Intel Corporation \r
- All rights reserved. This program and the accompanying materials \r
- are licensed and made available under the terms and conditions of the BSD License \r
- which accompanies this distribution. The full text of the license may be found at \r
- http://opensource.org/licenses/bsd-license.php \r
-\r
- THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
- WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
+ Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>\r
+ SPDX-License-Identifier: BSD-2-Clause-Patent\r
\r
**/\r
\r
// Data structures\r
//\r
typedef struct {\r
+ ///\r
+ /// The signed distance in counts that the pointer device has been moved along the x-axis.\r
+ ///\r
INT32 RelativeMovementX;\r
+ ///\r
+ /// The signed distance in counts that the pointer device has been moved along the y-axis.\r
+ ///\r
INT32 RelativeMovementY;\r
+ ///\r
+ /// The signed distance in counts that the pointer device has been moved along the z-axis.\r
+ ///\r
INT32 RelativeMovementZ;\r
+ ///\r
+ /// If TRUE, then the left button of the pointer device is being\r
+ /// pressed. If FALSE, then the left button of the pointer device is not being pressed.\r
+ ///\r
BOOLEAN LeftButton;\r
+ ///\r
+ /// If TRUE, then the right button of the pointer device is being\r
+ /// pressed. If FALSE, then the right button of the pointer device is not being pressed.\r
+ ///\r
BOOLEAN RightButton;\r
} EFI_SIMPLE_POINTER_STATE;\r
\r
typedef struct {\r
+ ///\r
+ /// The resolution of the pointer device on the x-axis in counts/mm.\r
+ /// If 0, then the pointer device does not support an x-axis.\r
+ ///\r
UINT64 ResolutionX;\r
+ ///\r
+ /// The resolution of the pointer device on the y-axis in counts/mm.\r
+ /// If 0, then the pointer device does not support an x-axis.\r
+ ///\r
UINT64 ResolutionY;\r
+ ///\r
+ /// The resolution of the pointer device on the z-axis in counts/mm.\r
+ /// If 0, then the pointer device does not support an x-axis.\r
+ ///\r
UINT64 ResolutionZ;\r
+ ///\r
+ /// TRUE if a left button is present on the pointer device. Otherwise FALSE.\r
+ ///\r
BOOLEAN LeftButton;\r
+ ///\r
+ /// TRUE if a right button is present on the pointer device. Otherwise FALSE.\r
+ ///\r
BOOLEAN RightButton;\r
} EFI_SIMPLE_POINTER_MODE;\r
\r
-/** \r
+/**\r
Resets the pointer device hardware.\r
- \r
+\r
@param This A pointer to the EFI_SIMPLE_POINTER_PROTOCOL\r
- instance. \r
+ instance.\r
@param ExtendedVerification Indicates that the driver may perform a more exhaustive\r
- verification operation of the device during reset. \r
- \r
+ verification operation of the device during reset.\r
+\r
@retval EFI_SUCCESS The device was reset.\r
- @retval EFI_DEVICE_ERROR The device is not functioning correctly and could not be reset. \r
- \r
+ @retval EFI_DEVICE_ERROR The device is not functioning correctly and could not be reset.\r
+\r
**/\r
typedef\r
EFI_STATUS\r
IN BOOLEAN ExtendedVerification\r
);\r
\r
-/** \r
+/**\r
Retrieves the current state of a pointer device.\r
- \r
+\r
@param This A pointer to the EFI_SIMPLE_POINTER_PROTOCOL\r
- instance. \r
+ instance.\r
@param State A pointer to the state information on the pointer device.\r
- \r
+\r
@retval EFI_SUCCESS The state of the pointer device was returned in State.\r
@retval EFI_NOT_READY The state of the pointer device has not changed since the last call to\r
- GetState(). \r
+ GetState().\r
@retval EFI_DEVICE_ERROR A device error occurred while attempting to retrieve the pointer device's\r
- current state. \r
- \r
+ current state.\r
+\r
**/\r
typedef\r
EFI_STATUS\r
IN OUT EFI_SIMPLE_POINTER_STATE *State\r
);\r
\r
-/** \r
- @par Protocol Description:\r
- The EFI_SIMPLE_POINTER_PROTOCOL provides a set of services for a pointer \r
- device that can use used as an input device from an application written \r
- to this specification. The services include the ability to reset the \r
- pointer device, retrieve get the state of the pointer device, and \r
- retrieve the capabilities of the pointer device.\r
-**/\r
+///\r
+/// The EFI_SIMPLE_POINTER_PROTOCOL provides a set of services for a pointer\r
+/// device that can use used as an input device from an application written\r
+/// to this specification. The services include the ability to reset the\r
+/// pointer device, retrieve get the state of the pointer device, and\r
+/// retrieve the capabilities of the pointer device.\r
+///\r
struct _EFI_SIMPLE_POINTER_PROTOCOL {\r
EFI_SIMPLE_POINTER_RESET Reset;\r
EFI_SIMPLE_POINTER_GET_STATE GetState;\r
/// Event to use with WaitForEvent() to wait for input from the pointer device.\r
///\r
EFI_EVENT WaitForInput;\r
+ ///\r
+ /// Pointer to EFI_SIMPLE_POINTER_MODE data.\r
+ ///\r
EFI_SIMPLE_POINTER_MODE *Mode;\r
};\r
\r