zcancmder_v2
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.

41 lines
1.4 KiB

2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
  1. #pragma once
  2. #include <stdint.h>
  3. #include <functional>
  4. #include "errorcode.hpp"
  5. namespace iflytop {
  6. using namespace std;
  7. class ZIModule {
  8. int32_t m_inited_flag = 0;
  9. public:
  10. virtual ~ZIModule() {}
  11. virtual int32_t getid(int32_t *id) = 0;
  12. virtual int32_t module_stop() = 0;
  13. virtual int32_t module_break() = 0;
  14. virtual int32_t module_get_last_exec_status(int32_t *status) = 0;
  15. virtual int32_t module_get_status(int32_t *status) = 0;
  16. virtual int32_t module_get_error(int32_t *iserror) = 0;
  17. virtual int32_t module_clear_error() = 0;
  18. virtual int32_t module_set_param(int32_t param_id, int32_t param_value) { return err::koperation_not_support; }
  19. virtual int32_t module_get_param(int32_t param_id, int32_t *param_value) { return err::koperation_not_support; }
  20. virtual int32_t module_readio(int32_t *io) { return err::koperation_not_support; }
  21. virtual int32_t module_writeio(int32_t io) { return err::koperation_not_support; }
  22. virtual int32_t module_read_adc(int32_t adcindex, int32_t *adc) { return err::koperation_not_support; }
  23. virtual int32_t module_set_inited_flag(int32_t flag) {
  24. m_inited_flag = flag;
  25. return 0;
  26. }
  27. virtual int32_t module_get_inited_flag(int32_t *flag) {
  28. *flag = m_inited_flag;
  29. return 0;
  30. }
  31. };
  32. } // namespace iflytop