|
|
@ -117,6 +117,16 @@ void ZCanProtocolParser::initialize(IZCanReceiver* cancmder) { |
|
|
|
|
|
|
|
REGFN(a8000_optical_start_capture); |
|
|
|
REGFN(a8000_optical_read_raw); |
|
|
|
|
|
|
|
REGFN(a8k_opt_v2_t_start_scan); |
|
|
|
REGFN(a8k_opt_v2_f_start_scan); |
|
|
|
REGFN(a8k_opt_v2_t_open_laster); |
|
|
|
REGFN(a8k_opt_v2_t_close_laster); |
|
|
|
REGFN(a8k_opt_v2_t_readVal); |
|
|
|
REGFN(a8k_opt_v2_f_open_laster); |
|
|
|
REGFN(a8k_opt_v2_f_close_laster); |
|
|
|
REGFN(a8k_opt_v2_f_readVal); |
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
REGFN(a8000_idcard_reader_read_raw); |
|
|
@ -144,7 +154,7 @@ void ZCanProtocolParser::registerModule(ZIModule* module) { |
|
|
|
void ZCanProtocolParser::onRceivePacket(zcr_cmd_header_t* rxcmd, uint8_t* data, int32_t len) { |
|
|
|
// printf("onRceivePacket cmdid:%d moduleid:%d cmdSubId:%d\n", rxcmd->cmdMainId, rxcmd->moduleid, rxcmd->cmdSubId);
|
|
|
|
uint16_t moduleid = rxcmd->moduleid; |
|
|
|
auto it = m_modulers.find(moduleid); |
|
|
|
auto it = m_modulers.find(moduleid); |
|
|
|
if (it == m_modulers.end()) { |
|
|
|
return; |
|
|
|
} |
|
|
@ -752,6 +762,45 @@ int32_t ZCanProtocolParser::a8000_optical_read_raw(cmdcontxt_t* cxt) { |
|
|
|
return suc; |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
int32_t ZCanProtocolParser::a8k_opt_v2_t_start_scan(cmdcontxt_t* cxt) { |
|
|
|
CHECK_AND_GET_MODULE(3); |
|
|
|
return module->a8k_opt_v2_t_start_scan(cxt->params[0], cxt->params[1], cxt->params[2]); |
|
|
|
} |
|
|
|
int32_t ZCanProtocolParser::a8k_opt_v2_f_start_scan(cmdcontxt_t* cxt) { |
|
|
|
CHECK_AND_GET_MODULE(3); |
|
|
|
return module->a8k_opt_v2_f_start_scan(cxt->params[0], cxt->params[1], cxt->params[2]); |
|
|
|
} |
|
|
|
int32_t ZCanProtocolParser::a8k_opt_v2_t_open_laster(cmdcontxt_t* cxt) { |
|
|
|
CHECK_AND_GET_MODULE(2); |
|
|
|
return module->a8k_opt_v2_t_open_laster(cxt->params[0], cxt->params[1]); |
|
|
|
} |
|
|
|
int32_t ZCanProtocolParser::a8k_opt_v2_t_close_laster(cmdcontxt_t* cxt) { |
|
|
|
CHECK_AND_GET_MODULE(0); |
|
|
|
return module->a8k_opt_v2_t_close_laster(); |
|
|
|
} |
|
|
|
int32_t ZCanProtocolParser::a8k_opt_v2_t_readVal(cmdcontxt_t* cxt) { |
|
|
|
CHECK_AND_GET_MODULE(0); |
|
|
|
int32_t* ack = (int32_t*)cxt->ackbuf; |
|
|
|
cxt->acklen = 8; |
|
|
|
return module->a8k_opt_v2_t_readVal(&ack[0], &ack[1]); |
|
|
|
} |
|
|
|
int32_t ZCanProtocolParser::a8k_opt_v2_f_open_laster(cmdcontxt_t* cxt) { |
|
|
|
CHECK_AND_GET_MODULE(2); |
|
|
|
return module->a8k_opt_v2_f_open_laster(cxt->params[0], cxt->params[1]); |
|
|
|
} |
|
|
|
int32_t ZCanProtocolParser::a8k_opt_v2_f_close_laster(cmdcontxt_t* cxt) { |
|
|
|
CHECK_AND_GET_MODULE(0); |
|
|
|
return module->a8k_opt_v2_f_close_laster(); |
|
|
|
} |
|
|
|
int32_t ZCanProtocolParser::a8k_opt_v2_f_readVal(cmdcontxt_t* cxt) { |
|
|
|
CHECK_AND_GET_MODULE(0); |
|
|
|
int32_t* ack = (int32_t*)cxt->ackbuf; |
|
|
|
cxt->acklen = 8; |
|
|
|
return module->a8k_opt_v2_f_readVal(&ack[0], &ack[1]); |
|
|
|
} |
|
|
|
|
|
|
|
#undef MODULE_CLASS
|
|
|
|
|
|
|
|
#define MODULE_CLASS ZIA8000IDCardReaderModule
|
|
|
|