00001 /* 00002 * UOS-ROS packages - Robot Operating System code by the University of Osnabrück 00003 * Copyright (C) 2011 University of Osnabrück 00004 * 00005 * This program is free software; you can redistribute it and/or 00006 * modify it under the terms of the GNU General Public License 00007 * as published by the Free Software Foundation; either version 2 00008 * of the License, or (at your option) any later version. 00009 * 00010 * This program is distributed in the hope that it will be useful, 00011 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00013 * GNU General Public License for more details. 00014 * 00015 * You should have received a copy of the GNU General Public License 00016 * along with this program; if not, write to the Free Software 00017 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 00018 * 00019 * gazebo_ros_katana_gripper_action_interface.h 00020 * 00021 * Created on: 07.11.2011 00022 * Author: Karl Glatz <glatz@hs-weingarten.de> 00023 * Ravensburg-Weingarten, University of Applied Sciences 00024 * 00025 * 00026 */ 00027 00028 #ifndef IGAZEBOROSKATANAGRIPPERACTION_H_ 00029 #define IGAZEBOROSKATANAGRIPPERACTION_H_ 00030 00031 #include<ros/time.h> 00032 00033 namespace katana_gazebo_plugins 00034 { 00035 00036 struct GRKAPoint 00037 { 00038 double position; 00039 double velocity; 00040 }; 00041 00042 class IGazeboRosKatanaGripperAction 00043 { 00044 public: 00045 virtual ~IGazeboRosKatanaGripperAction() 00046 { 00047 } 00048 virtual GRKAPoint getNextDesiredPoint(ros::Time time) = 0; 00049 virtual void setCurrentPoint(GRKAPoint point) = 0; 00050 virtual bool hasActiveGoal() const = 0; 00051 virtual void cancelGoal() = 0; 00052 00053 virtual void getGains(double &p, double &i, double &d, double &i_max, double &i_min) = 0; 00054 virtual void setCurrentPoint(double pos, double vel); 00055 00056 }; 00057 00058 } 00059 #endif /* IGAZEBOROSKATANAGRIPPERACTION_H_ */