我正在尝试编写一个简单的控制组件,它允许我通过黑板启动 USRP_UHD 设备。我目前的环境是 CentOS 6.4 和 Redhawk 1.9.0。
我编写的组件使用 DigitalTuner_out 端口,并且我在属性更改侦听器中编写了代码,以在通过我的自定义组件更改中心频率时调用 USRP_UHD 设备上的 setTunerCenterFrequency 函数。我可以使用 SCA 资源管理器中的端口连接它们。
问题是即使在我将 USRP_UHD 设备中的 update_available_usrp_seq 属性设置为 true 并让它完成加载之后,也没有分配调谐器。我知道我必须使用前端调谐器分配结构调用 USRP_UHD 设备 allocateCapacity 函数。我已经为 DeviceKind = FRONTEND 添加了分配属性依赖项。当我使用 USRP_UHD 添加依赖项时,只有设备类型和设备型号显示在列表中。
如何通过 IDE 执行对 allocateCapacity 函数的调用?如果这是可能的,那么我如何获取分配给控制组件使用的调谐器的 ID 字符串?我的猜测是我会使用 ConnectionID,它是 UsesConnection 结构的一部分,可以从调用 DigitalTuner_out->connections() 返回的 UsesConnectionSequence 中检索。