package nomadgui.Drive;

import distinct.rpc.*;

/**
 * This class was automatically generated by Jrpcgen from the RPC/XDR file "move.x".<br>
 * move: was struct
 */

public class move implements XDRType {
  public double radius;
  public int pointTurnFlag;
  public double turnSpeed;
  public double turnDistance;
  public double translateSpeed;
  public double translateDistance;

/**
 * Default constructor for objects of class move.
 */

public move()
{}

/**
 * Creates an object of class move.
 * @param     arg_radius The value of the radius component.
 * @param     arg_pointTurnFlag The value of the pointTurnFlag component.
 * @param     arg_turnSpeed The value of the turnSpeed component.
 * @param     arg_turnDistance The value of the turnDistance component.
 * @param     arg_translateSpeed The value of the translateSpeed component.
 * @param     arg_translateDistance The value of the translateDistance component.
 */

public move(double arg_radius, int arg_pointTurnFlag, double arg_turnSpeed, double arg_turnDistance, double arg_translateSpeed, double arg_translateDistance)
{
  radius = arg_radius;
  pointTurnFlag = arg_pointTurnFlag;
  turnSpeed = arg_turnSpeed;
  turnDistance = arg_turnDistance;
  translateSpeed = arg_translateSpeed;
  translateDistance = arg_translateDistance;
}

/**
 * Encodes an object of class move in compliance to RFC 1832 (XDR).
 * @param     xdrs The XDR output stream.
 */

public void xdr_encode(XDRStream xdrs)
{
  xdrs.xdr_encode_double(radius);
  xdrs.xdr_encode_int(pointTurnFlag);
  xdrs.xdr_encode_double(turnSpeed);
  xdrs.xdr_encode_double(turnDistance);
  xdrs.xdr_encode_double(translateSpeed);
  xdrs.xdr_encode_double(translateDistance);
}

/**
 * Decodes an object of class move in compliance to RFC 1832 (XDR).
 * @param     xdrs The XDR input stream.
 * @exception RPCError When the calls fails for any reason.
 */

public void xdr_decode(XDRStream xdrs) throws RPCError
{
  radius = xdrs.xdr_decode_double();
  pointTurnFlag = xdrs.xdr_decode_int();
  turnSpeed = xdrs.xdr_decode_double();
  turnDistance = xdrs.xdr_decode_double();
  translateSpeed = xdrs.xdr_decode_double();
  translateDistance = xdrs.xdr_decode_double();
}
}
