]> git.proxmox.com Git - mirror_edk2.git/blob - BaseTools/Source/C/Common/EfiUtilityMsgs.h
BaseTools: Replace BSD License with BSD+Patent License
[mirror_edk2.git] / BaseTools / Source / C / Common / EfiUtilityMsgs.h
1 /** @file
2 Defines and prototypes for common EFI utility error and debug messages.
3
4 Copyright (c) 2004 - 2018, Intel Corporation. All rights reserved.<BR>
5 SPDX-License-Identifier: BSD-2-Clause-Patent
6
7 **/
8
9 #ifndef _EFI_UTILITY_MSGS_H_
10 #define _EFI_UTILITY_MSGS_H_
11
12 #include <Common/UefiBaseTypes.h>
13
14 //
15 // Log message print Level
16 //
17 #define VERBOSE_LOG_LEVEL 15
18 #define WARNING_LOG_LEVEL 15
19 #define INFO_LOG_LEVEL 20
20 #define KEY_LOG_LEVEL 40
21 #define ERROR_LOG_LEVLE 50
22
23 //
24 // Status codes returned by EFI utility programs and functions
25 //
26 #define STATUS_SUCCESS 0
27 #define STATUS_WARNING 1
28 #define STATUS_ERROR 2
29 #define VOID void
30
31 typedef int STATUS;
32
33 #define MAX_LINE_LEN 0x200
34 #define MAXIMUM_INPUT_FILE_NUM 10
35
36 #ifdef __cplusplus
37 extern "C" {
38 #endif
39 //
40 // When we call Error() or Warning(), the module keeps track of the worst
41 // case reported. GetUtilityStatus() will get the worst-case results, which
42 // can be used as the return value from the app.
43 //
44 STATUS
45 GetUtilityStatus (
46 VOID
47 );
48
49 //
50 // If someone prints an error message and didn't specify a source file name,
51 // then we print the utility name instead. However they must tell us the
52 // utility name early on via this function.
53 //
54 VOID
55 SetUtilityName (
56 CHAR8 *ProgramName
57 )
58 ;
59
60 VOID
61 PrintMessage (
62 CHAR8 *Type,
63 CHAR8 *FileName,
64 UINT32 LineNumber,
65 UINT32 MessageCode,
66 CHAR8 *Text,
67 CHAR8 *MsgFmt,
68 va_list List
69 );
70
71 VOID
72 Error (
73 CHAR8 *FileName,
74 UINT32 LineNumber,
75 UINT32 ErrorCode,
76 CHAR8 *OffendingText,
77 CHAR8 *MsgFmt,
78 ...
79 )
80 ;
81
82 VOID
83 Warning (
84 CHAR8 *FileName,
85 UINT32 LineNumber,
86 UINT32 WarningCode,
87 CHAR8 *OffendingText,
88 CHAR8 *MsgFmt,
89 ...
90 )
91 ;
92
93 VOID
94 DebugMsg (
95 CHAR8 *FileName,
96 UINT32 LineNumber,
97 UINT64 MsgLevel,
98 CHAR8 *OffendingText,
99 CHAR8 *MsgFmt,
100 ...
101 )
102 ;
103
104 VOID
105 VerboseMsg (
106 CHAR8 *MsgFmt,
107 ...
108 );
109
110 VOID
111 NormalMsg (
112 CHAR8 *MsgFmt,
113 ...
114 );
115
116 VOID
117 KeyMsg (
118 CHAR8 *MsgFmt,
119 ...
120 );
121
122 VOID
123 SetPrintLevel (
124 UINT64 LogLevel
125 );
126
127 VOID
128 ParserSetPosition (
129 CHAR8 *SourceFileName,
130 UINT32 LineNum
131 )
132 ;
133
134 VOID
135 ParserError (
136 UINT32 ErrorCode,
137 CHAR8 *OffendingText,
138 CHAR8 *MsgFmt,
139 ...
140 )
141 ;
142
143 VOID
144 ParserWarning (
145 UINT32 ErrorCode,
146 CHAR8 *OffendingText,
147 CHAR8 *MsgFmt,
148 ...
149 )
150 ;
151
152 VOID
153 SetPrintLimits (
154 UINT32 NumErrors,
155 UINT32 NumWarnings,
156 UINT32 NumWarningsPlusErrors
157 )
158 ;
159
160 #ifdef __cplusplus
161 }
162 #endif
163
164 #endif // #ifndef _EFI_UTILITY_MSGS_H_