-
Notifications
You must be signed in to change notification settings - Fork 75
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Is it possible to get the guid of the publisher from SampleInfo
#179
Comments
Hi @t0ny-peng, there is
We could rework things so the call gets to be less expensive (optionally adding a function to get just the GUID), but it would be interesting to see if there would be a good way to enhance "ignore_local_publications". One option could be that it gets a mode where the |
@eboasson Thanks for the info. After talking to Sumanth, we want to have a node-level filtering, so we cannot use the QoS(because it's DomainParticipant-level filtering). I did sone evaluation and seems that it's more efficient to maintain a local cache of instance_handle (since it's just a But that being said, I completely second your idea about adding a less expensive way to get the guid from the instance handle. Could you elaborate the reason of having two unique identifiers for an entity? |
The (original) DDS specification hides the global entity identifiers completely from the application, you only get an partially implementation-defined For most things it is fine; given that model, it makes sense to have this |
Hi @eboasson. One quick question. I'm trying to implement a
ignore_local_publications
feature in our RMW. It's slightly different from your PR (#140) as we have one single DomainParticipant in one process, and by settingignore_local_publications=true
we want to disable communication in the same node, but allow communication among different nodes(in one process of course).The way we want to go is to use
dds::topic::ContentFilteredTopic
. The signature of the filtering function is(bool)*(const dds::sub::SampleInfo & sample_info)
. To tell if a sample comes from the same node we need to check if the publisher is local.Our old way is to maintain a list of
instance_handle
(along
data) locally and search theinstance_handle
gotten fromSampleInfo
to tell if it's local publisher. But as we moved to using the standard GUID, we need to get it from theSampleInfo
object. Do you know if it's possible to do that? I didn't find any available functions from CycloneDDS-CXX API.Thanks!
The text was updated successfully, but these errors were encountered: