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.

42 lines
1.4 KiB

#pragma once
#include <stdint.h>
#include <functional>
#include "errorcode.hpp"
namespace iflytop {
using namespace std;
class ZIModule {
int32_t m_inited_flag = 0;
public:
virtual ~ZIModule() {}
virtual int32_t getid(int32_t *id) = 0;
virtual int32_t module_stop() = 0;
virtual int32_t module_break() = 0;
virtual int32_t module_get_last_exec_status(int32_t *status) = 0;
virtual int32_t module_get_status(int32_t *status) = 0;
virtual int32_t module_get_error(int32_t *iserror) = 0;
virtual int32_t module_clear_error() = 0;
virtual int32_t module_set_param(int32_t param_id, int32_t param_value) { return err::koperation_not_support; }
virtual int32_t module_get_param(int32_t param_id, int32_t *param_value) { return err::koperation_not_support; }
virtual int32_t module_readio(int32_t *io) { return err::koperation_not_support; }
virtual int32_t module_writeio(int32_t io) { return err::koperation_not_support; }
virtual int32_t module_read_adc(int32_t adcindex, int32_t *adc) { return err::koperation_not_support; }
virtual int32_t module_set_inited_flag(int32_t flag) {
m_inited_flag = flag;
return 0;
}
virtual int32_t module_get_inited_flag(int32_t *flag) {
*flag = m_inited_flag;
return 0;
}
};
} // namespace iflytop