September CoreDX DDS Connection

Phone: 720.733.7906
Fax:866.725.4485
230 Third Street, Suite 260
Castle Rock, CO 80104
contact@twinoakscomputing.com
www.twinoakscomputing.com
CoreDX DDS Logo

September CoreDX DDS Connection 2024

 

Welcome to the Twin Oaks Computing, Inc Newsletter!


Our monthly newsletter brings you news and information about Twin Oaks Computing and our CoreDX DDS middleware. Be sure to "like", "follow" and "friend" us on our Social Networking sites for fun facts, free giveaways, and stories about Communications Middleware, Technology, and Twin Oaks Computing.

Designing your DDS System for Performance and Scalability - Webinar on Demand


This webinar covers a set of best practices when it comes to designing a DDS based system, presenting a step-by-step process to go from initial design to eventual deployment, covering topics like:

  • How to break up your domain specific information model into a set of normalized topics that minimizes overhead and maximized performance and throughput.
  • How to select the appropriate QoS policies for each of your topics.
  • How to efficiently separate the various traffic flows in your system to balance between low latency and high throughput.
  • Low bandwidth connections don't need to sacrifice bandwidth for traffic they are not interested in.
  • High priority traffic never gets interrupted/delayed by sudden bursts or low priority traffic.

To learn more about the DDS standard, contact us. You can view the webinar here

CoreDX DDS Tips & Tricks


Welcome to this month's edition of CoreDX DDS Tips & Tricks, where our engineers provide quick bits of information to help our customers.

Difference between the C++ language bindings

CoreDX DDS provides two different C++ language bindings. Both of these may be used in a C++ application, and provide two different flavors of DDS API's.

One language binding is the standardized C++11 language mapping. This is a heavily templated language mapping, and provides a clean and somewhat modern approach to creating and working with DDS entities. This language binding is often referred to as the Modern C++ API, or Cxx.

Here is some example of Cxx (Modern C++) code that creates a DomainParticipant, Topic, and DataWriter:

dds::domain::DomainParticipant participant (domain_id);

dds::topic::Topic topic (participant, "helloTopic");

dds::pub::DataWriter writer(dds::pub::Publisher(participant), topic);

The other language binding is a basic C++ language mapping. This language mapping does not depend on templates or other 'advanced' C++ features, and is a great choice for embedded environments where standard template library features may lag behind modern versions. This language mapping is very similar to the C language mapping.

Here is some example C++ (original C++) code that creates a DomainParticipant, Topic, and DataWriter:

domain = dpf->create_participant ( 0, dp_qos, NULL, 0 ) ;

publisher = domain->create_publisher ( QOS_DEFAULT, NULL, 0 ) ;

retval = stringMsgTS.register_type ( domain, NULL ) ;

topic = domain->create_topic ( "helloTopic", "StringMsg", QOS_DEFAULT, NULL, 0 ) ;

dw = publisher->create_datawriter ( topic, DATAWRITER_QOS_DEFAULT, NULL, 0 ) ;

Both these C++ language mappings are generally available in CoreDX distributions. We recommend taking a look at the example applications and reference manuals for each to get a feel for the differences.

CoreDX DDS Tips & Tricks are intended to be useful for engineers using CoreDX DDS. If you have any questions, please contact us.

Try the full-featured CoreDX DDS product free for 30 days


Check out the newest DDS standardized features and get your hands on the leading small footprint Data Distribution Service implementation to see what it can do for you.

CoreDX DDS v5 continues to focus on resources and performance while incorporating new features and enhancements. Our evaluation copies include the full DDS API and standardized wire protocol, including:

  • All language bindings for the DDS API's (C,C++, Cxx, C#, Java, Python, JavaScript)
  • Full X-Types support including IDL, XML, and Dynamic type representations
  • Remote Procedure Call over DDS (RPC over DDS)
  • XML Application Definition
  • DDS Security (upon request)

With these enhanced features, CoreDX DDS is the perfect middleware solution to meet the challenges of today's Industrial Internet of Things (IIoT) systems. Learn more here.

The evaluation is available here for direct download for the most common platforms, including Linux, Solaris, and Windows. Download your free 30 day trial of CoreDX DDS here.

Upcoming Events


December 2-6, 2024: I/ITSEC, Orlando, FL, USA

December 9-13, 2024: OMG Technical Meeting, San Francisco, CA, USA

December 11-13, 2024: AOC International Symposium and Convention, Washington, DC, USA