问题标签 [opendds]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
313 浏览

java - DDS IDL 编译器

我正在使用 IDL 为使用 OpenDDS 的应用程序定义数据。

我还想使用 IDL 来定义应用程序的接口,但 OpenDDS(以及似乎大多数其他 DDS 实现)不支持 IDL 中的接口。

是否有任何编译器可以从 IDL 接口生成简单的存根?我需要它至少支持 C++ 和 Java。

作为 CORBA ORB 一部分的所有 IDL 编译器都会生成大量 CORBA 特定的代码和样板。我想要一些从 IDL 到 C++/Java/等的简单映射的东西。例如,如果我有这个 IDL:

我希望编译器在 C++ 中生成这样的文件:

0 投票
0 回答
65 浏览

c++ - OpenDDS 入门 - 创建在设备之间传输数据的文件

在阅读了 OpenDDS 网站上列出的开发人员指南之后,我仍然对如何设置自己的项目以允许定义的数据类型从发布者传输到订阅者感到困惑。文档中提供的 Messenger 示例未指定清单中的哪些文件是由于构建而创建的,以及哪些文件是由开发人员创建的。根据我目前的理解,DataType.idl、publisher.cpp 和subscriber.cpp 必须由开发人员编写,其余文件是使用 ACE/TAO 从构建系统创建的?

我将我的数据类型全部编码在 idl 文件中,并且正在处理发布者和订阅者,但我不确切知道构建项目需要哪些其他文件。我正在考虑使用 MPC,因为这是他们开发人员指南中记录更多的构建系统,但是有人可以帮助我确定作为开发人员需要设置哪些其他文件吗?

0 投票
1 回答
62 浏览

data-distribution-service - 如何使 OpenDDS DCPSInfoRepo 持久化?

我一直在尝试找到一个解决方案,如果重新启动 OpenDDS 的 DCPSInfoRepo,现有的发布者和订阅者不会重新连接。我在开发人员指南中找到了一种方法,上面写着:

以下指令: static PersistenceUpdater_Static_Service "-file info.pr -reset 1" 将 DCPSInfoRepo 更新持久保存到本地文件 info.pr。如果该名称的文件已经存在,则其内容将被删除。与命令行选项 -r 一起使用,可以将 DCPSInfoRepo 转世到先前的状态。使用持久性时,使用带有以下命令行选项的 TCP 固定端口号启动 DCPSInfoRepo 进程。这允许现有客户端重新连接到重新启动的 InfoRepo。

因此,我创建了一个 svc.conf 文件,并在启动 DCPSInfoRepo 时将其与标志 -ORBSvcConf 一起作为参数提供。不幸的是,我收到一条错误消息,指出没有找到 PersistenceUpdater_Static_Service。我曾尝试在文档以及互联网上的其他地方进行搜索,但到目前为止一直很不走运。

如果有人可以提供帮助,将不胜感激。

0 投票
0 回答
56 浏览

c++ - 执行make文件期间在linux(Ubuntu 20.04)中安装opendds的问题

我在 Ubuntu 20.04 的笔记本电脑上安装 opendds。运行 ./configure 后就可以了。make 命令输出如下。

我应该怎么做才能在我的机器上安装 opendds?

0 投票
1 回答
47 浏览

c++ - 在 Qt6 中使用 OpenDDS

有人可以指导我如何将 OpenDDS 与 Qt6 一起使用吗?我需要在 OpenDDS 的帮助下在 Qt 上制作一个聊天室应用程序,但我找不到任何学习材料。

0 投票
2 回答
66 浏览

python - 在 LAN 上使用 DDS 连接两台设备

我想出了一个在我的 Raspberry Pi 4 和 Windows 主机之间建立连接的想法。我利用 MQTT 协议成功地做到了,但对数据分发服务概念 (DDS) 产生了兴趣。我的 Pi 需要将捕获的图像(发布)作为字节数组发送到 Windows 机器(订阅者)。为了原型设计和测试目的,如何轻松地做到这一点?我在同一台机器上执行此操作没有问题,但无法围绕同一 LAN 网络上的节点之间的连接,我确信 DDS 支持 TCP 和 UDP。是否只有一个配置文件,我必须为两个应用程序放置第二台机器的 IP 地址,仅此而已?我想为 Python 使用 RTI 连接器,它可以单独用于两个通信的设备吗?对不起,蹩脚的问题,但我只想尽快测试 DDS 实用程序。任何人都可以指出一些有助于解决我的案件的来源吗?我看过一些文章,但没有一个对我来说很清楚。