00001 #ifndef YOUBOT_ONEDOFGRIPPERDATA_H 00002 #define YOUBOT_ONEDOFGRIPPERDATA_H 00003 00004 /**************************************************************** 00005 * 00006 * Copyright (c) 2011 00007 * All rights reserved. 00008 * 00009 * Hochschule Bonn-Rhein-Sieg 00010 * University of Applied Sciences 00011 * Computer Science Department 00012 * 00013 * +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 00014 * 00015 * Author: 00016 * Jan Paulus, Nico Hochgeschwender, Michael Reckhaus, Azamat Shakhimardanov 00017 * Supervised by: 00018 * Gerhard K. Kraetzschmar 00019 * 00020 * +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 00021 * 00022 * This sofware is published under a dual-license: GNU Lesser General Public 00023 * License LGPL 2.1 and BSD license. The dual-license implies that users of this 00024 * code may choose which terms they prefer. 00025 * 00026 * +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 00027 * 00028 * Redistribution and use in source and binary forms, with or without 00029 * modification, are permitted provided that the following conditions are met: 00030 * 00031 * * Redistributions of source code must retain the above copyright 00032 * notice, this list of conditions and the following disclaimer. 00033 * * Redistributions in binary form must reproduce the above copyright 00034 * notice, this list of conditions and the following disclaimer in the 00035 * documentation and/or other materials provided with the distribution. 00036 * * Neither the name of the Hochschule Bonn-Rhein-Sieg nor the names of its 00037 * contributors may be used to endorse or promote products derived from 00038 * this software without specific prior written permission. 00039 * 00040 * This program is free software: you can redistribute it and/or modify 00041 * it under the terms of the GNU Lesser General Public License LGPL as 00042 * published by the Free Software Foundation, either version 2.1 of the 00043 * License, or (at your option) any later version or the BSD license. 00044 * 00045 * This program is distributed in the hope that it will be useful, 00046 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00047 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00048 * GNU Lesser General Public License LGPL and the BSD license for more details. 00049 * 00050 * You should have received a copy of the GNU Lesser General Public 00051 * License LGPL and BSD license along with this program. 00052 * 00053 ****************************************************************/ 00054 #include "generic/Units.hpp" 00055 #include "generic-gripper/GripperData.hpp" 00056 namespace youbot { 00057 00058 /////////////////////////////////////////////////////////////////////////////// 00059 /// abstract class of data for gripper with one degree of freedom 00060 /////////////////////////////////////////////////////////////////////////////// 00061 class OneDOFGripperData : public GripperData { 00062 }; 00063 /////////////////////////////////////////////////////////////////////////////// 00064 /// Setpoint length of the bar spacing for a one DOF gripper 00065 /////////////////////////////////////////////////////////////////////////////// 00066 class GripperBarSpacingSetPoint : public OneDOFGripperData { 00067 public: 00068 quantity<si::length> barSpacing; 00069 00070 }; 00071 /////////////////////////////////////////////////////////////////////////////// 00072 /// The sensed bar spacing for a one DOF gripper 00073 /////////////////////////////////////////////////////////////////////////////// 00074 class GripperSensedBarSpacing : public OneDOFGripperData { 00075 public: 00076 quantity<si::length> barSpacing; 00077 00078 }; 00079 /////////////////////////////////////////////////////////////////////////////// 00080 /// The sensed bar velocity for a one DOF gripper 00081 /////////////////////////////////////////////////////////////////////////////// 00082 class GripperSensedVelocity : public OneDOFGripperData { 00083 public: 00084 long barVelocity; 00085 00086 }; 00087 /////////////////////////////////////////////////////////////////////////////// 00088 /// The encoder setpoint for one bar 00089 /////////////////////////////////////////////////////////////////////////////// 00090 class GripperBarEncoderSetpoint : public OneDOFGripperData { 00091 public: 00092 int barEncoder; 00093 00094 }; 00095 /////////////////////////////////////////////////////////////////////////////// 00096 /// The bar position for a one gripper bar 00097 /////////////////////////////////////////////////////////////////////////////// 00098 class GripperBarPositionSetPoint : public OneDOFGripperData { 00099 public: 00100 quantity<si::length> barPosition; 00101 00102 }; 00103 /////////////////////////////////////////////////////////////////////////////// 00104 /// The sensed bar position for a one gripper bar 00105 /////////////////////////////////////////////////////////////////////////////// 00106 class GripperSensedBarPosition : public OneDOFGripperData { 00107 public: 00108 quantity<si::length> barPosition; 00109 00110 }; 00111 00112 } // namespace youbot 00113 #endif