Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions rosgraph_msgs/msg/Action.msg
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# Describes a single Action endpoint, which may be a Server or Client
Comment thread
fujitatomoya marked this conversation as resolved.

# Fully qualified name of the Action
string name

InterfaceType request_type
InterfaceType response_type
InterfaceType feedback_type
2 changes: 2 additions & 0 deletions rosgraph_msgs/msg/Graph.msg
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# Represents a ROS node graph, which is only a collection of nodes
Node[] nodes
4 changes: 4 additions & 0 deletions rosgraph_msgs/msg/InterfaceType.msg
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# Represent a type of a ROS Graph Interface

string name
TypeHash hash
23 changes: 23 additions & 0 deletions rosgraph_msgs/msg/Node.msg
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Represents the observable state of a ROS Node

# Node descriptor fields, which can describe a node that is not running

rcl_interfaces/ParameterDescriptor[] parameters
Topic[] publishers
Topic[] subscriptions

Service[] service_clients
Service[] service_servers

Action[] action_clients
Action[] action_servers

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would these lists allow for duplicates, say for example if a node spins up multiple (action) clients to the same (action) server for whatever reason?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nothing prevents it. based on the current representation you wouldn't be able to tell them apart though.

I'm now wondering if I need to basically have the leaf message actually be an encoding of rmw_topic_endpoint_info (and service_endpoint_info), and include the GID as well.

That would directly represent the "observable state" as it's defined most fundamentally in the API, if we try to match those definitions.


# Node state fields, which only apply to a running instance of a node

# Fully qualified node name (FQN)
string name

# Current parameter values
# parameter_values[] must be empty, or the same size as parameters[]
# When set, parameter_values[] match up 1:1 with the same index in parameters[]
rcl_interfaces/ParameterValue[] parameter_values
42 changes: 42 additions & 0 deletions rosgraph_msgs/msg/QoSProfile.msg
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
# Message-based representation of ROS 2 Quality of Service settings
# Default values are kept in sync with RMW by integration test

# Depth of the message queue (only meaningful when history==KEEP_LAST)
uint32 depth

# Deadline between messages (0 for no deadline)
builtin_interfaces/Duration deadline

# Lifespan of each message (0 for infinite)
builtin_interfaces/Duration lifespan

# History policy
uint8 HISTORY_SYSTEM_DEFAULT=0
uint8 HISTORY_KEEP_LAST=1
uint8 HISTORY_KEEP_ALL=2
uint8 HISTORY_UNKNOWN=3
uint8 history

# Reliability policy
uint8 RELIABILITY_SYSTEM_DEFAULT=0
uint8 RELIABILITY_RELIABLE=1
uint8 RELIABILITY_BEST_EFFORT=2
uint8 RELIABILITY_UNKNOWN=3
Comment thread
emersonknapp marked this conversation as resolved.
uint8 reliability

# Durability policy
uint8 DURABILITY_SYSTEM_DEFAULT=0
uint8 DURABILITY_TRANSIENT_LOCAL=1
uint8 DURABILITY_VOLATILE=2
uint8 DURABILITY_UNKNOWN=3
Comment thread
emersonknapp marked this conversation as resolved.
uint8 durability

# Liveliness policy
uint8 LIVELINESS_SYSTEM_DEFAULT=0
uint8 LIVELINESS_AUTOMATIC=1
uint8 LIVELINESS_MANUAL_BY_TOPIC=3
uint8 LIVELINESS_UNKNOWN=4
Comment thread
emersonknapp marked this conversation as resolved.
uint8 liveliness

# Lease duration for liveliness (0 for infinite)
builtin_interfaces/Duration liveliness_lease_duration
6 changes: 6 additions & 0 deletions rosgraph_msgs/msg/Service.msg
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# Describes a single Service endpoint, which may be a Server or Client
Comment thread
fujitatomoya marked this conversation as resolved.

# Fully qualified name of the Service
string name
InterfaceType request_type
InterfaceType response_type
10 changes: 10 additions & 0 deletions rosgraph_msgs/msg/Topic.msg
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# Describes a single topic endpoint, which may be a Publisher or Subscription

# Fully qualified name of the topic
string name

# Topic type
InterfaceType type

# QoS Profile offered or requested by this endpoint
QoSProfile qos
4 changes: 4 additions & 0 deletions rosgraph_msgs/msg/TypeHash.msg
Comment thread
emersonknapp marked this conversation as resolved.
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# RIHS spec version
uint8 version 1
# ROSIDL_TYPE_HASH_SIZE == 32
uint8[32] value
2 changes: 2 additions & 0 deletions rosgraph_msgs/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,10 @@
<buildtool_depend>rosidl_default_generators</buildtool_depend>

<build_depend>builtin_interfaces</build_depend>
<build_depend>rcl_interfaces</build_depend>

<exec_depend>builtin_interfaces</exec_depend>
<exec_depend>rcl_interfaces</exec_depend>
<exec_depend>rosidl_default_runtime</exec_depend>

<test_depend>ament_lint_common</test_depend>
Expand Down