0

I have essentially two groups of messages bubbling around in my enterprise (over DDS essentially). One group is raw system data and another group is complex visual data.

I have an application that can create publishers and subscribers for most of these messages.

How can I write an .idl file such that it can grab system data instances (multiple), aggregate them perhaps with a little math thrown in and then publish them out as a single visual data message?

It is expected that this application is recompiled with the addition of the generated .IDL.

What i'm looking for is examples of:

  • how do I write an .idl to handle this conversion
  • how do I expose the system message subscribers to be useable for the .idl's generated logic
  • similarly how do I expose the visual publishers to be accessible for the .idl's logic?

please help. Examples would be awesome and/or specific links would be welcome too.

anon
  • 101
  • 1
  • 1
    Please take [the tour](https://stackoverflow.com/tour) and read [the help page](https://stackoverflow.com/help). Welcome to SO which is more about specific problems and less about tutoring or library recommendations. – Ron Sep 29 '17 at 22:15

1 Answers1

1

The Interface Definition Language (IDL) is a language that describes data types and interfaces. It is not a 'programming' language in the sense that it does not describe executable code; and therefore, it does not provide a mechanism to operate on data. Specifically, it does not allow you to "grab system data ... and publish them out" -- those tasks are part of the application.

[There are many compilers available to 'compile' IDL defined types and interfaces into standard programming languages. Any available DDS or CORBA implementation will probably include such an IDL compiler.]

So, to accomplish your goal, you'll need to do something like this:

  1. define the desired data type[s] in IDL and compile that to the target programming language
  2. write code to collect the system data in some arbitrary format
  3. write code to assign the system data to the IDL specified data type[s]
  4. write code to publish the data type[s] via a middleware (such as the Data Distribution Service (DDS))
C Tucker
  • 301
  • 1
  • 8