RTI Connext DDS Micro  Version 2.4.6
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Product Overview

What Is RTI Connext DDS Micro?

RTI Connext DDS Micro is network middleware for distributed real-time applications. It provides the communications service programmers need to distribute time-critical data between embedded and/or enterprise devices or nodes. RTI Connext DDS Micro uses the publish-subscribe communications model to make data distribution efficient and robust. RTI Connext DDS Micro simplifies application development, deployment and maintenance and provides fast, predictable distribution of time-critical data over a variety of transport networks. With RTI Connext DDS Micro, you can:

  • Perform complex one-to-many and many-to-many network communications.
  • Customize application operation to meet various real-time, reliability, and quality-of-service goals.
  • Provide application-transparent fault tolerance and application robustness.
  • Use a variety of transports.

RTI Connext DDS Micro implements the Data-Centric Publish-Subscribe (DCPS) API within the OMG’s Data Distribution Service (DDS) for Real-Time Systems. DDS is the first standard developed for the needs of real-time systems. DCPS provides an efficient way to transfer data in a distributed system.

With RTI Connext DDS Micro, systems designers and programmers start with a fault-tolerant and flexible communications infrastructure that will work over a wide variety of computer hardware, operating systems, languages, and networking transport protocols. RTI Connext DDS Micro is highly configurable so programmers can adapt it to meet the application’s specific communication requirements.

RTI Connext DDS Cert versus RTI Connext DDS Micro

RTI Connext DDS Micro and RTI Connext DDS Cert originates from the same source base, but as of RTI Connext DDS Micro 2.4.6 the two are maintained as two independent releases. The latest release with certification evidence is RTI Connext DDS Cert 2.4.5. However, features that exist in RTI Connext DDS Micro and RTI Connext DDS Cert behave identically and the source code is written following identical guidelines. RTI Connext DDS Cert only supports a subset of the features found in RTI Connext DDS Micro. In the API reference manuals, APIs that are supported by RTI Connext DDS Cert are clearly marked.

Optional Certification Package

An optional Certification Package is available for systems that require certification to DO-178C or other safety standards. This package includes the artifacts required by a certification authority. The Certification Package is licensed separately from Connext DDS Cert.

To use an existing Certification Package, an application must be linked against the same libraries included in the Certification Package. Contact RTI Support, suppo.nosp@m.rt@r.nosp@m.ti.co.nosp@m.m, for details.

Publish-Subscribe Middleware

RTI Connext DDS Micro is based on a publish-subscribe communications model. Publish-subscribe (PS) middleware provides a simple and intuitive way to distribute data. It decouples the software that creates and sends data—the data publishers—from the software that receives and uses the data—the data subscribers. Publishers simply declare their intent to send and then publish the data. Subscribers declare their intent to receive, then the data is automatically delivered by the middleware. Despite the simplicity of the model, PS middleware can handle complex patterns of information flow. The use of PS middleware results in simpler, more modular distributed applications. Perhaps most importantly, PS middleware can automatically handle all network chores, including connections, failures, and network changes, eliminating the need for user applications to program of all those special cases. What experienced network middleware developers know is that handling special cases accounts for over 80% of the effort and code.

RTI Connext DDS Micro supports mechanisms that go beyond the basic publish-subscribe model. The key benefit is that applications that use RTI Connext DDS Micro for their communications are entirely decoupled. Very little of their design time has to be spent on how to handle their mutual interactions. In particular, the applications never need information about the other participating applications, including their existence or locations. RTI Connext DDS Micro automatically handles all aspects of message delivery, without requiring any intervention from the user applications, including:

  • determining who should receive the messages
  • where recipients are located,
  • what happens if messages cannot be delivered.

This is made possible by how RTI Connext DDS Micro allows the user to specify Quality of Service (QoS) parameters as a way to configure automatic-discovery mechanisms and specify the behavior used when sending and receiving messages. The mechanisms are configured up-front and require no further effort on the user's part. By exchanging messages in a completely anonymous manner, RTI Connext DDS Micro greatly simplifies distributed application design and encourages modular, well-structured programs. Furthermore, RTI Connext DDS Micro includes the following features, which are designed to meet the needs of distributed real-time applications:

  • Data-centric publish-subscribe communications - Simplifies distributed application programming
    • Time-critical data flow with low latency.
    • Clear semantics for managing multiple sources of the same data.
    • Efficient data transfer, customizable Quality of Service, and error notification.
    • Notification by a callback routine on data arrival to minimize latency.
    • Notification when data does not arrive by an expected deadline.
    • Ability to send the same message to multiple subscribers on multiple computers efficiently, including support for reliable multicast.
  • User-definable data types - Enables you to tailor the format of the information being sent to each application.
  • Reliable messaging - Enables subscribing applications to specify reliable delivery of samples.
  • Multiple Communication Networks - Multiple independent communication networks (domains) each using RTI Connext DDS Micro can be used over the same physical network. Applications are only able to participate in the domains to which they belong. Individual applications can be configured to participate in multiple domains.
  • Symmetric architecture - Makes your application robust:
    • No central server or privileged nodes, so the system is robust to node failures.
    • Subscriptions and publications can be dynamically added and removed from the system at any time.
  • Pluggable Transports Framework - Includes the ability to define new transport plug-ins and run over them. RTI Connext DDS Micro comes with a standard UDP/IP pluggable transport and a intra-participant transport. New transports can be implemented for a variety of transport mechanisms, including backplanes, switched fabrics, and new networking technologies.
  • Multi-language support - Includes APIs for the C and C++.
  • Multi-platform and heterogeneous system support — Applications based on RTI Connext DDS Micro can communicate transparently with each other regardless of the underlying operating system or hardware. Consult the RTI Supported Platforms section to see which platforms are supported in this release.
  • Multi-platform support - Includes support for flavors of UNIX, real-time operating systems, and Windows. (Consult the Platform Notes to see which platforms are supported in this release.)
  • Dynamic endpoint discovery
    • Topics, subscriptions, and publications can be added or removed from the system at any time.
  • Static endpoint discovery
  • Compliance with Standards
    • API complies with the DCPS layer of the OMG’s DDS specification.
    • Data types comply with OMG Interface Definition LanguageTM (IDL).
    • Data packet format complies with the International Engineering Consortium’s (IEC’s) publicly available specification for the RTPS wire protocol, also available from OMG.

Other Connext Products

RTI Connext DDS Micro is one of several products in the RTI Connex family of products:

RTI Connext DDS Cert is a subset of RTI Connext DDS Micro. RTI Connext DDS Cert does not include the following features because Certification Evidence is not yet available for them. If you require Certification Evidence for any of these features, please contact RTI.

  • C++ language API.
  • Multi-platform support.
  • Dynamic endpoint discovery.
  • delete() APIs (e.g. delete_datareader())

RTI Connext DDS Professional addresses the sophisticated data bus requirements in complex systems including an API compliant with the Object Management Group (OMG) Data Distribution Service (DDS) specification. DDS is the leading data-centric publish/subscribe (DCPS) messaging standard for integrating distributed real-time applications. Connext DDS Professional is the dominant industry implementation with benefits including:

  • OMG-compliant DDS API
  • Advanced features to address complex systems
  • Advanced Quality of Service (QoS) support
  • Comprehensive platform and network transport support
  • Seamless interoperability with RTI Connext DDS Micro

RTI Connext DDS Professional includes rich integration capabilities:

  • Data transformation
  • Integration support for standards including JMS, SQL databases, file, socket, Excel, OPC, STANAG, LabVIEW, Web Services and more
  • Ability for users to create custom integration adapters
  • Optional integration with Oracle, MySQL and other relational databases
  • Tools for visualizing, debugging and managing all systems in real-time

RTI Connext DDS Professional also includes a rich set of tools to accelerate debugging and testing while easing management of deployed systems. These components include:

  • Administration Console
  • Distributed Logger
  • Monitor
  • Monitoring Library
  • Recording Service

Supported DDS Features

RTI Connext DDS Micro supports a subset of the DDS DCPS standard. A brief overview of the supported features are listed here. For a detailed list, please refer to Reference Manuals.

DDS Entity Support

RTI Connext DDS Micro supports the following DDS entities. Please refer to the documentation for details.

DDS QoS Policy Support

RTI Connext DDS Micro supports the following DDS Qos Policies. Please refer to the documentation for details.

Programming Languages Support

RTI Connext DDS Micro supports C and C++ language bindings.

RTI Supported Platforms

RTI Connext DDS Micro is available as pre-built binaries for the following platforms.

Note that RTI only tests on a subset of the possible combinations of OS and CPU. Please refer to the following tables for a list of specific platforms and the specific configurations that are tested by RTI.

Linux Supported Platform

Operating System CPU Compiler RTI Architecture Abbreviation
Red Hat Enterprise Linux 6.0, 6.1 (2.6 kernel) x86 gcc 4.4.5 i86Linux2.6gcc4.4.5

Linux Build Instructions

RTI Architecture Required System Libraries

Required Compiler Flags

i86Linux2.6gcc4.4.5 (Release) -ldl -lnsl -lm- lpthread -lrt

-fPIC -DLINUX -DRTI_GCC4 -DRTI_LINUX26 -DRTI_LINUX -DRTI_POSIX_THREADS -DRTI_POSIX_SEMAPHORES -DRTI_CPU_AFFINITY -O -Wall -Wno-unknown-pragmas -DRTI_UNIX -DRTS_UNIX -DPtrIntType=long -DCSREAL_IS_FLOAT -DCPU=I80586 -DRTI_ENDIAN_LITTLE -DRTI_THREADS -DRTI_MULTICAST -DRTI_SHARED_MEMORY -DRTI_IPV6 -DNDEBUG

i86Linux2.6gcc4.4.5 (Debug) -ldl -lnsl -lm- lpthread -lrt -fPIC -DLINUX -DRTI_GCC4 -DRTI_LINUX26 -DRTI_LINUX -DRTI_POSIX_THREADS -DRTI_POSIX_SEMAPHORES -DRTI_CPU_AFFINITY -g -DRTI_PRECONDITION_TEST -Wall -Wno-unknown-pragmas -DRTI_UNIX -DRTS_UNIX -DPtrIntType=long -DCSREAL_IS_FLOAT -DCPU=I80586 -DRTI_ENDIAN_LITTLE -DRTI_THREADS -DRTI_MULTICAST -DRTI_SHARED_MEMORY -DRTI_IPV6

Windows Supported Platforms

Operating System CPU Compiler RTI Architecture Abbreviation
Windows 7 x86 Visual Studio 2010 i86Win32VS2010

Windows Build Instructions

RTI Architecture Required System Libraries

Required Compiler Flags

i86Win32VS2010 netapi32.lib advapi32.lib user32.lib WS2_32.lib Iphlpapi.lib winmm.lib /D “RTI_WIN32” /D “WIN32”/Gd /MT (Static Release) /MTd (Static Debug) /MD (Dynamic Release) /MDd (Dynamic Debug) /D “NDDS_DLL_VARIABLE (Dynamic) /D “NDEBUG” (Release)

VxWorks Supported Platforms

Operating System CPU Compiler RTI Architecture Abbreviation
VxWorks 6.9 Pentium 32-bit gcc 4.3.3 For Kernel Modules: pentiumVx6.9gcc4.3.3 For Real Time Processes: pentiumVx6.9gcc4.3.3_rtp
VxWorks 6.9 PPC32 gcc 4.3.3 For Kernel Modules: ppc604Vx6.9gcc4.3.3 For Real Time Processes: ppc604Vx6.9gcc4.3.3_rtp
VxWorks Cert 6.6.4.1 PPC32 e500v2 gcc 4.1.2 ppce500v2VxCert6.6.4.1gcc4.1.2

VxWorks Build Instructions

RTI Architecture

Required Compiler Flags

pentiumVx6.9gcc4.3.3 (Release) -march=pentium -m32 -fno-builtin -ansi - DCPU=PENTIUM -DTOOL_FAMILY=gnu -DTOOL=gnu -DRTI_GCC4 -D_WRS_KERNEL -D__PROTOTYPE_5_0 -DVXWORKS_MAJOR_VERSION=6 -DVXWORKS_MINOR_VERSION=9 -O -Wall -Wno-unknown-pragmas -DRTI_VXWORKS -DRTS_VXWORKS -DPtrIntType=long -DCSREAL_IS_FLOAT -DCPU=PENTIUM -DRTI_ENDIAN_LITTLE -DRTI_THREADS -DRTI_MULTICAST -DRTI_SHARED_MEMORY -DRTI_IPV6 -DNDEBUG
pentiumVx6.9gcc4.3.3 (Debug)

-march=pentium -m32 -fno-builtin -ansi -DCPU=PENTIUM -DTOOL_FAMILY=gnu -DTOOL=gnu -DRTI_GCC4 -D_WRS_KERNEL -D__PROTOTYPE_5_0 -g -DRTI_PRECONDITION_TEST -DVXWORKS_MAJOR_VERSION=6 -DVXWORKS_MINOR_VERSION=9 -Wall -Wno-unknown-pragmas -DRTI_VXWORKS -DRTS_VXWORKS -DPtrIntType=long -DCSREAL_IS_FLOAT -DCPU=PENTIUM -DRTI_ENDIAN_LITTLE -DRTI_THREADS -DRTI_MULTICAST -DRTI_SHARED_MEMORY -DRTI_IPV6

pentiumVx6.9gcc4.3.3_rtp (Release)

-march=pentium -m32 -ansi -DCPU=PENTIUM -DTOOL_FAMILY=gnu -DTOOL=gnu -DRTI_GCC4 -mrtp -D__PROTOTYPE_5_0 -O -Wall -Wno-unknown-pragmas -DRTI_VXWORKS -DRTS_VXWORKS -DRTI_RTP -DVXWORKS_MAJOR_VERSION=6 -DVXWORKS_MINOR_VERSION=9 -DPtrIntType=long -DCSREAL_IS_FLOAT -DCPU=PENTIUM -DRTI_ENDIAN_LITTLE -DRTI_THREADS -DRTI_MULTICAST -DRTI_SHARED_MEMORY -DRTI_IPV6 -DNDEBUG

pentiumVx6.9gcc4.3.3_rtp (Debug)

-march=pentium -m32 -ansi -DCPU=PENTIUM -DTOOL_FAMILY=gnu -DTOOL=gnu -DRTI_GCC4 -mrtp -fPIC -D__PROTOTYPE_5_0 -g -DRTI_PRECONDITION_TEST -Wall -Wno-unknown-pragmas -DRTI_VXWORKS -DRTS_VXWORKS -DRTI_RTP -DVXWORKS_MAJOR_VERSION=6 -DVXWORKS_MINOR_VERSION=9 -DPtrIntType=long -DCSREAL_IS_FLOAT -DCPU=PENTIUM -DRTI_ENDIAN_LITTLE -DRTI_THREADS -DRTI_MULTICAST -DRTI_SHARED_MEMORY -DRTI_IPV6

ppc604Vx6.9gcc4.3.3 (Release)

-m32 -mstrict-align -ansi -fno-builtin -mlongcall -DCPU=PPC32 -DTOOL_FAMILY=gnu -DTOOL=gnu -DRTI_USE_MUNCH -DRTI_GCC4 -D_WRS_KERNEL -D__PROTOTYPE_5_0 -DVXWORKS_MAJOR_VERSION=6 -DVXWORKS_MINOR_VERSION=9 -O2 -fno-strict-aliasing -Wall -Wno-unknown-pragmas -DRTI_VXWORKS -DRTS_VXWORKS -DPtrIntType=long -DCSREAL_IS_FLOAT -DCPU=PPC32 -DRTI_ENDIAN_BIG -DRTI_THREADS -DRTI_MULTICAST -DRTI_SHARED_MEMORY -DRTI_IPV6 -DNDEBUG

ppc604Vx6.9gcc4.3.3 (Debug)

-m32 -mstrict-align -ansi -fno-builtin -mlongcall -DCPU=PPC32 -DTOOL_FAMILY=gnu -DTOOL=gnu -DRTI_USE_MUNCH -DRTI_GCC4 -D_WRS_KERNEL -D__PROTOTYPE_5_0 -g -DRTI_PRECONDITION_TEST -DVXWORKS_MAJOR_VERSION=6 -DVXWORKS_MINOR_VERSION=9 -Wall -Wno-unknown-pragmas -DRTI_VXWORKS -DRTS_VXWORKS -DPtrIntType=long -DCSREAL_IS_FLOAT -DCPU=PPC32 -DRTI_ENDIAN_BIG -DRTI_THREADS -DRTI_MULTICAST -DRTI_SHARED_MEMORY -DRTI_IPV6

ppc604Vx6.9gcc4.3.3_rtp (Release)

-mhard-float -mstrict-align -m32 -mregnames -ansi -mlongcall -DCPU=PPC32 -DTOOL_FAMILY=gnu -DTOOL=gnu -DRTI_USE_MUNCH -DRTI_GCC4 -DRTI_RTP -mrtp -D__PROTOTYPE_5_0 -O2 -fno-strict-aliasing -Wall -Wno-unknown-pragmas -DRTI_VXWORKS -DRTS_VXWORKS -DRTI_RTP -DVXWORKS_MAJOR_VERSION=6 -DVXWORKS_MINOR_VERSION=9 -DPtrIntType=long -DCSREAL_IS_FLOAT -DCPU=PPC32 -DRTI_ENDIAN_BIG -DRTI_THREADS -DRTI_MULTICAST -DRTI_SHARED_MEMORY -DRTI_IPV6 -DNDEBUG

ppc604Vx6.9gcc4.3.3_rtp (Debug)

-mhard-float -mstrict-align -m32 -mregnames -ansi -mlongcall -DCPU=PPC32 -DTOOL_FAMILY=gnu -DTOOL=gnu -DRTI_USE_MUNCH -DRTI_GCC4 -DRTI_RTP -mrtp -fPIC -D__PROTOTYPE_5_0 -g -DRTI_PRECONDITION_TEST -Wall -Wno-unknown-pragmas -DRTI_VXWORKS -DRTS_VXWORKS -DRTI_RTP -DVXWORKS_MAJOR_VERSION=6 -DVXWORKS_MINOR_VERSION=9 -DPtrIntType=long -DCSREAL_IS_FLOAT -DCPU=PPC32 -DRTI_ENDIAN_BIG -DRTI_THREADS -DRTI_MULTICAST -DRTI_SHARED_MEMORY -DRTI_IPV6

ppce500v2VxCert6.6.4.1gcc4.1.2 (Release)

-m32 -mstrict-align -mcpu=8548 -mfloat-gprs=double -mspe=yes -mabi=spe -ansi -fno-exceptions -fno-builtin -Wall -msdata=eabi -DCPU=PPC32 -DTOOL_FAMILY=gnu -DTOOL=e500v2gnu -VXWORKS_MAJOR_VERSION=6 -DVXWORKS_MINOR_VERSION=6 -DCERT -DRTI_CERT -DRTI_ENDIAN_BIG -DRTI_VXWORKS -DOSAPI_PLATFORM=4 -O -DNDEBUG

ppce500v2VxCert6.6.4.1gcc4.1.2 (Debug) -m32 -mstrict-align -mcpu=8548 -mfloat-gprs=double -mspe=yes -mabi=spe -ansi -fno-exceptions -fno-builtin -Wall -msdata=eabi -DCPU=PPC32 -DTOOL_FAMILY=gnu -DTOOL=e500v2gnu -VXWORKS_MAJOR_VERSION=6 -DVXWORKS_MINOR_VERSION=6 -DCERT -DRTI_CERT -DRTI_ENDIAN_BIG -DRTI_VXWORKS -DOSAPI_PLATFORM=4 -O -g

Android Supported Platforms

Operating System CPU Compiler RTI Architecture Abbreviation
Android NDK, Revision 8d ARMv7 gcc 4.7 armv7leAndroidR8Dgcc4.7

Android Build Instructions

RTI Architecture

Required Compiler Flags

armv7leAndroidR8Dgcc4.7 -march=armv7-a -mfpu=neon -msoft-float -mlong-calls

To be able to use the RTI Connext Micro libraries, the Android manifest should have the following permissions:

  • android.permission.INTERNET
  • android.permission.CHANGE_WIFI_MULTICAST_STATE
  • android.permission.CHANGE_WIFI_STATE

iOS Supported Platforms

RTI Connext DDS Micro has been built for iOS 8.2 and tested on an iPad with A8 and iOS 8.1. Note that iOS is currently only supported with buildable source, RTI does not ship prebuilt libraries.

Operating System CPU Compiler
iOS 8.2 armv7 Xcode 6.2/clang 6.0
iOS 8.2 armv7s Xcode 6.2/clang 6.0
iOS 8.2 arm64 Xcode 6.2/clang 6.0

Please refer to Building for iOS for instructions on how to build RTI Connext DDS Micro for iOS.

Buildable Source

RTI Connext DDS Micro is available as a buildable source. You can build the source yourself, in your own development environment, and port RTI Connext DDS Micro to your own platforms. With the open-source build tool cmake, you can generate native makefiles and workspaces for any of the cmake-supported platforms. For building embedded platforms such as VxWorks, consult cmake documentation or contact RTI Support to create the necessary cross-compilation toolchain files.

RTI Connext DDS Micro is known to run on the following 32 bit CPU's:

  • PPC
  • i86
  • MIPS
  • ARM
  • M68K

RTI Connext DDS Micro is known to run on the following OSs:

  • Linux
  • uC
  • uLinux
  • Darwin
  • Win32
  • Android
  • ThreadX
  • FreeRTOS
  • VxWorks
  • iOS
  • TI Stellaris Cortex-M3 with only TI device drivers, no OS
  • QNX

RTI Connext DDS Micro is known to run with the following network stacks:

  • Linux
  • Win32
  • VxWorks Network stack
  • ThreadX Network stack
  • RTNet
  • lwIP (event and blocking mode)
  • QNX Network stack

Buildable source is available in a separate downloadable bundle. Contact sales.nosp@m.@rti.nosp@m..com to request access.

Standards and Interoperability

RTI Connext DDS Micro implements the Object Management Group (OMG) Data Distribution Service (DDS) standard (version 1.2), and the Real-Time Publish-Subscribe (RTPS) wire interoperabilty protocol standard (version 2.2).

RTI Connext DDS Micro supports a subset of the submessages defined by the Real-Time Publish-Subscribe (RTPS) interoperability specification. Data fragment submessages are not supported. The messages are compatible with Wireshark and its RTPS packet dissector.

Interoperability between RTI Connext DDS Micro and both RTI Data Distribution Service 4.5d and RTI Connext DDS Professional 5.1.0 has been verified between example HelloWorld applications and with the rtiddsspy utility.

Compatibility with the following RTI tools and services has not been verified: Routing Service, Federation Service, Analyzer, Spreadsheet Add-In, Real-Time Connect, and Recording Service. Nevertheless, they may currently be compatible if using them with the static endpoint discovery plugin. Monitor and Limited Bandwidth Plug-Ins are not compatible with RTI Connext DDS Micro.

DDS Wire Compatability

RTI Connext DDS Micro is compliant with RTPS 2.2, but does not support and ignored the following RTPS sub-messages:

Submessage Supported DDS standard Connext Core
DATA_FRAG No Yes Yes
NACK_FRAG No Yes Yes
HEARTBEAT_FRAG No Yes Yes
INFO_SRC No Yes Yes
INFO_REPLY No Yes Yes
INFO_REPLY_IPV4 No Yes Yes

Qos Policy Support

The table lists supported Qos policies

Profile / Feature Supported DDS standard Connext Core
USER_DATA No Yes Yes
TOPIC_DATA No Yes Yes
DURABILITY VOLATILE and TRANSIENT_LOCAL Yes Yes
PRESENTATION No, default is access_scope = TOPIC Yes Yes
DEADLINE Yes Yes Yes
LATENCY_BUDGET No Yes Yes
LIVELINESS AUTOMATIC (infinite only), MANUAL_BY_PARTICIPANT (infinite only), MANUAL_BY_TOPIC (finite and infinite) Yes Yes
TIME_BASED_FILTER No Yes Yes
PARTITION No Yes Yes
RELIABILITY BEST_EFFORT and RELIABLE, only max_blocking_time=0 Yes Yes
TRANSPORT_PRIORITY No Yes Yes
LIFESPAN No Yes Yes
DESTINATION_ORDER No, only default BY_RECEPTION_TIMESTAMP Yes Yes
HISTORY KEEP_ALL (no), KEEP_LAST (yes) Yes Yes
RESOURCE_LIMITS Yes, but only finite resource-limits Yes Yes
ENTITY_FACTORY Yes Yes Yes
ENTITY_FACTORY Yes Yes Yes
WRITER_DATA_LIFECYCLE No Yes Yes
READER_DATA_LIFECYCLE No Yes Yes
OWNERSHIP Yes Yes Yes
OWNERSHIP_STRENGTH Yes Yes Yes
DURABILITY_SERVICE No Yes Yes
ContentFilteredTopic No Yes Yes
QueryCondition No Yes Yes
MultiTopic No Yes No
ASYNCHRONOUS_PUBLISHER No No Yes
AVAILABILITY No No Yes
BATCH No No Yes
DATA_READER_PROTOCOL rtps_object_id No Yes
DATA_WRITER_PROTOCOL heartbeat_period, heartbeats_per_max_samples,max_heartbeat_retries,max_send_window_size,rtps_object_id No Yes
DISCOVERY Yes No Yes
DISCOVERY_CONFIG No No Yes
ENTITY_NAME On DomainParticipant only No Yes
EVENT No No Yes
LOCATORFILTER No No Yes
LOGGING No No Yes
MULTICHANNEL No No Yes
PROPERTY No No Yes
PUBLISH_MODE No No Yes
RECEIVER_POOL No No Yes
SERVICE No No Yes
TYPE_CONSISTENCY_ENFORCEMENT No Yes Yes
TYPESUPPORT Yes No Yes
WIRE_PROTOCOL Yes No Yes

DDS API Support

The table lists supported APIs

Name Supported DDS standard Connext Core
Entity
get_statuscondition() Yes Yes Yes
get_status_changes() Yes Yes Yes
enable() Yes Yes Yes
get_instance_handle() Yes Yes Yes
WaitSet
attach_condition() Yes Yes Yes
detach_condition() Yes Yes Yes
wait() Yes Yes Yes
get_conditions() Yes Yes Yes
Condition
get_trigger_value() Yes Yes Yes
GuardCondition
set_trigger_value() Yes Yes Yes
StatusCondition
set_enabled_statuses() Yes Yes Yes
get_enabled_statuses() Yes Yes Yes
get_entity() Yes Yes Yes
DomainParticipant
set_qos() Yes Yes Yes
get_qos() Yes Yes Yes
set_listener() Yes Yes Yes
get_listener() Yes Yes Yes
create_publisher() Yes Yes Yes
delete_publisher() Yes Yes Yes
create_subscriber() Yes Yes Yes
delete_subscriber() Yes Yes Yes
create_topic() Yes Yes Yes
delete_topic() Yes Yes Yes
create_contentfilteredtopic() No Yes Yes
delete_contentfilteredtopic() No Yes Yes
create_multitopic() No Yes No
delete_multitopic() No Yes No
find_topic() No Yes Yes
lookup_topicdescription() Yes Yes Yes
get_builtin_subscriber() No Yes Yes
ignore_participant() No Yes Yes
ignore_topic() No Yes Yes
ignore_publication() No Yes Yes
ignore_subscription() No Yes Yes
get_domain_id() Yes Yes Yes
delete_contained_entities() Yes Yes Yes
assert_liveliness() Yes Yes Yes
set_default_publisher_qos() Yes Yes Yes
get_default_publisher_qos() Yes Yes Yes
set_default_subscriber_qos() Yes Yes Yes
get_default_subscriber_qos() Yes Yes Yes
set_default_topic_qos() Yes Yes Yes
get_default_topic_qos() Yes Yes Yes
get_discovered_participants() No Yes Yes
get_discovered_participant_data() No Yes Yes
get_discovered_topics() No Yes Yes
get_discovered_topic_data() No Yes Yes
contains_entity() No No Yes
get_current_time() Yes Yes Yes
DomainParticipantFactory
create_participant() Yes Yes Yes
delete_participant() Yes Yes Yes
lookup_participant() Yes Yes Yes
get_instance() Yes Yes Yes
set_default_participant_qos() Yes Yes Yes
get_default_participant_qos() Yes Yes Yes
set_qos() Yes Yes Yes
get_qos() Yes Yes Yes
*Listener
on_inconsistent_topic() Yes Yes Yes
on_liveliness_lost() Yes Yes Yes
on_offered_deadline_missed() Yes Yes Yes
on_offered_incompatible_qos() Yes Yes Yes
on_data_on_readers() Yes Yes Yes
on_sample_lost() Yes Yes Yes
on_data_available() Yes Yes Yes
on_sample_rejected() Yes Yes Yes
on_liveliness_changed() Yes Yes Yes
on_requested_deadline_missed() Yes Yes Yes
on_requested_incompatible_qos() Yes Yes Yes
on_publication_matched() Yes Yes Yes
on_subscription_matched() Yes Yes Yes
TopicDescription
type_name Yes Yes Yes
get_participant() Yes Yes Yes
get_type_name() Yes Yes Yes
get_name() Yes Yes Yes
Topic
get_qos() Yes Yes Yes
set_qos() Yes Yes Yes
get_listener() Yes Yes Yes
set_listener() Yes Yes Yes
get_inconsistent_topic_status() Yes Yes

Yes

ContentFilteredTopic
get_filter_expression() No Yes Yes
get_related_topic() No Yes Yes
get_expression_parameters() No Yes Yes
set_expression_parameters() No Yes

Yes

MultiTopic
subscription_expression() No Yes No
get_expression_parameters() No Yes No
set_expression_parameters() No Yes

No

TypeSupport
register_type() Yes Yes Yes
unregister_type() Yes Yes Yes
get_type_name() Yes Yes

Yes

Publisher
set_qos() Yes Yes Yes
get_qos() Yes Yes Yes
set_listener() Yes Yes Yes
get_listener() Yes Yes Yes
create_datawriter() Yes Yes Yes
delete_datawriter() Yes Yes Yes
lookup_datawriter() Yes Yes Yes
suspend_publications() No Yes No
resume_publications() No Yes No
begin_coherent_changes() No Yes Yes
end_coherent_changes() No Yes Yes
wait_for_acknowledgements() No Yes Yes
get_participant() Yes Yes Yes
delete_contained_entities() Yes Yes Yes
set_default_datawriter_qos() Yes Yes Yes
get_default_datawriter_qos() Yes Yes Yes
copy_from_topic_qos() No Yes

Yes

DataWriter and FooDataWriter
set_qos() Yes Yes Yes
get_qos() Yes Yes Yes
set_listener() Yes Yes Yes Yes
get_listener() Yes Yes Yes
register_instance() Yes Yes Yes Yes
regsiter_instance_w_timestamp() Yes Yes Yes
unregister_instance() Yes Yes Yes Yes
unregsiter_instance_w_timestamp() Yes Yes Yes
get_key_value() No Yes Yes
lookup_instance() No Yes Yes
write() Yes Yes Yes
write_w_timestamp() Yes Yes Yes
dispose() Yes Yes Yes
dispose_w_timestamp() Yes Yes Yes
wait_for_acknowledgements() No Yes Yes
get_liveliness_lost_status() Yes Yes Yes
get_offered_deadline_missed_status() Yes Yes Yes
get_offered_incompatible_qos_status() Yes Yes Yes
get_publication_matched_status() Yes Yes Yes
get_topic() Yes Yes Yes
get_publisher() Yes Yes Yes
assert_liveliness() Yes Yes Yes
get_matched_subscription_data() No Yes Yes
get_matched_subscription_data() No Yes

Yes

Subscriber Yes Yes Yes
set_qos() Yes Yes Yes
get_qos() Yes Yes Yes
set_listener() Yes Yes Yes
get_listener() Yes Yes Yes
create_datareader() Yes Yes Yes
delete_datareader() Yes Yes Yes
lookup_datareader() Yes Yes Yes
begin_access() No Yes Yes
end_access() No Yes Yes
get_datareaders() No Yes Yes
notify_datareaders() No Yes Yes
delete_contained_entities() Yes Yes Yes
set_default_datareader_qos() Yes Yes Yes
get_default_datareader_qos() Yes Yes Yes
copy_from_topic_qos() Yes Yes

Yes

DataReader and FooDataReader
set_qos() Yes Yes Yes
get_qos() Yes Yes Yes
set_listener() Yes Yes Yes
get_listener() Yes Yes Yes
read() Yes Yes Yes
take() Yes Yes Yes
read_w_condition() No Yes Yes
take_w_condition() No Yes Yes
read_next_sample() Yes Yes Yes
take_next_sampe() Yes Yes Yes
read_instance() Yes Yes Yes
take_instance() Yes Yes Yes
read_next_instance() No Yes Yes
take_next_instance() No Yes Yes
read_next_instance_w_condition() No Yes Yes
take_next_instance_w_condition() No Yes Yes
return_loan() Yes Yes Yes
get_key_value() No Yes Yes
lookup_instance() Yes Yes Yes
create_readcondition() No Yes Yes
create_querycondition() No Yes Yes
delete_readcondition() No Yes Yes
get_liveliness_changed_status() Yes Yes Yes
get_requested_deadline_missed_status() Yes Yes Yes
get_requested_incompatible_qos_status() Yes Yes Yes
get_sample_lost_status() Yes Yes Yes
get_sample_rejected_status() Yes Yes Yes
get_subscription_matched_status() Yes Yes Yes
get_topicdescription() Yes Yes Yes
delete_contained_entities() Yes Yes Yes
wait_for_historical_data() No Yes Yes
get_macthed_publication_data() No Yes Yes
get_matched_publications() No Yes

Yes

SampleInfo
sample_state Yes Yes Yes
view_state Yes Yes Yes
instance_state Yes Yes Yes
disposed_generation_count No Yes Yes
no_writers_generation_count No Yes Yes
sample_rank No Yes Yes
generation_rank No Yes Yes
absolute_generation_rank No Yes Yes
source_timestamp Yes Yes Yes
instance_handle Yes Yes Yes
publication_handle Yes Yes Yes
valid_data Yes Yes

Yes

ReadCondition
get_datareader() No Yes Yes
get_sample_state_mask() No Yes Yes
get_view_state_mask() No Yes Yes
get_instance_state_mask() No Yes

Yes

QueryCondition
get_query_expression() No Yes Yes
get_query_parameters() No Yes Yes
set_query_parameters() No Yes Yes

RTI Connext DDS Micro Version 2.4.6 Copyright © Mon Jan 25 2016 Real-Time Innovations, Inc