You can create a Data Distribution Service for Real-Time
Systems (DDS) application by using the DDS profile. This profile supports
modeling, generating code, and running applications that use standard
API code for DDS applications.
DDS is a specification that the Object Management Group
(OMG) governs. It is middleware for building distributed real-time
systems that standardizes the API. DDS uses a publish-subscribe paradigm
that is data-centric rather than API-centric, and is peer-to-peer
rather than client-server based. The only requirements are the name
and definition of the data. DDS supports one-to-many or many-to-many
communications between participants.
The starting point in this
tutorial is to create a model and apply a DDS profile to it. By applying
a DDS profile to a model, the elements that are necessary to create
a DDS application become available.
Note: You can create
DDS applications in IBM® Rational® Rhapsody® Developer for C++ only.
Learning objectives
In this tutorial,
you can learn to complete these tasks:
- Add the DDS profile to your model
- Create a ddsDiagram diagram
- Define the topicStruct and add a key attribute
- Create a topic
- Add a domain participant for your topicStruct
- Create a publisher entity and a dataWriter entity
- Add a domain participant for your publisher entity
- Add code in order to publish data to your topic
- Create a subscriber entity and a dataReader entity
- Add a domain participant for your subscriber entity
- Listen to DDS events that are related to the dataReader entity
- Add code to receive updates about your topic
- Filter the updated data by using a content-filtered topic
- Add quality of service elements
Time required
This tutorial takes approximately
4 hours to complete. If you explore other concepts related to this
tutorial, it might take longer to complete.
Skill level
Intermediate
Audience
The intended audience for this
tutorial is software developers.
System requirements
To complete
this tutorial, the following tools and components must be installed:
- Rational Rhapsody Developer for C++ version
7.5.2 or later (version 7.6.0.1 or later if you are developing an
application for Linux or if you want to use the OpenSplice DDS implementation)
- MSVC9 environment (if developing an application for Windows)
- RTI® Data Distribution Service 4.4d or 4.5d, or OpenSplice DDS
Community Edition from PrismTech
- Microsoft Visual Studio
2008 compiler (if developing an application for Windows)
- Windows or Linux operating
system
Prerequisites
To complete this tutorial,
you must be familiar with the following concepts and tasks:
- Basic knowledge of how to use the product. For example, you must
know how to create a project, how to draw a dependency, and how to
generate and view code in the product.
- Basic visual modeling functions, such as creating a diagram in
the product.
- Basic knowledge of the DDS specification. For example, you must
be familiar with such terms as publisher, subscriber, dataWriter,
dataReader, and domain participant.
- Programming concepts and terminology, preferably for the C++ language.