8#include <rclcpp/rclcpp.hpp>
9#include <mrs_msgs/msg/profiler_update.hpp>
18 Routine(
const rclcpp::Node::SharedPtr& node,
const std::string& name,
const std::string& node_name,
25 rclcpp::Node::SharedPtr node_;
27 std::string _routine_name_;
28 std::string _node_name_;
30 std::shared_ptr<mrs_lib::PublisherHandler<mrs_msgs::msg::ProfilerUpdate>> publisher_;
32 bool _profiler_enabled_ =
false;
35 rclcpp::Time execution_start_;
38 mrs_msgs::msg::ProfilerUpdate msg_out_;
56 Profiler(
const rclcpp::Node::SharedPtr& node,
const std::string& node_name,
const bool profiler_enabled);
84 std::shared_ptr<mrs_lib::PublisherHandler<mrs_msgs::msg::ProfilerUpdate>> publisher_;
85 std::string _node_name_;
86 bool _profiler_enabled_ =
false;
88 rclcpp::Node::SharedPtr node_;
90 bool is_initialized_ =
false;
Routine createRoutine(const std::string &name)
create a routine for an aperiodic function
Definition profiler.cpp:62
Profiler & operator=(const Profiler &other)
the assignment operator
Definition profiler.cpp:40
Profiler()
the basic constructor
Definition profiler.cpp:10
user wrapper of the publisher handler implementation
Definition publisher_handler.h:127
All mrs_lib functions, classes, variables and definitions are contained in this namespace.
Definition attitude_converter.h:24
Defines PublisherHandler and related convenience classes for upgrading the ROS publisher.