15 #ifndef RCLCPP__LOGGER_HPP_
16 #define RCLCPP__LOGGER_HPP_
21 #include "rclcpp/visibility_control.hpp"
24 #include "rcutils/logging.h"
25 #include "rcpputils/filesystem_helper.hpp"
37 #ifndef RCLCPP_LOGGING_ENABLED
38 #define RCLCPP_LOGGING_ENABLED 1
45 namespace node_interfaces
97 Unset = RCUTILS_LOG_SEVERITY_UNSET,
98 Debug = RCUTILS_LOG_SEVERITY_DEBUG,
99 Info = RCUTILS_LOG_SEVERITY_INFO,
100 Warn = RCUTILS_LOG_SEVERITY_WARN,
101 Error = RCUTILS_LOG_SEVERITY_ERROR,
102 Fatal = RCUTILS_LOG_SEVERITY_FATAL,
107 friend ::rclcpp::node_interfaces::NodeLogging;
121 explicit Logger(
const std::string & name)
122 : name_(new std::string(name)) {}
124 std::shared_ptr<const std::string> name_;
128 Logger(
const Logger &) =
default;
143 return name_->c_str();
165 return Logger(*name_ +
"." + suffix);
RCLCPP_PUBLIC void set_level(Level level)
Set level for current logger.
RCLCPP_PUBLIC const char * get_name() const
Get the name of this logger.
RCLCPP_PUBLIC Logger get_child(const std::string &suffix)
Return a logger that is a descendant of this logger.
Level
An enum for the type of logger level.
@ Info
The info log level.
@ Warn
The warn log level.
@ Fatal
The fatal log level.
@ Error
The error log level.
@ Debug
The debug log level.
@ Unset
The unset log level.
Versions of rosidl_typesupport_cpp::get_message_type_support_handle that handle adapted types.
RCLCPP_PUBLIC Logger get_node_logger(const rcl_node_t *node)
Return a named logger using an rcl_node_t.
RCLCPP_PUBLIC rcpputils::fs::path get_logging_directory()
Get the current logging directory.
RCLCPP_PUBLIC Logger get_logger(const std::string &name)
Return a named logger.
Structure which encapsulates a ROS Node.