3 This file contains the keyboard processing code to the HII database.
5 Copyright (c) 2006 - 2008, Intel Corporation
6 All rights reserved. This program and the accompanying materials
7 are licensed and made available under the terms and conditions of the BSD License
8 which accompanies this distribution. The full text of the license may be found at
9 http://opensource.org/licenses/bsd-license.php
11 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
12 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
17 #include "HiiDatabase.h"
20 GetGuidOfFirstFormset (
21 CONST EFI_HII_FORM_PACKAGE
* FormPackage
24 UINT8
*StartOfNextPackage
;
25 EFI_IFR_OP_HEADER
*OpCodeData
;
27 StartOfNextPackage
= (UINT8
*) FormPackage
+ FormPackage
->Header
.Length
;
28 OpCodeData
= (EFI_IFR_OP_HEADER
*) (FormPackage
+ 1);
30 while ((UINT8
*) OpCodeData
< StartOfNextPackage
) {
31 if (OpCodeData
->OpCode
== EFI_IFR_FORM_SET_OP
) {
32 return &(((EFI_IFR_FORM_SET
*) OpCodeData
)->Guid
);
34 OpCodeData
= (EFI_IFR_OP_HEADER
*) ((UINT8
*) OpCodeData
+ OpCodeData
->Length
);