/*
Dexter Travis
Bradley University
2001/2002 Senior Project Botdock
http://pioneer1.bradley.edu
http://cegt201.bradley.edu/projects/proj2002/botdock/
*/

//created by Dr. Malinowski to interface with existing C functions

public class JSaphira {
    public static final  int    paiSTATUSNOPOWER=1;
    public static final  int    paiSTATUSSTOPPED=2;
    public static final  int    paiSTATUSMOVING =3;

    public static native int    paiRobotStartup(int comn);
                                // (int channel, char *name, HANDLE hInst, int nCmdShow)
    public static native void   paiRobotShutdown();

    public static native void   paiResetRobotPosition();
    public static native float  paiRobotX();//return robot position X
    public static native float  paiRobotY();//return robot position Y
    public static native float  paiRobotHeading();

    public static native float  paiRobotTransVel();
    public static native int    paiRobotStall();
    public static native int    paiRobotStatus();
    public static native void   paiSetRobotVelocity(int vel);
    public static native void   paiSetMoveVelocity(int vel);//set move velocity from 0-100%
    public static native void   paiMoveRobot(int dist);//moves robot a distance in 10ths of centimeter
    public static native void   paiStopRobot();//STOP everything NOW

    public static native float  paiRobotRotVel();//determine current velocity of rotation
    public static native void   paiSetRobotRotVel(float vel);//change velocity of rotation
    public static native void   paiRotateRobot(float radians);//rotate the robot +/- radians
    public static native void   paiSetRobotHeading(float radians);//redefine the current heading

    public static native int    paiSonarRange(int num);
    public static native void   paiSetSonarPolling(int on); 
                                // sets all sonars to on or off

    public static native float  paiBatteryVoltage();//return the battery voltage of the robot.

    // static constructor
    static {
        System.loadLibrary("JSaphira");
    }
}