Submit Search
Upload
DDS tutorial with connector
•
0 likes
•
93 views
Javier Povedano
Follow
Learn DDS using RTI Connector DDS. An introduction to QoS
Read less
Read more
Software
Report
Share
Report
Share
1 of 23
Download now
Download to read offline
Recommended
Building a Global-Scale Multi-Tenant Cloud Platform on AWS and Docker: Lesson...
Building a Global-Scale Multi-Tenant Cloud Platform on AWS and Docker: Lesson...
Felix Gessert
KubeCon EU 2019 "Securing Cloud Native Communication: From End User to Service"
KubeCon EU 2019 "Securing Cloud Native Communication: From End User to Service"
Daniel Bryant
Lessons learned from writing over 300,000 lines of infrastructure code
Lessons learned from writing over 300,000 lines of infrastructure code
Yevgeniy Brikman
DEVNET-1140 InterCloud Mapreduce and Spark Workload Migration and Sharing: Fi...
DEVNET-1140 InterCloud Mapreduce and Spark Workload Migration and Sharing: Fi...
Cisco DevNet
Cloud for Kubernetes : Session3
Cloud for Kubernetes : Session3
WhaTap Labs
Sanger, upcoming Openstack for Bio-informaticians
Sanger, upcoming Openstack for Bio-informaticians
Peter Clapham
10 Things you didn't know about Cloud Platforms: AWS, GAE, Azure
10 Things you didn't know about Cloud Platforms: AWS, GAE, Azure
Anna Liu
Introducing SciaaS @ Sanger
Introducing SciaaS @ Sanger
Peter Clapham
Recommended
Building a Global-Scale Multi-Tenant Cloud Platform on AWS and Docker: Lesson...
Building a Global-Scale Multi-Tenant Cloud Platform on AWS and Docker: Lesson...
Felix Gessert
KubeCon EU 2019 "Securing Cloud Native Communication: From End User to Service"
KubeCon EU 2019 "Securing Cloud Native Communication: From End User to Service"
Daniel Bryant
Lessons learned from writing over 300,000 lines of infrastructure code
Lessons learned from writing over 300,000 lines of infrastructure code
Yevgeniy Brikman
DEVNET-1140 InterCloud Mapreduce and Spark Workload Migration and Sharing: Fi...
DEVNET-1140 InterCloud Mapreduce and Spark Workload Migration and Sharing: Fi...
Cisco DevNet
Cloud for Kubernetes : Session3
Cloud for Kubernetes : Session3
WhaTap Labs
Sanger, upcoming Openstack for Bio-informaticians
Sanger, upcoming Openstack for Bio-informaticians
Peter Clapham
10 Things you didn't know about Cloud Platforms: AWS, GAE, Azure
10 Things you didn't know about Cloud Platforms: AWS, GAE, Azure
Anna Liu
Introducing SciaaS @ Sanger
Introducing SciaaS @ Sanger
Peter Clapham
Advanced Container Management and Scheduling - DevDay Austin 2017
Advanced Container Management and Scheduling - DevDay Austin 2017
Amazon Web Services
How to Protect Big Data in a Containerized Environment
How to Protect Big Data in a Containerized Environment
BlueData, Inc.
The Data Mullet: From all SQL to No SQL back to Some SQL
The Data Mullet: From all SQL to No SQL back to Some SQL
Datadog
AWS Summit Stockholm 2014 – T1 – Architecting highly available applications o...
AWS Summit Stockholm 2014 – T1 – Architecting highly available applications o...
Amazon Web Services
Deploying Big-Data-as-a-Service (BDaaS) in the Enterprise
Deploying Big-Data-as-a-Service (BDaaS) in the Enterprise
Big-Data-as-a-Service (BDaaS) Meetup
Distributed Database DevOps Dilemmas? Kubernetes to the Rescue
Distributed Database DevOps Dilemmas? Kubernetes to the Rescue
Denis Magda
What We Learned About Cassandra While Building go90 (Christopher Webster & Th...
What We Learned About Cassandra While Building go90 (Christopher Webster & Th...
DataStax
Deploying a Disaster Recovery Site on AWS: Minimal Cost with Maximum Efficiency
Deploying a Disaster Recovery Site on AWS: Minimal Cost with Maximum Efficiency
Amazon Web Services
Apache Spark and Apache Ignite: Where Fast Data Meets the IoT
Apache Spark and Apache Ignite: Where Fast Data Meets the IoT
Denis Magda
Implementing blue-green deployment with Atlassian Bamboo
Implementing blue-green deployment with Atlassian Bamboo
Dave Clark
Cloud-Native DDoS Mitigation - AWS Online Tech Talks
Cloud-Native DDoS Mitigation - AWS Online Tech Talks
Amazon Web Services
Infrastructure-as-code: bridging the gap between Devs and Ops
Infrastructure-as-code: bridging the gap between Devs and Ops
Mykyta Protsenko
OpenStack Report
OpenStack Report
yoshihisa sakamoto
Kubernetes stack reliability
Kubernetes stack reliability
Oleg Chunikhin
Cloud for Kubernetes : Session4
Cloud for Kubernetes : Session4
WhaTap Labs
Joyent Cloud Advantages
Joyent Cloud Advantages
dmasciorini
Adam Dagnall: Advanced S3 compatible storage integration in CloudStack
Adam Dagnall: Advanced S3 compatible storage integration in CloudStack
ShapeBlue
In-Memory Computing Essentials for Architects and Engineers
In-Memory Computing Essentials for Architects and Engineers
Denis Magda
Orchestration & provisioning
Orchestration & provisioning
buildacloud
DataStax | Best Practices for Securing DataStax Enterprise (Matt Kennedy) | C...
DataStax | Best Practices for Securing DataStax Enterprise (Matt Kennedy) | C...
DataStax
Performance Monitoring for the Cloud - Java2Days 2017
Performance Monitoring for the Cloud - Java2Days 2017
Werner Keil
2017 Microservices Practitioner Virtual Summit: Ancestry's Journey towards Mi...
2017 Microservices Practitioner Virtual Summit: Ancestry's Journey towards Mi...
Ambassador Labs
More Related Content
What's hot
Advanced Container Management and Scheduling - DevDay Austin 2017
Advanced Container Management and Scheduling - DevDay Austin 2017
Amazon Web Services
How to Protect Big Data in a Containerized Environment
How to Protect Big Data in a Containerized Environment
BlueData, Inc.
The Data Mullet: From all SQL to No SQL back to Some SQL
The Data Mullet: From all SQL to No SQL back to Some SQL
Datadog
AWS Summit Stockholm 2014 – T1 – Architecting highly available applications o...
AWS Summit Stockholm 2014 – T1 – Architecting highly available applications o...
Amazon Web Services
Deploying Big-Data-as-a-Service (BDaaS) in the Enterprise
Deploying Big-Data-as-a-Service (BDaaS) in the Enterprise
Big-Data-as-a-Service (BDaaS) Meetup
Distributed Database DevOps Dilemmas? Kubernetes to the Rescue
Distributed Database DevOps Dilemmas? Kubernetes to the Rescue
Denis Magda
What We Learned About Cassandra While Building go90 (Christopher Webster & Th...
What We Learned About Cassandra While Building go90 (Christopher Webster & Th...
DataStax
Deploying a Disaster Recovery Site on AWS: Minimal Cost with Maximum Efficiency
Deploying a Disaster Recovery Site on AWS: Minimal Cost with Maximum Efficiency
Amazon Web Services
Apache Spark and Apache Ignite: Where Fast Data Meets the IoT
Apache Spark and Apache Ignite: Where Fast Data Meets the IoT
Denis Magda
Implementing blue-green deployment with Atlassian Bamboo
Implementing blue-green deployment with Atlassian Bamboo
Dave Clark
Cloud-Native DDoS Mitigation - AWS Online Tech Talks
Cloud-Native DDoS Mitigation - AWS Online Tech Talks
Amazon Web Services
Infrastructure-as-code: bridging the gap between Devs and Ops
Infrastructure-as-code: bridging the gap between Devs and Ops
Mykyta Protsenko
OpenStack Report
OpenStack Report
yoshihisa sakamoto
Kubernetes stack reliability
Kubernetes stack reliability
Oleg Chunikhin
Cloud for Kubernetes : Session4
Cloud for Kubernetes : Session4
WhaTap Labs
Joyent Cloud Advantages
Joyent Cloud Advantages
dmasciorini
Adam Dagnall: Advanced S3 compatible storage integration in CloudStack
Adam Dagnall: Advanced S3 compatible storage integration in CloudStack
ShapeBlue
In-Memory Computing Essentials for Architects and Engineers
In-Memory Computing Essentials for Architects and Engineers
Denis Magda
Orchestration & provisioning
Orchestration & provisioning
buildacloud
DataStax | Best Practices for Securing DataStax Enterprise (Matt Kennedy) | C...
DataStax | Best Practices for Securing DataStax Enterprise (Matt Kennedy) | C...
DataStax
What's hot
(20)
Advanced Container Management and Scheduling - DevDay Austin 2017
Advanced Container Management and Scheduling - DevDay Austin 2017
How to Protect Big Data in a Containerized Environment
How to Protect Big Data in a Containerized Environment
The Data Mullet: From all SQL to No SQL back to Some SQL
The Data Mullet: From all SQL to No SQL back to Some SQL
AWS Summit Stockholm 2014 – T1 – Architecting highly available applications o...
AWS Summit Stockholm 2014 – T1 – Architecting highly available applications o...
Deploying Big-Data-as-a-Service (BDaaS) in the Enterprise
Deploying Big-Data-as-a-Service (BDaaS) in the Enterprise
Distributed Database DevOps Dilemmas? Kubernetes to the Rescue
Distributed Database DevOps Dilemmas? Kubernetes to the Rescue
What We Learned About Cassandra While Building go90 (Christopher Webster & Th...
What We Learned About Cassandra While Building go90 (Christopher Webster & Th...
Deploying a Disaster Recovery Site on AWS: Minimal Cost with Maximum Efficiency
Deploying a Disaster Recovery Site on AWS: Minimal Cost with Maximum Efficiency
Apache Spark and Apache Ignite: Where Fast Data Meets the IoT
Apache Spark and Apache Ignite: Where Fast Data Meets the IoT
Implementing blue-green deployment with Atlassian Bamboo
Implementing blue-green deployment with Atlassian Bamboo
Cloud-Native DDoS Mitigation - AWS Online Tech Talks
Cloud-Native DDoS Mitigation - AWS Online Tech Talks
Infrastructure-as-code: bridging the gap between Devs and Ops
Infrastructure-as-code: bridging the gap between Devs and Ops
OpenStack Report
OpenStack Report
Kubernetes stack reliability
Kubernetes stack reliability
Cloud for Kubernetes : Session4
Cloud for Kubernetes : Session4
Joyent Cloud Advantages
Joyent Cloud Advantages
Adam Dagnall: Advanced S3 compatible storage integration in CloudStack
Adam Dagnall: Advanced S3 compatible storage integration in CloudStack
In-Memory Computing Essentials for Architects and Engineers
In-Memory Computing Essentials for Architects and Engineers
Orchestration & provisioning
Orchestration & provisioning
DataStax | Best Practices for Securing DataStax Enterprise (Matt Kennedy) | C...
DataStax | Best Practices for Securing DataStax Enterprise (Matt Kennedy) | C...
Similar to DDS tutorial with connector
Performance Monitoring for the Cloud - Java2Days 2017
Performance Monitoring for the Cloud - Java2Days 2017
Werner Keil
2017 Microservices Practitioner Virtual Summit: Ancestry's Journey towards Mi...
2017 Microservices Practitioner Virtual Summit: Ancestry's Journey towards Mi...
Ambassador Labs
BP101 - 10 Things to Consider when Developing & Deploying Applications in Lar...
BP101 - 10 Things to Consider when Developing & Deploying Applications in Lar...
Martijn de Jong
Fiware - communicating with ROS robots using Fast RTPS
Fiware - communicating with ROS robots using Fast RTPS
Jaime Martin Losa
The Rise of DataOps: Making Big Data Bite Size with DataOps
The Rise of DataOps: Making Big Data Bite Size with DataOps
Delphix
Docker Usage Patterns - Meetup Docker Paris - November, 10th 2015
Docker Usage Patterns - Meetup Docker Paris - November, 10th 2015
Datadog
Mapping the RESTful Programming Model to the DDS Data-Centric Model
Mapping the RESTful Programming Model to the DDS Data-Centric Model
Rick Warren
Distributed Systems: How to connect your real-time applications
Distributed Systems: How to connect your real-time applications
Jaime Martin Losa
MBSE meets Industrial IoT: Introducing the New MagicDraw Plug-in for RTI Co...
MBSE meets Industrial IoT: Introducing the New MagicDraw Plug-in for RTI Co...
Istvan Rath
Cortex: Horizontally Scalable, Highly Available Prometheus
Cortex: Horizontally Scalable, Highly Available Prometheus
Grafana Labs
AWS re:Invent 2016: Amazon CloudFront Flash Talks: Best Practices on Configur...
AWS re:Invent 2016: Amazon CloudFront Flash Talks: Best Practices on Configur...
Amazon Web Services
Fiware: Connecting to robots
Fiware: Connecting to robots
Jaime Martin Losa
OpenSplice DDS Tutorial -- Part II
OpenSplice DDS Tutorial -- Part II
Angelo Corsaro
Estimating the Total Costs of Your Cloud Analytics Platform
Estimating the Total Costs of Your Cloud Analytics Platform
DATAVERSITY
Upgrade Your System’s Security - Making the Jump from Connext DDS Professiona...
Upgrade Your System’s Security - Making the Jump from Connext DDS Professiona...
Real-Time Innovations (RTI)
Virtual training intro to InfluxDB - June 2021
Virtual training intro to InfluxDB - June 2021
InfluxData
Kubernetes basics and hands on exercise
Kubernetes basics and hands on exercise
Cloud Technology Experts
Oracle E-Business Suite On Oracle Cloud
Oracle E-Business Suite On Oracle Cloud
pasalapudi
Master IAM in the Cloud with SCIM v2.0
Master IAM in the Cloud with SCIM v2.0
Kelly Grizzle
DDS-XRCE (Extremely Resource Constrained Environments)
DDS-XRCE (Extremely Resource Constrained Environments)
Gerardo Pardo-Castellote
Similar to DDS tutorial with connector
(20)
Performance Monitoring for the Cloud - Java2Days 2017
Performance Monitoring for the Cloud - Java2Days 2017
2017 Microservices Practitioner Virtual Summit: Ancestry's Journey towards Mi...
2017 Microservices Practitioner Virtual Summit: Ancestry's Journey towards Mi...
BP101 - 10 Things to Consider when Developing & Deploying Applications in Lar...
BP101 - 10 Things to Consider when Developing & Deploying Applications in Lar...
Fiware - communicating with ROS robots using Fast RTPS
Fiware - communicating with ROS robots using Fast RTPS
The Rise of DataOps: Making Big Data Bite Size with DataOps
The Rise of DataOps: Making Big Data Bite Size with DataOps
Docker Usage Patterns - Meetup Docker Paris - November, 10th 2015
Docker Usage Patterns - Meetup Docker Paris - November, 10th 2015
Mapping the RESTful Programming Model to the DDS Data-Centric Model
Mapping the RESTful Programming Model to the DDS Data-Centric Model
Distributed Systems: How to connect your real-time applications
Distributed Systems: How to connect your real-time applications
MBSE meets Industrial IoT: Introducing the New MagicDraw Plug-in for RTI Co...
MBSE meets Industrial IoT: Introducing the New MagicDraw Plug-in for RTI Co...
Cortex: Horizontally Scalable, Highly Available Prometheus
Cortex: Horizontally Scalable, Highly Available Prometheus
AWS re:Invent 2016: Amazon CloudFront Flash Talks: Best Practices on Configur...
AWS re:Invent 2016: Amazon CloudFront Flash Talks: Best Practices on Configur...
Fiware: Connecting to robots
Fiware: Connecting to robots
OpenSplice DDS Tutorial -- Part II
OpenSplice DDS Tutorial -- Part II
Estimating the Total Costs of Your Cloud Analytics Platform
Estimating the Total Costs of Your Cloud Analytics Platform
Upgrade Your System’s Security - Making the Jump from Connext DDS Professiona...
Upgrade Your System’s Security - Making the Jump from Connext DDS Professiona...
Virtual training intro to InfluxDB - June 2021
Virtual training intro to InfluxDB - June 2021
Kubernetes basics and hands on exercise
Kubernetes basics and hands on exercise
Oracle E-Business Suite On Oracle Cloud
Oracle E-Business Suite On Oracle Cloud
Master IAM in the Cloud with SCIM v2.0
Master IAM in the Cloud with SCIM v2.0
DDS-XRCE (Extremely Resource Constrained Environments)
DDS-XRCE (Extremely Resource Constrained Environments)
Recently uploaded
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
Marharyta Nedzelska
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
OnePlan Solutions
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
OnePlan Solutions
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
YashikaSharma391629
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
Hr365.us smith
How To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTRO
motivationalword821
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their Engineering
Hironori Washizaki
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Development
vyaparkranti
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data Streams
Safe Software
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Matt Ray
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identity
team-WIBU
MYjobs Presentation Django-based project
MYjobs Presentation Django-based project
AnoyGreter
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
Lionel Briand
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentation
vaddepallysandeep122
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
Sujith Sukumaran
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
Hanief Utama
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
Andreas Granig
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprise
preethippts
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
jennyeacort
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
Andreas Kunz
Recently uploaded
(20)
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
How To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTRO
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their Engineering
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Development
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data Streams
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identity
MYjobs Presentation Django-based project
MYjobs Presentation Django-based project
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentation
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
DDS tutorial with connector
1.
©2017 Real-Time Innovations, Inc. Tutorial:
DDS first steps with Connector Javier Povedano, PhD. javier@rti.com Real-Time Innovations Inc.
2.
©2017 Real-Time Innovations, Inc. Agenda •
DDS • Connector • Setup your environment • Hands On! – Publishing/Subscribing to Data – Data Filtering – High-Availability – Late joiners – Partitions
3.
©2017 Real-Time Innovations, Inc. DDS
Shapes Demo https://www.rti.com/downloads/shapes-demo
4.
©2017 Real-Time Innovations, Inc. What
is Connector? • Simple API for Data-Centric Publish/Subscribe – Built on top of DDS – Very few methods – Experimental • Scripting language bindings – node.js, python, nodered • Prototyping – Entities and QoS configured by XML
5.
©2017 Real-Time Innovations, Inc. 2016
© Real-Time Innovations Inc. Classical DDS Workflow IDL/XML struct Position2D { long id; //@key double x; double y; }; Code Generation struct Temp { long id; //@key double value; }; struct Temp { long id; //@key double value; }; #include <...> define Position2D; Pos2DWriter::write Pos2DReader::read C/C++/Java/C# <xml QoS> QoS Settings Type Definition Code ready to be built in +50 architectures: Linux, Windows, VxWorks, Integrity…. This process can be simplified even more: RTI Prototyper/Connector
6.
©2017 Real-Time Innovations, Inc. Connector
Workflow Python/Lua/NodeJS Interpreter <xml QoS> <types> <scenario description> Python/Lua/NodeJS script
7.
©2017 Real-Time Innovations, Inc. Input Data
Port (DataReader+)Output Data Port (DataWriter+) DDS Connector Input & Output ports Connector (DomainParticipant+) output() write() / dispose() / unregister() clear_members() instance input() wait() / on() read() / take() samples[] config.xml User Defined Structure XML Config
8.
©2017 Real-Time Innovations, Inc. 2016
© Real-Time Innovations Inc. Anatomy of a Publisher in Connector 1. connector = rti.Connector("MyParticipantLibrary::Sensor",'Tutorial.xml') 2. writer = connector.getOutput("TempPublisher::TempWriter") 3. writer.instance.setString('id', sensor.id) 4. writer.write() 1. Create a connector 2. Get the DataWriter 3. Set the instance values 4. Write the value
9.
©2017 Real-Time Innovations, Inc. 2016
© Real-Time Innovations Inc. Anatomy of a Subscriber in Connector 1. connector = rti.Connector("MyParticipantLibrary::Sensor", 'Tutorial.xml') 2. reader = connector.getInput("TempPublisher::TempWriter") 3. reader.read() 4. for i in nsamples: if reader.infos.isvalid(i) sample = reader.samples.getDictionary(i) 1. Create a connector 2. Get the datareader 3. Read/Take the value 4. Iterate for all the samples a. if is valid i. get the sample
10.
©2017 Real-Time Innovations, Inc. Setup Installing
the tutorial > git clone https://github.com/jpovedano/dds-firststeps > ./setup In each terminal: > . rticonnectenv/bin/activate
11.
©2017 Real-Time Innovations, Inc. Let's
Rock! Hands On Exercise
12.
©2017 Real-Time Innovations, Inc. About
the examples • Temperature sensor scenario – Sensors (publishers) • Publish temperature data every second – Console (suscribers) • Shows a table with data being published • Configured by XML – Tutorial.xml • Define the DDS entities and their QoS settings struct Sensor { string id; //@key long value; long timestamp; };
13.
©2017 Real-Time Innovations, Inc. Anatomy
of the XML 1. QoS Library a. QoS Settings 2. Types a. Type Definition 3. Domain Library a. Domains and Topics 4. Participant Library a. DDS Entities hierarchy <!-- Qos Library --> <qos_library name="QosLibrary"> <qos_profile name="DefaultProfile" is_default_qos="true"> <participant_qos> <transport_builtin> <!-- <mask>UDPV4 | SHMEM</mask>--> <mask> SHMEM</mask> </transport_builtin> </participant_qos> <datareader_qos> <!-- Modify reader values here --> </datareader_qos> </qos_profile> </qos_library>
14.
©2017 Real-Time Innovations, Inc. Anatomy
of the XML 1. QoS Library a. QoS Settings 2. Types a. Type Definition 3. Domain Library a. Domains and Topics 4. Participant Library a. DDS Entities hierarchy <types> <struct name="Sensor" extensibility="extensible"> <member name="id" stringMaxLength="128" id="0" type="string" key="true"/> <member name="value" id="1" type="long"/> <member name="timestamp" id="2" type="long"/> </struct> </types>
15.
©2017 Real-Time Innovations, Inc. Anatomy
of the XML 1. QoS Library a. QoS Settings 2. Types a. Type Definition 3. Domain Library a. Domains and Topics 4. Participant Library a. DDS Entities hierarchy <!-- Domain Library --> <domain_library name="MyDomainLibrary"> <domain name="MyDomain" domain_id="0"> <register_type name="Sensor" kind="dynamicData" type_ref="Sensor"/> <topic name="Temperature" register_type_ref="Sensor"/> </domain> </domain_library>
16.
©2017 Real-Time Innovations, Inc. Anatomy
of the XML 1. QoS Library a. QoS Settings 2. Types a. Type Definition 3. Domain Library a. Domains and Topics 4. Participant Library a. DDS Entities hierarchy <!-- Participant library --> <participant_library name="MyParticipantLibrary"> <domain_participant name="Console" domain_ref="MyDomainLibrary::MyDomain"> <subscriber name="TempSubscriber"> <data_reader name="TempReader" topic_ref="Temperature"/> </subscriber> </domain_participant> <domain_participant name="Sensor" domain_ref="MyDomainLibrary::MyDomain"> <publisher name="TempPublisher"> <data_writer name="TempWriter" topic_ref="Temperature"/> </publisher> </domain_participant> </participant_library>
17.
©2017 Real-Time Innovations, Inc. Example
1: Basic pub/sub • Goal – In this example we show how to publish data – Learn differences between read/take – Learn how to change QoS settings in Connector • Documentation: – QoS Policy Reference Guide (cheat-sheet)
18.
©2017 Real-Time Innovations, Inc. Example
2: Filtering • Goal – Learn how to filter data per subscriber • Description – The console application will only receive the data matching a certain criteria • Two types of Filtering: – Content Based • Use a filter with SQL Expression – Time Based • time_based_filter QoS
19.
©2017 Real-Time Innovations, Inc. Example
3: High availability • Goal – Learn how to add robustness using DDS QoS • Description – Adding a backup sensor that substitute the primary sensor in case of failure • QoS: – Liveliness – Ownership – Ownership strength
20.
©2017 Real-Time Innovations, Inc. Example
4: Durability • Goal – Learn how to provide recent history to late joiners • Description – A console application will receive the recent history published before it was started • QoS: – Durability QoS
21.
©2017 Real-Time Innovations, Inc. Example
5: Data Isolation/Partition • Goal – Learn how to isolate publishers and subscribers within the same domain • Description – A console application will receive sensor updates only for subscribers in certain zones • QoS: – Partition QoS
22.
©2017 Real-Time Innovations, Inc. Example
6 • Goal – create your own distributed application and share it with the community • Description – Let your imagination fly! • References – XML Application creation
23.
©2017 Real-Time Innovations, Inc. Thanks
for your attention!
Download now