package nomadgui.Telemetry;

import distinct.rpc.*;

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

public class posDerivedState implements XDRType {
  public int posNorth;
  public int posWest;
  public int posUp;
  public int rotZ;
  public int rotY;
  public int rotX;
  public int posNorthDot;
  public int posWestDot;
  public int deltaUpDot;
  public int rotZDot;
  public int rotYDot;
  public int rotXDot;
  public int msecs;
  public int week;

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

public posDerivedState()
{}

/**
 * Creates an object of class posDerivedState.
 * @param     arg_posNorth The value of the posNorth component.
 * @param     arg_posWest The value of the posWest component.
 * @param     arg_posUp The value of the posUp component.
 * @param     arg_rotZ The value of the rotZ component.
 * @param     arg_rotY The value of the rotY component.
 * @param     arg_rotX The value of the rotX component.
 * @param     arg_posNorthDot The value of the posNorthDot component.
 * @param     arg_posWestDot The value of the posWestDot component.
 * @param     arg_deltaUpDot The value of the deltaUpDot component.
 * @param     arg_rotZDot The value of the rotZDot component.
 * @param     arg_rotYDot The value of the rotYDot component.
 * @param     arg_rotXDot The value of the rotXDot component.
 * @param     arg_msecs The value of the msecs component.
 * @param     arg_week The value of the week component.
 */

public posDerivedState(int arg_posNorth, int arg_posWest, int arg_posUp, int arg_rotZ, int arg_rotY, int arg_rotX, int arg_posNorthDot, int arg_posWestDot, int arg_deltaUpDot, int arg_rotZDot, int arg_rotYDot, int arg_rotXDot, int arg_msecs, int arg_week)
{
  posNorth = arg_posNorth;
  posWest = arg_posWest;
  posUp = arg_posUp;
  rotZ = arg_rotZ;
  rotY = arg_rotY;
  rotX = arg_rotX;
  posNorthDot = arg_posNorthDot;
  posWestDot = arg_posWestDot;
  deltaUpDot = arg_deltaUpDot;
  rotZDot = arg_rotZDot;
  rotYDot = arg_rotYDot;
  rotXDot = arg_rotXDot;
  msecs = arg_msecs;
  week = arg_week;
}

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

public void xdr_encode(XDRStream xdrs)
{
  xdrs.xdr_encode_int(posNorth);
  xdrs.xdr_encode_int(posWest);
  xdrs.xdr_encode_int(posUp);
  xdrs.xdr_encode_int(rotZ);
  xdrs.xdr_encode_int(rotY);
  xdrs.xdr_encode_int(rotX);
  xdrs.xdr_encode_int(posNorthDot);
  xdrs.xdr_encode_int(posWestDot);
  xdrs.xdr_encode_int(deltaUpDot);
  xdrs.xdr_encode_int(rotZDot);
  xdrs.xdr_encode_int(rotYDot);
  xdrs.xdr_encode_int(rotXDot);
  xdrs.xdr_encode_int(msecs);
  xdrs.xdr_encode_int(week);
}

/**
 * Decodes an object of class posDerivedState 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
{
  posNorth = xdrs.xdr_decode_int();
  posWest = xdrs.xdr_decode_int();
  posUp = xdrs.xdr_decode_int();
  rotZ = xdrs.xdr_decode_int();
  rotY = xdrs.xdr_decode_int();
  rotX = xdrs.xdr_decode_int();
  posNorthDot = xdrs.xdr_decode_int();
  posWestDot = xdrs.xdr_decode_int();
  deltaUpDot = xdrs.xdr_decode_int();
  rotZDot = xdrs.xdr_decode_int();
  rotYDot = xdrs.xdr_decode_int();
  rotXDot = xdrs.xdr_decode_int();
  msecs = xdrs.xdr_decode_int();
  week = xdrs.xdr_decode_int();
}
}
