RTI Connext Java API Version 7.1.0
MultiTopic Interface Reference

[Not supported (optional)] <<interface>> A specialization of com.rti.dds.topic.TopicDescription that allows subscriptions that combine/filter/rearrange data coming from several topics. More...

Inheritance diagram for MultiTopic:

Public Member Functions

String get_subscription_expression ()
 Get the expression for this com.rti.dds.topic.MultiTopic. More...
void get_expression_parameters (StringSeq parameters)
 Get the expression parameters. More...
void set_expression_parameters (StringSeq parameters)
 Set the expression_parameters. More...
- Public Member Functions inherited from TopicDescription
String get_type_name ()
 Get the associated type_name. More...
String get_name ()
 Get the name used to create this com.rti.dds.topic.TopicDescription . More...
DomainParticipant get_participant ()
 Get the com.rti.dds.domain.DomainParticipant to which the com.rti.dds.topic.TopicDescription belongs. More...

Detailed Description

[Not supported (optional)] <<interface>> A specialization of com.rti.dds.topic.TopicDescription that allows subscriptions that combine/filter/rearrange data coming from several topics.

com.rti.dds.topic.MultiTopic allows a more sophisticated subscription that can select and combine data received from multiple topics into a single resulting type (specified by the inherited type_name). The data will then be filtered (selection) and possibly re-arranged (aggregation/projection) according to a subscription_expression with parameters expression_parameters.

  • The subscription_expression is a string that identifies the selection and re-arrangement of data from the associated topics. It is similar to an SQL statement where the SELECT part provides the fields to be kept, the FROM part provides the names of the topics that are searched for those fields, and the WHERE clause gives the content filter. The Topics combined may have different types but they are restricted in that the type of the fields used for the NATURAL JOIN operation must be the same.
  • The expression_parameters attribute is a sequence of strings that give values to the 'parameters' (i.e. "%n" tokens) in the subscription_expression. The number of supplied parameters must fit with the requested values in the subscription_expression (i.e. the number of n tokens).

Note that the source for data may not be restricted to a single topic.

com.rti.dds.subscription.DataReader entities associated with a com.rti.dds.topic.MultiTopic may access instances that are "constructed" at the com.rti.dds.subscription.DataReader side from the instances written by multiple com.rti.dds.publication.DataWriter entities. The com.rti.dds.topic.MultiTopic access instance will begin to exist as soon as all the constituting com.rti.dds.topic.Topic instances are in existence. The view_state and instance_state is computed from the corresponding states of the constituting instances:

  • The view_state of the com.rti.dds.topic.MultiTopic instance is com.rti.dds.subscription.ViewStateKind.ViewStateKind.NEW_VIEW_STATE if at least one of the constituting instances has view_state = com.rti.dds.subscription.ViewStateKind.ViewStateKind.NEW_VIEW_STATE. Otherwise, it will be com.rti.dds.subscription.ViewStateKind.ViewStateKind.NOT_NEW_VIEW_STATE.

Queries and Filters Syntax describes the syntax of subscription_expression and expression_parameters.

Member Function Documentation

◆ get_subscription_expression()

String get_subscription_expression ( )

Get the expression for this com.rti.dds.topic.MultiTopic.

The expressions syntax is described in the DDS specification. It is specified when the com.rti.dds.topic.MultiTopic is created.

subscription_expression of the com.rti.dds.topic.MultiTopic.

◆ get_expression_parameters()

void get_expression_parameters ( StringSeq  parameters)

Get the expression parameters.

The expressions syntax is described in the DDS specification.

The parameters is either specified on the last successful call to com.rti.dds.topic.MultiTopic.set_expression_parameters, or if com.rti.dds.topic.MultiTopic.set_expression_parameters was never called, the parameters specified when the com.rti.dds.topic.MultiTopic was created.

parameters<<inout>> Fill in this sequence with the expression parameters. Cannot be NULL.
Oneof the Standard Return Codes

◆ set_expression_parameters()

void set_expression_parameters ( StringSeq  parameters)

Set the expression_parameters.

Changes the expression_parameters associated with the com.rti.dds.topic.MultiTopic.

parameters<<in>> the filter expression parameters