OpenDDS | Object Management Group Data Distribution Service

 by   objectcomputing C++ Version: DDS-3.23 License: Non-SPDX

kandi X-RAY | OpenDDS Summary

kandi X-RAY | OpenDDS Summary

OpenDDS is a C++ library. OpenDDS has no bugs and it has medium support. However OpenDDS has 3 vulnerabilities and it has a Non-SPDX License. You can download it from GitHub.

OpenDDS is an open-source C++ implementation of the Object Management Group's specification "Data Distribution Service for Real-time Systems" (DDS), as well as some other related specifications. These standards define a set of interfaces and protocols for developing distributed applications based on the publish-subscribe and distributed cache models. Although OpenDDS is itself developed in C++, Java and JMS bindings are provided so that Java applications can use OpenDDS. OpenDDS also includes support for the DDS Security and XTypes specifications. OpenDDS is built on the ACE abstraction layer to provide platform portability. OpenDDS also leverages capabilities of TAO, such as its IDL compiler and as the basis of the OpenDDS DCPS Information Repository (DCPSInfoRepo). The primary development of OpenDDS was done by Object Computing, Incorporated in St. Louis and Phoenix. It is released under generous license terms similar to ACE, TAO and MPC. See the LICENSE file for details.
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              OpenDDS has a medium active ecosystem.
              It has 1042 star(s) with 412 fork(s). There are 70 watchers for this library.
              OutlinedDot
              It had no major release in the last 12 months.
              There are 89 open issues and 514 have been closed. On average issues are closed in 306 days. There are 18 open pull requests and 0 closed requests.
              It has a neutral sentiment in the developer community.
              The latest version of OpenDDS is DDS-3.23

            kandi-Quality Quality

              OpenDDS has no bugs reported.

            kandi-Security Security

              OpenDDS has 3 vulnerability issues reported (2 critical, 1 high, 0 medium, 0 low).

            kandi-License License

              OpenDDS has a Non-SPDX License.
              Non-SPDX licenses can be open source with a non SPDX compliant license, or non open source licenses, and you need to review them closely before use.

            kandi-Reuse Reuse

              OpenDDS releases are available to install and integrate.
              Installation instructions are available. Examples and code snippets are not available.

            Top functions reviewed by kandi - BETA

            kandi's functional review helps you automatically verify the functionalities of the libraries and avoid rework.
            Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of OpenDDS
            Get all kandi verified functions for this library.

            OpenDDS Key Features

            No Key Features are available at this moment for OpenDDS.

            OpenDDS Examples and Code Snippets

            No Code Snippets are available at this moment for OpenDDS.

            Community Discussions

            QUESTION

            DDS IDL Compiler
            Asked 2021-Mar-03 at 15:53

            I am using IDLs to define data for an application using OpenDDS.

            I also want to use IDLs to define interfaces for the application, but OpenDDS (and most other DDS implementations it seems) does not support interfaces in IDLs.

            Are there any compilers that will generate simple stubs from IDL interfaces? I need it to support at least C++ and Java.

            All of the IDL compilers that are a part of CORBA ORBs generate a lot of CORBA-specific code and boilerplate. I want something that does a simple mapping from IDL to C++/Java/etc. For example, if I have this IDL:

            ...

            ANSWER

            Answered 2021-Mar-03 at 03:53

            Outside the interfaces in the IDL of DDS specs, DDS itself doesn't have a use for interfaces as far as I know. It's always restricted its own IDL to a subset of CORBA's. Because of this OpenDDS doesn't have support for user-defined interfaces outside the support that already comes with using tao_idl. The optional C++11 mapping that can be generated by opendds_idl is free of all the CORBA boilerplate like you want, but it doesn't support interfaces at the moment. I think the Java mapping only supports them for OpenDDS's specific JNI-based situation. Even when using TAO's C++ mapping, OpenDDS doesn't support using interface types as a DDS topic type or inside one.

            I can't speak as much for other DDS implementations as I can for OpenDDS, but I know this support page for Connext says they don't support interfaces either. It does say they support valuetype, which is sorta like an interface, but they treat it as a struct and ignore the operations on them.

            Source https://stackoverflow.com/questions/66447744

            QUESTION

            Is it possible to use/define nested structure in CycloneDDS IDL file?
            Asked 2021-Mar-03 at 06:35

            I found RTI DDS and OpenDDS are capable to define nested structures and complex structure in IDL file,

            but couldn't find any example for CycloneDDS on defining nested structures/ complex structures in the IDL file, does Cyclone DDS support nested structures in IDL? in the cyclones developer guide they do not mention anything about it.

            ...

            ANSWER

            Answered 2021-Mar-03 at 06:35

            It does. It is a standard OMG IDL feature and is the same across all DDS implementations.

            Source https://stackoverflow.com/questions/66420444

            QUESTION

            How to define a class and method in DDS idl file?
            Asked 2021-Jan-19 at 21:19

            I am new to DDS.... so far I have little experience in OpenDDS and CycloneDDS

            Is it possible to define a class inside the idle file and have member variables and member methods? or only structure and primitive data types are supported in DDS standards?

            ...

            ANSWER

            Answered 2021-Jan-19 at 15:55

            The IDL language is defined in the OMG IDL specification. It consists of a number of building blocks that include Core Data Types, like the structures and primitive data types that you mentioned, and Interfaces, that includes the methods you asked about.

            However, only a subset of those building blocks is used by DDS. For the current version 4.2, section 9.3 DDS Profiles defines which of them are relevant for three different levels of support by DDS: Plain DDS, Extensible DDS and DDS over RPC.

            You will see that the latter indeed includes Building Block Interfaces - Basic, as you might expect from RPC. However, not all DDS implementations support RPC. Plain DDS and Extensible DDS are more commonly supported and interfaces are not part of that functionality.

            Since you asked about this in another question: note that the interface functionality as captured in DDS over RPC is not for the purpose of distributing objects with their methods, but for invoking methods on objects remotely -- as the name Remote Procedure Call implies.

            Source https://stackoverflow.com/questions/65787725

            QUESTION

            Is There a Way to Generate Code for OpenDDS
            Asked 2021-Jan-12 at 17:00

            I know that RTI has a code generator to create the publisher and subscriber which then allow you to create DataReaders and DataWriters. Is there any way to generate the needed code in OpenDDS? I have already established the idl file that lists the topics to be transmitted and I see here: https://objectcomputing.com/resources/publications/mnb/code-generation-with-opendds-part-i provides instructions to generate a wrapper but I am still not understanding if there is a way to simply build the idl file so that it generates the publisher and subscriber files needed for the OpenDDS architecture. For example RTI has rtiddsgen.

            When I build the file using only Messenger.idl the error message comes up:

            ...

            ANSWER

            Answered 2021-Jan-08 at 02:41

            Yes, OpenDDS has a code generator, opendds_idl, which is one of OpenDDS's core components. It can run manually, through MPC, or in CMake using OPENDDS_TARGET_SOURCES like you have here.

            The error is pretty self explanatory. This is the CMakeLists.txt file from the Developer's Guide Messenger example, which includes C++ files. CMake can't find them. Maybe you copied CMakeLists.txt somewhere else without also copying the cpp files? If so you can copy the cpp files to where you copied CMakeLists.txt.

            Source https://stackoverflow.com/questions/65622191

            QUESTION

            DDS Java Example throws tons of warnings "JNI call made without checking exceptions"
            Asked 2020-Dec-16 at 07:43

            When I run the Java example OpenDDS-3.14.1/java/tests/messenger I am getting tons of messages like this:

            WARNING in native method: JNI call made without checking exceptions when required to from CallStaticObjectMethodV.

            I am using the openjdk 11.0.9.1 2020-11-04 LTS on a Mac. But same warnings I get on Linux.

            Is that just not handled well in the example?
            Or is it not well handled in the DDS-Java-Wrapper?
            I have to admin that I have not yet read any Developer Documentation...

            ...

            ANSWER

            Answered 2020-Dec-16 at 07:43

            JNI is what allows Java and the native C++ code to interact with one another. OpenDDS's JNI code isn't checking for Java exceptions like it should and this is what the warnings are about. They show up in the all Java tests I can see, but apparently they are ignored by the system that report errors and warnings. I think they come up because -Xcheck:jni is one of the java arguments in the test script framework. So if you take out that argument of the file I linked or run java directly without that argument the warnings shouldn't be there.

            Source https://stackoverflow.com/questions/65306292

            QUESTION

            Why do we need OpenDDS run_test.pl?
            Asked 2020-Oct-21 at 15:36

            I am running OpenDDS MPC based example stockQuoter. I deleted the run_test.pl, still the project builds and runs properly. why do we need this Perl script?

            ...

            ANSWER

            Answered 2020-Oct-21 at 15:36

            You don't really need it and you're free to start the programs directly. All examples and tests in OpenDDS have a file called run_test.pl for the purposes of testing. Among other functions, they define what programs get called with what arguments for a certain test scenario and are responsible for killing the programs if they get stuck.

            Source https://stackoverflow.com/questions/64460013

            QUESTION

            Issues in OpenDDS Build
            Asked 2020-Oct-15 at 10:26

            I am new to visual studio,(vs 2019)

            I am trying to build example files in the OpenDDS directory

            as in readme,

            Instructions for Building the Example (assuming ACE, TAO, DDS, and MPC are installed and configured): - done

            1. Run Make Project Creator to generate build files:

            Windows, VC 7.1: perl %ACE_ROOT%\bin\mwc.pl -type vc71 StockQuoter.mwc Unix, GNU Make: $ACE_ROOT/bin/mwc.pl -type gnuace StockQuoter.mwc

            1. Build the application

            how to build this? I get importing window

            after proceeding so many errors in vs, cannot build, why is that?

            ...

            ANSWER

            Answered 2020-Oct-15 at 10:26

            You have to generate the solutions with the correct MPC project type, you are now generating solutions for Visual Studio 2003. Replace -type vc71 with -type vs2019 and build it again.

            Source https://stackoverflow.com/questions/64369338

            QUESTION

            What is Win32/Process.pm in @INC?
            Asked 2020-Oct-14 at 12:04

            Setup

            • OpenDDS -3.14
            • Windows 10 64bit
            • Active Perl 5.8
            • VisualStudio 2019

            I am trying to build OpenDDS and try out the messenger example as given in the instructions. The configure commanded executed, but I got the following error. What is this error and how to solve it?

            ...

            ANSWER

            Answered 2020-Oct-12 at 15:48

            You could install the missing dependency. Alternatively you could try Strawberry Perl.

            Source https://stackoverflow.com/questions/64320132

            QUESTION

            Getting error while running run_test.pl for an opendds example(Messenger) on linux
            Asked 2020-Oct-10 at 09:52

            I am trying to run run_test.pl for Messenger example given in DCMS for openDDS-3.14 on linux.But getting error

            ./run_test.pl

            /home/user/OpenDDS-3.14/bin/DCPSInfoRepo -ORBDebugLevel 10 -ORBLogFile DCPSInfoRepo.log -o repo.ior

            /home/user/OpenDDS-3.14/bin/DCPSInfoRepo: error while loading shared libraries: libOpenDDS_InfoRepoServ.so.3.14.0: cannot open shared object file: No such file or directory

            ...

            ANSWER

            Answered 2020-Oct-10 at 09:52

            Just run configure and make. Don't set a prefix for configure file on the command line.you will get Messanger example output smoothly using run_test.pl.

            Source https://stackoverflow.com/questions/64290961

            QUESTION

            Why is OpenDDS failing to compile?
            Asked 2020-Aug-31 at 02:00

            My friend is trying to compile OpenDDS from here: OpenDDS Insall Directions

            ...

            ANSWER

            Answered 2020-Aug-31 at 02:00

            This was fixed in this PR: https://github.com/objectcomputing/OpenDDS/pull/1701, but that hasn't made it into a release yet. I can't comment in the comment chain above, but dxiv is correct that this is caused by an include dependency that broke in VS2019. It's only in the dds/DCPS/Serializer.h header though, so just having your friend change that file to how it is in the PR should allow it to build.

            Source https://stackoverflow.com/questions/63662796

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install OpenDDS

            See docs/docker.md for how to use the pre-built docker image.

            Support

            The OpenDDS Developer's Guide is freely downloadable at: http://download.objectcomputing.com/OpenDDS/. A Doxygen for the latest release is available at http://download.opendds.org/doxygen/. For developers wanting to contribute to OpenDDS, please take the time to read the development guidelines. Other documentation can be found in docs directory.
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
            CLONE
          • HTTPS

            https://github.com/objectcomputing/OpenDDS.git

          • CLI

            gh repo clone objectcomputing/OpenDDS

          • sshUrl

            git@github.com:objectcomputing/OpenDDS.git

          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link

            Consider Popular C++ Libraries

            tensorflow

            by tensorflow

            electron

            by electron

            terminal

            by microsoft

            bitcoin

            by bitcoin

            opencv

            by opencv

            Try Top Libraries by objectcomputing

            mFAST

            by objectcomputingC++

            quickfast

            by objectcomputingC++

            TheAceOrb

            by objectcomputingC++

            OCITAO

            by objectcomputingC++

            check-ins

            by objectcomputingJava