You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

117 lines
3.8 KiB

2 years ago
2 years ago
2 years ago
1 year ago
1 year ago
1 year ago
2 years ago
1 year ago
2 years ago
1 year ago
2 years ago
1 year ago
1 year ago
1 year ago
2 years ago
2 years ago
  1. #include "errorcode.hpp"
  2. #define ERR2STR(code) \
  3. case code: \
  4. return #code;
  5. namespace iflytop {
  6. namespace err {
  7. #define ERR_ITERM(enum) \
  8. { enum, #enum }
  9. static ecode_table_item_t table[] = {
  10. ERR_ITERM(ksucc),
  11. ERR_ITERM(kfail),
  12. ERR_ITERM(kparam_out_of_range),
  13. ERR_ITERM(koperation_not_support),
  14. ERR_ITERM(kdevice_is_busy),
  15. ERR_ITERM(kdevice_is_offline),
  16. ERR_ITERM(kovertime),
  17. ERR_ITERM(knoack),
  18. ERR_ITERM(kerrorack),
  19. ERR_ITERM(kdevice_offline),
  20. ERR_ITERM(kparse_json_err),
  21. ERR_ITERM(ksubdevice_overtime),
  22. ERR_ITERM(kbuffer_not_enough),
  23. ERR_ITERM(kcmd_not_found),
  24. ERR_ITERM(kcmd_param_num_error),
  25. ERR_ITERM(kcheckcode_is_error),
  26. ERR_ITERM(kcatch_exception),
  27. ERR_ITERM(khwardware_error_fan_error),
  28. ERR_ITERM(khwardware_error),
  29. ERR_ITERM(ksys_error),
  30. ERR_ITERM(ksys_create_file_error),
  31. ERR_ITERM(ksys_create_dir_error),
  32. ERR_ITERM(ksys_open_file_error),
  33. ERR_ITERM(ksys_open_dir_error),
  34. ERR_ITERM(ksys_read_file_error),
  35. ERR_ITERM(ksys_write_file_error),
  36. ERR_ITERM(ksys_close_file_error),
  37. ERR_ITERM(ksys_close_dir_error),
  38. ERR_ITERM(ksys_delete_file_error),
  39. ERR_ITERM(ksys_delete_dir_error),
  40. ERR_ITERM(ksys_copy_file_error),
  41. ERR_ITERM(kmodule_not_inited),
  42. ERR_ITERM(kmodule_not_found),
  43. ERR_ITERM(kmodule_opeation_break_by_user),
  44. ERR_ITERM(kmodule_error),
  45. ERR_ITERM(kmodule_not_find_config_index),
  46. ERR_ITERM(kmodule_not_find_state_index),
  47. ERR_ITERM(kmodule_not_support_action),
  48. ERR_ITERM(kmodule_not_find_reg),
  49. ERR_ITERM(kmotor_not_found_zero_point),
  50. ERR_ITERM(kmotor_did_not_go_zero),
  51. ERR_ITERM(kmotor_over_temperature),
  52. ERR_ITERM(kmotor_over_voltage),
  53. ERR_ITERM(kxymotor_not_found_x_zero_point),
  54. ERR_ITERM(kxymotor_not_found_y_zero_point),
  55. ERR_ITERM(kxymotor_x_find_zero_edge_fail),
  56. ERR_ITERM(kxymotor_y_find_zero_edge_fail),
  57. ERR_ITERM(kmotor_run_overtime),
  58. ERR_ITERM(kmotor_not_enable),
  59. ERR_ITERM(kSMTP2_NoError),
  60. ERR_ITERM(kSMTP2_InitFail),
  61. ERR_ITERM(kSMTP2_InvalidCmd),
  62. ERR_ITERM(kSMTP2_InvalidArg),
  63. ERR_ITERM(kSMTP2_PressureSensorError),
  64. ERR_ITERM(kSMTP2_OverPressure),
  65. ERR_ITERM(kSMTP2_LLDError),
  66. ERR_ITERM(kSMTP2_DeviceNotInit),
  67. ERR_ITERM(kSMTP2_TipPopError),
  68. ERR_ITERM(kSMTP2_PumpOverload),
  69. ERR_ITERM(kSMTP2_TipDrop),
  70. ERR_ITERM(kSMTP2_CanBusError),
  71. ERR_ITERM(kSMTP2_InvalidChecksum),
  72. ERR_ITERM(kSMTP2_EEPROMError),
  73. ERR_ITERM(kSMTP2_CmdBufferEmpty),
  74. ERR_ITERM(kSMTP2_CmdBufferOverflow),
  75. ERR_ITERM(kSMTP2_TipBlock),
  76. ERR_ITERM(kSMTP2_AirSuction),
  77. ERR_ITERM(kSMTP2_Bubble),
  78. ERR_ITERM(kSMTP2_VolumeError),
  79. ERR_ITERM(kSMTP2_TipAlreadyLoad),
  80. ERR_ITERM(kSMTP2_TipLoadFail),
  81. ERR_ITERM(kmicro_noErr),
  82. ERR_ITERM(kmicro_uartSendFail),
  83. ERR_ITERM(kmicro_uartRecvFail),
  84. ERR_ITERM(kmicro_adcRecvFail),
  85. ERR_ITERM(kstep_motor_not_found_zero_point),
  86. ERR_ITERM(kstep_motor_not_go_zero),
  87. ERR_ITERM(kstep_motor_over_temperature),
  88. ERR_ITERM(kstep_motor_over_voltage),
  89. ERR_ITERM(kstep_motor_run_overtime),
  90. ERR_ITERM(kstep_motor_not_enable),
  91. ERR_ITERM(kstep_motor_ioindex_out_of_range),
  92. ERR_ITERM(kstep_motor_subic_reset),
  93. ERR_ITERM(kstep_motor_drv_err),
  94. ERR_ITERM(kstep_motor_uv_cp),
  95. ERR_ITERM(kstep_motor_not_found_point_edge),
  96. ERR_ITERM(kmini_servo_not_enable),
  97. ERR_ITERM(kmini_servo_mode_not_support),
  98. };
  99. const char* error2str(int32_t code) {
  100. for (int i = 0; i < sizeof(table) / sizeof(table[0]); i++) {
  101. if (table[i].index == code) {
  102. return table[i].info;
  103. }
  104. }
  105. return "unknown error";
  106. }
  107. ecode_table_item_t* error_get_table() { return table; }
  108. int error_get_table_size() { return sizeof(table) / sizeof(table[0]); }
  109. } // namespace err
  110. } // namespace iflytop