|
|
#include "errorcode.hpp"
#define ERR2STR(code) \
case code: \ return #code;
namespace iflytop { namespace err {
#define ERR_ITERM(enum) \
{ enum, #enum }
static ecode_table_item_t table[] = { ERR_ITERM(ksucc), ERR_ITERM(kfail), ERR_ITERM(kparam_out_of_range), ERR_ITERM(koperation_not_support), ERR_ITERM(kdevice_is_busy), ERR_ITERM(kdevice_is_offline), ERR_ITERM(kovertime), ERR_ITERM(knoack), ERR_ITERM(kerrorack), ERR_ITERM(kdevice_offline), ERR_ITERM(kparse_json_err), ERR_ITERM(ksubdevice_overtime), ERR_ITERM(kbuffer_not_enough), ERR_ITERM(kcmd_not_found), ERR_ITERM(kcmd_param_num_error), ERR_ITERM(kcheckcode_is_error), ERR_ITERM(kcatch_exception), ERR_ITERM(khwardware_error_fan_error), ERR_ITERM(khwardware_error), ERR_ITERM(ksys_error), ERR_ITERM(ksys_create_file_error), ERR_ITERM(ksys_create_dir_error), ERR_ITERM(ksys_open_file_error), ERR_ITERM(ksys_open_dir_error), ERR_ITERM(ksys_read_file_error), ERR_ITERM(ksys_write_file_error), ERR_ITERM(ksys_close_file_error), ERR_ITERM(ksys_close_dir_error), ERR_ITERM(ksys_delete_file_error), ERR_ITERM(ksys_delete_dir_error), ERR_ITERM(ksys_copy_file_error), ERR_ITERM(kmodule_not_inited), ERR_ITERM(kmodule_not_found), ERR_ITERM(kmodule_opeation_break_by_user), ERR_ITERM(kmodule_error), ERR_ITERM(kmodule_not_find_config_index), ERR_ITERM(kmodule_not_find_state_index), ERR_ITERM(kmodule_not_support_action), ERR_ITERM(kmodule_not_find_reg), ERR_ITERM(kmotor_not_found_zero_point), ERR_ITERM(kmotor_did_not_go_zero), ERR_ITERM(kmotor_over_temperature), ERR_ITERM(kmotor_over_voltage), ERR_ITERM(kxymotor_not_found_x_zero_point), ERR_ITERM(kxymotor_not_found_y_zero_point), ERR_ITERM(kxymotor_x_find_zero_edge_fail), ERR_ITERM(kxymotor_y_find_zero_edge_fail), ERR_ITERM(kmotor_run_overtime), ERR_ITERM(kmotor_not_enable), ERR_ITERM(kSMTP2_NoError), ERR_ITERM(kSMTP2_InitFail), ERR_ITERM(kSMTP2_InvalidCmd), ERR_ITERM(kSMTP2_InvalidArg), ERR_ITERM(kSMTP2_PressureSensorError), ERR_ITERM(kSMTP2_OverPressure), ERR_ITERM(kSMTP2_LLDError), ERR_ITERM(kSMTP2_DeviceNotInit), ERR_ITERM(kSMTP2_TipPopError), ERR_ITERM(kSMTP2_PumpOverload), ERR_ITERM(kSMTP2_TipDrop), ERR_ITERM(kSMTP2_CanBusError), ERR_ITERM(kSMTP2_InvalidChecksum), ERR_ITERM(kSMTP2_EEPROMError), ERR_ITERM(kSMTP2_CmdBufferEmpty), ERR_ITERM(kSMTP2_CmdBufferOverflow), ERR_ITERM(kSMTP2_TipBlock), ERR_ITERM(kSMTP2_AirSuction), ERR_ITERM(kSMTP2_Bubble), ERR_ITERM(kSMTP2_VolumeError), ERR_ITERM(kSMTP2_TipAlreadyLoad), ERR_ITERM(kSMTP2_TipLoadFail), ERR_ITERM(kmicro_noErr), ERR_ITERM(kmicro_uartSendFail), ERR_ITERM(kmicro_uartRecvFail), ERR_ITERM(kmicro_adcRecvFail), ERR_ITERM(kstep_motor_not_found_zero_point), ERR_ITERM(kstep_motor_not_go_zero), ERR_ITERM(kstep_motor_over_temperature), ERR_ITERM(kstep_motor_over_voltage), ERR_ITERM(kstep_motor_run_overtime), ERR_ITERM(kstep_motor_not_enable), ERR_ITERM(kstep_motor_ioindex_out_of_range), ERR_ITERM(kstep_motor_subic_reset), ERR_ITERM(kstep_motor_drv_err), ERR_ITERM(kstep_motor_uv_cp), ERR_ITERM(kstep_motor_not_found_point_edge), ERR_ITERM(kmini_servo_not_enable), ERR_ITERM(kmini_servo_mode_not_support), };
const char* error2str(int32_t code) { for (int i = 0; i < sizeof(table) / sizeof(table[0]); i++) { if (table[i].index == code) { return table[i].info; } } return "unknown error"; }
ecode_table_item_t* error_get_table() { return table; } int error_get_table_size() { return sizeof(table) / sizeof(table[0]); }
} // namespace err
} // namespace iflytop
|