OpenCore  1.0.4
OpenCore Bootloader
Loading...
Searching...
No Matches
OcBootEntry.h
Go to the documentation of this file.
1
8#ifndef OC_BOOT_ENTRY_PROTOCOL_H
9#define OC_BOOT_ENTRY_PROTOCOL_H
10
11#include <Uefi.h>
13
14#include <Protocol/SimpleFileSystem.h>
15
19#define OC_BOOT_ENTRY_PROTOCOL_GUID \
20 { \
21 0x8604716E, 0xADD4, 0x45B4, { 0x84, 0x95, 0x08, 0xE3, 0x6D, 0x49, 0x7F, 0x4F } \
22 }
23
31#define OC_BOOT_ENTRY_PROTOCOL_REVISION 6
32
37
65typedef
66EFI_STATUS
68 IN OUT OC_PICKER_CONTEXT *PickerContext,
69 IN CONST EFI_HANDLE Device OPTIONAL,
70 OUT OC_PICKER_ENTRY **Entries,
71 OUT UINTN *NumEntries
72 );
73
82typedef
83VOID
85 IN OC_PICKER_ENTRY **Entries,
86 IN UINTN NumEntries
87 );
88
105typedef
106CHAR8 *
108 IN OUT OC_PICKER_CONTEXT *Context,
109 IN UINTN NumKeys,
110 IN APPLE_MODIFIER_MAP Modifiers,
111 IN APPLE_KEY_CODE *Keys
112 );
113
125typedef
126BOOLEAN
128 IN OUT OC_PICKER_CONTEXT *PickerContext,
129 IN EFI_HANDLE BootEntryProtocolHandle,
130 IN OC_BOOT_ENTRY_PROTOCOL *BootEntryProtocol,
131 IN VOID *Context
132 );
133
143VOID
145 IN OUT OC_PICKER_CONTEXT *PickerContext,
146 IN EFI_HANDLE *EntryProtocolHandles,
147 IN UINTN EntryProtocolHandleCount,
149 IN VOID *Context
150 );
151
156 //
157 // Protocol revision.
158 //
159 UINTN Revision;
160 //
161 // Get boot entries. Optional.
162 //
164 //
165 // Free boot entries.
166 // Optional, NULL may set here by a protocol provider if the returned
167 // entries are in statically allocated memory and do not need freeing.
168 //
170 //
171 // Hotkey action. Optional.
172 //
174};
175
176extern EFI_GUID gOcBootEntryProtocolGuid;
177
178#endif // OC_BOOT_ENTRY_PROTOCOL_H
APPLE_HID_USAGE APPLE_KEY_CODE
Definition AppleHid.h:317
UINT16 APPLE_MODIFIER_MAP
Definition AppleHid.h:102
EFI_GUID gOcBootEntryProtocolGuid
BOOLEAN(EFIAPI * OC_CONSUME_ENTRY_PROTOCOL_ACTION)(IN OUT OC_PICKER_CONTEXT *PickerContext, IN EFI_HANDLE BootEntryProtocolHandle, IN OC_BOOT_ENTRY_PROTOCOL *BootEntryProtocol, IN VOID *Context)
EFI_STATUS(EFIAPI * OC_BOOT_ENTRY_PROTOCOL_GET_ENTRIES)(IN OUT OC_PICKER_CONTEXT *PickerContext, IN CONST EFI_HANDLE Device OPTIONAL, OUT OC_PICKER_ENTRY **Entries, OUT UINTN *NumEntries)
Definition OcBootEntry.h:67
VOID(EFIAPI * OC_BOOT_ENTRY_PROTOCOL_FREE_ENTRIES)(IN OC_PICKER_ENTRY **Entries, IN UINTN NumEntries)
Definition OcBootEntry.h:84
VOID OcConsumeBootEntryProtocol(IN OUT OC_PICKER_CONTEXT *PickerContext, IN EFI_HANDLE *EntryProtocolHandles, IN UINTN EntryProtocolHandleCount, IN OC_CONSUME_ENTRY_PROTOCOL_ACTION Action, IN VOID *Context)
CHAR8 *(EFIAPI * OC_BOOT_ENTRY_PROTOCOL_CHECK_HOTKEYS)(IN OUT OC_PICKER_CONTEXT *Context, IN UINTN NumKeys, IN APPLE_MODIFIER_MAP Modifiers, IN APPLE_KEY_CODE *Keys)
OC_BOOT_ENTRY_PROTOCOL_CHECK_HOTKEYS CheckHotKeys
OC_BOOT_ENTRY_PROTOCOL_GET_ENTRIES GetBootEntries
OC_BOOT_ENTRY_PROTOCOL_FREE_ENTRIES FreeBootEntries