rmw  master
C API providing a middleware abstraction layer which is used to implement the rest of ROS.
get_node_info_and_types.h
Go to the documentation of this file.
1 // Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2 //
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at
6 //
7 // http://www.apache.org/licenses/LICENSE-2.0
8 //
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
14 
15 #ifndef RMW__GET_NODE_INFO_AND_TYPES_H_
16 #define RMW__GET_NODE_INFO_AND_TYPES_H_
17 
18 #ifdef __cplusplus
19 extern "C"
20 {
21 #endif
22 
23 #include "rmw/macros.h"
24 #include "rmw/names_and_types.h"
25 #include "rmw/types.h"
26 #include "rmw/visibility_control.h"
27 
29 
57  const rmw_node_t * node,
58  rcutils_allocator_t * allocator,
59  const char * node_name,
60  const char * node_namespace,
61  bool demangle,
62  rmw_names_and_types_t * topics_names_and_types);
63 
65 
93  const rmw_node_t * node,
94  rcutils_allocator_t * allocator,
95  const char * node_name,
96  const char * node_namespace,
97  bool demangle,
98  rmw_names_and_types_t * topic_names_and_types);
99 
101 
126 rmw_ret_t
128  const rmw_node_t * node,
129  rcutils_allocator_t * allocator,
130  const char * node_name,
131  const char * node_namespace,
132  rmw_names_and_types_t * service_names_and_types);
133 
134 #ifdef __cplusplus
135 }
136 #endif
137 #endif // RMW__GET_NODE_INFO_AND_TYPES_H_
#define RMW_PUBLIC
Definition: visibility_control.h:48
#define RMW_WARN_UNUSED
Definition: macros.h:22
rmw_ret_t rmw_get_publisher_names_and_types_by_node(const rmw_node_t *node, rcutils_allocator_t *allocator, const char *node_name, const char *node_namespace, bool demangle, rmw_names_and_types_t *topic_names_and_types)
Return a list of published topic names and their types.
Associative array of topic or service names and types.
Definition: names_and_types.h:32
rmw_ret_t rmw_get_service_names_and_types_by_node(const rmw_node_t *node, rcutils_allocator_t *allocator, const char *node_name, const char *node_namespace, rmw_names_and_types_t *service_names_and_types)
Return a list of service topic names and their types.
rmw_ret_t rmw_get_subscriber_names_and_types_by_node(const rmw_node_t *node, rcutils_allocator_t *allocator, const char *node_name, const char *node_namespace, bool demangle, rmw_names_and_types_t *topics_names_and_types)
Return a list of subscribed topic names and their types.
std::string demangle(const T &instance)
Return the demangle name of the instance of type T.
Definition: demangle.hpp:39
int32_t rmw_ret_t
Definition: ret_types.h:25
Definition: types.h:39