OpenCore  1.0.4
OpenCore Bootloader
Loading...
Searching...
No Matches
OcMiscLib.h
Go to the documentation of this file.
1
15#ifndef OC_MISC_LIB_H
16#define OC_MISC_LIB_H
17
18#include <Uefi.h>
19#include <Library/OcStringLib.h>
21
25#define OC_CHAR_BIT 8
26
30#define SECONDS_TO_MICROSECONDS(x) ((x) * 1000000)
31#define MS_TO_MICROSECONDS(x) ((x) * 1000)
32
36#define SECONDS_TO_NANOSECONDS(x) ((x) * 1000000000)
37#define MS_TO_NANOSECONDS(x) ((x) * 1000000)
38
39BOOLEAN
41 IN CONST UINT8 *Pattern,
42 IN CONST UINT8 *PatternMask OPTIONAL,
43 IN CONST UINT32 PatternSize,
44 IN CONST UINT8 *Data,
45 IN UINT32 DataSize,
46 IN OUT UINT32 *DataOff
47 );
48
49UINT32
51 IN CONST UINT8 *Pattern,
52 IN CONST UINT8 *PatternMask OPTIONAL,
53 IN CONST UINT32 PatternSize,
54 IN CONST UINT8 *Replace,
55 IN CONST UINT8 *ReplaceMask OPTIONAL,
56 IN UINT8 *Data,
57 IN UINT32 DataSize,
58 IN UINT32 Count,
59 IN UINT32 Skip
60 );
61
70EFI_STATUS
72 OUT UINTN *Argc,
73 OUT CHAR16 ***Argv
74 );
75
84EFI_STATUS
86 EFI_GUID *Protocol
87 );
88
98EFI_STATUS
100 IN EFI_HANDLE Handle,
101 IN EFI_GUID *Protocol,
102 OUT VOID **Interface
103 );
104
112UINTN
114 IN EFI_GUID *Protocol
115 );
116
133VOID *
135 IN EFI_GUID *Protocol,
136 IN UINTN ErrorLevel,
137 IN CONST CHAR8 *CallerName OPTIONAL,
138 IN CONST CHAR8 *ProtocolName OPTIONAL
139 );
140
150EFI_STATUS
152 IN EFI_DEVICE_PATH_PROTOCOL *DevicePath OPTIONAL,
153 IN VOID *Buffer OPTIONAL,
154 IN UINTN BufferSize,
155 OUT EFI_HANDLE *ImageHandle OPTIONAL,
156 IN CHAR16 *OptionalData OPTIONAL
157 );
158
169EFI_STATUS
172 IN EFI_GUID *DataGuid,
173 IN OUT UINT32 *Size,
174 OUT VOID *Data
175 );
176
187EFI_STATUS
190 IN EFI_GUID *DataGuid,
191 OUT UINT32 *Size,
192 OUT VOID **Data
193 );
194
206EFI_STATUS
209 IN EFI_GUID *DataGuid,
210 IN EFI_GUID *HobGuid,
211 IN OUT UINT32 *Size,
212 OUT VOID *Data
213 );
214
218VOID
220 VOID
221 );
222
234#define _ASSERT_EQUALS(Expression, ExpectedValue) \
235 DebugPrint( \
236 DEBUG_ERROR, \
237 "ASSERT %a(%d): %a (expected: %d, actual: %d)\n", \
238 __FILE__, \
239 __LINE__, \
240 #Expression, \
241 (INTN)(ExpectedValue), \
242 (INTN)(Expression))
243
258#if !defined (MDEPKG_NDEBUG)
259#define ASSERT_EQUALS(Expression, ExpectedValue) \
260 do { \
261 if (DebugAssertEnabled ()) { \
262 if ((Expression) != (ExpectedValue)) { \
263 _ASSERT_EQUALS (Expression, ExpectedValue); \
264 ASSERT(FALSE); \
265 ANALYZER_UNREACHABLE (); \
266 } \
267 } \
268 } while (FALSE)
269#else
270#define ASSERT_EQUALS(Expression, ExpectedValue)
271#endif
272
273#endif // OC_MISC_LIB_H
DMG_SIZE_DEVICE_PATH Size
EFI_STATUS OcUninstallAllProtocolInstances(EFI_GUID *Protocol)
EFI_STATUS OcLoadAndRunImage(IN EFI_DEVICE_PATH_PROTOCOL *DevicePath OPTIONAL, IN VOID *Buffer OPTIONAL, IN UINTN BufferSize, OUT EFI_HANDLE *ImageHandle OPTIONAL, IN CHAR16 *OptionalData OPTIONAL)
Definition ImageRunner.c:25
BOOLEAN FindPattern(IN CONST UINT8 *Pattern, IN CONST UINT8 *PatternMask OPTIONAL, IN CONST UINT32 PatternSize, IN CONST UINT8 *Data, IN UINT32 DataSize, IN OUT UINT32 *DataOff)
Definition DataPatcher.c:82
VOID OcConsoleFlush(VOID)
EFI_STATUS GetArguments(OUT UINTN *Argc, OUT CHAR16 ***Argv)
VOID * OcGetProtocol(IN EFI_GUID *Protocol, IN UINTN ErrorLevel, IN CONST CHAR8 *CallerName OPTIONAL, IN CONST CHAR8 *ProtocolName OPTIONAL)
EFI_STATUS OcHandleProtocolFallback(IN EFI_HANDLE Handle, IN EFI_GUID *Protocol, OUT VOID **Interface)
EFI_STATUS OcReadApplePlatformFirstDataAlloc(IN APPLE_PLATFORM_INFO_DATABASE_PROTOCOL *PlatformInfo, IN EFI_GUID *DataGuid, OUT UINT32 *Size, OUT VOID **Data)
UINT32 ApplyPatch(IN CONST UINT8 *Pattern, IN CONST UINT8 *PatternMask OPTIONAL, IN CONST UINT32 PatternSize, IN CONST UINT8 *Replace, IN CONST UINT8 *ReplaceMask OPTIONAL, IN UINT8 *Data, IN UINT32 DataSize, IN UINT32 Count, IN UINT32 Skip)
UINTN OcCountProtocolInstances(IN EFI_GUID *Protocol)
EFI_STATUS OcReadApplePlatformFirstData(IN APPLE_PLATFORM_INFO_DATABASE_PROTOCOL *PlatformInfo, IN EFI_GUID *DataGuid, IN OUT UINT32 *Size, OUT VOID *Data)
EFI_STATUS OcReadApplePlatformData(IN APPLE_PLATFORM_INFO_DATABASE_PROTOCOL *PlatformInfo, IN EFI_GUID *DataGuid, IN EFI_GUID *HobGuid, IN OUT UINT32 *Size, OUT VOID *Data)
OC_TYPING_BUFFER_ENTRY Buffer[OC_TYPING_BUFFER_SIZE]
Definition OcTypingLib.h:42
APPLE_EVENT_HANDLE Handle
Definition OcTypingLib.h:45