8#include <rclcpp/rclcpp.hpp>
9#include <mrs_msgs/msg/profiler_update.hpp>
19 Routine(
const rclcpp::Node::SharedPtr& node,
const std::string& name,
const std::string& node_name,
26 rclcpp::Node::SharedPtr node_;
28 std::string _routine_name_;
29 std::string _node_name_;
31 std::shared_ptr<mrs_lib::PublisherHandler<mrs_msgs::msg::ProfilerUpdate>> publisher_;
33 bool _profiler_enabled_ =
false;
36 rclcpp::Time execution_start_;
39 mrs_msgs::msg::ProfilerUpdate msg_out_;
58 Profiler(
const rclcpp::Node::SharedPtr& node,
const std::string& node_name,
const bool profiler_enabled);
86 std::shared_ptr<mrs_lib::PublisherHandler<mrs_msgs::msg::ProfilerUpdate>> publisher_;
87 std::string _node_name_;
88 bool _profiler_enabled_ =
false;
90 rclcpp::Node::SharedPtr node_;
92 bool is_initialized_ =
false;
Routine createRoutine(const std::string &name)
create a routine for an aperiodic function
Definition profiler.cpp:70
Profiler & operator=(const Profiler &other)
the assignment operator
Definition profiler.cpp:45
Profiler()
the basic constructor
Definition profiler.cpp:10
user wrapper of the publisher handler implementation
Definition publisher_handler.h:130
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.