5#include <unordered_map>
10static const std::unordered_map<int, const char *>
levelNames = {
11 {0,
"Success"}, {1,
"Info"}, {0x1F,
"Fatal"}, {0x1E,
"Reset"}, {0x1D,
"Reinitialize"}, {0x1C,
"Usage"}, {0x1B,
"Permanent"}, {0x1A,
"Temporary"}, {0x19,
"Status"}};
17 {3,
"Out of resource"},
21 {7,
"Invalid argument"},
22 {8,
"Wrong argument"},
24 {10,
"Status changed"},
26 {63,
"Invalid result value"}};
28static const std::unordered_map<int, const char *>
moduleNames = {
125 {254,
"Application"},
130 {0x3FF,
"Invalid result value"},
132 {0x3FD,
"Out of range"},
133 {0x3FC,
"Already exists"},
134 {0x3FB,
"Cancel requested"},
135 {0x3FA,
"Not found"},
136 {0x3F9,
"Already initialized"},
137 {0x3F8,
"Not initialized"},
138 {0x3F7,
"Invalid handle"},
139 {0x3F6,
"Invalid pointer"},
140 {0x3F5,
"Invalid address"},
141 {0x3F4,
"Not implemented"},
142 {0x3F3,
"Out of memory"},
143 {0x3F2,
"Misaligned size"},
144 {0x3F1,
"Misaligned address"},
147 {0x3EE,
"Invalid combination"},
148 {0x3ED,
"Invalid enum value"},
149 {0x3EC,
"Invalid size"},
150 {0x3EB,
"Already done"},
151 {0x3EA,
"Not authorized"},
152 {0x3E9,
"Too large"},
153 {0x3E8,
"Invalid selection"}};
156 int lvl = R_LEVEL(res);
157 int sum = R_SUMMARY(res);
158 int mod = R_MODULE(res);
159 int desc = R_DESCRIPTION(res);
165 const char *descStr =
169 snprintf(buf,
sizeof(buf),
172 " Summary: %s (%d)\n"
174 " Description: %s (%d)",
175 res, lvlStr, lvl, sumStr, sum, modStr, mod, descStr, desc);
177 return std::string(buf);
180inline void show(Result res,
bool softwareReset =
false) {
182 errorInit(&err, ERROR_TEXT_WORD_WRAP, CFG_LANGUAGE_EN);
183 err.softwareReset = softwareReset;
184 std::string msg =
decode(res);
185 errorText(&err, msg.c_str());
189inline void show(
const char *msg,
bool softwareReset =
false) {
191 errorInit(&err, ERROR_TEXT_WORD_WRAP, CFG_LANGUAGE_EN);
192 err.softwareReset = softwareReset;
193 errorText(&err, msg);
static const std::unordered_map< int, const char * > descriptionNames
Definition errors.hpp:128
void show(Result res, bool softwareReset=false)
Definition errors.hpp:180
std::string decode(Result res)
Definition errors.hpp:155
static const std::unordered_map< int, const char * > levelNames
Definition errors.hpp:10
static const std::unordered_map< int, const char * > moduleNames
Definition errors.hpp:28
static const std::unordered_map< int, const char * > summaryNames
Definition errors.hpp:13