/* * Player Java Client 3 - PlayerPosition3dData.java * Copyright (C) 2006 Radu Bogdan Rusu * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * * $Id$ * */ package javaclient3.structures.position3d; import javaclient3.structures.*; /** * Data: state (PLAYER_POSITION3D_DATA_STATE) * This interface returns data regarding the odometric pose and velocity * of the robot, as well as motor stall information. * @author Radu Bogdan Rusu * @version * <ul> * <li>v2.0 - Player 2.0 supported * </ul> */ public class PlayerPosition3dData implements PlayerConstants { // (x, y, z, roll, pitch, yaw) position [m, m, m, rad, rad, rad] private PlayerPose3d pos; // (x, y, z, roll, pitch, yaw) velocity [m, m, m, rad, rad, rad] private PlayerPose3d vel; // Are the motors stalled? private byte stall; /** * @return (x, y, z, roll, pitch, yaw) position [m, m, m, rad, rad, rad] **/ public synchronized PlayerPose3d getPos () { return this.pos; } /** * @param newPos (x, y, z, roll, pitch, yaw) position [m, m, m, rad, rad, rad] * */ public synchronized void setPos (PlayerPose3d newPos) { this.pos = newPos; } /** * @return (x, y, z, roll, pitch, yaw) velocity [m, m, m, rad, rad, rad] **/ public synchronized PlayerPose3d getVel () { return this.vel; } /** * @param newVel (x, y, z, roll, pitch, yaw) velocity [m, m, m, rad, rad, rad] * */ public synchronized void setVel (PlayerPose3d newVel) { this.vel = newVel; } /** * @return Are the motors stalled? **/ public synchronized byte getStall () { return this.stall; } /** * @param newStall Are the motors stalled? * */ public synchronized void setStall (byte newStall) { this.stall = newStall; } }