Committing changes to the comments, after review with engineers.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9018 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
/** @file
|
||||
This file defines the Human Interface Infrastructure protocol which will
|
||||
be used by resources which want to publish IFR/Font/String data and have it
|
||||
This file defines the Human Interface Infrastructure protocol, which is
|
||||
used by resources that want to publish IFR/Font/String data and have it
|
||||
collected by the Configuration engine. This protocol is defined in the.
|
||||
Intel Platform Innovation Framework for EFI Human Interface Infrastructure
|
||||
Specification Version 0.92.
|
||||
@@ -20,23 +20,10 @@
|
||||
#define _FRAMEWORK_HII_H_
|
||||
|
||||
//
|
||||
// To get EFI_GRAPHICS_OUTPUT_BLT_PIXEL,
|
||||
// is defined in MdePkg/Protocol/GraphicsOutput.h
|
||||
// EFI_GRAPHICS_OUTPUT_BLT_PIXEL is defined in MdePkg/Protocol/GraphicsOutput.h
|
||||
//
|
||||
#include <Protocol/GraphicsOutput.h>
|
||||
|
||||
///
|
||||
/// In both EDK and EDK II, incompatbile change is done to Framework HII protocol.
|
||||
/// This change should cause a change of GUID in both of code and HII spec. But we
|
||||
/// update the GUID in code in EDK and EDK II. The 0.92 spec is not updated. This
|
||||
/// is a known issue.
|
||||
///
|
||||
///
|
||||
/// Note that EFI_HII_PROTOCOL_GUID is different from that defined in the Framework HII
|
||||
/// 0.92 spec because the spec changed part of HII interfaces but did not update the protocol
|
||||
/// GUID.
|
||||
///
|
||||
#define EFI_HII_PROTOCOL_GUID \
|
||||
////// In both EDK and EDK II, incompatbile change is done to Framework HII protocol. /// This change should cause a change of GUID in both of code and HII spec. But we /// update the GUID in code in EDK and EDK II. The 0.92 spec is not updated. This/// is a known issue.///////// Note that EFI_HII_PROTOCOL_GUID is different from that defined in the Framework HII/// 0.92 spec because the spec changed part of HII interfaces but did not update the protocol/// GUID.///#define EFI_HII_PROTOCOL_GUID \
|
||||
{ \
|
||||
0xd7ad636e, 0xb997, 0x459b, {0xbf, 0x3f, 0x88, 0x46, 0x89, 0x79, 0x80, 0xe1} \
|
||||
}
|
||||
@@ -90,11 +77,7 @@ typedef struct {
|
||||
UINT16 Type; ///< The type of the package.
|
||||
} EFI_HII_PACK_HEADER;
|
||||
|
||||
///
|
||||
/// IFR package structure.
|
||||
/// Immediately following the EFI_HII_IFR_PACK structure will be a series of IFR opcodes.
|
||||
///
|
||||
typedef struct {
|
||||
////// IFR package structure./// Immediately following the EFI_HII_IFR_PACK structure will be a series of IFR opcodes. ///typedef struct {
|
||||
EFI_HII_PACK_HEADER Header; ///< Header of the IFR package.
|
||||
} EFI_HII_IFR_PACK;
|
||||
|
||||
@@ -102,15 +85,7 @@ typedef struct {
|
||||
/// HII Handle package structure.
|
||||
///
|
||||
typedef struct {
|
||||
///
|
||||
/// Header of the package.
|
||||
///
|
||||
EFI_HII_PACK_HEADER Header; // Must be filled in
|
||||
///
|
||||
/// The image handle of the driver to which the package is referring.
|
||||
///
|
||||
EFI_HANDLE ImageHandle; // Must be filled in
|
||||
///
|
||||
/// /// Header of the package. /// EFI_HII_PACK_HEADER Header; // Must be filled in /// /// The image handle of the driver to which the package is referring. /// EFI_HANDLE ImageHandle; // Must be filled in ///
|
||||
/// The handle of the device that is being described by this package.
|
||||
///
|
||||
EFI_HANDLE DeviceHandle; // Optional
|
||||
@@ -279,18 +254,7 @@ typedef struct {
|
||||
//
|
||||
#define LANG_RIGHT_TO_LEFT 0x00000001
|
||||
|
||||
///
|
||||
/// A string package is used to localize strings to a particular
|
||||
/// language. The package is associated with a particular driver
|
||||
/// or set of drivers. Tools are used to associate tokens with
|
||||
/// string references in forms and in programs. These tokens are
|
||||
/// language agnostic. When paired with a language pack (directly
|
||||
/// or indirectly), the string token resolves into an actual
|
||||
/// UNICODE string. The NumStringPointers determines how many
|
||||
/// StringPointers (offset values) there are as well as the total
|
||||
/// number of Strings that are defined.
|
||||
///
|
||||
typedef struct {
|
||||
////// A string package is used to localize strings to a particular/// language. The package is associated with a particular driver/// or set of drivers. Tools are used to associate tokens with/// string references in forms and in programs. These tokens are/// language agnostic. When paired with a language pack (directly/// or indirectly), the string token resolves into an actual/// UNICODE string. The NumStringPointers determines how many/// StringPointers (offset values) there are as well as the total/// number of Strings that are defined.///typedef struct {
|
||||
///
|
||||
/// Header of the package.
|
||||
///
|
||||
@@ -342,14 +306,7 @@ typedef struct {
|
||||
//EFI_WIDE_GLYPH WideGlyphs[];
|
||||
} EFI_HII_FONT_PACK;
|
||||
|
||||
///
|
||||
/// The definition of a specific physical key
|
||||
///
|
||||
/// Note: Name difference between code and the Framework HII 0.92 spec.
|
||||
/// Add FRAMEWORK_ prefix to avoid name confict with EFI_KEY_DESCRIPTOR defined in the
|
||||
/// UEFI 2.1d spec.
|
||||
///
|
||||
typedef struct {
|
||||
////// The definition of a specific physical key////// Note: Name difference between code and the Framework HII 0.92 spec./// Add FRAMEWORK_ prefix to avoid name confict with EFI_KEY_DESCRIPTOR defined in the/// UEFI 2.1d spec.///typedef struct {
|
||||
///
|
||||
/// Used to describe a physical key on a keyboard.
|
||||
///
|
||||
@@ -376,20 +333,7 @@ typedef struct {
|
||||
UINT16 Modifier;
|
||||
} FRAMEWORK_EFI_KEY_DESCRIPTOR;
|
||||
|
||||
///
|
||||
/// This structure allows a sparse set of keys to be redefined
|
||||
/// or a complete redefinition of the keyboard layout. Most
|
||||
/// keyboards have a lot of commonality in their layouts, therefore
|
||||
/// only defining those keys that need to change from the default
|
||||
/// minimizes the passed in information.
|
||||
///
|
||||
/// Additionally, when an update occurs, the active keyboard layout
|
||||
/// will be switched to the newly updated keyboard layout. This
|
||||
/// allows for situations that when a keyboard layout driver is
|
||||
/// loaded as part of system initialization, the system will default
|
||||
/// the keyboard behavior to the new layout.
|
||||
///
|
||||
typedef struct {
|
||||
////// This structure allows a sparse set of keys to be redefined/// or a complete redefinition of the keyboard layout. Most/// keyboards have a lot of commonality in their layouts, therefore/// only defining those keys that need to change from the default/// minimizes the passed in information.////// Additionally, when an update occurs, the active keyboard layout/// will be switched to the newly updated keyboard layout. This/// allows for situations that when a keyboard layout driver is/// loaded as part of system initialization, the system will default/// the keyboard behavior to the new layout.///typedef struct {
|
||||
///
|
||||
/// Header of the package.
|
||||
EFI_HII_PACK_HEADER Header;
|
||||
@@ -514,9 +458,9 @@ EFI_STATUS
|
||||
Exports the contents of the database into a buffer.
|
||||
|
||||
@param This A pointer to the EFI_HII_PROTOCOL instance.
|
||||
@param Handle An FRAMEWORK_EFI_HII_HANDLE that corresponds to the desired
|
||||
@param Handle A FRAMEWORK_EFI_HII_HANDLE that corresponds to the desired
|
||||
handle to export. If the value is 0, the entire database will be exported.
|
||||
In either case, the data will be exported in a format described by the
|
||||
The data is exported in a format described by the
|
||||
structure definition of EFI_HII_EXPORT_TABLE.
|
||||
@param BufferSize
|
||||
On input, a pointer to the length of the buffer. On output, the length
|
||||
@@ -543,7 +487,7 @@ EFI_STATUS
|
||||
@param This A pointer to the EFI_HII_PROTOCOL instance.
|
||||
@param Handle The handle on which the string resides.
|
||||
|
||||
@retval EFI_SUCCESS Remove strings from the handle successfully.
|
||||
@retval EFI_SUCCESS Successfully removed strings from the handle.
|
||||
@retval EFI_INVALID_PARAMETER The Handle was unknown.
|
||||
|
||||
**/
|
||||
@@ -591,7 +535,7 @@ EFI_STATUS
|
||||
@param This A pointer to the EFI_HII_PROTOCOL instance.
|
||||
@param Source A pointer to a Unicode string.
|
||||
@param Index On input, the offset into the string from which to fetch
|
||||
the character.On successful completion, the index is updated to the first
|
||||
the character. On successful completion, the index is updated to the first
|
||||
character past the character(s) making up the just extracted glyph.
|
||||
@param GlyphBuffer Pointer to an array where the glyphs corresponding
|
||||
to the characters in the source may be stored. GlyphBuffer is assumed
|
||||
@@ -636,8 +580,8 @@ EFI_STATUS
|
||||
@retval EFI_SUCCESS It worked.
|
||||
@retval EFI_NOT_FOUND A glyph for a character was not found.
|
||||
@note: Inconsistent with specification here:
|
||||
In Framework Spec,HII spec 0.92. The type of 3rd, 4th and 8th parameter is EFI_UGA_PIXEL.
|
||||
Here the definition use the EFI_GRAPHICS_OUTPUT_BLT_PIXEL which defined in UEFI2.1 spec
|
||||
In Framework Spec, HII spec 0.92. The type of 3rd, 4th and 8th parameter is EFI_UGA_PIXEL.
|
||||
Here the definition uses the EFI_GRAPHICS_OUTPUT_BLT_PIXEL, which is defined in UEFI 2.1 spec
|
||||
**/
|
||||
typedef
|
||||
EFI_STATUS
|
||||
@@ -838,7 +782,7 @@ EFI_STATUS
|
||||
@param Handle The HII handle from which will have default data retrieved.
|
||||
@param DefaultMask The mask used to specify some type of default override when extracting
|
||||
the default image data.
|
||||
@param VariablePackList A indirect pointer to the first entry of a link list with
|
||||
@param VariablePackList An indirect pointer to the first entry of a link list with
|
||||
type EFI_HII_VARIABLE_PACK_LIST.
|
||||
|
||||
@retval EFI_SUCCESS The VariablePackList was populated with the appropriate
|
||||
|
Reference in New Issue
Block a user