rmw  master
C API providing a middleware abstraction layer which is used to implement the rest of ROS.
names_and_types.h
Go to the documentation of this file.
1 // Copyright 2017 Open Source Robotics Foundation, Inc.
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__NAMES_AND_TYPES_H_
16 #define RMW__NAMES_AND_TYPES_H_
17 
18 #ifdef __cplusplus
19 extern "C"
20 {
21 #endif
22 
23 #include <stddef.h>
24 
25 #include "rcutils/allocator.h"
26 #include "rcutils/types.h"
27 #include "rmw/macros.h"
28 #include "rmw/types.h"
29 #include "rmw/visibility_control.h"
30 
33 {
35  // The length of this array is the same as names.size
38 
44 
46 
56 
58 
78  rmw_names_and_types_t * names_and_types,
79  size_t size,
80  rcutils_allocator_t * allocator);
81 
83 
102 rmw_ret_t
104 
105 #ifdef __cplusplus
106 }
107 #endif
108 
109 #endif // RMW__NAMES_AND_TYPES_H_
RMW_PUBLIC
#define RMW_PUBLIC
Definition: visibility_control.h:48
types.h
RMW_PUBLIC_TYPE
RMW_PUBLIC_TYPE
Type mapping of rcutils log severity types to rmw specific types.
Definition: types.h:499
macros.h
rcutils_string_array_t
RMW_WARN_UNUSED
#define RMW_WARN_UNUSED
Indicate that a variable is not used, and prevent compiler from issuing warnings.
Definition: macros.h:24
rmw_names_and_types_t::names
rcutils_string_array_t names
Definition: names_and_types.h:34
rmw_names_and_types_t::types
rcutils_string_array_t * types
Definition: names_and_types.h:36
rmw_names_and_types_t
struct RMW_PUBLIC_TYPE rmw_names_and_types_t rmw_names_and_types_t
Associative array of topic or service names and types.
rmw_get_zero_initialized_names_and_types
rmw_names_and_types_t rmw_get_zero_initialized_names_and_types(void)
Return a rmw_names_and_types_t struct with members initialized to NULL.
allocator.h
rmw_names_and_types_init
rmw_ret_t rmw_names_and_types_init(rmw_names_and_types_t *names_and_types, size_t size, rcutils_allocator_t *allocator)
Initialize a rmw_names_and_types_t object.
rmw_ret_t
int32_t rmw_ret_t
Return code for rmw functions.
Definition: ret_types.h:26
rmw_names_and_types_t
Associative array of topic or service names and types.
Definition: names_and_types.h:32
visibility_control.h
rmw_names_and_types_check_zero
rmw_ret_t rmw_names_and_types_check_zero(rmw_names_and_types_t *names_and_types)
Check that a rmw_topic_names_and_types_t struct is zero initialized.
rcutils_allocator_t
types.h
rmw_names_and_types_fini
rmw_ret_t rmw_names_and_types_fini(rmw_names_and_types_t *names_and_types)
Finalize a rmw_names_and_types_t object.