Replies: 2 comments 2 replies
-
@doug1234 What are you thoughts? |
Beta Was this translation helpful? Give feedback.
2 replies
-
No idea if my input as a user is useful here or not, but as someone who has spent the last two days trying to add the ability to publish dynamic data samples (and still can't seem to get it to serialize properly when publishing), full xtypes transition would be very appreciated |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
The original implementation of the monitor supports a custom way to communicate the topic type that existed before OpenDDS had XTypes dynamic API. The topic type information is encoded in the
topic_data
field of thePublicationBuiltinTopicData
andSubscriptionBuiltinTopicData
samples. It has a specific format with:TypeCode
for the corresponding type (seeTopicInfo::storeUserData
for details).Thus, it only works with applications that use the same format for the data in the
topic_data
field of the publication and subscription built-in topic samples. These applications also have to opt for using CORBATypeCode
to convey the type information. For regular OpenDDS users, that would be a rare use case.Along with the
TypeCode
, a class calledOpenDynamicData
is used to represent data samples of any type. This can be replaced by XTypes DynamicData.Since OpenDDS has implemented XTypes dynamic API, it makes sense to fully switch to using the XTypes features and remove the use of CORBA
TypeCode
andOpenDynamicData
. This would leverage the standardized XTypes features and remove the need for the original approach where DDS XTypes has already provided a solution. This would also reduce maintenance efforts for the original approach.A non-comprehensive list of places that will need updates:
OpenDynamicData
(open_dynamic_data.h/.cpp): replaced by XTypesDynamicData
TypeInfo
andCommonData
(dds_data.h/.cpp): remove the use ofCORBA::TypeCode
andCommonData::m_samples
for storingOpenDynamicData
instancesPublicationMonitor
(publication_monitor.h/.cpp) andSubscriptionMonitor
(subscription_monitor.h/.cpp): remove the use oftopic_data
field in the publication and subscription built-in topic data.TopicMonitor
(topic_monitor.h/.cpp): remove the use ofTopicInfo::typeCode
. Could also remove the use of OpenDDS'sRecorder
.Probably, there are other places that need to be updated.
Beta Was this translation helpful? Give feedback.
All reactions