#pragma once namespace iflytop { namespace err { using namespace std; #define ERROR_CODE(errortype, suberrorcode) (errortype + suberrorcode) typedef enum { ksucc = ERROR_CODE(0, 0), kfail = ERROR_CODE(0, 1), /** * @brief 通信错误 */ kce_overtime = ERROR_CODE(1000, 0), kce_noack = ERROR_CODE(1000, 1), kce_errorack = ERROR_CODE(1000, 2), kce_device_offline = ERROR_CODE(1000, 3), kce_parse_json_err = ERROR_CODE(1000, 4), kce_subdevice_overtime = ERROR_CODE(1000, 5), /** * @brief 数据库错误 */ kdbe_user_not_exist = ERROR_CODE(2000, 0), kdbe_catch_exception = ERROR_CODE(2000, 1), /** * @brief 硬件错误 */ kharde_unfound = ERROR_CODE(3000, 0), /** * @brief 程序运行错误 */ kre_catch_exception = ERROR_CODE(4000, 0), /** * @brief 应用交互基本错误 */ kinteraction_error_passwd_error = ERROR_CODE(5000, 0), // 密码错误 kinteraction_error_user_not_exist = ERROR_CODE(5000, 1), // 用户不存在 /** * @brief 系统错误 */ ksys_error = ERROR_CODE(6000, 0), ksys_create_file_error = ERROR_CODE(6000, 1), ksys_create_dir_error = ERROR_CODE(6000, 2), ksys_open_file_error = ERROR_CODE(6000, 3), ksys_open_dir_error = ERROR_CODE(6000, 4), ksys_read_file_error = ERROR_CODE(6000, 5), ksys_write_file_error = ERROR_CODE(6000, 6), ksys_close_file_error = ERROR_CODE(6000, 7), ksys_close_dir_error = ERROR_CODE(6000, 8), ksys_delete_file_error = ERROR_CODE(6000, 9), ksys_delete_dir_error = ERROR_CODE(6000, 10), ksys_copy_file_error = ERROR_CODE(6000, 11), /** * @brief STMP2错误 */ kSMTP2_NoError = ERROR_CODE(10000, 0), // 无错误 kSMTP2_InitFail = ERROR_CODE(10000, 1), // 初始化失败 kSMTP2_InvalidCmd = ERROR_CODE(10000, 2), // 无效命令 kSMTP2_InvalidArg = ERROR_CODE(10000, 3), // 无效参数 kSMTP2_PressureSensorError = ERROR_CODE(10000, 4), // 压力传感器故障 kSMTP2_OverPressure = ERROR_CODE(10000, 5), // 超过压力 kSMTP2_LLDError = ERROR_CODE(10000, 6), // LLD 错误 kSMTP2_DeviceNotInit = ERROR_CODE(10000, 7), // 设备未初始化 kSMTP2_TipPopError = ERROR_CODE(10000, 8), // Tip 弹出错误 kSMTP2_PumpOverload = ERROR_CODE(10000, 9), // 泵过载 kSMTP2_TipDrop = ERROR_CODE(10000, 10), // Tip 脱落 kSMTP2_CanBusError = ERROR_CODE(10000, 11), // CAN 总线故障 kSMTP2_InvalidChecksum = ERROR_CODE(10000, 12), // 无效校验和 kSMTP2_EEPROMError = ERROR_CODE(10000, 13), // EEPROM 故障 kSMTP2_CmdBufferEmpty = ERROR_CODE(10000, 14), // 命令缓冲区为空 kSMTP2_CmdBufferOverflow = ERROR_CODE(10000, 15), // 命令溢出 kSMTP2_TipBlock = ERROR_CODE(10000, 16), // Tip 堵塞 kSMTP2_AirSuction = ERROR_CODE(10000, 17), // 吸入空气 kSMTP2_Bubble = ERROR_CODE(10000, 18), // 液体中有气泡/泡沫 kSMTP2_VolumeError = ERROR_CODE(10000, 19), // 吸取/分配量不准确 /** * @brief 50000通用 */ kcommon_error_device_not_zero = ERROR_CODE(50000, 0), // 设备未归零 kcommon_error_over_temperature = ERROR_CODE(50000, 1), // 过温 kcommon_error_over_voltage = ERROR_CODE(50000, 2), // 过压 kcommon_error_param_out_of_range = ERROR_CODE(50000, 3), // 参数超出范围 kcommon_error_not_found_zero_point = ERROR_CODE(50000, 4), // 未找到零点 kcommon_error_not_found_x_zero_point = ERROR_CODE(50000, 5), // 未找到零点 kcommon_error_not_found_y_zero_point = ERROR_CODE(50000, 6), // 未找到零点 kcommon_error_x_leave_away_zero_point_fail = ERROR_CODE(50000, 7), // 离开零点失败 kcommon_error_y_leave_away_zero_point_fail = ERROR_CODE(50000, 8), // 离开零点失败 kcommon_error_operation_not_support = ERROR_CODE(50000, 9), // 操作不支持 kcommon_error_device_is_busy = ERROR_CODE(50000, 10), // 设备忙 kcommon_error_device_is_offline = ERROR_CODE(50000, 11), // 设备离线 kcommon_error_break_by_user = ERROR_CODE(50000, 12), // 用户中断 } error_t; } // namespace err } // namespace iflytop