cod_decod_manager.hpp
Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2013, Shadow Robot Company, All rights reserved.
00003  * 
00004  * This library is free software; you can redistribute it and/or
00005  * modify it under the terms of the GNU Lesser General Public
00006  * License as published by the Free Software Foundation; either
00007  * version 3.0 of the License, or (at your option) any later version.
00008  * 
00009  * This library is distributed in the hope that it will be useful,
00010  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00011  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
00012  * Lesser General Public License for more details.
00013  * 
00014  * You should have received a copy of the GNU Lesser General Public
00015  * License along with this library.
00016  */
00017 
00028 #ifndef _COD_DECOD_MANAGER_HPP_
00029 #define _COD_DECOD_MANAGER_HPP_
00030 
00031 #include <boost/smart_ptr.hpp>
00032 #include <ros_ethercat_model/robot_state.hpp>
00033 #include <ros_ethercat_hardware/ethercat_hardware.h>
00034 #include "sr_ronex_drivers/cod_decod/cod_decod.hpp"
00035 #include <pluginlib/class_loader.h>
00036 
00037 namespace sr_cod_decod
00038 {
00039 class CodDecodManager
00040 {
00041 public:
00042   CodDecodManager(hardware_interface::HardwareInterface *hw, EtherCAT_SlaveHandler *sh, int n_digital_outputs,
00043   int n_analog_outputs, int n_digital_inputs, int n_analog_inputs, int n_PWM_outputs);
00044 
00045   void update(unsigned char *status_buffer);
00046   void build_command(unsigned char *command_buffer);
00047 
00048 private:
00051   boost::shared_ptr<CodDecod> cod_decod_;
00052 
00053   ros::NodeHandle node_;
00056   pluginlib::ClassLoader<CodDecod> cod_decod_loader_;
00057 };
00058 }  // namespace sr_cod_decod
00059 
00060 #endif


sr_ronex_drivers
Author(s): Ugo Cupcic, Toni Oliver, Mark Pitchless
autogenerated on Thu Jun 6 2019 21:22:00