中文
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助
鲲鹏小智

RecvData

函数功能

接收服务端传输的数据。

约束说明

NA

函数原型

int32_t RecvData(VMIMsgType type, uint8_t* data, uint32_t length)

参数说明

参数名称

输入/输出

参数类型

参数描述

type

输入

VMIMsgType

参考指令流数据类型定义。

data

输出

uint8_t*

代表接收type类型数据buffer。

length

输入

uint32_t

代表接收type类型数据buffer的长度。

返回值说明

  • 大于0:表示接收到type型数据的长度。
  • VMI_CLIENT_RECV_ORDER_FAIL:表示接收函数执行顺序非法。
  • VMI_CLIENT_RECV_MEMCPY_FAILED:表示接收函数内存拷贝失败。
  • VMI_CLIENT_RECV_LENGTH_NO_MATCH:表示传入的length小于实际接收到数据长度。
  • VMI_CLIENT_RECV_DATA_NULL:表示接收到的数据为空,当前无数据。
  • VMI_CLIENT_RECV_INVALID_PAPAM:表示该函数传入的参数非法。

调用示例

private InstructionEngine engine = new InstructionEngine();
void Test()  
{    
    const int MAX_BUF_LEN =1048576;
    uint8_t *recvBuf = new uint8_t[MAX_BUF_LEN]; 
    while (!stopFlag) { 
        int packetLen = RecvData(VMIMsgType::AUDIO, recvBuf, MAX_BUF_LEN); 
        if (packetLen > 0) { 
            // continue recv data when there is data found 
             …
            continue; 
        } 
     }
}