gpio_controller.h
Go to the documentation of this file.
1 //
2 // Created by myx on 2022/4/29.
3 //
4 
5 #pragma once
6 
11 #include <rm_msgs/GpioData.h>
12 
13 namespace gpio_controller
14 {
15 class Controller : public controller_interface::MultiInterfaceController<rm_control::GpioStateInterface,
16  rm_control::GpioCommandInterface>
17 {
18 public:
19  Controller() = default;
20 
21  bool init(hardware_interface::RobotHW* robot_hw, ros::NodeHandle& root_nh, ros::NodeHandle& controller_nh) override;
22 
23  void update(const ros::Time& time, const ros::Duration& period) override;
24 
25 private:
26  void setGpioCmd(const rm_msgs::GpioDataConstPtr& msg);
27 
28  std::vector<rm_control::GpioStateHandle> gpio_state_handles_;
29  std::vector<rm_control::GpioCommandHandle> gpio_command_handles_;
30 
32  typedef std::shared_ptr<realtime_tools::RealtimePublisher<rm_msgs::GpioData>> RtpublisherPtr;
34 };
35 } // namespace gpio_controller
realtime_publisher.h
gpio_controller::Controller::gpio_state_handles_
std::vector< rm_control::GpioStateHandle > gpio_state_handles_
Definition: gpio_controller.h:28
gpio_controller::Controller::cmd_subscriber_
ros::Subscriber cmd_subscriber_
Definition: gpio_controller.h:31
gpio_controller::Controller::Controller
Controller()=default
gpio_controller::Controller::gpio_state_pub_
RtpublisherPtr gpio_state_pub_
Definition: gpio_controller.h:33
controller.h
hardware_interface::RobotHW
controller_interface::MultiInterfaceController
gpio_controller::Controller
Definition: gpio_controller.h:15
gpio_controller::Controller::init
bool init(hardware_interface::RobotHW *robot_hw, ros::NodeHandle &root_nh, ros::NodeHandle &controller_nh) override
Definition: gpio_controller.cpp:11
ros::Time
gpio_controller::Controller::setGpioCmd
void setGpioCmd(const rm_msgs::GpioDataConstPtr &msg)
Definition: gpio_controller.cpp:63
gpio_controller::Controller::update
void update(const ros::Time &time, const ros::Duration &period) override
Definition: gpio_controller.cpp:50
gpio_controller
Definition: gpio_controller.h:13
gpio_controller::Controller::gpio_command_handles_
std::vector< rm_control::GpioCommandHandle > gpio_command_handles_
Definition: gpio_controller.h:29
ros::Duration
gpio_controller::Controller::RtpublisherPtr
std::shared_ptr< realtime_tools::RealtimePublisher< rm_msgs::GpioData > > RtpublisherPtr
Definition: gpio_controller.h:32
ros::NodeHandle
ros::Subscriber
gpio_interface.h
multi_interface_controller.h


gpio_controller
Author(s):
autogenerated on Sun May 4 2025 02:57:09