添加自定义DMA设备 - DmaAddDeviceEx
函数简介
添加自定义 DMA 设备,支持多种设备类型和连接方式。通过连接字符串灵活配置设备参数。(高级版功能,普通版无法使用)
接口名称
DmaAddDeviceEx
DLL调用
int64_t OLA_CALL_TYPE DmaAddDeviceEx(int64_t instance, OLA_STRING_INPUT connectionString);
参数定义:
instance(长整型数): OLAPlug对象的指针,由 CreateCOLAPlugInterFace 接口生成。connectionString(字符串): 设备连接字符串
示例:
// 添加 VMware 虚拟机设备
int64_t deviceId1 = DmaAddDeviceEx(instance, "vmware://rw=1,id=1");
if (deviceId1 >= 0) {
printf("VMware 设备添加成功,设备ID: %lld\n", deviceId1);
}
// 添加 FPGA 设备
int64_t deviceId2 = DmaAddDeviceEx(instance, "fpga://algo=4");
if (deviceId2 >= 0) {
printf("FPGA 设备添加成功,设备ID: %lld\n", deviceId2);
}
// 添加其他自定义设备
int64_t deviceId3 = DmaAddDeviceEx(instance, "custom://param1=value1,param2=value2");
if (deviceId3 >= 0) {
printf("自定义设备添加成功,设备ID: %lld\n", deviceId3);
}
返回值
长整型数:
- 成功: 返回设备ID (>=0)
- 失败: 返回 -1
参数说明
connectionString(连接字符串):
支持的格式:
vmware://rw=1,id=1- VMware 虚拟机设备rw: 读写模式 (0=只读, 1=读写)id: 虚拟机ID
fpga://algo=4- FPGA 设备algo: 算法编号
其他自定义格式根据具体设备类型定义
应用场景
- 添加多种类型的 DMA 设备
- 灵活配置设备连接参数
- 支持自定义设备类型扩展
相关接口
- DmaAddDevice - 添加 VMware DMA 设备
- DmaRemoveDevice - 删除 DMA 设备
