DDSMultiTopic Class Reference
[Topics]

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

Inheritance diagram for DDSMultiTopic:

DDSTopicDescription

List of all members.

Public Member Functions

virtual const char * get_subscription_expression ()=0
 Get the expression for this DDSMultiTopic.
virtual DDS_ReturnCode_t get_expression_parameters (DDS_StringSeq &parameters)=0
 Get the expression parameters.
virtual DDS_ReturnCode_t set_expression_parameters (const DDS_StringSeq &parameters)=0
 Set the expression_parameters.

Static Public Member Functions

static DDSMultiTopicnarrow (DDSTopicDescription *topic_description)
 Narrow the given DDSTopicDescription pointer to a DDSMultiTopic pointer.


Detailed Description

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

DDSMultiTopic 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.

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

DDSDataReader entities associated with a DDSMultiTopic may access instances that are "constructed" at the DDSDataReader side from the instances written by multiple DDSDataWriter entities. The DDSMultiTopic access instance will begin to exist as soon as all the constituting DDSTopic instances are in existence. The view_state and instance_state is computed from the corresponding states of the constituting instances:

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

Member Function Documentation

static DDSMultiTopic* DDSMultiTopic::narrow ( DDSTopicDescription topic_description  )  [static]

Narrow the given DDSTopicDescription pointer to a DDSMultiTopic pointer.

Returns:
DDSMultiTopic if this DDSTopicDescription is a DDSMultiTopic. Otherwise, return NULL.

virtual const char* DDSMultiTopic::get_subscription_expression (  )  [pure virtual]

Get the expression for this DDSMultiTopic.

The expressions syntax is described in the DDS specification. It is specified when the DDSMultiTopic is created.

Returns:
subscription_expression of the DDSMultiTopic.

virtual DDS_ReturnCode_t DDSMultiTopic::get_expression_parameters ( DDS_StringSeq parameters  )  [pure virtual]

Get the expression parameters.

The expressions syntax is described in the DDS specification.

The parameters is either specified on the last successful call to DDSMultiTopic::set_expression_parameters, or if DDSMultiTopic::set_expression_parameters was never called, the parameters specified when the DDSMultiTopic was created.

Parameters:
parameters <<inout>> Fill in this sequence with the expression parameters. The memory for the strings in this sequence is managed according to the conventions described in Conventions. In particular, be careful to avoid a situation in which RTI Data Distribution Service allocates a string on your behalf and you then reuse that string in such a way that RTI Data Distribution Service believes it to have more memory allocated to it than it actually does.
Returns:
One of the Standard Return Codes

virtual DDS_ReturnCode_t DDSMultiTopic::set_expression_parameters ( const DDS_StringSeq parameters  )  [pure virtual]

Set the expression_parameters.

Changes the expression_parameters associated with the DDSMultiTopic.

Parameters:
parameters <<in>> the filter expression parameters
Returns:
One of the Standard Return Codes.


RTI Data Distribution Service C++ API Version 4.5e Copyright © 23 Oct 2011 Real-Time Innovations, Inc