-
Notifications
You must be signed in to change notification settings - Fork 24
First implementation #4
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
Conversation
Signed-off-by: ivanpauno <ivanpauno@ekumenlabs.com>
* Add gid_utils Signed-off-by: ivanpauno <ivanpauno@ekumenlabs.com> * Add NodeCache class Signed-off-by: ivanpauno <ivanpauno@ekumenlabs.com>
Signed-off-by: ivanpauno <ivanpauno@ekumenlabs.com>
Signed-off-by: ivanpauno <ivanpauno@ekumenlabs.com>
Signed-off-by: ivanpauno <ivanpauno@ekumenlabs.com>
Signed-off-by: ivanpauno <ivanpauno@ekumenlabs.com> Add testing of TopicCache class Signed-off-by: ivanpauno <ivanpauno@ekumenlabs.com>
Signed-off-by: ivanpauno <ivanpauno@ekumenlabs.com>
Signed-off-by: ivanpauno <ivanpauno@ekumenlabs.com>
Signed-off-by: ivanpauno <ivanpauno@ekumenlabs.com>
Signed-off-by: Ivan Santiago Paunovic <ivanpauno@ekumenlabs.com>
Signed-off-by: Ivan Santiago Paunovic <ivanpauno@ekumenlabs.com>
Signed-off-by: Ivan Santiago Paunovic <ivanpauno@ekumenlabs.com>
* Please linter. Signed-off-by: Ivan Santiago Paunovic <ivanpauno@ekumenlabs.com>
Signed-off-by: Ivan Santiago Paunovic <ivanpauno@ekumenlabs.com>
Signed-off-by: Ivan Santiago Paunovic <ivanpauno@ekumenlabs.com>
Signed-off-by: Ivan Santiago Paunovic <ivanpauno@ekumenlabs.com>
Signed-off-by: Ivan Santiago Paunovic <ivanpauno@ekumenlabs.com>
Signed-off-by: Ivan Santiago Paunovic <ivanpauno@ekumenlabs.com>
Signed-off-by: Ivan Santiago Paunovic <ivanpauno@ekumenlabs.com>
Signed-off-by: Ivan Santiago Paunovic <ivanpauno@ekumenlabs.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
First pass! Man this one's big.
Signed-off-by: Ivan Santiago Paunovic <ivanpauno@ekumenlabs.com>
Signed-off-by: Ivan Santiago Paunovic <ivanpauno@ekumenlabs.com>
…ntation Signed-off-by: Ivan Santiago Paunovic <ivanpauno@ekumenlabs.com>
Signed-off-by: Ivan Santiago Paunovic <ivanpauno@ekumenlabs.com>
Signed-off-by: Ivan Santiago Paunovic <ivanpauno@ekumenlabs.com>
…icipant Signed-off-by: Ivan Santiago Paunovic <ivanpauno@ekumenlabs.com>
@wjwwood I realized recently that I'm not triggering the graph guard condition in many cases I should. |
Ok, yeah we do need to be triggering the node guard condition anytime the graph changes. That should have been the case before. It would be nice to have new tests in |
Signed-off-by: Ivan Santiago Paunovic <ivanpauno@ekumenlabs.com>
Done in
Opened issue. |
@ivanpauno can you update the original description before you merge this? It looks out of date, and it's most likely what someone will look at when coming back to this in the future. Also, please go ahead and move this to the ROS 2 organization. |
break; | ||
case EndpointCreator::BARE_DDS_PARTICIPANT: | ||
node_name = "_CREATED_BY_BARE_DDS_APP_"; | ||
node_namespace = "_CREATED_BY_BARE_DDS_APP_"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@ivanpauno why not using these string literals when first constructing the tuple? Then you can optimize this switch
away.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I could optimize EndpointCreator::BARE_DDS_PARTICIPANT
case, but not also EndpointCreator::UNDISCOVERED_ROS_NODE
. I find clearer if all the cases are together.
using DemangleFunctionT = GraphCache::DemangleFunctionT; | ||
|
||
void | ||
check_results( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@ivanpauno nit: for all check_*
functions, consider not using default parameters for empty sets or zero counts and provide them explicitly instead. IMO it'll make the tests much easier to read.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd also be a bit more verbose on the naming e.g. check_results
-> check_graph_cache_state
. Same for the rest.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Still applies, but won't block on it.
Signed-off-by: Ivan Santiago Paunovic <ivanpauno@ekumenlabs.com>
Signed-off-by: Ivan Santiago Paunovic <ivanpauno@ekumenlabs.com>
Signed-off-by: Ivan Santiago Paunovic <ivanpauno@ekumenlabs.com>
Signed-off-by: Ivan Santiago Paunovic <ivanpauno@ekumenlabs.com>
Signed-off-by: Ivan Santiago Paunovic <ivanpauno@ekumenlabs.com>
Signed-off-by: Ivan Santiago Paunovic <ivanpauno@ekumenlabs.com>
Signed-off-by: Ivan S Paunovic <ivanpauno@gmail.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM but for a few minor comments here and there.
Signed-off-by: Ivan Santiago Paunovic <ivanpauno@ekumenlabs.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Signed-off-by: Ivan Santiago Paunovic <ivanpauno@ekumenlabs.com>
Signed-off-by: Ivan Santiago Paunovic <ivanpauno@ekumenlabs.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
rmw_dds_common_generators/rmw_dds_common_generators-extras.cmake.in
Outdated
Show resolved
Hide resolved
Signed-off-by: Ivan Santiago Paunovic <ivanpauno@ekumenlabs.com>
Adds:
rmw_dds_common_generators
. It basically depends onrosidl_generator_c
,rosidl_generator_cpp
,rosidl_typesupport_introspection_c
,rosidl_typesupport_introspection_cpp
, and a group depend inrosidl_typesupport_cpp_packages
.This is used to avoid depending in the default generators, which also depend in
rmw_typesupport_c/cpp
creating a circular dependency.This metapackage is needed, as there is no
build_tool_group_depend
equivalent.rmw_dds_common
generates three messagesGid.idl
,NodeCustomInfo.idl
,ParticipantCustomInfo.idl
.*__type_support.cpp
for the messages manually (example here).GraphCache
class, that could be used in all the vendors.Context
class, that will be an implementation detail in all thermw_context_t
ofrmw
implementations based on DDS, that uses oneParticipant
perContext
.