Adding upstream version 6.03~pre1+dfsg.
[syslinux-debian/hramrach.git] / efi32 / include / efi / efiui.h
blob7341943778e9eb53553f24e45779ed1025d2c7f6
1 #ifndef _EFI_UI_H
2 #define _EFI_UI_H
4 /*++
6 Copyright (c) 200 Intel Corporation
8 Module Name:
10 EfiUi.h
12 Abstract:
13 Protocol used to build User Interface (UI) stuff.
15 This protocol is just data. It is a multi dimentional array.
16 For each string there is an array of UI_STRING_ENTRY. Each string
17 is for a different language translation of the same string. The list
18 is terminated by a NULL UiString. There can be any number of
19 UI_STRING_ENTRY arrays. A NULL array terminates the list. A NULL array
20 entry contains all zeros.
22 Thus the shortest possible EFI_UI_PROTOCOL has three UI_STRING_ENTRY.
23 The String, it's NULL terminator, and the NULL terminator for the entire
24 thing.
27 Revision History
29 --*/
31 #define EFI_UI_PROTOCOL \
32 { 0x32dd7981, 0x2d27, 0x11d4, {0xbc, 0x8b, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81} }
35 typedef enum {
36 UiDeviceString,
37 UiVendorString,
38 UiMaxString
39 } UI_STRING_TYPE;
41 typedef struct {
42 ISO_639_2 *LangCode;
43 CHAR16 *UiString;
44 } UI_STRING_ENTRY;
46 #define EFI_UI_VERSION 0x00010000
48 typedef struct _UI_INTERFACE {
49 UINT32 Version;
50 UI_STRING_ENTRY *Entry;
51 } UI_INTERFACE;
54 #endif