【问题标题】:Given a DDS topic name, can the topic type information be determined at run-time?给定一个 DDS 主题名称,是否可以在运行时确定主题类型信息?
【发布时间】:2017-11-21 14:59:21
【问题描述】:

我正在评估 RTI ConnextDDS,使用 C++。在运行时,读取 DDS 消息并提取主题名称时,是否有提供有关该主题的运行时类型信息的 API?那就是我可以得到主题中每个元素的名称和类型吗?

【问题讨论】:

    标签: c++ publish-subscribe rtti data-distribution-service


    【解决方案1】:

    是的,这是可能的,虽然并不简单。

    以完全动态的方式执行此操作需要检查所谓的内置主题,其中包含有关发现的不同 DDS 实体的信息。见Chapter 17 "Built-In Topics" in the Core Libraries User's ManualThis RTI community example on built-in Topics 也可能有帮助。

    特别是,PublicationBuiltinTopicSubscriptionBuiltinTopic 包含字段 typetype_code,它们都旨在包含与相关 DataWriter 或 DataReader 的 Topic 关联的类型的描述. type 字段属于 TypeObject,在 OMG DDS-XTypes specification 中标准化。 type_code 字段是专有格式,如用户手册中所述。

    在走这条完整的道路之前,我会确保这是您真正想要做的事情,为什么?理想情况下,产品随附的工具应为您提供所需的所有信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-05-31
      • 2014-08-03
      • 1970-01-01
      • 2014-06-25
      • 2020-03-30
      • 2021-09-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多