Subversion Repositories HelenOS

Compare Revisions

Ignore whitespace Rev 2781 → Rev 2782

/tags/0.3.0/boot/arch/ia64/loader/gefi/inc/efiui.h
0,0 → 1,54
#ifndef _EFI_UI_H
#define _EFI_UI_H
 
/*++
 
Copyright (c) 200 Intel Corporation
 
Module Name:
 
EfiUi.h
Abstract:
Protocol used to build User Interface (UI) stuff.
 
This protocol is just data. It is a multi dimentional array.
For each string there is an array of UI_STRING_ENTRY. Each string
is for a different language translation of the same string. The list
is terminated by a NULL UiString. There can be any number of
UI_STRING_ENTRY arrays. A NULL array terminates the list. A NULL array
entry contains all zeros.
 
Thus the shortest possible EFI_UI_PROTOCOL has three UI_STRING_ENTRY.
The String, it's NULL terminator, and the NULL terminator for the entire
thing.
 
 
Revision History
 
--*/
 
#define EFI_UI_PROTOCOL \
{ 0x32dd7981, 0x2d27, 0x11d4, {0xbc, 0x8b, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81} }
 
 
typedef enum {
UiDeviceString,
UiVendorString,
UiMaxString
} UI_STRING_TYPE;
 
typedef struct {
ISO_639_2 *LangCode;
CHAR16 *UiString;
} UI_STRING_ENTRY;
 
#define EFI_UI_VERSION 0x00010000
 
typedef struct _UI_INTERFACE {
UINT32 Version;
UI_STRING_ENTRY *Entry;
} UI_INTERFACE;
 
 
#endif