rclcpp
master
C++ ROS Client Library API
|
#include <memory>
#include <utility>
Go to the source code of this file.
Macros | |
#define | RCLCPP_DISABLE_COPY(...) |
#define | RCLCPP_SMART_PTR_DEFINITIONS(...) |
#define | RCLCPP_SMART_PTR_DEFINITIONS_NOT_COPYABLE(...) |
#define | RCLCPP_SMART_PTR_ALIASES_ONLY(...) |
#define | __RCLCPP_SHARED_PTR_ALIAS(...) |
#define | __RCLCPP_MAKE_SHARED_DEFINITION(...) |
#define | RCLCPP_SHARED_PTR_DEFINITIONS(...) |
Defines aliases and static functions for using the Class with shared_ptrs. More... | |
#define | __RCLCPP_WEAK_PTR_ALIAS(...) |
#define | RCLCPP_WEAK_PTR_DEFINITIONS(...) __RCLCPP_WEAK_PTR_ALIAS(__VA_ARGS__) |
Defines aliases and static functions for using the Class with weak_ptrs. More... | |
#define | __RCLCPP_UNIQUE_PTR_ALIAS(...) using UniquePtr = std::unique_ptr<__VA_ARGS__>; |
#define | __RCLCPP_MAKE_UNIQUE_DEFINITION(...) |
#define | RCLCPP_UNIQUE_PTR_DEFINITIONS(...) |
Defines aliases and static functions for using the Class with unique_ptrs. More... | |
#define | RCLCPP_STRING_JOIN(arg1, arg2) RCLCPP_DO_STRING_JOIN(arg1, arg2) |
#define | RCLCPP_DO_STRING_JOIN(arg1, arg2) arg1 ## arg2 |
#define RCLCPP_DISABLE_COPY | ( | ... | ) |
Disables the copy constructor and operator= for the given class.
Use in the private section of the class.
#define RCLCPP_SMART_PTR_DEFINITIONS | ( | ... | ) |
Defines aliases and static functions for using the Class with smart pointers.
Use in the public section of the class. Make sure to include <memory>
in the header when using this.
#define RCLCPP_SMART_PTR_DEFINITIONS_NOT_COPYABLE | ( | ... | ) |
Defines aliases and static functions for using the Class with smart pointers.
Same as RCLCPP_SMART_PTR_DEFINITIONS except it excludes the static Class::make_unique() method definition which does not work on classes which are not CopyConstructable.
Use in the public section of the class. Make sure to include <memory>
in the header when using this.
#define RCLCPP_SMART_PTR_ALIASES_ONLY | ( | ... | ) |
Defines aliases only for using the Class with smart pointers.
Same as RCLCPP_SMART_PTR_DEFINITIONS except it excludes the static method definitions which do not work on pure virtual classes and classes which are not CopyConstructable.
Use in the public section of the class. Make sure to include <memory>
in the header when using this.
#define __RCLCPP_SHARED_PTR_ALIAS | ( | ... | ) |
#define __RCLCPP_MAKE_SHARED_DEFINITION | ( | ... | ) |
#define RCLCPP_SHARED_PTR_DEFINITIONS | ( | ... | ) |
Defines aliases and static functions for using the Class with shared_ptrs.
#define __RCLCPP_WEAK_PTR_ALIAS | ( | ... | ) |
#define RCLCPP_WEAK_PTR_DEFINITIONS | ( | ... | ) | __RCLCPP_WEAK_PTR_ALIAS(__VA_ARGS__) |
Defines aliases and static functions for using the Class with weak_ptrs.
#define __RCLCPP_UNIQUE_PTR_ALIAS | ( | ... | ) | using UniquePtr = std::unique_ptr<__VA_ARGS__>; |
#define __RCLCPP_MAKE_UNIQUE_DEFINITION | ( | ... | ) |
#define RCLCPP_UNIQUE_PTR_DEFINITIONS | ( | ... | ) |
Defines aliases and static functions for using the Class with unique_ptrs.
#define RCLCPP_STRING_JOIN | ( | arg1, | |
arg2 | |||
) | RCLCPP_DO_STRING_JOIN(arg1, arg2) |
#define RCLCPP_DO_STRING_JOIN | ( | arg1, | |
arg2 | |||
) | arg1 ## arg2 |