#pragma once #include #include #include "errorcode.hpp" namespace iflytop { using namespace std; class ZIModule { public: virtual ~ZIModule() {} virtual int32_t getid(int32_t *id) = 0; virtual int32_t stop() = 0; virtual int32_t brake() = 0; virtual int32_t get_last_exec_status(int32_t *status) = 0; virtual int32_t get_status(int32_t *status) = 0; virtual int32_t set_param( int32_t param_id, int32_t param_value) { return err::kce_operation_not_support; } virtual int32_t get_param( int32_t param_id, int32_t *param_value) { return err::kce_operation_not_support; } virtual int32_t readio(int32_t *io) { return err::kce_operation_not_support; } virtual int32_t writeio(int32_t io) { return err::kce_operation_not_support; } virtual int32_t read_adc(int adcindex, int32_t *adc) { return err::kce_operation_not_support; } }; } // namespace iflytop