/*
MobileRobots Advanced Robotics Navigation and Localization (ARNL)
Version 1.7.0

Copyright (C) 2004, 2005 ActivMedia Robotics LLC
Copyright (C) 2006, 2007, 2008, 2009 MobileRobots Inc.

All Rights Reserved.

MobileRobots Inc does not make any representations about the
suitability of this software for any purpose.  It is provided "as is"
without express or implied warranty.

The license for this software is distributed as LICENSE.txt in the top
level directory.

robots@mobilerobots.com
MobileRobots
10 Columbia Drive
Amherst, NH 03031
800-639-9481

*/
/* ----------------------------------------------------------------------------
 * This file was automatically generated by SWIG (http://www.swig.org).
 * Version 1.3.29
 *
 * Do not make changes to this file unless you know what you are doing--modify
 * the SWIG interface file instead.
 * ----------------------------------------------------------------------------- */

package com.mobilerobots.Arnl;

  import com.mobilerobots.Aria.*;
  import com.mobilerobots.ArNetworking.*;
  import com.mobilerobots.BaseArnl.*;

public class ArServerModeDock extends ArServerMode {
  private long swigCPtr;

  /* for internal use by swig only */
  public ArServerModeDock(long cPtr, boolean cMemoryOwn) {
    super(ArnlJavaJNI.SWIGArServerModeDockUpcast(cPtr), cMemoryOwn);
    swigCPtr = cPtr;
  }

  /* for internal use by swig only */
  public static long getCPtr(ArServerModeDock obj) {
    return (obj == null) ? 0 : obj.swigCPtr;
  }

  protected void finalize() {
    delete();
  }

  public void delete() {
    if(swigCPtr != 0 && swigCMemOwn) {
      swigCMemOwn = false;
      ArnlJavaJNI.delete_ArServerModeDock(swigCPtr);
    }
    swigCPtr = 0;
    super.delete();
  }

  public static ArServerModeDock createDock(ArServerBase serverBase, ArRobot robot, ArLocalizationTask locTask, ArPathPlanningTask pathTask, ArFunctor shutdownFunctor) {
    long cPtr = ArnlJavaJNI.ArServerModeDock_createDock__SWIG_0(ArServerBase.getCPtr(serverBase), ArRobot.getCPtr(robot), ArLocalizationTask.getCPtr(locTask), ArPathPlanningTask.getCPtr(pathTask), ArFunctor.getCPtr(shutdownFunctor));
    return (cPtr == 0) ? null : new ArServerModeDock(cPtr, false);
  }

  public static ArServerModeDock createDock(ArServerBase serverBase, ArRobot robot, ArLocalizationTask locTask, ArPathPlanningTask pathTask) {
    long cPtr = ArnlJavaJNI.ArServerModeDock_createDock__SWIG_1(ArServerBase.getCPtr(serverBase), ArRobot.getCPtr(robot), ArLocalizationTask.getCPtr(locTask), ArPathPlanningTask.getCPtr(pathTask));
    return (cPtr == 0) ? null : new ArServerModeDock(cPtr, false);
  }

  public ArDockInterface.State getState() {
    return ArDockInterface.State.swigToEnum(ArnlJavaJNI.ArServerModeDock_getState(swigCPtr));
  }

  public void dock() {
    ArnlJavaJNI.ArServerModeDock_dock(swigCPtr);
  }

  public void undock() {
    ArnlJavaJNI.ArServerModeDock_undock(swigCPtr);
  }

  public void checkDock() {
    ArnlJavaJNI.ArServerModeDock_checkDock(swigCPtr);
  }

  public void activateAsDocked() {
    ArnlJavaJNI.ArServerModeDock_activateAsDocked(swigCPtr);
  }

  public void checkDefault() {
    ArnlJavaJNI.ArServerModeDock_checkDefault(swigCPtr);
  }

  public void activate() {
    ArnlJavaJNI.ArServerModeDock_activate(swigCPtr);
  }

  public void deactivate() {
    ArnlJavaJNI.ArServerModeDock_deactivate(swigCPtr);
  }

  public void requestUnlock() {
    ArnlJavaJNI.ArServerModeDock_requestUnlock(swigCPtr);
  }

  public boolean getForcedDock() {
    return ArnlJavaJNI.ArServerModeDock_getForcedDock(swigCPtr);
  }

  public void requestForcedDock() {
    ArnlJavaJNI.ArServerModeDock_requestForcedDock(swigCPtr);
  }

  public void forceUnlock() {
    ArnlJavaJNI.ArServerModeDock_forceUnlock(swigCPtr);
  }

  public String getDockName() {
    return ArnlJavaJNI.ArServerModeDock_getDockName(swigCPtr);
  }

  public void setDockingVoltage(double dockingVoltage) {
    ArnlJavaJNI.ArServerModeDock_setDockingVoltage(swigCPtr, dockingVoltage);
  }

  public double getDockingVoltage() {
    return ArnlJavaJNI.ArServerModeDock_getDockingVoltage(swigCPtr);
  }

  public void setDoneChargingVoltage(double doneChargingVoltage) {
    ArnlJavaJNI.ArServerModeDock_setDoneChargingVoltage(swigCPtr, doneChargingVoltage);
  }

  public double getDoneChargingVoltage() {
    return ArnlJavaJNI.ArServerModeDock_getDoneChargingVoltage(swigCPtr);
  }

  public void setDoneChargingMinutes(int doneChargingMinutes) {
    ArnlJavaJNI.ArServerModeDock_setDoneChargingMinutes(swigCPtr, doneChargingMinutes);
  }

  public int getDoneChargingMinutes() {
    return ArnlJavaJNI.ArServerModeDock_getDoneChargingMinutes(swigCPtr);
  }

  public boolean getUseChargeState() {
    return ArnlJavaJNI.ArServerModeDock_getUseChargeState(swigCPtr);
  }

  public void setDoneChargingAtFloat(boolean doneChargingAtFloat) {
    ArnlJavaJNI.ArServerModeDock_setDoneChargingAtFloat(swigCPtr, doneChargingAtFloat);
  }

  public boolean getDoneChargingAtFloat() {
    return ArnlJavaJNI.ArServerModeDock_getDoneChargingAtFloat(swigCPtr);
  }

  public void setMinimumMinutesBetweenAutoDock(int minutesBetween) {
    ArnlJavaJNI.ArServerModeDock_setMinimumMinutesBetweenAutoDock(swigCPtr, minutesBetween);
  }

  public int getMinimumMinutesBetweenAutoDock() {
    return ArnlJavaJNI.ArServerModeDock_getMinimumMinutesBetweenAutoDock(swigCPtr);
  }

  public void setAutoDock(boolean autoDocking) {
    ArnlJavaJNI.ArServerModeDock_setAutoDock(swigCPtr, autoDocking);
  }

  public boolean getAutoDock() {
    return ArnlJavaJNI.ArServerModeDock_getAutoDock(swigCPtr);
  }

  public void addToConfig(ArConfig config) {
    ArnlJavaJNI.ArServerModeDock_addToConfig(swigCPtr, ArConfig.getCPtr(config));
  }

  public void addControlCommands(ArServerHandlerCommands handlerCommands) {
    ArnlJavaJNI.ArServerModeDock_addControlCommands(swigCPtr, ArServerHandlerCommands.getCPtr(handlerCommands));
  }

  public void serverDock(ArServerClient client, ArNetPacket packet) {
    ArnlJavaJNI.ArServerModeDock_serverDock(swigCPtr, ArServerClient.getCPtr(client), ArNetPacket.getCPtr(packet));
  }

  public void serverUndock(ArServerClient client, ArNetPacket packet) {
    ArnlJavaJNI.ArServerModeDock_serverUndock(swigCPtr, ArServerClient.getCPtr(client), ArNetPacket.getCPtr(packet));
  }

  public void serverDockInfo(ArServerClient client, ArNetPacket packet) {
    ArnlJavaJNI.ArServerModeDock_serverDockInfo(swigCPtr, ArServerClient.getCPtr(client), ArNetPacket.getCPtr(packet));
  }

  public void serverGetAutoDock(ArServerClient client, ArNetPacket packet) {
    ArnlJavaJNI.ArServerModeDock_serverGetAutoDock(swigCPtr, ArServerClient.getCPtr(client), ArNetPacket.getCPtr(packet));
  }

  public void serverSetAutoDock(ArServerClient client, ArNetPacket packet) {
    ArnlJavaJNI.ArServerModeDock_serverSetAutoDock(swigCPtr, ArServerClient.getCPtr(client), ArNetPacket.getCPtr(packet));
  }

  public void addStateChangedCB(ArFunctor functor, ArListPos.Pos position) {
    ArnlJavaJNI.ArServerModeDock_addStateChangedCB__SWIG_0(swigCPtr, ArFunctor.getCPtr(functor), position.swigValue());
  }

  public void addStateChangedCB(ArFunctor functor) {
    ArnlJavaJNI.ArServerModeDock_addStateChangedCB__SWIG_1(swigCPtr, ArFunctor.getCPtr(functor));
  }

  public void remStateChangedCB(ArFunctor functor) {
    ArnlJavaJNI.ArServerModeDock_remStateChangedCB(swigCPtr, ArFunctor.getCPtr(functor));
  }

  public long getFailedGotoNum() {
    return ArnlJavaJNI.ArServerModeDock_getFailedGotoNum(swigCPtr);
  }

  public void addForcedDockCB(ArFunctor functor, int position) {
    ArnlJavaJNI.ArServerModeDock_addForcedDockCB__SWIG_0(swigCPtr, ArFunctor.getCPtr(functor), position);
  }

  public void addForcedDockCB(ArFunctor functor) {
    ArnlJavaJNI.ArServerModeDock_addForcedDockCB__SWIG_1(swigCPtr, ArFunctor.getCPtr(functor));
  }

  public void remForcedDockCB(ArFunctor functor) {
    ArnlJavaJNI.ArServerModeDock_remForcedDockCB(swigCPtr, ArFunctor.getCPtr(functor));
  }

  public void addIdleDockCB(ArFunctor functor, int position) {
    ArnlJavaJNI.ArServerModeDock_addIdleDockCB__SWIG_0(swigCPtr, ArFunctor.getCPtr(functor), position);
  }

  public void addIdleDockCB(ArFunctor functor) {
    ArnlJavaJNI.ArServerModeDock_addIdleDockCB__SWIG_1(swigCPtr, ArFunctor.getCPtr(functor));
  }

  public void remIdleDockCB(ArFunctor functor) {
    ArnlJavaJNI.ArServerModeDock_remIdleDockCB(swigCPtr, ArFunctor.getCPtr(functor));
  }

  public void addRequestedDockCB(ArFunctor functor, int position) {
    ArnlJavaJNI.ArServerModeDock_addRequestedDockCB__SWIG_0(swigCPtr, ArFunctor.getCPtr(functor), position);
  }

  public void addRequestedDockCB(ArFunctor functor) {
    ArnlJavaJNI.ArServerModeDock_addRequestedDockCB__SWIG_1(swigCPtr, ArFunctor.getCPtr(functor));
  }

  public void remRequestedDockCB(ArFunctor functor) {
    ArnlJavaJNI.ArServerModeDock_remRequestedDockCB(swigCPtr, ArFunctor.getCPtr(functor));
  }

  public void addDrivingToDockCB(ArFunctor functor, int position) {
    ArnlJavaJNI.ArServerModeDock_addDrivingToDockCB__SWIG_0(swigCPtr, ArFunctor.getCPtr(functor), position);
  }

  public void addDrivingToDockCB(ArFunctor functor) {
    ArnlJavaJNI.ArServerModeDock_addDrivingToDockCB__SWIG_1(swigCPtr, ArFunctor.getCPtr(functor));
  }

  public void remDrivingToDockCB(ArFunctor functor) {
    ArnlJavaJNI.ArServerModeDock_remDrivingToDockCB(swigCPtr, ArFunctor.getCPtr(functor));
  }

  public void addDrivingIntoDockCB(ArFunctor functor, int position) {
    ArnlJavaJNI.ArServerModeDock_addDrivingIntoDockCB__SWIG_0(swigCPtr, ArFunctor.getCPtr(functor), position);
  }

  public void addDrivingIntoDockCB(ArFunctor functor) {
    ArnlJavaJNI.ArServerModeDock_addDrivingIntoDockCB__SWIG_1(swigCPtr, ArFunctor.getCPtr(functor));
  }

  public void remDrivingIntoDockCB(ArFunctor functor) {
    ArnlJavaJNI.ArServerModeDock_remDrivingIntoDockCB(swigCPtr, ArFunctor.getCPtr(functor));
  }

  public void addDockedCB(ArFunctor functor, int position) {
    ArnlJavaJNI.ArServerModeDock_addDockedCB__SWIG_0(swigCPtr, ArFunctor.getCPtr(functor), position);
  }

  public void addDockedCB(ArFunctor functor) {
    ArnlJavaJNI.ArServerModeDock_addDockedCB__SWIG_1(swigCPtr, ArFunctor.getCPtr(functor));
  }

  public void remDockedCB(ArFunctor functor) {
    ArnlJavaJNI.ArServerModeDock_remDockedCB(swigCPtr, ArFunctor.getCPtr(functor));
  }

  public void addSingleShotDockedCB(ArFunctor functor, int position) {
    ArnlJavaJNI.ArServerModeDock_addSingleShotDockedCB__SWIG_0(swigCPtr, ArFunctor.getCPtr(functor), position);
  }

  public void addSingleShotDockedCB(ArFunctor functor) {
    ArnlJavaJNI.ArServerModeDock_addSingleShotDockedCB__SWIG_1(swigCPtr, ArFunctor.getCPtr(functor));
  }

  public void remSingleShotDockedCB(ArFunctor functor) {
    ArnlJavaJNI.ArServerModeDock_remSingleShotDockedCB(swigCPtr, ArFunctor.getCPtr(functor));
  }

  public void addDockNowUnforcedCB(ArFunctor functor, int position) {
    ArnlJavaJNI.ArServerModeDock_addDockNowUnforcedCB__SWIG_0(swigCPtr, ArFunctor.getCPtr(functor), position);
  }

  public void addDockNowUnforcedCB(ArFunctor functor) {
    ArnlJavaJNI.ArServerModeDock_addDockNowUnforcedCB__SWIG_1(swigCPtr, ArFunctor.getCPtr(functor));
  }

  public void remDockNowUnforcedCB(ArFunctor functor) {
    ArnlJavaJNI.ArServerModeDock_remDockNowUnforcedCB(swigCPtr, ArFunctor.getCPtr(functor));
  }

  public void addDockNowForcedCB(ArFunctor functor, int position) {
    ArnlJavaJNI.ArServerModeDock_addDockNowForcedCB__SWIG_0(swigCPtr, ArFunctor.getCPtr(functor), position);
  }

  public void addDockNowForcedCB(ArFunctor functor) {
    ArnlJavaJNI.ArServerModeDock_addDockNowForcedCB__SWIG_1(swigCPtr, ArFunctor.getCPtr(functor));
  }

  public void remDockNowForcedCB(ArFunctor functor) {
    ArnlJavaJNI.ArServerModeDock_remDockNowForcedCB(swigCPtr, ArFunctor.getCPtr(functor));
  }

  public void addUndockingCB(ArFunctor functor, int position) {
    ArnlJavaJNI.ArServerModeDock_addUndockingCB__SWIG_0(swigCPtr, ArFunctor.getCPtr(functor), position);
  }

  public void addUndockingCB(ArFunctor functor) {
    ArnlJavaJNI.ArServerModeDock_addUndockingCB__SWIG_1(swigCPtr, ArFunctor.getCPtr(functor));
  }

  public void remUndockingCB(ArFunctor functor) {
    ArnlJavaJNI.ArServerModeDock_remUndockingCB(swigCPtr, ArFunctor.getCPtr(functor));
  }

  public void addUndockedCB(ArFunctor functor, int position) {
    ArnlJavaJNI.ArServerModeDock_addUndockedCB__SWIG_0(swigCPtr, ArFunctor.getCPtr(functor), position);
  }

  public void addUndockedCB(ArFunctor functor) {
    ArnlJavaJNI.ArServerModeDock_addUndockedCB__SWIG_1(swigCPtr, ArFunctor.getCPtr(functor));
  }

  public void remUndockedCB(ArFunctor functor) {
    ArnlJavaJNI.ArServerModeDock_remUndockedCB(swigCPtr, ArFunctor.getCPtr(functor));
  }

}
