为DDS记录服务创建配置文件

时间:2016-11-20 17:49:56

标签: data-distribution-service

我是初学者,想要了解如何在两个方面为DDS录制服务创建配置文件。

如果您要从域中记录一组特定主题,您如何设置主题组?您能否将主题列为单独的<topic_expr>,即

<topic_group name="SomeTopics">
    <topics>
        <topic_expr>topic2</topic_expr>
        <topic_expr>topic8</topic_expr>
    </topics>
    <field_expr>*</field_expr>
</topic_group>

当我尝试这样的事情时,并不会记录所有列出的主题。我有什么东西可以忽略吗?

其次,当您使用-deserialize时,您需要对用于记录数据库的配置文件进行任何更改吗?因为我有时会得到关于“rti dds未能找到”的错误,接着是X :: Y :: Z之类的错误。感谢。

1 个答案:

答案 0 :(得分:1)

XSD schema for the configuration file不希望您使用多个<topic_expr>标记,而是使用以逗号分隔的主题名称列表的单个标记。 RTI Recording Service User's Manual解释如下:

<topic_expr>POSIX fn expression</topic_expr>

Required.
A comma-separated list of POSIX expressions that specify the names of Topics to be included in the TopicGroup.
The syntax and semantics are the same as for Partition matching.
Default: Null
Note: Keep in mind that spaces are valid first characters in topic names, thus they can affect the matching process. For example, this will match both Triangle and Square topics (notice there is no space before Square):
   <topic_expr>Triangle,Square</topic_expr>
However the following will only match Triangle topics (because there is a space before Square):
   <topic_expr>Triangle, Square</topic_expr>

关于-deserialize选项,这不适用于录制服务,而是适用于转换器工具(rtirecconv)。如果要记录反序列化,则必须通过标记<deserialize_mode>在记录服务配置中指明。有关详细信息,请参阅用户手册。