/* ----------------------------------------------------------------------------
 * This file was automatically generated by SWIG (http://www.swig.org).
 * Version 1.3.29
 * 
 * This file is not intended to be easily readable and contains a number of 
 * coding conventions designed to improve portability and efficiency. Do not make
 * changes to this file unless you know what you are doing--modify the SWIG 
 * interface file instead. 
 * ----------------------------------------------------------------------------- */

#define SWIG_DIRECTORS

#ifdef __cplusplus
template<class T> class SwigValueWrapper {
    T *tt;
public:
    SwigValueWrapper() : tt(0) { }
    SwigValueWrapper(const SwigValueWrapper<T>& rhs) : tt(new T(*rhs.tt)) { }
    SwigValueWrapper(const T& t) : tt(new T(t)) { }
    ~SwigValueWrapper() { delete tt; } 
    SwigValueWrapper& operator=(const T& t) { delete tt; tt = new T(t); return *this; }
    operator T&() const { return *tt; }
    T *operator&() { return tt; }
private:
    SwigValueWrapper& operator=(const SwigValueWrapper<T>& rhs);
};
#endif

/* -----------------------------------------------------------------------------
 *  This section contains generic SWIG labels for method/variable
 *  declarations/attributes, and other compiler dependent labels.
 * ----------------------------------------------------------------------------- */

/* template workaround for compilers that cannot correctly implement the C++ standard */
#ifndef SWIGTEMPLATEDISAMBIGUATOR
# if defined(__SUNPRO_CC)
#   if (__SUNPRO_CC <= 0x560)
#     define SWIGTEMPLATEDISAMBIGUATOR template
#   else
#     define SWIGTEMPLATEDISAMBIGUATOR 
#   endif
# else
#   define SWIGTEMPLATEDISAMBIGUATOR 
# endif
#endif

/* inline attribute */
#ifndef SWIGINLINE
# if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
#   define SWIGINLINE inline
# else
#   define SWIGINLINE
# endif
#endif

/* attribute recognised by some compilers to avoid 'unused' warnings */
#ifndef SWIGUNUSED
# if defined(__GNUC__)
#   if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
#     define SWIGUNUSED __attribute__ ((__unused__)) 
#   else
#     define SWIGUNUSED
#   endif
# elif defined(__ICC)
#   define SWIGUNUSED __attribute__ ((__unused__)) 
# else
#   define SWIGUNUSED 
# endif
#endif

#ifndef SWIGUNUSEDPARM
# ifdef __cplusplus
#   define SWIGUNUSEDPARM(p)
# else
#   define SWIGUNUSEDPARM(p) p SWIGUNUSED 
# endif
#endif

/* internal SWIG method */
#ifndef SWIGINTERN
# define SWIGINTERN static SWIGUNUSED
#endif

/* internal inline SWIG method */
#ifndef SWIGINTERNINLINE
# define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
#endif

/* exporting methods */
#if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
#  ifndef GCC_HASCLASSVISIBILITY
#    define GCC_HASCLASSVISIBILITY
#  endif
#endif

#ifndef SWIGEXPORT
# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
#   if defined(STATIC_LINKED)
#     define SWIGEXPORT
#   else
#     define SWIGEXPORT __declspec(dllexport)
#   endif
# else
#   if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
#     define SWIGEXPORT __attribute__ ((visibility("default")))
#   else
#     define SWIGEXPORT
#   endif
# endif
#endif

/* calling conventions for Windows */
#ifndef SWIGSTDCALL
# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
#   define SWIGSTDCALL __stdcall
# else
#   define SWIGSTDCALL
# endif 
#endif

/* Deal with Microsoft's attempt at deprecating C standard runtime functions */
#if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER)
# define _CRT_SECURE_NO_DEPRECATE
#endif


/* Fix for jlong on some versions of gcc on Windows */
#if defined(__GNUC__) && !defined(__INTELC__)
  typedef long long __int64;
#endif

/* Fix for jlong on 64-bit x86 Solaris */
#if defined(__x86_64)
# ifdef _LP64
#   undef _LP64
# endif
#endif

#include <jni.h>
#include <stdlib.h>
#include <string.h>


/* Support for throwing Java exceptions */
typedef enum {
  SWIG_JavaOutOfMemoryError = 1, 
  SWIG_JavaIOException, 
  SWIG_JavaRuntimeException, 
  SWIG_JavaIndexOutOfBoundsException,
  SWIG_JavaArithmeticException,
  SWIG_JavaIllegalArgumentException,
  SWIG_JavaNullPointerException,
  SWIG_JavaDirectorPureVirtual,
  SWIG_JavaUnknownError
} SWIG_JavaExceptionCodes;

typedef struct {
  SWIG_JavaExceptionCodes code;
  const char *java_exception;
} SWIG_JavaExceptions_t;


static void SWIGUNUSED SWIG_JavaThrowException(JNIEnv *jenv, SWIG_JavaExceptionCodes code, const char *msg) {
  jclass excep;
  static const SWIG_JavaExceptions_t java_exceptions[] = {
    { SWIG_JavaOutOfMemoryError, "java/lang/OutOfMemoryError" },
    { SWIG_JavaIOException, "java/io/IOException" },
    { SWIG_JavaRuntimeException, "java/lang/RuntimeException" },
    { SWIG_JavaIndexOutOfBoundsException, "java/lang/IndexOutOfBoundsException" },
    { SWIG_JavaArithmeticException, "java/lang/ArithmeticException" },
    { SWIG_JavaIllegalArgumentException, "java/lang/IllegalArgumentException" },
    { SWIG_JavaNullPointerException, "java/lang/NullPointerException" },
    { SWIG_JavaDirectorPureVirtual, "java/lang/RuntimeException" },
    { SWIG_JavaUnknownError,  "java/lang/UnknownError" },
    { (SWIG_JavaExceptionCodes)0,  "java/lang/UnknownError" } };
  const SWIG_JavaExceptions_t *except_ptr = java_exceptions;

  while (except_ptr->code != code && except_ptr->code)
    except_ptr++;

  jenv->ExceptionClear();
  excep = jenv->FindClass(except_ptr->java_exception);
  if (excep)
    jenv->ThrowNew(excep, msg);
}


/* Contract support */

#define SWIG_contract_assert(nullreturn, expr, msg) if (!(expr)) {SWIG_JavaThrowException(jenv, SWIG_JavaIllegalArgumentException, msg); return nullreturn; } else

/* -----------------------------------------------------------------------------
 * See the LICENSE file for information on copyright, usage and redistribution
 * of SWIG, and the README file for authors - http://www.swig.org/release.html.
 *
 * director.swg
 *
 * This file contains support for director classes that proxy
 * method calls from C++ to Java extensions.
 * ----------------------------------------------------------------------------- */

#ifdef __cplusplus

#if defined(DEBUG_DIRECTOR_OWNED)
#include <iostream>
#endif

namespace Swig {
  /* Java object wrapper */
  class JObjectWrapper {
  public:
    JObjectWrapper() : jthis_(NULL), weak_global_(true) {
    }

    ~JObjectWrapper() {
      jthis_ = NULL;
      weak_global_ = true;
    }

    bool set(JNIEnv *jenv, jobject jobj, bool mem_own, bool weak_global) {
      if (!jthis_) {
        weak_global_ = weak_global;
        if (jobj)
          jthis_ = ((weak_global_ || !mem_own) ? jenv->NewWeakGlobalRef(jobj) : jenv->NewGlobalRef(jobj));
#if defined(DEBUG_DIRECTOR_OWNED)
        std::cout << "JObjectWrapper::set(" << jobj << ", " << (weak_global ? "weak_global" : "global_ref") << ") -> " << jthis_ << std::endl;
#endif
        return true;
      } else {
#if defined(DEBUG_DIRECTOR_OWNED)
        std::cout << "JObjectWrapper::set(" << jobj << ", " << (weak_global ? "weak_global" : "global_ref") << ") -> already set" << std::endl;
#endif
        return false;
      }
    }

    jobject get(JNIEnv *jenv) const {
#if defined(DEBUG_DIRECTOR_OWNED)
      std::cout << "JObjectWrapper::get(";
      if (jthis_)
        std::cout << jthis_;
      else
        std::cout << "null";
      std::cout << ") -> return new local ref" << std::endl;
#endif
      return (jthis_ ? jenv->NewLocalRef(jthis_) : jthis_);
    }

    void release(JNIEnv *jenv) {
#if defined(DEBUG_DIRECTOR_OWNED)
      std::cout << "JObjectWrapper::release(" << jthis_ << "): " << (weak_global_ ? "weak global ref" : "global ref") << std::endl;
#endif
      if (jthis_) {
        if (weak_global_) {
          if (jenv->IsSameObject(jthis_, NULL) == JNI_FALSE)
            jenv->DeleteWeakGlobalRef((jweak)jthis_);
        } else
          jenv->DeleteGlobalRef(jthis_);
      }

      jthis_ = NULL;
      weak_global_ = true;
    }

    jobject peek() {
      return jthis_;
    }

    /* Java proxy releases ownership of C++ object, C++ object is now
       responsible for destruction (creates NewGlobalRef to pin Java
       proxy) */
    void java_change_ownership(JNIEnv *jenv, jobject jself, bool take_or_release) {
      if (take_or_release) {  /* Java takes ownership of C++ object's lifetime. */
        if (!weak_global_) {
          jenv->DeleteGlobalRef(jthis_);
          jthis_ = jenv->NewWeakGlobalRef(jself);
          weak_global_ = true;
        }
      } else { /* Java releases ownership of C++ object's lifetime */
        if (weak_global_) {
          jenv->DeleteWeakGlobalRef((jweak)jthis_);
          jthis_ = jenv->NewGlobalRef(jself);
          weak_global_ = false;
        }
      }
    }

  private:
    /* pointer to Java object */
    jobject jthis_;
    /* Local or global reference flag */
    bool weak_global_;
  };

  /* director base class */
  class Director {
  private:
    /* pointer to Java virtual machine */
    JavaVM *swig_jvm_;

  protected:
    /* Java object wrapper */
    JObjectWrapper swig_self_;

    /* Acquire Java VM environment from Java VM */
    JNIEnv *swig_acquire_jenv() const {
      JNIEnv *env = NULL;
      swig_jvm_->AttachCurrentThread((void **) &env, NULL);
      return env;
    }

    /* Disconnect director from Java object */
    void swig_disconnect_director_self(const char *disconn_method) {
      JNIEnv *jenv = swig_acquire_jenv();
      jobject jobj = swig_self_.peek();
#if defined(DEBUG_DIRECTOR_OWNED)
      std::cout << "Swig::Director::disconnect_director_self(" << jobj << ")" << std::endl;
#endif
      if (jobj && jenv->IsSameObject(jobj, NULL) == JNI_FALSE) {
        jmethodID disconn_meth = jenv->GetMethodID(jenv->GetObjectClass(jobj), disconn_method, "()V");
        if (disconn_meth) {
#if defined(DEBUG_DIRECTOR_OWNED)
          std::cout << "Swig::Director::disconnect_director_self upcall to " << disconn_method << std::endl;
#endif
          jenv->CallVoidMethod(jobj, disconn_meth);
        }
      }
    }

  public:
    Director(JNIEnv *jenv) : swig_jvm_((JavaVM *) NULL), swig_self_() {
      /* Acquire the Java VM pointer */
      jenv->GetJavaVM(&swig_jvm_);
    }

    virtual ~Director() {
      swig_self_.release(swig_acquire_jenv());
    }

    bool swig_set_self(JNIEnv *jenv, jobject jself, bool mem_own, bool weak_global) {
      return swig_self_.set(jenv, jself, mem_own, weak_global);
    }

    jobject swig_get_self(JNIEnv *jenv) const {
      return swig_self_.get(jenv);
    }

    // Change C++ object's ownership, relative to Java
    void swig_java_change_ownership(JNIEnv *jenv, jobject jself, bool take_or_release) {
      swig_self_.java_change_ownership(jenv, jself, take_or_release);
    }
  };
}

#endif /* __cplusplus */



#include "Aria.h"
#include "ArNetworking.h"
#include "Arnl.h"
#include "ArBaseLocalizationTask.h"
#include "ArPathPlanningTask.h"
#include "ArServerClasses.h"
#include "ArLocalizationManager.h"
#include "ArMultiRobot.h"
#include "ArMultiRobotFlags.h"
#include "ArMultiRobotPeer.h"
//#include "wrapper_ExtraClasses.h"


#include <stdexcept>


#include <list>
#include <stdexcept>


#include <vector>
#include <stdexcept>


#include <list>
#include <stdexcept>



/* ---------------------------------------------------
 * C++ director class methods
 * --------------------------------------------------- */

#include "BaseArnlJava_wrap.h"


#ifdef __cplusplus
extern "C" {
#endif

JNIEXPORT jint JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_MAKING_1BASEARNL_1get(JNIEnv *jenv, jclass jcls) {
  jint jresult = 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  result = (int) 1;
  
  jresult = (jint)result; 
  return jresult;
}


JNIEXPORT jint JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_SWIG_1IMPORTED_1ARIA_1get(JNIEnv *jenv, jclass jcls) {
  jint jresult = 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  result = (int) 1;
  
  jresult = (jint)result; 
  return jresult;
}


JNIEXPORT jint JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_SWIG_1IMPORTED_1ARNETWORKING_1get(JNIEnv *jenv, jclass jcls) {
  jint jresult = 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  result = (int) 1;
  
  jresult = (jint)result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArMultiRobotPoseAndRadius_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  jlong jresult = 0 ;
  ArPose arg1 ;
  double arg2 ;
  ArMultiRobotPoseAndRadius *result = 0 ;
  ArPose *argp1 ;
  
  (void)jenv;
  (void)jcls;
  argp1 = *(ArPose **)&jarg1; 
  if (!argp1) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return 0;
  }
  arg1 = *argp1; 
  arg2 = (double)jarg2; 
  result = (ArMultiRobotPoseAndRadius *)new ArMultiRobotPoseAndRadius(arg1,arg2);
  *(ArMultiRobotPoseAndRadius **)&jresult = result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArMultiRobotPoseAndRadius_1_1SWIG_11(JNIEnv *jenv, jclass jcls) {
  jlong jresult = 0 ;
  ArMultiRobotPoseAndRadius *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  result = (ArMultiRobotPoseAndRadius *)new ArMultiRobotPoseAndRadius();
  *(ArMultiRobotPoseAndRadius **)&jresult = result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_delete_1ArMultiRobotPoseAndRadius(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArMultiRobotPoseAndRadius *arg1 = (ArMultiRobotPoseAndRadius *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArMultiRobotPoseAndRadius **)&jarg1; 
  delete arg1;
  
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArMultiRobotPoseAndRadius_1getX(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArMultiRobotPoseAndRadius *arg1 = (ArMultiRobotPoseAndRadius *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArMultiRobotPoseAndRadius **)&jarg1; 
  result = (double)(arg1)->getX();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArMultiRobotPoseAndRadius_1getY(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArMultiRobotPoseAndRadius *arg1 = (ArMultiRobotPoseAndRadius *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArMultiRobotPoseAndRadius **)&jarg1; 
  result = (double)(arg1)->getY();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArMultiRobotPoseAndRadius_1getTh(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArMultiRobotPoseAndRadius *arg1 = (ArMultiRobotPoseAndRadius *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArMultiRobotPoseAndRadius **)&jarg1; 
  result = (double)(arg1)->getTh();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArMultiRobotPoseAndRadius_1getPose(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArMultiRobotPoseAndRadius *arg1 = (ArMultiRobotPoseAndRadius *) 0 ;
  ArPose result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArMultiRobotPoseAndRadius **)&jarg1; 
  result = (arg1)->getPose();
  *(ArPose **)&jresult = new ArPose((ArPose &)result); 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArMultiRobotPoseAndRadius_1getRadius(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArMultiRobotPoseAndRadius *arg1 = (ArMultiRobotPoseAndRadius *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArMultiRobotPoseAndRadius **)&jarg1; 
  result = (double)(arg1)->getRadius();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_Arnl_1init(JNIEnv *jenv, jclass jcls) {
  (void)jenv;
  (void)jcls;
  Arnl::init();
}


JNIEXPORT jstring JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_Arnl_1getTypicalParamFileName(JNIEnv *jenv, jclass jcls) {
  jstring jresult = 0 ;
  char *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  result = (char *)Arnl::getTypicalParamFileName();
  if(result) jresult = jenv->NewStringUTF(result);
  return jresult;
}


JNIEXPORT jstring JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_Arnl_1getTypicalDefaultParamFileName(JNIEnv *jenv, jclass jcls) {
  jstring jresult = 0 ;
  char *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  result = (char *)Arnl::getTypicalDefaultParamFileName();
  if(result) jresult = jenv->NewStringUTF(result);
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1Arnl(JNIEnv *jenv, jclass jcls) {
  jlong jresult = 0 ;
  Arnl *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  result = (Arnl *)new Arnl();
  *(Arnl **)&jresult = result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_delete_1Arnl(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  Arnl *arg1 = (Arnl *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(Arnl **)&jarg1; 
  delete arg1;
  
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArBaseLocalizationTask_1findLocalizationMeanVar(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  jboolean jresult = 0 ;
  ArBaseLocalizationTask *arg1 = (ArBaseLocalizationTask *) 0 ;
  ArPose *arg2 = 0 ;
  ArMatrix *arg3 = 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArBaseLocalizationTask **)&jarg1; 
  arg2 = *(ArPose **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "ArPose & reference is null");
    return 0;
  } 
  arg3 = *(ArMatrix **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "ArMatrix & reference is null");
    return 0;
  } 
  result = (bool)(arg1)->findLocalizationMeanVar(*arg2,*arg3);
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArBaseLocalizationTask_1setCorrectRobotFlag(JNIEnv *jenv, jclass jcls, jlong jarg1, jboolean jarg2) {
  ArBaseLocalizationTask *arg1 = (ArBaseLocalizationTask *) 0 ;
  bool arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArBaseLocalizationTask **)&jarg1; 
  arg2 = jarg2 ? true : false; 
  (arg1)->setCorrectRobotFlag(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArBaseLocalizationTask_1setRobotPose_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jint jarg4) {
  ArBaseLocalizationTask *arg1 = (ArBaseLocalizationTask *) 0 ;
  ArPose arg2 ;
  ArPose arg3 ;
  int arg4 ;
  ArPose *argp2 ;
  ArPose *argp3 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArBaseLocalizationTask **)&jarg1; 
  argp2 = *(ArPose **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return ;
  }
  arg2 = *argp2; 
  argp3 = *(ArPose **)&jarg3; 
  if (!argp3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return ;
  }
  arg3 = *argp3; 
  arg4 = (int)jarg4; 
  (arg1)->setRobotPose(arg2,arg3,arg4);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArBaseLocalizationTask_1setRobotPose_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  ArBaseLocalizationTask *arg1 = (ArBaseLocalizationTask *) 0 ;
  ArPose arg2 ;
  ArPose arg3 ;
  ArPose *argp2 ;
  ArPose *argp3 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArBaseLocalizationTask **)&jarg1; 
  argp2 = *(ArPose **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return ;
  }
  arg2 = *argp2; 
  argp3 = *(ArPose **)&jarg3; 
  if (!argp3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return ;
  }
  arg3 = *argp3; 
  (arg1)->setRobotPose(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArBaseLocalizationTask_1setRobotPose_1_1SWIG_12(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArBaseLocalizationTask *arg1 = (ArBaseLocalizationTask *) 0 ;
  ArPose arg2 ;
  ArPose *argp2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArBaseLocalizationTask **)&jarg1; 
  argp2 = *(ArPose **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return ;
  }
  arg2 = *argp2; 
  (arg1)->setRobotPose(arg2);
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArBaseLocalizationTask_1getRobotIsLostFlag(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jboolean jresult = 0 ;
  ArBaseLocalizationTask *arg1 = (ArBaseLocalizationTask *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArBaseLocalizationTask **)&jarg1; 
  result = (bool)(arg1)->getRobotIsLostFlag();
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArBaseLocalizationTask_1getRobotHome(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArBaseLocalizationTask *arg1 = (ArBaseLocalizationTask *) 0 ;
  ArPose result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArBaseLocalizationTask **)&jarg1; 
  result = (arg1)->getRobotHome();
  *(ArPose **)&jresult = new ArPose((ArPose &)result); 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArBaseLocalizationTask_1getRobotHomeCallback(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArBaseLocalizationTask *arg1 = (ArBaseLocalizationTask *) 0 ;
  ArRetFunctor<ArPose > *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArBaseLocalizationTask **)&jarg1; 
  result = (ArRetFunctor<ArPose > *)(arg1)->getRobotHomeCallback();
  *(ArRetFunctor<ArPose > **)&jresult = result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArBaseLocalizationTask_1getHomePose(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArBaseLocalizationTask *arg1 = (ArBaseLocalizationTask *) 0 ;
  ArPose result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArBaseLocalizationTask **)&jarg1; 
  result = (arg1)->getHomePose();
  *(ArPose **)&jresult = new ArPose((ArPose &)result); 
  return jresult;
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArBaseLocalizationTask_1localizeRobotAtHomeBlocking_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2, jdouble jarg3) {
  jboolean jresult = 0 ;
  ArBaseLocalizationTask *arg1 = (ArBaseLocalizationTask *) 0 ;
  double arg2 ;
  double arg3 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArBaseLocalizationTask **)&jarg1; 
  arg2 = (double)jarg2; 
  arg3 = (double)jarg3; 
  result = (bool)(arg1)->localizeRobotAtHomeBlocking(arg2,arg3);
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArBaseLocalizationTask_1localizeRobotAtHomeBlocking_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jboolean jresult = 0 ;
  ArBaseLocalizationTask *arg1 = (ArBaseLocalizationTask *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArBaseLocalizationTask **)&jarg1; 
  result = (bool)(arg1)->localizeRobotAtHomeBlocking();
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArBaseLocalizationTask_1getCurrentSamplePoses(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArBaseLocalizationTask *arg1 = (ArBaseLocalizationTask *) 0 ;
  std::list<ArPose > result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArBaseLocalizationTask **)&jarg1; 
  result = (arg1)->getCurrentSamplePoses();
  *(std::list<ArPose > **)&jresult = new std::list<ArPose >((std::list<ArPose > &)result); 
  return jresult;
}


JNIEXPORT jint JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArBaseLocalizationTask_1getState(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jint jresult = 0 ;
  ArBaseLocalizationTask *arg1 = (ArBaseLocalizationTask *) 0 ;
  ArBaseLocalizationTask::LocalizationState result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArBaseLocalizationTask **)&jarg1; 
  result = (ArBaseLocalizationTask::LocalizationState)(arg1)->getState();
  jresult = (jint)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArBaseLocalizationTask_1getLocalizationScore(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArBaseLocalizationTask *arg1 = (ArBaseLocalizationTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArBaseLocalizationTask **)&jarg1; 
  result = (double)(arg1)->getLocalizationScore();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArBaseLocalizationTask_1getLocalizationThreshold(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArBaseLocalizationTask *arg1 = (ArBaseLocalizationTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArBaseLocalizationTask **)&jarg1; 
  result = (double)(arg1)->getLocalizationThreshold();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArBaseLocalizationTask_1checkLocalizationIdle(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jboolean jresult = 0 ;
  ArBaseLocalizationTask *arg1 = (ArBaseLocalizationTask *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArBaseLocalizationTask **)&jarg1; 
  result = (bool)(arg1)->checkLocalizationIdle();
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArBaseLocalizationTask_1setLocalizationIdle(JNIEnv *jenv, jclass jcls, jlong jarg1, jboolean jarg2) {
  ArBaseLocalizationTask *arg1 = (ArBaseLocalizationTask *) 0 ;
  bool arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArBaseLocalizationTask **)&jarg1; 
  arg2 = jarg2 ? true : false; 
  (arg1)->setLocalizationIdle(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArBaseLocalizationTask_1setLocalizationThreshold(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArBaseLocalizationTask *arg1 = (ArBaseLocalizationTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArBaseLocalizationTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setLocalizationThreshold(arg2);
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArBaseLocalizationTask_1getEncoderToLocalizationTransform(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArBaseLocalizationTask *arg1 = (ArBaseLocalizationTask *) 0 ;
  ArTransform result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArBaseLocalizationTask **)&jarg1; 
  result = (arg1)->getEncoderToLocalizationTransform();
  *(ArTransform **)&jresult = new ArTransform((ArTransform &)result); 
  return jresult;
}


JNIEXPORT jstring JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArBaseLocalizationTask_1getName(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jstring jresult = 0 ;
  ArBaseLocalizationTask *arg1 = (ArBaseLocalizationTask *) 0 ;
  char *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArBaseLocalizationTask **)&jarg1; 
  result = (char *)(arg1)->getName();
  if(result) jresult = jenv->NewStringUTF(result);
  return jresult;
}


JNIEXPORT jint JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArBaseLocalizationTask_1getPoseInterpPosition(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  jint jresult = 0 ;
  ArBaseLocalizationTask *arg1 = (ArBaseLocalizationTask *) 0 ;
  ArTime arg2 ;
  ArPose *arg3 = (ArPose *) 0 ;
  int result;
  ArTime *argp2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArBaseLocalizationTask **)&jarg1; 
  argp2 = *(ArTime **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArTime");
    return 0;
  }
  arg2 = *argp2; 
  arg3 = *(ArPose **)&jarg3; 
  result = (int)(arg1)->getPoseInterpPosition(arg2,arg3);
  jresult = (jint)result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArBaseLocalizationTask_1getPoseInterpPositionCallback(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArBaseLocalizationTask *arg1 = (ArBaseLocalizationTask *) 0 ;
  ArRetFunctor2<int,ArTime,ArPose * > *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArBaseLocalizationTask **)&jarg1; 
  result = (ArRetFunctor2<int,ArTime,ArPose * > *)(arg1)->getPoseInterpPositionCallback();
  *(ArRetFunctor2<int,ArTime,ArPose * > **)&jresult = result; 
  return jresult;
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArBaseLocalizationTask_1convertLLA2RobotCoords(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2, jdouble jarg3, jdouble jarg4, jlong jarg5, jlong jarg6, jlong jarg7) {
  jboolean jresult = 0 ;
  ArBaseLocalizationTask *arg1 = (ArBaseLocalizationTask *) 0 ;
  double arg2 ;
  double arg3 ;
  double arg4 ;
  double *arg5 = 0 ;
  double *arg6 = 0 ;
  double *arg7 = 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArBaseLocalizationTask **)&jarg1; 
  arg2 = (double)jarg2; 
  arg3 = (double)jarg3; 
  arg4 = (double)jarg4; 
  arg5 = *(double **)&jarg5;
  if(!arg5) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "double & reference is null");
    return 0;
  } 
  arg6 = *(double **)&jarg6;
  if(!arg6) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "double & reference is null");
    return 0;
  } 
  arg7 = *(double **)&jarg7;
  if(!arg7) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "double & reference is null");
    return 0;
  } 
  result = (bool)(arg1)->convertLLA2RobotCoords(arg2,arg3,arg4,*arg5,*arg6,*arg7);
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArBaseLocalizationTask_1convertRobot2LLACoords(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2, jdouble jarg3, jdouble jarg4, jlong jarg5, jlong jarg6, jlong jarg7) {
  jboolean jresult = 0 ;
  ArBaseLocalizationTask *arg1 = (ArBaseLocalizationTask *) 0 ;
  double arg2 ;
  double arg3 ;
  double arg4 ;
  double *arg5 = 0 ;
  double *arg6 = 0 ;
  double *arg7 = 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArBaseLocalizationTask **)&jarg1; 
  arg2 = (double)jarg2; 
  arg3 = (double)jarg3; 
  arg4 = (double)jarg4; 
  arg5 = *(double **)&jarg5;
  if(!arg5) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "double & reference is null");
    return 0;
  } 
  arg6 = *(double **)&jarg6;
  if(!arg6) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "double & reference is null");
    return 0;
  } 
  arg7 = *(double **)&jarg7;
  if(!arg7) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "double & reference is null");
    return 0;
  } 
  result = (bool)(arg1)->convertRobot2LLACoords(arg2,arg3,arg4,*arg5,*arg6,*arg7);
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_delete_1ArBaseLocalizationTask(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArBaseLocalizationTask *arg1 = (ArBaseLocalizationTask *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArBaseLocalizationTask **)&jarg1; 
  delete arg1;
  
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArPathPlanningTask_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jlong jarg4) {
  jlong jresult = 0 ;
  ArRobot *arg1 = (ArRobot *) 0 ;
  ArRangeDevice *arg2 = (ArRangeDevice *) 0 ;
  ArRangeDevice *arg3 = (ArRangeDevice *) 0 ;
  ArMapInterface *arg4 = (ArMapInterface *) 0 ;
  ArPathPlanningTask *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArRobot **)&jarg1; 
  arg2 = *(ArRangeDevice **)&jarg2; 
  arg3 = *(ArRangeDevice **)&jarg3; 
  arg4 = *(ArMapInterface **)&jarg4; 
  result = (ArPathPlanningTask *)new ArPathPlanningTask(arg1,arg2,arg3,arg4);
  *(ArPathPlanningTask **)&jresult = result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArPathPlanningTask_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  jlong jresult = 0 ;
  ArRobot *arg1 = (ArRobot *) 0 ;
  ArRangeDevice *arg2 = (ArRangeDevice *) 0 ;
  ArMapInterface *arg3 = (ArMapInterface *) 0 ;
  ArPathPlanningTask *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArRobot **)&jarg1; 
  arg2 = *(ArRangeDevice **)&jarg2; 
  arg3 = *(ArMapInterface **)&jarg3; 
  result = (ArPathPlanningTask *)new ArPathPlanningTask(arg1,arg2,arg3);
  *(ArPathPlanningTask **)&jresult = result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_delete_1ArPathPlanningTask(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  delete arg1;
  
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1pathPlanToPose_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jboolean jarg3, jboolean jarg4) {
  jboolean jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArPose arg2 ;
  bool arg3 ;
  bool arg4 ;
  bool result;
  ArPose *argp2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  argp2 = *(ArPose **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return 0;
  }
  arg2 = *argp2; 
  arg3 = jarg3 ? true : false; 
  arg4 = jarg4 ? true : false; 
  result = (bool)(arg1)->pathPlanToPose(arg2,arg3,arg4);
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1pathPlanToPose_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jboolean jarg3) {
  jboolean jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArPose arg2 ;
  bool arg3 ;
  bool result;
  ArPose *argp2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  argp2 = *(ArPose **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return 0;
  }
  arg2 = *argp2; 
  arg3 = jarg3 ? true : false; 
  result = (bool)(arg1)->pathPlanToPose(arg2,arg3);
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1pathPlanToGoal_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jstring jarg2, jboolean jarg3) {
  jboolean jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  char *arg2 = (char *) 0 ;
  bool arg3 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = 0;
  if (jarg2) {
    arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    if (!arg2) return 0;
  }
  arg3 = jarg3 ? true : false; 
  result = (bool)(arg1)->pathPlanToGoal((char const *)arg2,arg3);
  jresult = (jboolean)result; 
  if (arg2) jenv->ReleaseStringUTFChars(jarg2, arg2);
  return jresult;
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1pathPlanToGoal_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jstring jarg2) {
  jboolean jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  char *arg2 = (char *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = 0;
  if (jarg2) {
    arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    if (!arg2) return 0;
  }
  result = (bool)(arg1)->pathPlanToGoal((char const *)arg2);
  jresult = (jboolean)result; 
  if (arg2) jenv->ReleaseStringUTFChars(jarg2, arg2);
  return jresult;
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1startPathPlanToLocalPose(JNIEnv *jenv, jclass jcls, jlong jarg1, jboolean jarg2) {
  jboolean jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  bool arg2 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = jarg2 ? true : false; 
  result = (bool)(arg1)->startPathPlanToLocalPose(arg2);
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1continuePathPlanToLocalPose_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jboolean jarg3, jboolean jarg4) {
  jboolean jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArPose arg2 ;
  bool arg3 ;
  bool arg4 ;
  bool result;
  ArPose *argp2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  argp2 = *(ArPose **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return 0;
  }
  arg2 = *argp2; 
  arg3 = jarg3 ? true : false; 
  arg4 = jarg4 ? true : false; 
  result = (bool)(arg1)->continuePathPlanToLocalPose(arg2,arg3,arg4);
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1continuePathPlanToLocalPose_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jboolean jarg3) {
  jboolean jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArPose arg2 ;
  bool arg3 ;
  bool result;
  ArPose *argp2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  argp2 = *(ArPose **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return 0;
  }
  arg2 = *argp2; 
  arg3 = jarg3 ? true : false; 
  result = (bool)(arg1)->continuePathPlanToLocalPose(arg2,arg3);
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1endPathPlanToLocalPose(JNIEnv *jenv, jclass jcls, jlong jarg1, jboolean jarg2) {
  jboolean jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  bool arg2 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = jarg2 ? true : false; 
  result = (bool)(arg1)->endPathPlanToLocalPose(arg2);
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getPathPlanAction(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArActionPlanAndMoveToGoal *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (ArActionPlanAndMoveToGoal *)(arg1)->getPathPlanAction();
  *(ArActionPlanAndMoveToGoal **)&jresult = result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getPathPlanActionGroup(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArActionGroup *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (ArActionGroup *)(arg1)->getPathPlanActionGroup();
  *(ArActionGroup **)&jresult = result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setPathPlanActionGroup_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jboolean jarg3) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArActionGroup *arg2 = (ArActionGroup *) 0 ;
  bool arg3 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArActionGroup **)&jarg2; 
  arg3 = jarg3 ? true : false; 
  (arg1)->setPathPlanActionGroup(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setPathPlanActionGroup_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArActionGroup *arg2 = (ArActionGroup *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArActionGroup **)&jarg2; 
  (arg1)->setPathPlanActionGroup(arg2);
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1loadParamFile(JNIEnv *jenv, jclass jcls, jlong jarg1, jstring jarg2) {
  jboolean jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  char *arg2 = (char *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = 0;
  if (jarg2) {
    arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    if (!arg2) return 0;
  }
  result = (bool)(arg1)->loadParamFile((char const *)arg2);
  jresult = (jboolean)result; 
  if (arg2) jenv->ReleaseStringUTFChars(jarg2, arg2);
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getSafeCollisionRange(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)(arg1)->getSafeCollisionRange();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1saveParams(JNIEnv *jenv, jclass jcls, jlong jarg1, jstring jarg2) {
  jboolean jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  char *arg2 = (char *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = 0;
  if (jarg2) {
    arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    if (!arg2) return 0;
  }
  result = (bool)(arg1)->saveParams(arg2);
  jresult = (jboolean)result; 
  if (arg2) jenv->ReleaseStringUTFChars(jarg2, arg2);
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1addGoalDoneCB(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArFunctor1<ArPose > *arg2 = (ArFunctor1<ArPose > *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArFunctor1<ArPose > **)&jarg2; 
  (arg1)->addGoalDoneCB(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1remGoalDoneCB(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArFunctor1<ArPose > *arg2 = (ArFunctor1<ArPose > *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArFunctor1<ArPose > **)&jarg2; 
  (arg1)->remGoalDoneCB(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1addGoalFailedCB(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArFunctor1<ArPose > *arg2 = (ArFunctor1<ArPose > *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArFunctor1<ArPose > **)&jarg2; 
  (arg1)->addGoalFailedCB(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1remGoalFailedCB(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArFunctor1<ArPose > *arg2 = (ArFunctor1<ArPose > *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArFunctor1<ArPose > **)&jarg2; 
  (arg1)->remGoalFailedCB(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1addGoalInterruptedCB(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArFunctor1<ArPose > *arg2 = (ArFunctor1<ArPose > *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArFunctor1<ArPose > **)&jarg2; 
  (arg1)->addGoalInterruptedCB(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1remGoalInterruptedCB(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArFunctor1<ArPose > *arg2 = (ArFunctor1<ArPose > *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArFunctor1<ArPose > **)&jarg2; 
  (arg1)->remGoalInterruptedCB(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1addNewGoalCB(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArFunctor1<ArPose > *arg2 = (ArFunctor1<ArPose > *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArFunctor1<ArPose > **)&jarg2; 
  (arg1)->addNewGoalCB(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1remNewGoalCB(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArFunctor1<ArPose > *arg2 = (ArFunctor1<ArPose > *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArFunctor1<ArPose > **)&jarg2; 
  (arg1)->remNewGoalCB(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1addGoalFinishedCB(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  (arg1)->addGoalFinishedCB(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1remGoalFinishedCB(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  (arg1)->remGoalFinishedCB(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1addPlainNewGoalCB_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jint jarg3) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  int arg3 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  arg3 = (int)jarg3; 
  (arg1)->addPlainNewGoalCB(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1addPlainNewGoalCB_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  (arg1)->addPlainNewGoalCB(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1remPlainNewGoalCB(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  (arg1)->remPlainNewGoalCB(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1addPlainGoalFinishedCB_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jint jarg3) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  int arg3 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  arg3 = (int)jarg3; 
  (arg1)->addPlainGoalFinishedCB(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1addPlainGoalFinishedCB_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  (arg1)->addPlainGoalFinishedCB(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1remPlainGoalFinishedCB(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  (arg1)->remPlainGoalFinishedCB(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1addPlainGoalDoneCB_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jint jarg3) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  int arg3 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  arg3 = (int)jarg3; 
  (arg1)->addPlainGoalDoneCB(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1addPlainGoalDoneCB_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  (arg1)->addPlainGoalDoneCB(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1remPlainGoalDoneCB(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  (arg1)->remPlainGoalDoneCB(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1addPlainGoalFailedCB_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jint jarg3) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  int arg3 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  arg3 = (int)jarg3; 
  (arg1)->addPlainGoalFailedCB(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1addPlainGoalFailedCB_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  (arg1)->addPlainGoalFailedCB(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1remPlainGoalFailedCB(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  (arg1)->remPlainGoalFailedCB(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1addPlainGoalInterruptedCB_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jint jarg3) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  int arg3 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  arg3 = (int)jarg3; 
  (arg1)->addPlainGoalInterruptedCB(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1addPlainGoalInterruptedCB_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  (arg1)->addPlainGoalInterruptedCB(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1remPlainGoalInterruptedCB(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  (arg1)->remPlainGoalInterruptedCB(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1trackingFailed(JNIEnv *jenv, jclass jcls, jlong jarg1, jint jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  int arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (int)jarg2; 
  (arg1)->trackingFailed(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1cancelPathPlan(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  (arg1)->cancelPathPlan();
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setVerboseFlag(JNIEnv *jenv, jclass jcls, jlong jarg1, jboolean jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  bool arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = jarg2 ? true : false; 
  (arg1)->setVerboseFlag(arg2);
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getCurrentGoal(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArPose result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (arg1)->getCurrentGoal();
  *(ArPose **)&jresult = new ArPose((ArPose &)result); 
  return jresult;
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getInitializedFlag(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jboolean jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (bool)(arg1)->getInitializedFlag();
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getVerboseFlag(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jboolean jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (bool)(arg1)->getVerboseFlag();
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT jint JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getState(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jint jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArPathPlanningTask::PathPlanningState result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (ArPathPlanningTask::PathPlanningState)(arg1)->getState();
  jresult = (jint)result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getFailureString(JNIEnv *jenv, jclass jcls, jlong jarg1, jstring jarg2, jlong jarg3) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  char *arg2 = (char *) 0 ;
  size_t arg3 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = 0;
  if (jarg2) {
    arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    if (!arg2) return ;
  }
  arg3 = (size_t)jarg3; 
  (arg1)->getFailureString(arg2,arg3);
  if (arg2) jenv->ReleaseStringUTFChars(jarg2, arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getStatusString(JNIEnv *jenv, jclass jcls, jlong jarg1, jstring jarg2, jlong jarg3) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  char *arg2 = (char *) 0 ;
  size_t arg3 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = 0;
  if (jarg2) {
    arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    if (!arg2) return ;
  }
  arg3 = (size_t)jarg3; 
  (arg1)->getStatusString(arg2,arg3);
  if (arg2) jenv->ReleaseStringUTFChars(jarg2, arg2);
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getCurrentPath_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jboolean jarg3) {
  jlong jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArPose arg2 ;
  bool arg3 ;
  std::list<ArPose > result;
  ArPose *argp2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  argp2 = *(ArPose **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return 0;
  }
  arg2 = *argp2; 
  arg3 = jarg3 ? true : false; 
  result = (arg1)->getCurrentPath(arg2,arg3);
  *(std::list<ArPose > **)&jresult = new std::list<ArPose >((std::list<ArPose > &)result); 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getCurrentPath_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  jlong jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArPose arg2 ;
  std::list<ArPose > result;
  ArPose *argp2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  argp2 = *(ArPose **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return 0;
  }
  arg2 = *argp2; 
  result = (arg1)->getCurrentPath(arg2);
  *(std::list<ArPose > **)&jresult = new std::list<ArPose >((std::list<ArPose > &)result); 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getAriaMap(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArMapInterface *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (ArMapInterface *)(arg1)->getAriaMap();
  *(ArMapInterface **)&jresult = result; 
  return jresult;
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getUseLaserFlag(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jboolean jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (bool)(arg1)->getUseLaserFlag();
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getUseSonarFlag(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jboolean jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (bool)(arg1)->getUseSonarFlag();
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getMapChangedFlag(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jboolean jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (bool)(arg1)->getMapChangedFlag();
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getUseOneWaysFlag(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jboolean jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (bool)(arg1)->getUseOneWaysFlag();
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getUseResistanceFlag_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jboolean jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (bool)(arg1)->getUseResistanceFlag();
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getMarkOldPathFactor_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)(arg1)->getMarkOldPathFactor();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jshort JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getResistance_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jshort jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  short result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (short)(arg1)->getResistance();
  jresult = (jshort)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getMaxSpeed(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getMaxSpeed();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getMaxRotSpeed(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getMaxRotSpeed();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getCollisionRange(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getCollisionRange();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getSlowSpeed(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getSlowSpeed();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getFastSpeed(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getFastSpeed();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getSideClearanceAtSlowSpeed(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getSideClearanceAtSlowSpeed();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getSideClearanceAtFastSpeed(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getSideClearanceAtFastSpeed();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getFrontClearance(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getFrontClearance();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getFrontPaddingAtSlowSpeed(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getFrontPaddingAtSlowSpeed();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getFrontPaddingAtFastSpeed(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getFrontPaddingAtFastSpeed();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getSuperMaxTransDecel(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getSuperMaxTransDecel();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getEmergencyMaxTransDecel(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getEmergencyMaxTransDecel();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getWidth(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getWidth();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getLength(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getLength();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getPlanMapResolution(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getPlanMapResolution();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getPlanFreeSpace(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getPlanFreeSpace();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getHeadingWt(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getHeadingWt();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getDistanceWt(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getDistanceWt();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getVelocityWt(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getVelocityWt();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getSmoothingWt(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getSmoothingWt();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jint JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getLinVelIncrements(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jint jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (int)((ArPathPlanningTask const *)arg1)->getLinVelIncrements();
  jresult = (jint)result; 
  return jresult;
}


JNIEXPORT jint JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getRotVelIncrements(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jint jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (int)((ArPathPlanningTask const *)arg1)->getRotVelIncrements();
  jresult = (jint)result; 
  return jresult;
}


JNIEXPORT jint JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getSmoothSize(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jint jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (int)((ArPathPlanningTask const *)arg1)->getSmoothSize();
  jresult = (jint)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getObsThreshold(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getObsThreshold();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getMaxExpansionFactor(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getMaxExpansionFactor();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getUseCollisionRangeForPlanningFlag(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jboolean jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (bool)((ArPathPlanningTask const *)arg1)->getUseCollisionRangeForPlanningFlag();
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getGoalDistanceTolerance(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getGoalDistanceTolerance();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getGoalAngleTolerance(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getGoalAngleTolerance();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getGoalSpeed(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getGoalSpeed();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getGoalRotSpeed(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getGoalRotSpeed();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getGoalTransAccel(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getGoalTransAccel();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getGoalRotAccel(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getGoalRotAccel();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getGoalTransDecel(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getGoalTransDecel();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getGoalRotDecel(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getGoalRotDecel();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getGoalSwitchTime(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getGoalSwitchTime();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getGoalUseEncoderFlag(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jboolean jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (bool)((ArPathPlanningTask const *)arg1)->getGoalUseEncoderFlag();
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getGoalOccupiedFailDistance(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getGoalOccupiedFailDistance();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getLocalPathFailDistance(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getLocalPathFailDistance();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getHeadingRotSpeed(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getHeadingRotSpeed();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getHeadingRotAccel(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getHeadingRotAccel();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getHeadingRotDecel(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getHeadingRotDecel();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jint JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getSecsToFail(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jint jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (int)((ArPathPlanningTask const *)arg1)->getSecsToFail();
  jresult = (jint)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getAlignSpeed(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getAlignSpeed();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getAlignAngle(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getAlignAngle();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jint JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getSplineDegree(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jint jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (int)((ArPathPlanningTask const *)arg1)->getSplineDegree();
  jresult = (jint)result; 
  return jresult;
}


JNIEXPORT jint JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getNumSplinePoints(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jint jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (int)((ArPathPlanningTask const *)arg1)->getNumSplinePoints();
  jresult = (jint)result; 
  return jresult;
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getPlanEverytimeFlag(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jboolean jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (bool)((ArPathPlanningTask const *)arg1)->getPlanEverytimeFlag();
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getClearOnFailFlag(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jboolean jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (bool)((ArPathPlanningTask const *)arg1)->getClearOnFailFlag();
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getUseEStopFlag(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jboolean jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (bool)((ArPathPlanningTask const *)arg1)->getUseEStopFlag();
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getCurvatureSpeedFactor(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getCurvatureSpeedFactor();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getOneWayCost(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getOneWayCost();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getCenterAwayCost(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getCenterAwayCost();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getLogFlag(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jboolean jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (bool)((ArPathPlanningTask const *)arg1)->getLogFlag();
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT jint JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getPathPlanningLogLevel(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jint jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (int)((ArPathPlanningTask const *)arg1)->getLogLevel();
  jresult = (jint)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getMatchLengths(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)((ArPathPlanningTask const *)arg1)->getMatchLengths();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getLocalPathPlanningFlag(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jboolean jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (bool)((ArPathPlanningTask const *)arg1)->getLocalPathPlanningFlag();
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setUseLaserFlag(JNIEnv *jenv, jclass jcls, jlong jarg1, jboolean jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  bool arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = jarg2 ? true : false; 
  (arg1)->setUseLaserFlag(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setUseSonarFlag(JNIEnv *jenv, jclass jcls, jlong jarg1, jboolean jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  bool arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = jarg2 ? true : false; 
  (arg1)->setUseSonarFlag(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setMapChangedFlag(JNIEnv *jenv, jclass jcls, jlong jarg1, jboolean jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  bool arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = jarg2 ? true : false; 
  (arg1)->setMapChangedFlag(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setUseOneWaysFlag(JNIEnv *jenv, jclass jcls, jlong jarg1, jboolean jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  bool arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = jarg2 ? true : false; 
  (arg1)->setUseOneWaysFlag(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setResistance(JNIEnv *jenv, jclass jcls, jlong jarg1, jshort jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  short arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (short)jarg2; 
  (arg1)->setResistance(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setPlanDoneCallBack(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  (arg1)->setPlanDoneCallBack(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setUseCollisionRangeForPlanningFlag(JNIEnv *jenv, jclass jcls, jlong jarg1, jboolean jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  bool arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = jarg2 ? true : false; 
  (arg1)->setUseCollisionRangeForPlanningFlag(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setMaxSpeed(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setMaxSpeed(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setMaxRotSpeed(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setMaxRotSpeed(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setCollisionRange(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setCollisionRange(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setSlowSpeed(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setSlowSpeed(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setFastSpeed(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setFastSpeed(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setSideClearanceAtSlowSpeed(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setSideClearanceAtSlowSpeed(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setSideClearanceAtFastSpeed(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setSideClearanceAtFastSpeed(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setFrontClearance(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setFrontClearance(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setFrontPaddingAtSlowSpeed(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setFrontPaddingAtSlowSpeed(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setFrontPaddingAtFastSpeed(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setFrontPaddingAtFastSpeed(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setSuperMaxTransDecel(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setSuperMaxTransDecel(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setEmergencyMaxTransDecel(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setEmergencyMaxTransDecel(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setWidth(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setWidth(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setLength(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setLength(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setPlanMapResolution(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setPlanMapResolution(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setPlanFreeSpace(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setPlanFreeSpace(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setHeadingWt(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setHeadingWt(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setDistanceWt(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setDistanceWt(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setVelocityWt(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setVelocityWt(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setSmoothingWt(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setSmoothingWt(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setLinVelIncrements(JNIEnv *jenv, jclass jcls, jlong jarg1, jint jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  int arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (int)jarg2; 
  (arg1)->setLinVelIncrements(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setRotVelIncrements(JNIEnv *jenv, jclass jcls, jlong jarg1, jint jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  int arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (int)jarg2; 
  (arg1)->setRotVelIncrements(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setSmoothWinSize(JNIEnv *jenv, jclass jcls, jlong jarg1, jint jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  int arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (int)jarg2; 
  (arg1)->setSmoothWinSize(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setObsThreshold(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setObsThreshold(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setMaxExpansionFactor(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setMaxExpansionFactor(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setGoalDistanceTolerance(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setGoalDistanceTolerance(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setGoalAngleTolerance(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setGoalAngleTolerance(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setGoalSpeed(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setGoalSpeed(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setGoalRotSpeed(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setGoalRotSpeed(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setGoalTransAccel(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setGoalTransAccel(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setGoalRotAccel(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setGoalRotAccel(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setGoalTransDecel(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setGoalTransDecel(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setGoalRotDecel(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setGoalRotDecel(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setGoalSwitchTime(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setGoalSwitchTime(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setGoalUseEncoderFlag(JNIEnv *jenv, jclass jcls, jlong jarg1, jboolean jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  bool arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = jarg2 ? true : false; 
  (arg1)->setGoalUseEncoderFlag(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setGoalOccupiedFailDistance(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setGoalOccupiedFailDistance(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setHeadingRotSpeed(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setHeadingRotSpeed(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setHeadingRotAccel(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setHeadingRotAccel(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setHeadingRotDecel(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setHeadingRotDecel(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setSecsToFail(JNIEnv *jenv, jclass jcls, jlong jarg1, jint jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  int arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (int)jarg2; 
  (arg1)->setSecsToFail(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setAlignAngle(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setAlignAngle(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setAlignSpeed(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setAlignSpeed(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setSplineDegree(JNIEnv *jenv, jclass jcls, jlong jarg1, jint jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  int arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (int)jarg2; 
  (arg1)->setSplineDegree(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setNumSplinePoints(JNIEnv *jenv, jclass jcls, jlong jarg1, jint jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  int arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (int)jarg2; 
  (arg1)->setNumSplinePoints(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setPlanEverytimeFlag(JNIEnv *jenv, jclass jcls, jlong jarg1, jboolean jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  bool arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = jarg2 ? true : false; 
  (arg1)->setPlanEverytimeFlag(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setClearOnFailFlag(JNIEnv *jenv, jclass jcls, jlong jarg1, jboolean jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  bool arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = jarg2 ? true : false; 
  (arg1)->setClearOnFailFlag(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setUseEStopFlag(JNIEnv *jenv, jclass jcls, jlong jarg1, jboolean jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  bool arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = jarg2 ? true : false; 
  (arg1)->setUseEStopFlag(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setUseResistanceFlag(JNIEnv *jenv, jclass jcls, jlong jarg1, jboolean jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  bool arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = jarg2 ? true : false; 
  (arg1)->setUseResistanceFlag(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setMarkOldPathFactor(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setMarkOldPathFactor(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setLogFlag(JNIEnv *jenv, jclass jcls, jlong jarg1, jboolean jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  bool arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = jarg2 ? true : false; 
  (arg1)->setLogFlag(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setLogLevel(JNIEnv *jenv, jclass jcls, jlong jarg1, jint jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  int arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (int)jarg2; 
  (arg1)->setLogLevel(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setMatchLengths(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setMatchLengths(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setLocalPathPlanningFlag(JNIEnv *jenv, jclass jcls, jlong jarg1, jboolean jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  bool arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = jarg2 ? true : false; 
  (arg1)->setLocalPathPlanningFlag(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setPlanParams(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2, jdouble jarg3, jdouble jarg4, jdouble jarg5, jdouble jarg6, jdouble jarg7, jdouble jarg8, jdouble jarg9, jdouble jarg10, jdouble jarg11, jdouble jarg12, jdouble jarg13, jdouble jarg14, jdouble jarg15, jdouble jarg16, jdouble jarg17, jint jarg18, jint jarg19, jint jarg20, jdouble jarg21, jdouble jarg22, jdouble jarg23, jdouble jarg24, jint jarg25, jdouble jarg26, jdouble jarg27, jint jarg28, jint jarg29, jdouble jarg30, jdouble jarg31, jboolean jarg32, jdouble jarg33, jdouble jarg34, jdouble jarg35, jshort jarg36, jdouble jarg37, jdouble jarg38, jboolean jarg39) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  double arg3 ;
  double arg4 ;
  double arg5 ;
  double arg6 ;
  double arg7 ;
  double arg8 ;
  double arg9 ;
  double arg10 ;
  double arg11 ;
  double arg12 ;
  double arg13 ;
  double arg14 ;
  double arg15 ;
  double arg16 ;
  double arg17 ;
  int arg18 ;
  int arg19 ;
  int arg20 ;
  double arg21 ;
  double arg22 ;
  double arg23 ;
  double arg24 ;
  int arg25 ;
  double arg26 ;
  double arg27 ;
  int arg28 ;
  int arg29 ;
  double arg30 ;
  double arg31 ;
  bool arg32 ;
  double arg33 ;
  double arg34 ;
  double arg35 ;
  short arg36 ;
  double arg37 ;
  double arg38 ;
  bool arg39 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  arg3 = (double)jarg3; 
  arg4 = (double)jarg4; 
  arg5 = (double)jarg5; 
  arg6 = (double)jarg6; 
  arg7 = (double)jarg7; 
  arg8 = (double)jarg8; 
  arg9 = (double)jarg9; 
  arg10 = (double)jarg10; 
  arg11 = (double)jarg11; 
  arg12 = (double)jarg12; 
  arg13 = (double)jarg13; 
  arg14 = (double)jarg14; 
  arg15 = (double)jarg15; 
  arg16 = (double)jarg16; 
  arg17 = (double)jarg17; 
  arg18 = (int)jarg18; 
  arg19 = (int)jarg19; 
  arg20 = (int)jarg20; 
  arg21 = (double)jarg21; 
  arg22 = (double)jarg22; 
  arg23 = (double)jarg23; 
  arg24 = (double)jarg24; 
  arg25 = (int)jarg25; 
  arg26 = (double)jarg26; 
  arg27 = (double)jarg27; 
  arg28 = (int)jarg28; 
  arg29 = (int)jarg29; 
  arg30 = (double)jarg30; 
  arg31 = (double)jarg31; 
  arg32 = jarg32 ? true : false; 
  arg33 = (double)jarg33; 
  arg34 = (double)jarg34; 
  arg35 = (double)jarg35; 
  arg36 = (short)jarg36; 
  arg37 = (double)jarg37; 
  arg38 = (double)jarg38; 
  arg39 = jarg39 ? true : false; 
  (arg1)->setPlanParams(arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11,arg12,arg13,arg14,arg15,arg16,arg17,arg18,arg19,arg20,arg21,arg22,arg23,arg24,arg25,arg26,arg27,arg28,arg29,arg30,arg31,arg32,arg33,arg34,arg35,arg36,arg37,arg38,arg39);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setMovementParams(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2, jdouble jarg3, jdouble jarg4, jdouble jarg5, jdouble jarg6, jdouble jarg7) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  double arg3 ;
  double arg4 ;
  double arg5 ;
  double arg6 ;
  double arg7 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  arg3 = (double)jarg3; 
  arg4 = (double)jarg4; 
  arg5 = (double)jarg5; 
  arg6 = (double)jarg6; 
  arg7 = (double)jarg7; 
  (arg1)->setMovementParams(arg2,arg3,arg4,arg5,arg6,arg7);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1addRangeDevice(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jint jarg3) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArRangeDevice *arg2 = (ArRangeDevice *) 0 ;
  ArPathPlanningTask::RangeType arg3 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArRangeDevice **)&jarg2; 
  arg3 = (ArPathPlanningTask::RangeType)jarg3; 
  (arg1)->addRangeDevice(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1remRangeDevice_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jstring jarg2, jint jarg3) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  char *arg2 = (char *) 0 ;
  ArPathPlanningTask::RangeType arg3 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = 0;
  if (jarg2) {
    arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    if (!arg2) return ;
  }
  arg3 = (ArPathPlanningTask::RangeType)jarg3; 
  (arg1)->remRangeDevice((char const *)arg2,arg3);
  if (arg2) jenv->ReleaseStringUTFChars(jarg2, arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1remRangeDevice_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jint jarg3) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArRangeDevice *arg2 = (ArRangeDevice *) 0 ;
  ArPathPlanningTask::RangeType arg3 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArRangeDevice **)&jarg2; 
  arg3 = (ArPathPlanningTask::RangeType)jarg3; 
  (arg1)->remRangeDevice(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1addGlobalPlanningRangeDevice(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jint jarg3) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArRangeDevice *arg2 = (ArRangeDevice *) 0 ;
  ArPathPlanningTask::RangeType arg3 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArRangeDevice **)&jarg2; 
  arg3 = (ArPathPlanningTask::RangeType)jarg3; 
  (arg1)->addGlobalPlanningRangeDevice(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1remGlobalPlanningRangeDevice_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jstring jarg2, jint jarg3) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  char *arg2 = (char *) 0 ;
  ArPathPlanningTask::RangeType arg3 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = 0;
  if (jarg2) {
    arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    if (!arg2) return ;
  }
  arg3 = (ArPathPlanningTask::RangeType)jarg3; 
  (arg1)->remGlobalPlanningRangeDevice((char const *)arg2,arg3);
  if (arg2) jenv->ReleaseStringUTFChars(jarg2, arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1remGlobalPlanningRangeDevice_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jint jarg3) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArRangeDevice *arg2 = (ArRangeDevice *) 0 ;
  ArPathPlanningTask::RangeType arg3 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArRangeDevice **)&jarg2; 
  arg3 = (ArPathPlanningTask::RangeType)jarg3; 
  (arg1)->remGlobalPlanningRangeDevice(arg2,arg3);
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getRangeDeviceList(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  std::list<ArRangeDevice * > *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (std::list<ArRangeDevice * > *)(arg1)->getRangeDeviceList();
  *(std::list<ArRangeDevice * > **)&jresult = result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getCumRangeDeviceList(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  std::list<ArRangeDevice * > *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (std::list<ArRangeDevice * > *)(arg1)->getCumRangeDeviceList();
  *(std::list<ArRangeDevice * > **)&jresult = result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getGlobalPlanningRangeDeviceList(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  std::list<ArRangeDevice * > *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (std::list<ArRangeDevice * > *)(arg1)->getGlobalPlanningRangeDeviceList();
  *(std::list<ArRangeDevice * > **)&jresult = result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getGlobalPlanningCumRangeDeviceList(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  std::list<ArRangeDevice * > *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (std::list<ArRangeDevice * > *)(arg1)->getGlobalPlanningCumRangeDeviceList();
  *(std::list<ArRangeDevice * > **)&jresult = result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1clearRangeDevices(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  (arg1)->clearRangeDevices();
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1clearGlobalPlanningRangeDevices(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  (arg1)->clearGlobalPlanningRangeDevices();
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1clearGlobalPlanningCumRangeDevices(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  unsigned int arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (unsigned int)jarg2; 
  (arg1)->clearGlobalPlanningCumRangeDevices(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1clearCumRangeDevices(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  unsigned int arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (unsigned int)jarg2; 
  (arg1)->clearCumRangeDevices(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1goalFailed_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3, jint jarg4) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArPose arg2 ;
  char *arg3 = (char *) 0 ;
  ArPathPlanningTask::PathPlanningState arg4 ;
  ArPose *argp2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  argp2 = *(ArPose **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return ;
  }
  arg2 = *argp2; 
  arg3 = 0;
  if (jarg3) {
    arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0);
    if (!arg3) return ;
  }
  arg4 = (ArPathPlanningTask::PathPlanningState)jarg4; 
  (arg1)->goalFailed(arg2,(char const *)arg3,arg4);
  if (arg3) jenv->ReleaseStringUTFChars(jarg3, arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1goalFailed_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArPose arg2 ;
  char *arg3 = (char *) 0 ;
  ArPose *argp2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  argp2 = *(ArPose **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return ;
  }
  arg2 = *argp2; 
  arg3 = 0;
  if (jarg3) {
    arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0);
    if (!arg3) return ;
  }
  (arg1)->goalFailed(arg2,(char const *)arg3);
  if (arg3) jenv->ReleaseStringUTFChars(jarg3, arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1goalFailed_1_1SWIG_12(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArPose arg2 ;
  ArPose *argp2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  argp2 = *(ArPose **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return ;
  }
  arg2 = *argp2; 
  (arg1)->goalFailed(arg2);
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getLastMoveTime(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)(arg1)->getLastMoveTime();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getLastLinearMoveTime(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)(arg1)->getLastLinearMoveTime();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setLastMoveTime(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setLastMoveTime(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1setLastLinearMoveTime(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setLastLinearMoveTime(arg2);
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1computeProgress_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArPose arg2 ;
  double result;
  ArPose *argp2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  argp2 = *(ArPose **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return 0;
  }
  arg2 = *argp2; 
  result = (double)(arg1)->computeProgress(arg2);
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1computeProgress_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)(arg1)->computeProgress();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1estimateTimeToGoal_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArPose arg2 ;
  double result;
  ArPose *argp2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  argp2 = *(ArPose **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return 0;
  }
  arg2 = *argp2; 
  result = (double)(arg1)->estimateTimeToGoal(arg2);
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1estimateTimeToGoal_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)(arg1)->estimateTimeToGoal();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1estimateDistanceToGoal_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArPose arg2 ;
  double result;
  ArPose *argp2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  argp2 = *(ArPose **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return 0;
  }
  arg2 = *argp2; 
  result = (double)(arg1)->estimateDistanceToGoal(arg2);
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1estimateDistanceToGoal_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)(arg1)->estimateDistanceToGoal();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1drawSearchRectangle(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArServerClient *arg2 = (ArServerClient *) 0 ;
  ArNetPacket *arg3 = (ArNetPacket *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArServerClient **)&jarg2; 
  arg3 = *(ArNetPacket **)&jarg3; 
  (arg1)->drawSearchRectangle(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1drawNewPoints(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArServerClient *arg2 = (ArServerClient *) 0 ;
  ArNetPacket *arg3 = (ArNetPacket *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArServerClient **)&jarg2; 
  arg3 = *(ArNetPacket **)&jarg3; 
  (arg1)->drawNewPoints(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1drawGridPoints(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArServerClient *arg2 = (ArServerClient *) 0 ;
  ArNetPacket *arg3 = (ArNetPacket *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArServerClient **)&jarg2; 
  arg3 = *(ArNetPacket **)&jarg3; 
  (arg1)->drawGridPoints(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1drawPathPoints(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArServerClient *arg2 = (ArServerClient *) 0 ;
  ArNetPacket *arg3 = (ArNetPacket *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArServerClient **)&jarg2; 
  arg3 = *(ArNetPacket **)&jarg3; 
  (arg1)->drawPathPoints(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1drawObsPoints(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArServerClient *arg2 = (ArServerClient *) 0 ;
  ArNetPacket *arg3 = (ArNetPacket *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArServerClient **)&jarg2; 
  arg3 = *(ArNetPacket **)&jarg3; 
  (arg1)->drawObsPoints(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1drawFailPoints(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArServerClient *arg2 = (ArServerClient *) 0 ;
  ArNetPacket *arg3 = (ArNetPacket *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArServerClient **)&jarg2; 
  arg3 = *(ArNetPacket **)&jarg3; 
  (arg1)->drawFailPoints(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1drawVelocityPath(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArServerClient *arg2 = (ArServerClient *) 0 ;
  ArNetPacket *arg3 = (ArNetPacket *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArServerClient **)&jarg2; 
  arg3 = *(ArNetPacket **)&jarg3; 
  (arg1)->drawVelocityPath(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1drawRobotBounds(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArServerClient *arg2 = (ArServerClient *) 0 ;
  ArNetPacket *arg3 = (ArNetPacket *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArServerClient **)&jarg2; 
  arg3 = *(ArNetPacket **)&jarg3; 
  (arg1)->drawRobotBounds(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1drawCollidePath(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArServerClient *arg2 = (ArServerClient *) 0 ;
  ArNetPacket *arg3 = (ArNetPacket *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArServerClient **)&jarg2; 
  arg3 = *(ArNetPacket **)&jarg3; 
  (arg1)->drawCollidePath(arg2,arg3);
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getLocalPathState(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArPathPlan::LocalPathState result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (arg1)->getLocalPathState();
  *(ArPathPlan::LocalPathState **)&jresult = new ArPathPlan::LocalPathState((ArPathPlan::LocalPathState &)result); 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getDWAState(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArPathPlan::SearchVelocityState result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (arg1)->getDWAState();
  *(ArPathPlan::SearchVelocityState **)&jresult = new ArPathPlan::SearchVelocityState((ArPathPlan::SearchVelocityState &)result); 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getCost(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)(arg1)->getCost();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getUtil(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (double)(arg1)->getUtil();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getPathFromTo(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  jlong jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArPose arg2 ;
  ArPose arg3 ;
  std::list<ArPose > result;
  ArPose *argp2 ;
  ArPose *argp3 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  argp2 = *(ArPose **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return 0;
  }
  arg2 = *argp2; 
  argp3 = *(ArPose **)&jarg3; 
  if (!argp3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return 0;
  }
  arg3 = *argp3; 
  result = (arg1)->getPathFromTo(arg2,arg3);
  *(std::list<ArPose > **)&jresult = new std::list<ArPose >((std::list<ArPose > &)result); 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1addStateChangeCB(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  (arg1)->addStateChangeCB(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1remStateChangeCB(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  (arg1)->remStateChangeCB(arg2);
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getObsListPtr(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  std::list<ArPose > *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (std::list<ArPose > *)(arg1)->getObsListPtr();
  *(std::list<ArPose > **)&jresult = result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1addBlockedPathCB(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArFunctor1<std::list<ArPose > const * > *arg2 = (ArFunctor1<std::list<ArPose > const * > *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArFunctor1<std::list<ArPose > const * > **)&jarg2; 
  (arg1)->addBlockedPathCB(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1remBlockedPathCB(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArFunctor1<std::list<ArPose > const * > *arg2 = (ArFunctor1<std::list<ArPose > const * > *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArFunctor1<std::list<ArPose > const * > **)&jarg2; 
  (arg1)->remBlockedPathCB(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1addPlainBlockedPathCB_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jint jarg3) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  int arg3 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  arg3 = (int)jarg3; 
  (arg1)->addPlainBlockedPathCB(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1addPlainBlockedPathCB_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  (arg1)->addPlainBlockedPathCB(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1remPlainBlockedPathCB(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  (arg1)->remPlainBlockedPathCB(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1invokeBlockedPathCB(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  (arg1)->invokeBlockedPathCB();
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPathPlanningTask_1getWaitingToFailFlag(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jboolean jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (bool)(arg1)->getWaitingToFailFlag();
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArActionPlanAndMoveToGoal(JNIEnv *jenv, jclass jcls, jdouble jarg1, jdouble jarg2, jlong jarg3, jlong jarg4, jlong jarg5) {
  jlong jresult = 0 ;
  double arg1 ;
  double arg2 ;
  ArPathPlanningTask *arg3 = (ArPathPlanningTask *) 0 ;
  ArRangeDevice *arg4 = (ArRangeDevice *) 0 ;
  ArRangeDevice *arg5 = (ArRangeDevice *) 0 ;
  ArActionPlanAndMoveToGoal *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = (double)jarg1; 
  arg2 = (double)jarg2; 
  arg3 = *(ArPathPlanningTask **)&jarg3; 
  arg4 = *(ArRangeDevice **)&jarg4; 
  arg5 = *(ArRangeDevice **)&jarg5; 
  result = (ArActionPlanAndMoveToGoal *)new ArActionPlanAndMoveToGoal(arg1,arg2,arg3,arg4,arg5);
  *(ArActionPlanAndMoveToGoal **)&jresult = result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_delete_1ArActionPlanAndMoveToGoal(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArActionPlanAndMoveToGoal *arg1 = (ArActionPlanAndMoveToGoal *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionPlanAndMoveToGoal **)&jarg1; 
  delete arg1;
  
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionPlanAndMoveToGoal_1fire(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  jlong jresult = 0 ;
  ArActionPlanAndMoveToGoal *arg1 = (ArActionPlanAndMoveToGoal *) 0 ;
  ArActionDesired arg2 ;
  ArActionDesired *result = 0 ;
  ArActionDesired *argp2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionPlanAndMoveToGoal **)&jarg1; 
  argp2 = *(ArActionDesired **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArActionDesired");
    return 0;
  }
  arg2 = *argp2; 
  result = (ArActionDesired *)(arg1)->fire(arg2);
  *(ArActionDesired **)&jresult = result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionPlanAndMoveToGoal_1deactivate(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArActionPlanAndMoveToGoal *arg1 = (ArActionPlanAndMoveToGoal *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionPlanAndMoveToGoal **)&jarg1; 
  (arg1)->deactivate();
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionPlanAndMoveToGoal_1setTotalVel(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2, jdouble jarg3) {
  ArActionPlanAndMoveToGoal *arg1 = (ArActionPlanAndMoveToGoal *) 0 ;
  double arg2 ;
  double arg3 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionPlanAndMoveToGoal **)&jarg1; 
  arg2 = (double)jarg2; 
  arg3 = (double)jarg3; 
  (arg1)->setTotalVel(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionPlanAndMoveToGoal_1setEndMoveParams(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArActionPlanAndMoveToGoal *arg1 = (ArActionPlanAndMoveToGoal *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionPlanAndMoveToGoal **)&jarg1; 
  (arg1)->setEndMoveParams();
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionPlanAndMoveToGoal_1setHeadingParams(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArActionPlanAndMoveToGoal *arg1 = (ArActionPlanAndMoveToGoal *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionPlanAndMoveToGoal **)&jarg1; 
  (arg1)->setHeadingParams();
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionPlanAndMoveToGoal_1clearRangeDevices(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArActionPlanAndMoveToGoal *arg1 = (ArActionPlanAndMoveToGoal *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionPlanAndMoveToGoal **)&jarg1; 
  (arg1)->clearRangeDevices();
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionPlanAndMoveToGoal_1clearCumRangeDevices(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArActionPlanAndMoveToGoal *arg1 = (ArActionPlanAndMoveToGoal *) 0 ;
  unsigned int arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionPlanAndMoveToGoal **)&jarg1; 
  arg2 = (unsigned int)jarg2; 
  (arg1)->clearCumRangeDevices(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionPlanAndMoveToGoal_1setMaxVel(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArActionPlanAndMoveToGoal *arg1 = (ArActionPlanAndMoveToGoal *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionPlanAndMoveToGoal **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setMaxVel(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionPlanAndMoveToGoal_1setMaxRotVel(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArActionPlanAndMoveToGoal *arg1 = (ArActionPlanAndMoveToGoal *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionPlanAndMoveToGoal **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setMaxRotVel(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionPlanAndMoveToGoal_1setFailedTimes(JNIEnv *jenv, jclass jcls, jlong jarg1, jint jarg2) {
  ArActionPlanAndMoveToGoal *arg1 = (ArActionPlanAndMoveToGoal *) 0 ;
  int arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionPlanAndMoveToGoal **)&jarg1; 
  arg2 = (int)jarg2; 
  (arg1)->setFailedTimes(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionPlanAndMoveToGoal_1setRangeFactor(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArActionPlanAndMoveToGoal *arg1 = (ArActionPlanAndMoveToGoal *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionPlanAndMoveToGoal **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setRangeFactor(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionPlanAndMoveToGoal_1setEndMoveFlag(JNIEnv *jenv, jclass jcls, jlong jarg1, jboolean jarg2) {
  ArActionPlanAndMoveToGoal *arg1 = (ArActionPlanAndMoveToGoal *) 0 ;
  bool arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionPlanAndMoveToGoal **)&jarg1; 
  arg2 = jarg2 ? true : false; 
  (arg1)->setEndMoveFlag(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionPlanAndMoveToGoal_1setPlanState(JNIEnv *jenv, jclass jcls, jlong jarg1, jint jarg2) {
  ArActionPlanAndMoveToGoal *arg1 = (ArActionPlanAndMoveToGoal *) 0 ;
  ArPathPlanningTask::LocalPlanningState arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionPlanAndMoveToGoal **)&jarg1; 
  arg2 = (ArPathPlanningTask::LocalPlanningState)jarg2; 
  (arg1)->setPlanState(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionPlanAndMoveToGoal_1setReplannedTimes(JNIEnv *jenv, jclass jcls, jlong jarg1, jint jarg2) {
  ArActionPlanAndMoveToGoal *arg1 = (ArActionPlanAndMoveToGoal *) 0 ;
  int arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionPlanAndMoveToGoal **)&jarg1; 
  arg2 = (int)jarg2; 
  (arg1)->setReplannedTimes(arg2);
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionPlanAndMoveToGoal_1getMaxVel(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArActionPlanAndMoveToGoal *arg1 = (ArActionPlanAndMoveToGoal *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionPlanAndMoveToGoal **)&jarg1; 
  result = (double)(arg1)->getMaxVel();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionPlanAndMoveToGoal_1getRotMaxVel(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArActionPlanAndMoveToGoal *arg1 = (ArActionPlanAndMoveToGoal *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionPlanAndMoveToGoal **)&jarg1; 
  result = (double)(arg1)->getRotMaxVel();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jint JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionPlanAndMoveToGoal_1getFailedTimes(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jint jresult = 0 ;
  ArActionPlanAndMoveToGoal *arg1 = (ArActionPlanAndMoveToGoal *) 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionPlanAndMoveToGoal **)&jarg1; 
  result = (int)(arg1)->getFailedTimes();
  jresult = (jint)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionPlanAndMoveToGoal_1getRangeFactor(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArActionPlanAndMoveToGoal *arg1 = (ArActionPlanAndMoveToGoal *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionPlanAndMoveToGoal **)&jarg1; 
  result = (double)(arg1)->getRangeFactor();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionPlanAndMoveToGoal_1getEndMoveFlag(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jboolean jresult = 0 ;
  ArActionPlanAndMoveToGoal *arg1 = (ArActionPlanAndMoveToGoal *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionPlanAndMoveToGoal **)&jarg1; 
  result = (bool)(arg1)->getEndMoveFlag();
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT jint JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionPlanAndMoveToGoal_1getPlanState(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jint jresult = 0 ;
  ArActionPlanAndMoveToGoal *arg1 = (ArActionPlanAndMoveToGoal *) 0 ;
  ArPathPlanningTask::LocalPlanningState result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionPlanAndMoveToGoal **)&jarg1; 
  result = (ArPathPlanningTask::LocalPlanningState)(arg1)->getPlanState();
  jresult = (jint)result; 
  return jresult;
}


JNIEXPORT jint JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionPlanAndMoveToGoal_1getReplannedTimes(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jint jresult = 0 ;
  ArActionPlanAndMoveToGoal *arg1 = (ArActionPlanAndMoveToGoal *) 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionPlanAndMoveToGoal **)&jarg1; 
  result = (int)(arg1)->getReplannedTimes();
  jresult = (jint)result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionPlanAndMoveToGoal_1setCurrentDynamicParams(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArActionPlanAndMoveToGoal *arg1 = (ArActionPlanAndMoveToGoal *) 0 ;
  ArActionDesired arg2 ;
  ArActionDesired *argp2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionPlanAndMoveToGoal **)&jarg1; 
  argp2 = *(ArActionDesired **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArActionDesired");
    return ;
  }
  arg2 = *argp2; 
  (arg1)->setCurrentDynamicParams(arg2);
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionPlanAndMoveToGoal_1getFailedTimeRatio(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArActionPlanAndMoveToGoal *arg1 = (ArActionPlanAndMoveToGoal *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionPlanAndMoveToGoal **)&jarg1; 
  result = (double)(arg1)->getFailedTimeRatio();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionPlanAndMoveToGoal_1getDesired(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArActionPlanAndMoveToGoal *arg1 = (ArActionPlanAndMoveToGoal *) 0 ;
  ArActionDesired *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionPlanAndMoveToGoal **)&jarg1; 
  result = (ArActionDesired *)(arg1)->getDesired();
  *(ArActionDesired **)&jresult = result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionPlanAndMoveToGoal_1computeSafeDecel(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2, jdouble jarg3, jdouble jarg4, jdouble jarg5, jlong jarg6, jlong jarg7) {
  jdouble jresult = 0 ;
  ArActionPlanAndMoveToGoal *arg1 = (ArActionPlanAndMoveToGoal *) 0 ;
  double arg2 ;
  double arg3 ;
  double arg4 ;
  double arg5 ;
  bool *arg6 = 0 ;
  bool *arg7 = 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionPlanAndMoveToGoal **)&jarg1; 
  arg2 = (double)jarg2; 
  arg3 = (double)jarg3; 
  arg4 = (double)jarg4; 
  arg5 = (double)jarg5; 
  arg6 = *(bool **)&jarg6;
  if(!arg6) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "bool & reference is null");
    return 0;
  } 
  arg7 = *(bool **)&jarg7;
  if(!arg7) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "bool & reference is null");
    return 0;
  } 
  result = (double)(arg1)->computeSafeDecel(arg2,arg3,arg4,arg5,*arg6,*arg7);
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionPlanAndMoveToGoal_1stop(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2, jdouble jarg3, jdouble jarg4, jdouble jarg5) {
  jlong jresult = 0 ;
  ArActionPlanAndMoveToGoal *arg1 = (ArActionPlanAndMoveToGoal *) 0 ;
  double arg2 ;
  double arg3 ;
  double arg4 ;
  double arg5 ;
  ArActionDesired *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionPlanAndMoveToGoal **)&jarg1; 
  arg2 = (double)jarg2; 
  arg3 = (double)jarg3; 
  arg4 = (double)jarg4; 
  arg5 = (double)jarg5; 
  result = (ArActionDesired *)(arg1)->stop(arg2,arg3,arg4,arg5);
  *(ArActionDesired **)&jresult = result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArGlobalReplanningRangeDevice_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jstring jarg4) {
  jlong jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  size_t arg2 ;
  size_t arg3 ;
  char *arg4 = (char *) 0 ;
  ArGlobalReplanningRangeDevice *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (size_t)jarg2; 
  arg3 = (size_t)jarg3; 
  arg4 = 0;
  if (jarg4) {
    arg4 = (char *)jenv->GetStringUTFChars(jarg4, 0);
    if (!arg4) return 0;
  }
  result = (ArGlobalReplanningRangeDevice *)new ArGlobalReplanningRangeDevice(arg1,arg2,arg3,(char const *)arg4);
  *(ArGlobalReplanningRangeDevice **)&jresult = result; 
  if (arg4) jenv->ReleaseStringUTFChars(jarg4, arg4);
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArGlobalReplanningRangeDevice_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  jlong jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  size_t arg2 ;
  size_t arg3 ;
  ArGlobalReplanningRangeDevice *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (size_t)jarg2; 
  arg3 = (size_t)jarg3; 
  result = (ArGlobalReplanningRangeDevice *)new ArGlobalReplanningRangeDevice(arg1,arg2,arg3);
  *(ArGlobalReplanningRangeDevice **)&jresult = result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArGlobalReplanningRangeDevice_1_1SWIG_12(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  jlong jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  size_t arg2 ;
  ArGlobalReplanningRangeDevice *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  arg2 = (size_t)jarg2; 
  result = (ArGlobalReplanningRangeDevice *)new ArGlobalReplanningRangeDevice(arg1,arg2);
  *(ArGlobalReplanningRangeDevice **)&jresult = result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArGlobalReplanningRangeDevice_1_1SWIG_13(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArPathPlanningTask *arg1 = (ArPathPlanningTask *) 0 ;
  ArGlobalReplanningRangeDevice *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPathPlanningTask **)&jarg1; 
  result = (ArGlobalReplanningRangeDevice *)new ArGlobalReplanningRangeDevice(arg1);
  *(ArGlobalReplanningRangeDevice **)&jresult = result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_delete_1ArGlobalReplanningRangeDevice(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArGlobalReplanningRangeDevice *arg1 = (ArGlobalReplanningRangeDevice *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArGlobalReplanningRangeDevice **)&jarg1; 
  delete arg1;
  
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArGlobalReplanningRangeDevice_1clear(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArGlobalReplanningRangeDevice *arg1 = (ArGlobalReplanningRangeDevice *) 0 ;
  ArPose arg2 ;
  ArPose *argp2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArGlobalReplanningRangeDevice **)&jarg1; 
  argp2 = *(ArPose **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return ;
  }
  arg2 = *argp2; 
  (arg1)->clear(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArGlobalReplanningRangeDevice_1addReadings(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArGlobalReplanningRangeDevice *arg1 = (ArGlobalReplanningRangeDevice *) 0 ;
  std::list<ArPose > *arg2 = (std::list<ArPose > *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArGlobalReplanningRangeDevice **)&jarg1; 
  arg2 = *(std::list<ArPose > **)&jarg2; 
  (arg1)->addReadings((std::list<ArPose > const *)arg2);
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArServerInfoPath(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  jlong jresult = 0 ;
  ArServerBase *arg1 = (ArServerBase *) 0 ;
  ArRobot *arg2 = (ArRobot *) 0 ;
  ArPathPlanningTask *arg3 = (ArPathPlanningTask *) 0 ;
  ArServerInfoPath *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerBase **)&jarg1; 
  arg2 = *(ArRobot **)&jarg2; 
  arg3 = *(ArPathPlanningTask **)&jarg3; 
  result = (ArServerInfoPath *)new ArServerInfoPath(arg1,arg2,arg3);
  *(ArServerInfoPath **)&jresult = result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_delete_1ArServerInfoPath(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArServerInfoPath *arg1 = (ArServerInfoPath *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerInfoPath **)&jarg1; 
  delete arg1;
  
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerInfoPath_1getPath(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  ArServerInfoPath *arg1 = (ArServerInfoPath *) 0 ;
  ArServerClient *arg2 = (ArServerClient *) 0 ;
  ArNetPacket *arg3 = (ArNetPacket *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerInfoPath **)&jarg1; 
  arg2 = *(ArServerClient **)&jarg2; 
  arg3 = *(ArNetPacket **)&jarg3; 
  (arg1)->getPath(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerInfoPath_1getSearchRectangle(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  ArServerInfoPath *arg1 = (ArServerInfoPath *) 0 ;
  ArServerClient *arg2 = (ArServerClient *) 0 ;
  ArNetPacket *arg3 = (ArNetPacket *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerInfoPath **)&jarg1; 
  arg2 = *(ArServerClient **)&jarg2; 
  arg3 = *(ArNetPacket **)&jarg3; 
  (arg1)->getSearchRectangle(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerInfoPath_1addSearchRectangleDrawing(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArServerInfoPath *arg1 = (ArServerInfoPath *) 0 ;
  ArServerInfoDrawings *arg2 = (ArServerInfoDrawings *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerInfoPath **)&jarg1; 
  arg2 = *(ArServerInfoDrawings **)&jarg2; 
  (arg1)->addSearchRectangleDrawing(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerInfoPath_1addControlCommands(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArServerInfoPath *arg1 = (ArServerInfoPath *) 0 ;
  ArServerHandlerCommands *arg2 = (ArServerHandlerCommands *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerInfoPath **)&jarg1; 
  arg2 = *(ArServerHandlerCommands **)&jarg2; 
  (arg1)->addControlCommands(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerInfoPath_1searchRectangleEnable(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArServerInfoPath *arg1 = (ArServerInfoPath *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerInfoPath **)&jarg1; 
  (arg1)->searchRectangleEnable();
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerInfoPath_1searchRectangleDisable(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArServerInfoPath *arg1 = (ArServerInfoPath *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerInfoPath **)&jarg1; 
  (arg1)->searchRectangleDisable();
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerInfoPath_1setSearchRectangleDrawingData(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jboolean jarg3) {
  ArServerInfoPath *arg1 = (ArServerInfoPath *) 0 ;
  ArDrawingData *arg2 = (ArDrawingData *) 0 ;
  bool arg3 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerInfoPath **)&jarg1; 
  arg2 = *(ArDrawingData **)&jarg2; 
  arg3 = jarg3 ? true : false; 
  (arg1)->setSearchRectangleDrawingData(arg2,arg3);
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArServerInfoLocalization(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  jlong jresult = 0 ;
  ArServerBase *arg1 = (ArServerBase *) 0 ;
  ArRobot *arg2 = (ArRobot *) 0 ;
  ArBaseLocalizationTask *arg3 = (ArBaseLocalizationTask *) 0 ;
  ArServerInfoLocalization *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerBase **)&jarg1; 
  arg2 = *(ArRobot **)&jarg2; 
  arg3 = *(ArBaseLocalizationTask **)&jarg3; 
  result = (ArServerInfoLocalization *)new ArServerInfoLocalization(arg1,arg2,arg3);
  *(ArServerInfoLocalization **)&jresult = result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_delete_1ArServerInfoLocalization(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArServerInfoLocalization *arg1 = (ArServerInfoLocalization *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerInfoLocalization **)&jarg1; 
  delete arg1;
  
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerInfoLocalization_1getLocPoints(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  ArServerInfoLocalization *arg1 = (ArServerInfoLocalization *) 0 ;
  ArServerClient *arg2 = (ArServerClient *) 0 ;
  ArNetPacket *arg3 = (ArNetPacket *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerInfoLocalization **)&jarg1; 
  arg2 = *(ArServerClient **)&jarg2; 
  arg3 = *(ArNetPacket **)&jarg3; 
  (arg1)->getLocPoints(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerInfoLocalization_1getLocState(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  ArServerInfoLocalization *arg1 = (ArServerInfoLocalization *) 0 ;
  ArServerClient *arg2 = (ArServerClient *) 0 ;
  ArNetPacket *arg3 = (ArNetPacket *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerInfoLocalization **)&jarg1; 
  arg2 = *(ArServerClient **)&jarg2; 
  arg3 = *(ArNetPacket **)&jarg3; 
  (arg1)->getLocState(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerInfoLocalization_1addInitializingCB_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jint jarg3) {
  ArServerInfoLocalization *arg1 = (ArServerInfoLocalization *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  int arg3 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerInfoLocalization **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  arg3 = (int)jarg3; 
  (arg1)->addInitializingCB(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerInfoLocalization_1addInitializingCB_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArServerInfoLocalization *arg1 = (ArServerInfoLocalization *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerInfoLocalization **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  (arg1)->addInitializingCB(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerInfoLocalization_1remInitializingingCB(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArServerInfoLocalization *arg1 = (ArServerInfoLocalization *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerInfoLocalization **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  (arg1)->remInitializingingCB(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerInfoLocalization_1addInitializingSucceededCB_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jint jarg3) {
  ArServerInfoLocalization *arg1 = (ArServerInfoLocalization *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  int arg3 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerInfoLocalization **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  arg3 = (int)jarg3; 
  (arg1)->addInitializingSucceededCB(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerInfoLocalization_1addInitializingSucceededCB_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArServerInfoLocalization *arg1 = (ArServerInfoLocalization *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerInfoLocalization **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  (arg1)->addInitializingSucceededCB(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerInfoLocalization_1remInitializingSucceededCB(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArServerInfoLocalization *arg1 = (ArServerInfoLocalization *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerInfoLocalization **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  (arg1)->remInitializingSucceededCB(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerInfoLocalization_1addInitializingFailedCB_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jint jarg3) {
  ArServerInfoLocalization *arg1 = (ArServerInfoLocalization *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  int arg3 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerInfoLocalization **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  arg3 = (int)jarg3; 
  (arg1)->addInitializingFailedCB(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerInfoLocalization_1addInitializingFailedCB_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArServerInfoLocalization *arg1 = (ArServerInfoLocalization *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerInfoLocalization **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  (arg1)->addInitializingFailedCB(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerInfoLocalization_1remInitializingFailedCB(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArServerInfoLocalization *arg1 = (ArServerInfoLocalization *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerInfoLocalization **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  (arg1)->remInitializingFailedCB(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerInfoLocalization_1addLostCB_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jint jarg3) {
  ArServerInfoLocalization *arg1 = (ArServerInfoLocalization *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  int arg3 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerInfoLocalization **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  arg3 = (int)jarg3; 
  (arg1)->addLostCB(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerInfoLocalization_1addLostCB_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArServerInfoLocalization *arg1 = (ArServerInfoLocalization *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerInfoLocalization **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  (arg1)->addLostCB(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerInfoLocalization_1remInitingCB(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArServerInfoLocalization *arg1 = (ArServerInfoLocalization *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerInfoLocalization **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  (arg1)->remInitingCB(arg2);
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArServerHandlerLocalization_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jboolean jarg4, jboolean jarg5) {
  jlong jresult = 0 ;
  ArServerBase *arg1 = (ArServerBase *) 0 ;
  ArRobot *arg2 = (ArRobot *) 0 ;
  ArBaseLocalizationTask *arg3 = (ArBaseLocalizationTask *) 0 ;
  bool arg4 ;
  bool arg5 ;
  ArServerHandlerLocalization *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerBase **)&jarg1; 
  arg2 = *(ArRobot **)&jarg2; 
  arg3 = *(ArBaseLocalizationTask **)&jarg3; 
  arg4 = jarg4 ? true : false; 
  arg5 = jarg5 ? true : false; 
  result = (ArServerHandlerLocalization *)new ArServerHandlerLocalization(arg1,arg2,arg3,arg4,arg5);
  *(ArServerHandlerLocalization **)&jresult = result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArServerHandlerLocalization_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jboolean jarg4) {
  jlong jresult = 0 ;
  ArServerBase *arg1 = (ArServerBase *) 0 ;
  ArRobot *arg2 = (ArRobot *) 0 ;
  ArBaseLocalizationTask *arg3 = (ArBaseLocalizationTask *) 0 ;
  bool arg4 ;
  ArServerHandlerLocalization *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerBase **)&jarg1; 
  arg2 = *(ArRobot **)&jarg2; 
  arg3 = *(ArBaseLocalizationTask **)&jarg3; 
  arg4 = jarg4 ? true : false; 
  result = (ArServerHandlerLocalization *)new ArServerHandlerLocalization(arg1,arg2,arg3,arg4);
  *(ArServerHandlerLocalization **)&jresult = result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArServerHandlerLocalization_1_1SWIG_12(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  jlong jresult = 0 ;
  ArServerBase *arg1 = (ArServerBase *) 0 ;
  ArRobot *arg2 = (ArRobot *) 0 ;
  ArBaseLocalizationTask *arg3 = (ArBaseLocalizationTask *) 0 ;
  ArServerHandlerLocalization *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerBase **)&jarg1; 
  arg2 = *(ArRobot **)&jarg2; 
  arg3 = *(ArBaseLocalizationTask **)&jarg3; 
  result = (ArServerHandlerLocalization *)new ArServerHandlerLocalization(arg1,arg2,arg3);
  *(ArServerHandlerLocalization **)&jresult = result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_delete_1ArServerHandlerLocalization(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArServerHandlerLocalization *arg1 = (ArServerHandlerLocalization *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerHandlerLocalization **)&jarg1; 
  delete arg1;
  
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerHandlerLocalization_1localizeToPose_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jboolean jarg3, jdouble jarg4, jdouble jarg5) {
  ArServerHandlerLocalization *arg1 = (ArServerHandlerLocalization *) 0 ;
  ArPose arg2 ;
  bool arg3 ;
  double arg4 ;
  double arg5 ;
  ArPose *argp2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerHandlerLocalization **)&jarg1; 
  argp2 = *(ArPose **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return ;
  }
  arg2 = *argp2; 
  arg3 = jarg3 ? true : false; 
  arg4 = (double)jarg4; 
  arg5 = (double)jarg5; 
  (arg1)->localizeToPose(arg2,arg3,arg4,arg5);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerHandlerLocalization_1localizeToPose_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jboolean jarg3, jdouble jarg4) {
  ArServerHandlerLocalization *arg1 = (ArServerHandlerLocalization *) 0 ;
  ArPose arg2 ;
  bool arg3 ;
  double arg4 ;
  ArPose *argp2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerHandlerLocalization **)&jarg1; 
  argp2 = *(ArPose **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return ;
  }
  arg2 = *argp2; 
  arg3 = jarg3 ? true : false; 
  arg4 = (double)jarg4; 
  (arg1)->localizeToPose(arg2,arg3,arg4);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerHandlerLocalization_1localizeToPose_1_1SWIG_12(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jboolean jarg3) {
  ArServerHandlerLocalization *arg1 = (ArServerHandlerLocalization *) 0 ;
  ArPose arg2 ;
  bool arg3 ;
  ArPose *argp2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerHandlerLocalization **)&jarg1; 
  argp2 = *(ArPose **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return ;
  }
  arg2 = *argp2; 
  arg3 = jarg3 ? true : false; 
  (arg1)->localizeToPose(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerHandlerLocalization_1localizeToPose_1_1SWIG_13(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArServerHandlerLocalization *arg1 = (ArServerHandlerLocalization *) 0 ;
  ArPose arg2 ;
  ArPose *argp2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerHandlerLocalization **)&jarg1; 
  argp2 = *(ArPose **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return ;
  }
  arg2 = *argp2; 
  (arg1)->localizeToPose(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerHandlerLocalization_1setSimPose_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jboolean jarg3) {
  ArServerHandlerLocalization *arg1 = (ArServerHandlerLocalization *) 0 ;
  ArPose arg2 ;
  bool arg3 ;
  ArPose *argp2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerHandlerLocalization **)&jarg1; 
  argp2 = *(ArPose **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return ;
  }
  arg2 = *argp2; 
  arg3 = jarg3 ? true : false; 
  (arg1)->setSimPose(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerHandlerLocalization_1setSimPose_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArServerHandlerLocalization *arg1 = (ArServerHandlerLocalization *) 0 ;
  ArPose arg2 ;
  ArPose *argp2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerHandlerLocalization **)&jarg1; 
  argp2 = *(ArPose **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return ;
  }
  arg2 = *argp2; 
  (arg1)->setSimPose(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerHandlerLocalization_1netResetToHome(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  ArServerHandlerLocalization *arg1 = (ArServerHandlerLocalization *) 0 ;
  ArServerClient *arg2 = (ArServerClient *) 0 ;
  ArNetPacket *arg3 = (ArNetPacket *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerHandlerLocalization **)&jarg1; 
  arg2 = *(ArServerClient **)&jarg2; 
  arg3 = *(ArNetPacket **)&jarg3; 
  (arg1)->netResetToHome(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerHandlerLocalization_1netLocalizeToPose(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  ArServerHandlerLocalization *arg1 = (ArServerHandlerLocalization *) 0 ;
  ArServerClient *arg2 = (ArServerClient *) 0 ;
  ArNetPacket *arg3 = (ArNetPacket *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerHandlerLocalization **)&jarg1; 
  arg2 = *(ArServerClient **)&jarg2; 
  arg3 = *(ArNetPacket **)&jarg3; 
  (arg1)->netLocalizeToPose(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerHandlerLocalization_1addSimpleRelativeCommands(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArServerHandlerLocalization *arg1 = (ArServerHandlerLocalization *) 0 ;
  ArServerHandlerCommands *arg2 = (ArServerHandlerCommands *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerHandlerLocalization **)&jarg1; 
  arg2 = *(ArServerHandlerCommands **)&jarg2; 
  (arg1)->addSimpleRelativeCommands(arg2);
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArServerModeGotoLLA_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jlong jarg4, jlong jarg5, jlong jarg6, jlong jarg7) {
  jlong jresult = 0 ;
  ArServerBase *arg1 = (ArServerBase *) 0 ;
  ArRobot *arg2 = (ArRobot *) 0 ;
  ArBaseLocalizationTask *arg3 = (ArBaseLocalizationTask *) 0 ;
  ArPathPlanningTask *arg4 = (ArPathPlanningTask *) 0 ;
  ArMapInterface *arg5 = (ArMapInterface *) 0 ;
  ArPose arg6 ;
  ArRetFunctor<ArPose > *arg7 = (ArRetFunctor<ArPose > *) 0 ;
  ArServerModeGotoLLA *result = 0 ;
  ArPose *argp6 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerBase **)&jarg1; 
  arg2 = *(ArRobot **)&jarg2; 
  arg3 = *(ArBaseLocalizationTask **)&jarg3; 
  arg4 = *(ArPathPlanningTask **)&jarg4; 
  arg5 = *(ArMapInterface **)&jarg5; 
  argp6 = *(ArPose **)&jarg6; 
  if (!argp6) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return 0;
  }
  arg6 = *argp6; 
  arg7 = *(ArRetFunctor<ArPose > **)&jarg7; 
  result = (ArServerModeGotoLLA *)new ArServerModeGotoLLA(arg1,arg2,arg3,arg4,arg5,arg6,arg7);
  *(ArServerModeGotoLLA **)&jresult = result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArServerModeGotoLLA_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jlong jarg4, jlong jarg5, jlong jarg6) {
  jlong jresult = 0 ;
  ArServerBase *arg1 = (ArServerBase *) 0 ;
  ArRobot *arg2 = (ArRobot *) 0 ;
  ArBaseLocalizationTask *arg3 = (ArBaseLocalizationTask *) 0 ;
  ArPathPlanningTask *arg4 = (ArPathPlanningTask *) 0 ;
  ArMapInterface *arg5 = (ArMapInterface *) 0 ;
  ArPose arg6 ;
  ArServerModeGotoLLA *result = 0 ;
  ArPose *argp6 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerBase **)&jarg1; 
  arg2 = *(ArRobot **)&jarg2; 
  arg3 = *(ArBaseLocalizationTask **)&jarg3; 
  arg4 = *(ArPathPlanningTask **)&jarg4; 
  arg5 = *(ArMapInterface **)&jarg5; 
  argp6 = *(ArPose **)&jarg6; 
  if (!argp6) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return 0;
  }
  arg6 = *argp6; 
  result = (ArServerModeGotoLLA *)new ArServerModeGotoLLA(arg1,arg2,arg3,arg4,arg5,arg6);
  *(ArServerModeGotoLLA **)&jresult = result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArServerModeGotoLLA_1_1SWIG_12(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jlong jarg4, jlong jarg5) {
  jlong jresult = 0 ;
  ArServerBase *arg1 = (ArServerBase *) 0 ;
  ArRobot *arg2 = (ArRobot *) 0 ;
  ArBaseLocalizationTask *arg3 = (ArBaseLocalizationTask *) 0 ;
  ArPathPlanningTask *arg4 = (ArPathPlanningTask *) 0 ;
  ArMapInterface *arg5 = (ArMapInterface *) 0 ;
  ArServerModeGotoLLA *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerBase **)&jarg1; 
  arg2 = *(ArRobot **)&jarg2; 
  arg3 = *(ArBaseLocalizationTask **)&jarg3; 
  arg4 = *(ArPathPlanningTask **)&jarg4; 
  arg5 = *(ArMapInterface **)&jarg5; 
  result = (ArServerModeGotoLLA *)new ArServerModeGotoLLA(arg1,arg2,arg3,arg4,arg5);
  *(ArServerModeGotoLLA **)&jresult = result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_delete_1ArServerModeGotoLLA(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArServerModeGotoLLA *arg1 = (ArServerModeGotoLLA *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerModeGotoLLA **)&jarg1; 
  delete arg1;
  
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerModeGotoLLA_1activate(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArServerModeGotoLLA *arg1 = (ArServerModeGotoLLA *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerModeGotoLLA **)&jarg1; 
  (arg1)->activate();
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerModeGotoLLA_1deactivate(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArServerModeGotoLLA *arg1 = (ArServerModeGotoLLA *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerModeGotoLLA **)&jarg1; 
  (arg1)->deactivate();
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerModeGotoLLA_1gotoPose(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jboolean jarg4) {
  ArServerModeGotoLLA *arg1 = (ArServerModeGotoLLA *) 0 ;
  ArPose arg2 ;
  ArPose arg3 ;
  bool arg4 ;
  ArPose *argp2 ;
  ArPose *argp3 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerModeGotoLLA **)&jarg1; 
  argp2 = *(ArPose **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return ;
  }
  arg2 = *argp2; 
  argp3 = *(ArPose **)&jarg3; 
  if (!argp3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return ;
  }
  arg3 = *argp3; 
  arg4 = jarg4 ? true : false; 
  (arg1)->gotoPose(arg2,arg3,arg4);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerModeGotoLLA_1tourGoalsInList(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  ArServerModeGotoLLA *arg1 = (ArServerModeGotoLLA *) 0 ;
  std::list<ArPose > arg2 ;
  std::list<ArPose > arg3 ;
  std::list<ArPose > *argp2 ;
  std::list<ArPose > *argp3 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerModeGotoLLA **)&jarg1; 
  argp2 = *(std::list<ArPose > **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null std::list<ArPose >");
    return ;
  }
  arg2 = *argp2; 
  argp3 = *(std::list<ArPose > **)&jarg3; 
  if (!argp3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null std::list<ArPose >");
    return ;
  }
  arg3 = *argp3; 
  (arg1)->tourGoalsInList(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerModeGotoLLA_1addGotoLLACommand(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArServerModeGotoLLA *arg1 = (ArServerModeGotoLLA *) 0 ;
  ArServerHandlerCommands *arg2 = (ArServerHandlerCommands *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerModeGotoLLA **)&jarg1; 
  arg2 = *(ArServerHandlerCommands **)&jarg2; 
  (arg1)->addGotoLLACommand(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerModeGotoLLA_1gotoLLA(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArServerModeGotoLLA *arg1 = (ArServerModeGotoLLA *) 0 ;
  ArArgumentBuilder *arg2 = (ArArgumentBuilder *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerModeGotoLLA **)&jarg1; 
  arg2 = *(ArArgumentBuilder **)&jarg2; 
  (arg1)->gotoLLA(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerModeGotoLLA_1addTourGoalsInListCommand(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArServerModeGotoLLA *arg1 = (ArServerModeGotoLLA *) 0 ;
  ArServerHandlerCommands *arg2 = (ArServerHandlerCommands *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerModeGotoLLA **)&jarg1; 
  arg2 = *(ArServerHandlerCommands **)&jarg2; 
  (arg1)->addTourGoalsInListCommand(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerModeGotoLLA_1tourGoalsInListCommand(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArServerModeGotoLLA *arg1 = (ArServerModeGotoLLA *) 0 ;
  ArArgumentBuilder *arg2 = (ArArgumentBuilder *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerModeGotoLLA **)&jarg1; 
  arg2 = *(ArArgumentBuilder **)&jarg2; 
  (arg1)->tourGoalsInListCommand(arg2);
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArServerModeGoto_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jlong jarg4, jlong jarg5, jlong jarg6) {
  jlong jresult = 0 ;
  ArServerBase *arg1 = (ArServerBase *) 0 ;
  ArRobot *arg2 = (ArRobot *) 0 ;
  ArPathPlanningTask *arg3 = (ArPathPlanningTask *) 0 ;
  ArMapInterface *arg4 = (ArMapInterface *) 0 ;
  ArPose arg5 ;
  ArRetFunctor<ArPose > *arg6 = (ArRetFunctor<ArPose > *) 0 ;
  ArServerModeGoto *result = 0 ;
  ArPose *argp5 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerBase **)&jarg1; 
  arg2 = *(ArRobot **)&jarg2; 
  arg3 = *(ArPathPlanningTask **)&jarg3; 
  arg4 = *(ArMapInterface **)&jarg4; 
  argp5 = *(ArPose **)&jarg5; 
  if (!argp5) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return 0;
  }
  arg5 = *argp5; 
  arg6 = *(ArRetFunctor<ArPose > **)&jarg6; 
  result = (ArServerModeGoto *)new ArServerModeGoto(arg1,arg2,arg3,arg4,arg5,arg6);
  *(ArServerModeGoto **)&jresult = result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArServerModeGoto_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jlong jarg4, jlong jarg5) {
  jlong jresult = 0 ;
  ArServerBase *arg1 = (ArServerBase *) 0 ;
  ArRobot *arg2 = (ArRobot *) 0 ;
  ArPathPlanningTask *arg3 = (ArPathPlanningTask *) 0 ;
  ArMapInterface *arg4 = (ArMapInterface *) 0 ;
  ArPose arg5 ;
  ArServerModeGoto *result = 0 ;
  ArPose *argp5 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerBase **)&jarg1; 
  arg2 = *(ArRobot **)&jarg2; 
  arg3 = *(ArPathPlanningTask **)&jarg3; 
  arg4 = *(ArMapInterface **)&jarg4; 
  argp5 = *(ArPose **)&jarg5; 
  if (!argp5) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return 0;
  }
  arg5 = *argp5; 
  result = (ArServerModeGoto *)new ArServerModeGoto(arg1,arg2,arg3,arg4,arg5);
  *(ArServerModeGoto **)&jresult = result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArServerModeGoto_1_1SWIG_12(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jlong jarg4) {
  jlong jresult = 0 ;
  ArServerBase *arg1 = (ArServerBase *) 0 ;
  ArRobot *arg2 = (ArRobot *) 0 ;
  ArPathPlanningTask *arg3 = (ArPathPlanningTask *) 0 ;
  ArMapInterface *arg4 = (ArMapInterface *) 0 ;
  ArServerModeGoto *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerBase **)&jarg1; 
  arg2 = *(ArRobot **)&jarg2; 
  arg3 = *(ArPathPlanningTask **)&jarg3; 
  arg4 = *(ArMapInterface **)&jarg4; 
  result = (ArServerModeGoto *)new ArServerModeGoto(arg1,arg2,arg3,arg4);
  *(ArServerModeGoto **)&jresult = result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_delete_1ArServerModeGoto(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArServerModeGoto *arg1 = (ArServerModeGoto *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerModeGoto **)&jarg1; 
  delete arg1;
  
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerModeGoto_1activate(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArServerModeGoto *arg1 = (ArServerModeGoto *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerModeGoto **)&jarg1; 
  (arg1)->activate();
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerModeGoto_1deactivate(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArServerModeGoto *arg1 = (ArServerModeGoto *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerModeGoto **)&jarg1; 
  (arg1)->deactivate();
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerModeGoto_1home(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArServerModeGoto *arg1 = (ArServerModeGoto *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerModeGoto **)&jarg1; 
  (arg1)->home();
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerModeGoto_1gotoGoal(JNIEnv *jenv, jclass jcls, jlong jarg1, jstring jarg2) {
  ArServerModeGoto *arg1 = (ArServerModeGoto *) 0 ;
  char *arg2 = (char *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerModeGoto **)&jarg1; 
  arg2 = 0;
  if (jarg2) {
    arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    if (!arg2) return ;
  }
  (arg1)->gotoGoal((char const *)arg2);
  if (arg2) jenv->ReleaseStringUTFChars(jarg2, arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerModeGoto_1gotoPose(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jboolean jarg3) {
  ArServerModeGoto *arg1 = (ArServerModeGoto *) 0 ;
  ArPose arg2 ;
  bool arg3 ;
  ArPose *argp2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerModeGoto **)&jarg1; 
  argp2 = *(ArPose **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return ;
  }
  arg2 = *argp2; 
  arg3 = jarg3 ? true : false; 
  (arg1)->gotoPose(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerModeGoto_1tourGoals(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArServerModeGoto *arg1 = (ArServerModeGoto *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerModeGoto **)&jarg1; 
  (arg1)->tourGoals();
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerModeGoto_1tourGoalsInList(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArServerModeGoto *arg1 = (ArServerModeGoto *) 0 ;
  std::deque<std::string > arg2 ;
  std::deque<std::string > *argp2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerModeGoto **)&jarg1; 
  argp2 = *(std::deque<std::string > **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null std::deque<std::string >");
    return ;
  }
  arg2 = *argp2; 
  (arg1)->tourGoalsInList(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerModeGoto_1addTourGoalsInListSimpleCommand(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArServerModeGoto *arg1 = (ArServerModeGoto *) 0 ;
  ArServerHandlerCommands *arg2 = (ArServerHandlerCommands *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerModeGoto **)&jarg1; 
  arg2 = *(ArServerHandlerCommands **)&jarg2; 
  (arg1)->addTourGoalsInListSimpleCommand(arg2);
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerModeGoto_1isAutoResumeAfterInterrupt(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jboolean jresult = 0 ;
  ArServerModeGoto *arg1 = (ArServerModeGoto *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerModeGoto **)&jarg1; 
  result = (bool)(arg1)->isAutoResumeAfterInterrupt();
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArServerDrawingDestination_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3) {
  jlong jresult = 0 ;
  ArServerInfoDrawings *arg1 = (ArServerInfoDrawings *) 0 ;
  ArPathPlanningTask *arg2 = (ArPathPlanningTask *) 0 ;
  char *arg3 = (char *) 0 ;
  ArServerDrawingDestination *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerInfoDrawings **)&jarg1; 
  arg2 = *(ArPathPlanningTask **)&jarg2; 
  arg3 = 0;
  if (jarg3) {
    arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0);
    if (!arg3) return 0;
  }
  result = (ArServerDrawingDestination *)new ArServerDrawingDestination(arg1,arg2,(char const *)arg3);
  *(ArServerDrawingDestination **)&jresult = result; 
  if (arg3) jenv->ReleaseStringUTFChars(jarg3, arg3);
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArServerDrawingDestination_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  jlong jresult = 0 ;
  ArServerInfoDrawings *arg1 = (ArServerInfoDrawings *) 0 ;
  ArPathPlanningTask *arg2 = (ArPathPlanningTask *) 0 ;
  ArServerDrawingDestination *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerInfoDrawings **)&jarg1; 
  arg2 = *(ArPathPlanningTask **)&jarg2; 
  result = (ArServerDrawingDestination *)new ArServerDrawingDestination(arg1,arg2);
  *(ArServerDrawingDestination **)&jresult = result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_delete_1ArServerDrawingDestination(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArServerDrawingDestination *arg1 = (ArServerDrawingDestination *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerDrawingDestination **)&jarg1; 
  delete arg1;
  
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerDrawingDestination_1setFlashingParameters_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jint jarg2, jint jarg3) {
  ArServerDrawingDestination *arg1 = (ArServerDrawingDestination *) 0 ;
  int arg2 ;
  int arg3 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerDrawingDestination **)&jarg1; 
  arg2 = (int)jarg2; 
  arg3 = (int)jarg3; 
  (arg1)->setFlashingParameters(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerDrawingDestination_1setFlashingParameters_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jint jarg2) {
  ArServerDrawingDestination *arg1 = (ArServerDrawingDestination *) 0 ;
  int arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerDrawingDestination **)&jarg1; 
  arg2 = (int)jarg2; 
  (arg1)->setFlashingParameters(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerDrawingDestination_1setFlashingParameters_1_1SWIG_12(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArServerDrawingDestination *arg1 = (ArServerDrawingDestination *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerDrawingDestination **)&jarg1; 
  (arg1)->setFlashingParameters();
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerDrawingDestination_1setDrawingData(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jboolean jarg3) {
  ArServerDrawingDestination *arg1 = (ArServerDrawingDestination *) 0 ;
  ArDrawingData *arg2 = (ArDrawingData *) 0 ;
  bool arg3 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerDrawingDestination **)&jarg1; 
  arg2 = *(ArDrawingData **)&jarg2; 
  arg3 = jarg3 ? true : false; 
  (arg1)->setDrawingData(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerDrawingDestination_1drawDestination(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  ArServerDrawingDestination *arg1 = (ArServerDrawingDestination *) 0 ;
  ArServerClient *arg2 = (ArServerClient *) 0 ;
  ArNetPacket *arg3 = (ArNetPacket *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerDrawingDestination **)&jarg1; 
  arg2 = *(ArServerClient **)&jarg2; 
  arg3 = *(ArNetPacket **)&jarg3; 
  (arg1)->drawDestination(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerDrawingDestination_1addToConfig(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArServerDrawingDestination *arg1 = (ArServerDrawingDestination *) 0 ;
  ArConfig *arg2 = (ArConfig *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerDrawingDestination **)&jarg1; 
  arg2 = *(ArConfig **)&jarg2; 
  (arg1)->addToConfig(arg2);
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArActionLost_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jstring jarg4) {
  jlong jresult = 0 ;
  ArBaseLocalizationTask *arg1 = (ArBaseLocalizationTask *) 0 ;
  ArPathPlanningTask *arg2 = (ArPathPlanningTask *) 0 ;
  ArServerMode *arg3 = (ArServerMode *) 0 ;
  char *arg4 = (char *) 0 ;
  ArActionLost *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArBaseLocalizationTask **)&jarg1; 
  arg2 = *(ArPathPlanningTask **)&jarg2; 
  arg3 = *(ArServerMode **)&jarg3; 
  arg4 = 0;
  if (jarg4) {
    arg4 = (char *)jenv->GetStringUTFChars(jarg4, 0);
    if (!arg4) return 0;
  }
  result = (ArActionLost *)new ArActionLost(arg1,arg2,arg3,(char const *)arg4);
  *(ArActionLost **)&jresult = result; 
  if (arg4) jenv->ReleaseStringUTFChars(jarg4, arg4);
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArActionLost_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  jlong jresult = 0 ;
  ArBaseLocalizationTask *arg1 = (ArBaseLocalizationTask *) 0 ;
  ArPathPlanningTask *arg2 = (ArPathPlanningTask *) 0 ;
  ArServerMode *arg3 = (ArServerMode *) 0 ;
  ArActionLost *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArBaseLocalizationTask **)&jarg1; 
  arg2 = *(ArPathPlanningTask **)&jarg2; 
  arg3 = *(ArServerMode **)&jarg3; 
  result = (ArActionLost *)new ArActionLost(arg1,arg2,arg3);
  *(ArActionLost **)&jresult = result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArActionLost_1_1SWIG_12(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  jlong jresult = 0 ;
  ArBaseLocalizationTask *arg1 = (ArBaseLocalizationTask *) 0 ;
  ArPathPlanningTask *arg2 = (ArPathPlanningTask *) 0 ;
  ArActionLost *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArBaseLocalizationTask **)&jarg1; 
  arg2 = *(ArPathPlanningTask **)&jarg2; 
  result = (ArActionLost *)new ArActionLost(arg1,arg2);
  *(ArActionLost **)&jresult = result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_delete_1ArActionLost(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArActionLost *arg1 = (ArActionLost *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionLost **)&jarg1; 
  delete arg1;
  
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionLost_1fire(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  jlong jresult = 0 ;
  ArActionLost *arg1 = (ArActionLost *) 0 ;
  ArActionDesired arg2 ;
  ArActionDesired *result = 0 ;
  ArActionDesired *argp2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionLost **)&jarg1; 
  argp2 = *(ArActionDesired **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArActionDesired");
    return 0;
  }
  arg2 = *argp2; 
  result = (ArActionDesired *)(arg1)->fire(arg2);
  *(ArActionDesired **)&jresult = result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionLost_1getDesired(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArActionLost *arg1 = (ArActionLost *) 0 ;
  ArActionDesired *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionLost **)&jarg1; 
  result = (ArActionDesired *)(arg1)->getDesired();
  *(ArActionDesired **)&jresult = result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionLost_1enable(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArActionLost *arg1 = (ArActionLost *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionLost **)&jarg1; 
  (arg1)->enable();
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionLost_1disable(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArActionLost *arg1 = (ArActionLost *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionLost **)&jarg1; 
  (arg1)->disable();
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionLost_1isEnabled(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jboolean jresult = 0 ;
  ArActionLost *arg1 = (ArActionLost *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionLost **)&jarg1; 
  result = (bool)((ArActionLost const *)arg1)->isEnabled();
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionLost_1getEnableCB(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArActionLost *arg1 = (ArActionLost *) 0 ;
  ArFunctor *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionLost **)&jarg1; 
  result = (ArFunctor *)(arg1)->getEnableCB();
  *(ArFunctor **)&jresult = result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionLost_1getDisableCB(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArActionLost *arg1 = (ArActionLost *) 0 ;
  ArFunctor *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionLost **)&jarg1; 
  result = (ArFunctor *)(arg1)->getDisableCB();
  *(ArFunctor **)&jresult = result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArActionSlowDownWhenNotCertain(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArBaseLocalizationTask *arg1 = (ArBaseLocalizationTask *) 0 ;
  ArActionSlowDownWhenNotCertain *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArBaseLocalizationTask **)&jarg1; 
  result = (ArActionSlowDownWhenNotCertain *)new ArActionSlowDownWhenNotCertain(arg1);
  *(ArActionSlowDownWhenNotCertain **)&jresult = result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_delete_1ArActionSlowDownWhenNotCertain(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArActionSlowDownWhenNotCertain *arg1 = (ArActionSlowDownWhenNotCertain *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionSlowDownWhenNotCertain **)&jarg1; 
  delete arg1;
  
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionSlowDownWhenNotCertain_1fire(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  jlong jresult = 0 ;
  ArActionSlowDownWhenNotCertain *arg1 = (ArActionSlowDownWhenNotCertain *) 0 ;
  ArActionDesired arg2 ;
  ArActionDesired *result = 0 ;
  ArActionDesired *argp2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionSlowDownWhenNotCertain **)&jarg1; 
  argp2 = *(ArActionDesired **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArActionDesired");
    return 0;
  }
  arg2 = *argp2; 
  result = (ArActionDesired *)(arg1)->fire(arg2);
  *(ArActionDesired **)&jresult = result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionSlowDownWhenNotCertain_1setRobot(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArActionSlowDownWhenNotCertain *arg1 = (ArActionSlowDownWhenNotCertain *) 0 ;
  ArRobot *arg2 = (ArRobot *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionSlowDownWhenNotCertain **)&jarg1; 
  arg2 = *(ArRobot **)&jarg2; 
  (arg1)->setRobot(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionSlowDownWhenNotCertain_1deactivate(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArActionSlowDownWhenNotCertain *arg1 = (ArActionSlowDownWhenNotCertain *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionSlowDownWhenNotCertain **)&jarg1; 
  (arg1)->deactivate();
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionSlowDownWhenNotCertain_1setPower(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArActionSlowDownWhenNotCertain *arg1 = (ArActionSlowDownWhenNotCertain *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionSlowDownWhenNotCertain **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setPower(arg2);
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionSlowDownWhenNotCertain_1getPower(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  jdouble jresult = 0 ;
  ArActionSlowDownWhenNotCertain *arg1 = (ArActionSlowDownWhenNotCertain *) 0 ;
  double arg2 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionSlowDownWhenNotCertain **)&jarg1; 
  arg2 = (double)jarg2; 
  result = (double)(arg1)->getPower(arg2);
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArActionSlowDownWhenNotCertain_1getDesired(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArActionSlowDownWhenNotCertain *arg1 = (ArActionSlowDownWhenNotCertain *) 0 ;
  ArActionDesired *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArActionSlowDownWhenNotCertain **)&jarg1; 
  result = (ArActionDesired *)(arg1)->getDesired();
  *(ArActionDesired **)&jresult = result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArSimMapSwitcher(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  jlong jresult = 0 ;
  ArRobot *arg1 = (ArRobot *) 0 ;
  ArMapInterface *arg2 = (ArMapInterface *) 0 ;
  ArSimMapSwitcher *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArRobot **)&jarg1; 
  arg2 = *(ArMapInterface **)&jarg2; 
  result = (ArSimMapSwitcher *)new ArSimMapSwitcher(arg1,arg2);
  *(ArSimMapSwitcher **)&jresult = result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_delete_1ArSimMapSwitcher(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArSimMapSwitcher *arg1 = (ArSimMapSwitcher *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArSimMapSwitcher **)&jarg1; 
  delete arg1;
  
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArSimMapSwitcher_1mapChanged(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArSimMapSwitcher *arg1 = (ArSimMapSwitcher *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArSimMapSwitcher **)&jarg1; 
  (arg1)->mapChanged();
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArPoseStorage_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jstring jarg2, jint jarg3, jboolean jarg4) {
  jlong jresult = 0 ;
  ArRobot *arg1 = (ArRobot *) 0 ;
  char *arg2 = (char *) 0 ;
  int arg3 ;
  bool arg4 ;
  ArPoseStorage *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArRobot **)&jarg1; 
  arg2 = 0;
  if (jarg2) {
    arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    if (!arg2) return 0;
  }
  arg3 = (int)jarg3; 
  arg4 = jarg4 ? true : false; 
  result = (ArPoseStorage *)new ArPoseStorage(arg1,(char const *)arg2,arg3,arg4);
  *(ArPoseStorage **)&jresult = result; 
  if (arg2) jenv->ReleaseStringUTFChars(jarg2, arg2);
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArPoseStorage_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jstring jarg2, jint jarg3) {
  jlong jresult = 0 ;
  ArRobot *arg1 = (ArRobot *) 0 ;
  char *arg2 = (char *) 0 ;
  int arg3 ;
  ArPoseStorage *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArRobot **)&jarg1; 
  arg2 = 0;
  if (jarg2) {
    arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    if (!arg2) return 0;
  }
  arg3 = (int)jarg3; 
  result = (ArPoseStorage *)new ArPoseStorage(arg1,(char const *)arg2,arg3);
  *(ArPoseStorage **)&jresult = result; 
  if (arg2) jenv->ReleaseStringUTFChars(jarg2, arg2);
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArPoseStorage_1_1SWIG_12(JNIEnv *jenv, jclass jcls, jlong jarg1, jstring jarg2) {
  jlong jresult = 0 ;
  ArRobot *arg1 = (ArRobot *) 0 ;
  char *arg2 = (char *) 0 ;
  ArPoseStorage *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArRobot **)&jarg1; 
  arg2 = 0;
  if (jarg2) {
    arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    if (!arg2) return 0;
  }
  result = (ArPoseStorage *)new ArPoseStorage(arg1,(char const *)arg2);
  *(ArPoseStorage **)&jresult = result; 
  if (arg2) jenv->ReleaseStringUTFChars(jarg2, arg2);
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArPoseStorage_1_1SWIG_13(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArRobot *arg1 = (ArRobot *) 0 ;
  ArPoseStorage *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArRobot **)&jarg1; 
  result = (ArPoseStorage *)new ArPoseStorage(arg1);
  *(ArPoseStorage **)&jresult = result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_delete_1ArPoseStorage(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArPoseStorage *arg1 = (ArPoseStorage *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPoseStorage **)&jarg1; 
  delete arg1;
  
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPoseStorage_1savePose(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jboolean jresult = 0 ;
  ArPoseStorage *arg1 = (ArPoseStorage *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPoseStorage **)&jarg1; 
  result = (bool)(arg1)->savePose();
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArPoseStorage_1restorePose(JNIEnv *jenv, jclass jcls, jlong jarg1, jstring jarg2) {
  jboolean jresult = 0 ;
  ArPoseStorage *arg1 = (ArPoseStorage *) 0 ;
  char *arg2 = (char *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArPoseStorage **)&jarg1; 
  arg2 = 0;
  if (jarg2) {
    arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    if (!arg2) return 0;
  }
  result = (bool)(arg1)->restorePose((char const *)arg2);
  jresult = (jboolean)result; 
  if (arg2) jenv->ReleaseStringUTFChars(jarg2, arg2);
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArLocalizationManager(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  jlong jresult = 0 ;
  ArRobot *arg1 = (ArRobot *) 0 ;
  ArMapInterface *arg2 = (ArMapInterface *) 0 ;
  ArLocalizationManager *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArRobot **)&jarg1; 
  arg2 = *(ArMapInterface **)&jarg2; 
  result = (ArLocalizationManager *)new ArLocalizationManager(arg1,arg2);
  *(ArLocalizationManager **)&jresult = result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_delete_1ArLocalizationManager(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArLocalizationManager *arg1 = (ArLocalizationManager *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArLocalizationManager **)&jarg1; 
  delete arg1;
  
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArLocalizationManager_1fuseTwoDistributions(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jdouble jarg4, jdouble jarg5, jlong jarg6, jlong jarg7, jdouble jarg8, jdouble jarg9, jlong jarg10, jlong jarg11, jlong jarg12, jlong jarg13) {
  jboolean jresult = 0 ;
  ArLocalizationManager *arg1 = (ArLocalizationManager *) 0 ;
  ArPose arg2 ;
  ArMatrix arg3 ;
  double arg4 ;
  double arg5 ;
  ArPose arg6 ;
  ArMatrix arg7 ;
  double arg8 ;
  double arg9 ;
  ArPose *arg10 = 0 ;
  ArMatrix *arg11 = 0 ;
  double *arg12 = 0 ;
  double *arg13 = 0 ;
  bool result;
  ArPose *argp2 ;
  ArMatrix *argp3 ;
  ArPose *argp6 ;
  ArMatrix *argp7 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArLocalizationManager **)&jarg1; 
  argp2 = *(ArPose **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return 0;
  }
  arg2 = *argp2; 
  argp3 = *(ArMatrix **)&jarg3; 
  if (!argp3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArMatrix");
    return 0;
  }
  arg3 = *argp3; 
  arg4 = (double)jarg4; 
  arg5 = (double)jarg5; 
  argp6 = *(ArPose **)&jarg6; 
  if (!argp6) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return 0;
  }
  arg6 = *argp6; 
  argp7 = *(ArMatrix **)&jarg7; 
  if (!argp7) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArMatrix");
    return 0;
  }
  arg7 = *argp7; 
  arg8 = (double)jarg8; 
  arg9 = (double)jarg9; 
  arg10 = *(ArPose **)&jarg10;
  if(!arg10) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "ArPose & reference is null");
    return 0;
  } 
  arg11 = *(ArMatrix **)&jarg11;
  if(!arg11) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "ArMatrix & reference is null");
    return 0;
  } 
  arg12 = *(double **)&jarg12;
  if(!arg12) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "double & reference is null");
    return 0;
  } 
  arg13 = *(double **)&jarg13;
  if(!arg13) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "double & reference is null");
    return 0;
  } 
  result = (bool)(arg1)->fuseTwoDistributions(arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,*arg10,*arg11,*arg12,*arg13);
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArLocalizationManager_1addLocalizationTask(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  jboolean jresult = 0 ;
  ArLocalizationManager *arg1 = (ArLocalizationManager *) 0 ;
  ArBaseLocalizationTask *arg2 = (ArBaseLocalizationTask *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArLocalizationManager **)&jarg1; 
  arg2 = *(ArBaseLocalizationTask **)&jarg2; 
  result = (bool)(arg1)->addLocalizationTask(arg2);
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArLocalizationManager_1removeLocalizationTask(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  jboolean jresult = 0 ;
  ArLocalizationManager *arg1 = (ArLocalizationManager *) 0 ;
  ArBaseLocalizationTask *arg2 = (ArBaseLocalizationTask *) 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArLocalizationManager **)&jarg1; 
  arg2 = *(ArBaseLocalizationTask **)&jarg2; 
  result = (bool)(arg1)->removeLocalizationTask(arg2);
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArLocalizationManager_1findLocalizationMeanVar(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  jboolean jresult = 0 ;
  ArLocalizationManager *arg1 = (ArLocalizationManager *) 0 ;
  ArPose *arg2 = 0 ;
  ArMatrix *arg3 = 0 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArLocalizationManager **)&jarg1; 
  arg2 = *(ArPose **)&jarg2;
  if(!arg2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "ArPose & reference is null");
    return 0;
  } 
  arg3 = *(ArMatrix **)&jarg3;
  if(!arg3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "ArMatrix & reference is null");
    return 0;
  } 
  result = (bool)(arg1)->findLocalizationMeanVar(*arg2,*arg3);
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArLocalizationManager_1setCorrectRobotFlag(JNIEnv *jenv, jclass jcls, jlong jarg1, jboolean jarg2) {
  ArLocalizationManager *arg1 = (ArLocalizationManager *) 0 ;
  bool arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArLocalizationManager **)&jarg1; 
  arg2 = jarg2 ? true : false; 
  (arg1)->setCorrectRobotFlag(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArLocalizationManager_1setRobotPose_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jint jarg4) {
  ArLocalizationManager *arg1 = (ArLocalizationManager *) 0 ;
  ArPose arg2 ;
  ArPose arg3 ;
  int arg4 ;
  ArPose *argp2 ;
  ArPose *argp3 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArLocalizationManager **)&jarg1; 
  argp2 = *(ArPose **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return ;
  }
  arg2 = *argp2; 
  argp3 = *(ArPose **)&jarg3; 
  if (!argp3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return ;
  }
  arg3 = *argp3; 
  arg4 = (int)jarg4; 
  (arg1)->setRobotPose(arg2,arg3,arg4);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArLocalizationManager_1setRobotPose_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  ArLocalizationManager *arg1 = (ArLocalizationManager *) 0 ;
  ArPose arg2 ;
  ArPose arg3 ;
  ArPose *argp2 ;
  ArPose *argp3 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArLocalizationManager **)&jarg1; 
  argp2 = *(ArPose **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return ;
  }
  arg2 = *argp2; 
  argp3 = *(ArPose **)&jarg3; 
  if (!argp3) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return ;
  }
  arg3 = *argp3; 
  (arg1)->setRobotPose(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArLocalizationManager_1setRobotPose_1_1SWIG_12(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArLocalizationManager *arg1 = (ArLocalizationManager *) 0 ;
  ArPose arg2 ;
  ArPose *argp2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArLocalizationManager **)&jarg1; 
  argp2 = *(ArPose **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArPose");
    return ;
  }
  arg2 = *argp2; 
  (arg1)->setRobotPose(arg2);
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArLocalizationManager_1localizeRobotAtHomeBlocking(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2, jdouble jarg3) {
  jboolean jresult = 0 ;
  ArLocalizationManager *arg1 = (ArLocalizationManager *) 0 ;
  double arg2 ;
  double arg3 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArLocalizationManager **)&jarg1; 
  arg2 = (double)jarg2; 
  arg3 = (double)jarg3; 
  result = (bool)(arg1)->localizeRobotAtHomeBlocking(arg2,arg3);
  jresult = (jboolean)result; 
  return jresult;
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArLocalizationManager_1getLocalizationScore(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArLocalizationManager *arg1 = (ArLocalizationManager *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArLocalizationManager **)&jarg1; 
  result = (double)(arg1)->getLocalizationScore();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArLocalizationManager_1setLocalizationScore(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArLocalizationManager *arg1 = (ArLocalizationManager *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArLocalizationManager **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setLocalizationScore(arg2);
}


JNIEXPORT jdouble JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArLocalizationManager_1getLocalizationThreshold(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jdouble jresult = 0 ;
  ArLocalizationManager *arg1 = (ArLocalizationManager *) 0 ;
  double result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArLocalizationManager **)&jarg1; 
  result = (double)(arg1)->getLocalizationThreshold();
  jresult = (jdouble)result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArLocalizationManager_1setLocalizationThreshold(JNIEnv *jenv, jclass jcls, jlong jarg1, jdouble jarg2) {
  ArLocalizationManager *arg1 = (ArLocalizationManager *) 0 ;
  double arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArLocalizationManager **)&jarg1; 
  arg2 = (double)jarg2; 
  (arg1)->setLocalizationThreshold(arg2);
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArLocalizationManager_1getLightLocalizationPtr(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArLocalizationManager *arg1 = (ArLocalizationManager *) 0 ;
  ArBaseLocalizationTask *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArLocalizationManager **)&jarg1; 
  result = (ArBaseLocalizationTask *)(arg1)->getLightLocalizationPtr();
  *(ArBaseLocalizationTask **)&jresult = result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArServerHandlerMultiRobot(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jlong jarg4, jlong jarg5) {
  jlong jresult = 0 ;
  ArServerBase *arg1 = (ArServerBase *) 0 ;
  ArRobot *arg2 = (ArRobot *) 0 ;
  ArPathPlanningTask *arg3 = (ArPathPlanningTask *) 0 ;
  ArBaseLocalizationTask *arg4 = (ArBaseLocalizationTask *) 0 ;
  ArMapInterface *arg5 = (ArMapInterface *) 0 ;
  ArServerHandlerMultiRobot *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerBase **)&jarg1; 
  arg2 = *(ArRobot **)&jarg2; 
  arg3 = *(ArPathPlanningTask **)&jarg3; 
  arg4 = *(ArBaseLocalizationTask **)&jarg4; 
  arg5 = *(ArMapInterface **)&jarg5; 
  result = (ArServerHandlerMultiRobot *)new ArServerHandlerMultiRobot(arg1,arg2,arg3,arg4,arg5);
  *(ArServerHandlerMultiRobot **)&jresult = result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_delete_1ArServerHandlerMultiRobot(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArServerHandlerMultiRobot *arg1 = (ArServerHandlerMultiRobot *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerHandlerMultiRobot **)&jarg1; 
  delete arg1;
  
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerHandlerMultiRobot_1multiRobotInfo(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  ArServerHandlerMultiRobot *arg1 = (ArServerHandlerMultiRobot *) 0 ;
  ArServerClient *arg2 = (ArServerClient *) 0 ;
  ArNetPacket *arg3 = (ArNetPacket *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerHandlerMultiRobot **)&jarg1; 
  arg2 = *(ArServerClient **)&jarg2; 
  arg3 = *(ArNetPacket **)&jarg3; 
  (arg1)->multiRobotInfo(arg2,arg3);
}


JNIEXPORT jint JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerHandlerMultiRobot_1getPrecedenceClass(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jint jresult = 0 ;
  ArServerHandlerMultiRobot *arg1 = (ArServerHandlerMultiRobot *) 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerHandlerMultiRobot **)&jarg1; 
  result = (int)(arg1)->getPrecedenceClass();
  jresult = (jint)result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerHandlerMultiRobot_1setPrecedenceClass_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jint jarg2) {
  ArServerHandlerMultiRobot *arg1 = (ArServerHandlerMultiRobot *) 0 ;
  int arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerHandlerMultiRobot **)&jarg1; 
  arg2 = (int)jarg2; 
  (arg1)->setPrecedenceClass(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerHandlerMultiRobot_1setPrecedenceClass_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArServerHandlerMultiRobot *arg1 = (ArServerHandlerMultiRobot *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerHandlerMultiRobot **)&jarg1; 
  (arg1)->setPrecedenceClass();
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerHandlerMultiRobot_1overrideMapName(JNIEnv *jenv, jclass jcls, jlong jarg1, jstring jarg2) {
  ArServerHandlerMultiRobot *arg1 = (ArServerHandlerMultiRobot *) 0 ;
  char *arg2 = (char *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerHandlerMultiRobot **)&jarg1; 
  arg2 = 0;
  if (jarg2) {
    arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    if (!arg2) return ;
  }
  (arg1)->overrideMapName((char const *)arg2);
  if (arg2) jenv->ReleaseStringUTFChars(jarg2, arg2);
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerHandlerMultiRobot_1processFile(JNIEnv *jenv, jclass jcls, jlong jarg1, jstring jarg2, jlong jarg3) {
  jboolean jresult = 0 ;
  ArServerHandlerMultiRobot *arg1 = (ArServerHandlerMultiRobot *) 0 ;
  char *arg2 = (char *) 0 ;
  size_t arg3 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerHandlerMultiRobot **)&jarg1; 
  arg2 = 0;
  if (jarg2) {
    arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    if (!arg2) return 0;
  }
  arg3 = (size_t)jarg3; 
  result = (bool)(arg1)->processFile(arg2,arg3);
  jresult = (jboolean)result; 
  if (arg2) jenv->ReleaseStringUTFChars(jarg2, arg2);
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArMultiRobotRangeDevice(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArServerBase *arg1 = (ArServerBase *) 0 ;
  ArMultiRobotRangeDevice *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerBase **)&jarg1; 
  result = (ArMultiRobotRangeDevice *)new ArMultiRobotRangeDevice(arg1);
  *(ArMultiRobotRangeDevice **)&jresult = result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_delete_1ArMultiRobotRangeDevice(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArMultiRobotRangeDevice *arg1 = (ArMultiRobotRangeDevice *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArMultiRobotRangeDevice **)&jarg1; 
  delete arg1;
  
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArMultiRobotRangeDevice_1applyTransform(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jboolean jarg3) {
  ArMultiRobotRangeDevice *arg1 = (ArMultiRobotRangeDevice *) 0 ;
  ArTransform arg2 ;
  bool arg3 ;
  ArTransform *argp2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArMultiRobotRangeDevice **)&jarg1; 
  argp2 = *(ArTransform **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArTransform");
    return ;
  }
  arg2 = *argp2; 
  arg3 = jarg3 ? true : false; 
  (arg1)->applyTransform(arg2,arg3);
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArMultiRobotRangeDevice_1getOtherRobots(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArMultiRobotRangeDevice *arg1 = (ArMultiRobotRangeDevice *) 0 ;
  SwigValueWrapper<std::list<ArMultiRobotPoseAndRadius > > result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArMultiRobotRangeDevice **)&jarg1; 
  result = (arg1)->getOtherRobots();
  *(std::list<ArMultiRobotPoseAndRadius > **)&jresult = new std::list<ArMultiRobotPoseAndRadius >((std::list<ArMultiRobotPoseAndRadius > &)result); 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArMultiRobotRangeDevice_1getOtherRobotsCB(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArMultiRobotRangeDevice *arg1 = (ArMultiRobotRangeDevice *) 0 ;
  ArRetFunctor<std::list<ArMultiRobotPoseAndRadius > > *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArMultiRobotRangeDevice **)&jarg1; 
  result = (ArRetFunctor<std::list<ArMultiRobotPoseAndRadius > > *)(arg1)->getOtherRobotsCB();
  *(ArRetFunctor<std::list<ArMultiRobotPoseAndRadius > > **)&jresult = result; 
  return jresult;
}


JNIEXPORT jint JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArMultiRobotFlags1_1WAITING_1TO_1FAIL_1get(JNIEnv *jenv, jclass jcls) {
  jint jresult = 0 ;
  ArMultiRobotFlags1::Flags result;
  
  (void)jenv;
  (void)jcls;
  result = (ArMultiRobotFlags1::Flags)ArMultiRobotFlags1::WAITING_TO_FAIL;
  jresult = (jint)result; 
  return jresult;
}


JNIEXPORT jint JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArMultiRobotFlags1_1END_1OF_1PATH_1get(JNIEnv *jenv, jclass jcls) {
  jint jresult = 0 ;
  ArMultiRobotFlags1::Flags result;
  
  (void)jenv;
  (void)jcls;
  result = (ArMultiRobotFlags1::Flags)ArMultiRobotFlags1::END_OF_PATH;
  jresult = (jint)result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArMultiRobotFlags1(JNIEnv *jenv, jclass jcls) {
  jlong jresult = 0 ;
  ArMultiRobotFlags1 *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  result = (ArMultiRobotFlags1 *)new ArMultiRobotFlags1();
  *(ArMultiRobotFlags1 **)&jresult = result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_delete_1ArMultiRobotFlags1(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArMultiRobotFlags1 *arg1 = (ArMultiRobotFlags1 *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArMultiRobotFlags1 **)&jarg1; 
  delete arg1;
  
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArServerHandlerMultiRobotPeer(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jlong jarg4) {
  jlong jresult = 0 ;
  ArServerBase *arg1 = (ArServerBase *) 0 ;
  ArRobot *arg2 = (ArRobot *) 0 ;
  ArPathPlanningTask *arg3 = (ArPathPlanningTask *) 0 ;
  ArBaseLocalizationTask *arg4 = (ArBaseLocalizationTask *) 0 ;
  ArServerHandlerMultiRobotPeer *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerBase **)&jarg1; 
  arg2 = *(ArRobot **)&jarg2; 
  arg3 = *(ArPathPlanningTask **)&jarg3; 
  arg4 = *(ArBaseLocalizationTask **)&jarg4; 
  result = (ArServerHandlerMultiRobotPeer *)new ArServerHandlerMultiRobotPeer(arg1,arg2,arg3,arg4);
  *(ArServerHandlerMultiRobotPeer **)&jresult = result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_delete_1ArServerHandlerMultiRobotPeer(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArServerHandlerMultiRobotPeer *arg1 = (ArServerHandlerMultiRobotPeer *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerHandlerMultiRobotPeer **)&jarg1; 
  delete arg1;
  
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerHandlerMultiRobotPeer_1setPrecedenceClass(JNIEnv *jenv, jclass jcls, jlong jarg1, jint jarg2) {
  ArServerHandlerMultiRobotPeer *arg1 = (ArServerHandlerMultiRobotPeer *) 0 ;
  int arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerHandlerMultiRobotPeer **)&jarg1; 
  arg2 = (int)jarg2; 
  (arg1)->setPrecedenceClass(arg2);
}


JNIEXPORT jint JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerHandlerMultiRobotPeer_1getPrecedenceClass(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jint jresult = 0 ;
  ArServerHandlerMultiRobotPeer *arg1 = (ArServerHandlerMultiRobotPeer *) 0 ;
  int result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerHandlerMultiRobotPeer **)&jarg1; 
  result = (int)(arg1)->getPrecedenceClass();
  jresult = (jint)result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerHandlerMultiRobotPeer_1setNewPrecedenceCallback(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArServerHandlerMultiRobotPeer *arg1 = (ArServerHandlerMultiRobotPeer *) 0 ;
  ArFunctor2<short,short > *arg2 = (ArFunctor2<short,short > *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerHandlerMultiRobotPeer **)&jarg1; 
  arg2 = *(ArFunctor2<short,short > **)&jarg2; 
  (arg1)->setNewPrecedenceCallback(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerHandlerMultiRobotPeer_1setNewFingerprintCallback(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArServerHandlerMultiRobotPeer *arg1 = (ArServerHandlerMultiRobotPeer *) 0 ;
  ArFunctor1<unsigned char * > *arg2 = (ArFunctor1<unsigned char * > *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerHandlerMultiRobotPeer **)&jarg1; 
  arg2 = *(ArFunctor1<unsigned char * > **)&jarg2; 
  (arg1)->setNewFingerprintCallback(arg2);
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerHandlerMultiRobotPeer_1getChangeFingerprintCB(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArServerHandlerMultiRobotPeer *arg1 = (ArServerHandlerMultiRobotPeer *) 0 ;
  ArFunctor *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerHandlerMultiRobotPeer **)&jarg1; 
  result = (ArFunctor *)(arg1)->getChangeFingerprintCB();
  *(ArFunctor **)&jresult = result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerHandlerMultiRobotPeer_1changeFingerprint_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jboolean jarg2) {
  ArServerHandlerMultiRobotPeer *arg1 = (ArServerHandlerMultiRobotPeer *) 0 ;
  bool arg2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerHandlerMultiRobotPeer **)&jarg1; 
  arg2 = jarg2 ? true : false; 
  (arg1)->changeFingerprint(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerHandlerMultiRobotPeer_1changeFingerprint_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArServerHandlerMultiRobotPeer *arg1 = (ArServerHandlerMultiRobotPeer *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerHandlerMultiRobotPeer **)&jarg1; 
  (arg1)->changeFingerprint();
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerHandlerMultiRobotPeer_1netGetFingerprint(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  ArServerHandlerMultiRobotPeer *arg1 = (ArServerHandlerMultiRobotPeer *) 0 ;
  ArServerClient *arg2 = (ArServerClient *) 0 ;
  ArNetPacket *arg3 = (ArNetPacket *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerHandlerMultiRobotPeer **)&jarg1; 
  arg2 = *(ArServerClient **)&jarg2; 
  arg3 = *(ArNetPacket **)&jarg3; 
  (arg1)->netGetFingerprint(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerHandlerMultiRobotPeer_1netAdjustPrecedence(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  ArServerHandlerMultiRobotPeer *arg1 = (ArServerHandlerMultiRobotPeer *) 0 ;
  ArServerClient *arg2 = (ArServerClient *) 0 ;
  ArNetPacket *arg3 = (ArNetPacket *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerHandlerMultiRobotPeer **)&jarg1; 
  arg2 = *(ArServerClient **)&jarg2; 
  arg3 = *(ArNetPacket **)&jarg3; 
  (arg1)->netAdjustPrecedence(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerHandlerMultiRobotPeer_1netRobotInfo(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  ArServerHandlerMultiRobotPeer *arg1 = (ArServerHandlerMultiRobotPeer *) 0 ;
  ArServerClient *arg2 = (ArServerClient *) 0 ;
  ArNetPacket *arg3 = (ArNetPacket *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerHandlerMultiRobotPeer **)&jarg1; 
  arg2 = *(ArServerClient **)&jarg2; 
  arg3 = *(ArNetPacket **)&jarg3; 
  (arg1)->netRobotInfo(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerHandlerMultiRobotPeer_1netPathInfo(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  ArServerHandlerMultiRobotPeer *arg1 = (ArServerHandlerMultiRobotPeer *) 0 ;
  ArServerClient *arg2 = (ArServerClient *) 0 ;
  ArNetPacket *arg3 = (ArNetPacket *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerHandlerMultiRobotPeer **)&jarg1; 
  arg2 = *(ArServerClient **)&jarg2; 
  arg3 = *(ArNetPacket **)&jarg3; 
  (arg1)->netPathInfo(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerHandlerMultiRobotPeer_1netShortPathInfo(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) {
  ArServerHandlerMultiRobotPeer *arg1 = (ArServerHandlerMultiRobotPeer *) 0 ;
  ArServerClient *arg2 = (ArServerClient *) 0 ;
  ArNetPacket *arg3 = (ArNetPacket *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerHandlerMultiRobotPeer **)&jarg1; 
  arg2 = *(ArServerClient **)&jarg2; 
  arg3 = *(ArNetPacket **)&jarg3; 
  (arg1)->netShortPathInfo(arg2,arg3);
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArServerHandlerMultiRobotPeer_1processFile(JNIEnv *jenv, jclass jcls, jlong jarg1, jstring jarg2, jlong jarg3) {
  jboolean jresult = 0 ;
  ArServerHandlerMultiRobotPeer *arg1 = (ArServerHandlerMultiRobotPeer *) 0 ;
  char *arg2 = (char *) 0 ;
  size_t arg3 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArServerHandlerMultiRobotPeer **)&jarg1; 
  arg2 = 0;
  if (jarg2) {
    arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    if (!arg2) return 0;
  }
  arg3 = (size_t)jarg3; 
  result = (bool)(arg1)->processFile(arg2,arg3);
  jresult = (jboolean)result; 
  if (arg2) jenv->ReleaseStringUTFChars(jarg2, arg2);
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_new_1ArMultiRobotPeerRangeDevice(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArMapInterface *arg1 = (ArMapInterface *) 0 ;
  ArMultiRobotPeerRangeDevice *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArMapInterface **)&jarg1; 
  result = (ArMultiRobotPeerRangeDevice *)new ArMultiRobotPeerRangeDevice(arg1);
  *(ArMultiRobotPeerRangeDevice **)&jresult = result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_delete_1ArMultiRobotPeerRangeDevice(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArMultiRobotPeerRangeDevice *arg1 = (ArMultiRobotPeerRangeDevice *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArMultiRobotPeerRangeDevice **)&jarg1; 
  delete arg1;
  
}


JNIEXPORT jboolean JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArMultiRobotPeerRangeDevice_1processFile(JNIEnv *jenv, jclass jcls, jlong jarg1, jstring jarg2, jlong jarg3) {
  jboolean jresult = 0 ;
  ArMultiRobotPeerRangeDevice *arg1 = (ArMultiRobotPeerRangeDevice *) 0 ;
  char *arg2 = (char *) 0 ;
  size_t arg3 ;
  bool result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArMultiRobotPeerRangeDevice **)&jarg1; 
  arg2 = 0;
  if (jarg2) {
    arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    if (!arg2) return 0;
  }
  arg3 = (size_t)jarg3; 
  result = (bool)(arg1)->processFile(arg2,arg3);
  jresult = (jboolean)result; 
  if (arg2) jenv->ReleaseStringUTFChars(jarg2, arg2);
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArMultiRobotPeerRangeDevice_1sensorInterpCallback(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArMultiRobotPeerRangeDevice *arg1 = (ArMultiRobotPeerRangeDevice *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArMultiRobotPeerRangeDevice **)&jarg1; 
  (arg1)->sensorInterpCallback();
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArMultiRobotPeerRangeDevice_1setPrecedence(JNIEnv *jenv, jclass jcls, jlong jarg1, jshort jarg2, jshort jarg3) {
  ArMultiRobotPeerRangeDevice *arg1 = (ArMultiRobotPeerRangeDevice *) 0 ;
  short arg2 ;
  short arg3 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArMultiRobotPeerRangeDevice **)&jarg1; 
  arg2 = (short)jarg2; 
  arg3 = (short)jarg3; 
  (arg1)->setPrecedence(arg2,arg3);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArMultiRobotPeerRangeDevice_1setFingerprint(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArMultiRobotPeerRangeDevice *arg1 = (ArMultiRobotPeerRangeDevice *) 0 ;
  unsigned char *arg2 = (unsigned char *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArMultiRobotPeerRangeDevice **)&jarg1; 
  arg2 = *(unsigned char **)&jarg2; 
  (arg1)->setFingerprint(arg2);
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArMultiRobotPeerRangeDevice_1getSetPrecedenceCallback(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArMultiRobotPeerRangeDevice *arg1 = (ArMultiRobotPeerRangeDevice *) 0 ;
  ArFunctor2<short,short > *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArMultiRobotPeerRangeDevice **)&jarg1; 
  result = (ArFunctor2<short,short > *)(arg1)->getSetPrecedenceCallback();
  *(ArFunctor2<short,short > **)&jresult = result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArMultiRobotPeerRangeDevice_1getSetFingerprintCallback(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArMultiRobotPeerRangeDevice *arg1 = (ArMultiRobotPeerRangeDevice *) 0 ;
  ArFunctor1<unsigned char * > *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArMultiRobotPeerRangeDevice **)&jarg1; 
  result = (ArFunctor1<unsigned char * > *)(arg1)->getSetFingerprintCallback();
  *(ArFunctor1<unsigned char * > **)&jresult = result; 
  return jresult;
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArMultiRobotPeerRangeDevice_1setChangeFingerprintCB(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArMultiRobotPeerRangeDevice *arg1 = (ArMultiRobotPeerRangeDevice *) 0 ;
  ArFunctor *arg2 = (ArFunctor *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArMultiRobotPeerRangeDevice **)&jarg1; 
  arg2 = *(ArFunctor **)&jarg2; 
  (arg1)->setChangeFingerprintCB(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArMultiRobotPeerRangeDevice_1mapChanged(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  ArMultiRobotPeerRangeDevice *arg1 = (ArMultiRobotPeerRangeDevice *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArMultiRobotPeerRangeDevice **)&jarg1; 
  (arg1)->mapChanged();
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArMultiRobotPeerRangeDevice_1setRobot(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) {
  ArMultiRobotPeerRangeDevice *arg1 = (ArMultiRobotPeerRangeDevice *) 0 ;
  ArRobot *arg2 = (ArRobot *) 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArMultiRobotPeerRangeDevice **)&jarg1; 
  arg2 = *(ArRobot **)&jarg2; 
  (arg1)->setRobot(arg2);
}


JNIEXPORT void JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArMultiRobotPeerRangeDevice_1applyTransform(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jboolean jarg3) {
  ArMultiRobotPeerRangeDevice *arg1 = (ArMultiRobotPeerRangeDevice *) 0 ;
  ArTransform arg2 ;
  bool arg3 ;
  ArTransform *argp2 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArMultiRobotPeerRangeDevice **)&jarg1; 
  argp2 = *(ArTransform **)&jarg2; 
  if (!argp2) {
    SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null ArTransform");
    return ;
  }
  arg2 = *argp2; 
  arg3 = jarg3 ? true : false; 
  (arg1)->applyTransform(arg2,arg3);
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArMultiRobotPeerRangeDevice_1getOtherRobots(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArMultiRobotPeerRangeDevice *arg1 = (ArMultiRobotPeerRangeDevice *) 0 ;
  SwigValueWrapper<std::list<ArMultiRobotPoseAndRadius > > result;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArMultiRobotPeerRangeDevice **)&jarg1; 
  result = (arg1)->getOtherRobots();
  *(std::list<ArMultiRobotPoseAndRadius > **)&jresult = new std::list<ArMultiRobotPoseAndRadius >((std::list<ArMultiRobotPoseAndRadius > &)result); 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_ArMultiRobotPeerRangeDevice_1getOtherRobotsCB(JNIEnv *jenv, jclass jcls, jlong jarg1) {
  jlong jresult = 0 ;
  ArMultiRobotPeerRangeDevice *arg1 = (ArMultiRobotPeerRangeDevice *) 0 ;
  ArRetFunctor<std::list<ArMultiRobotPoseAndRadius > > *result = 0 ;
  
  (void)jenv;
  (void)jcls;
  arg1 = *(ArMultiRobotPeerRangeDevice **)&jarg1; 
  result = (ArRetFunctor<std::list<ArMultiRobotPoseAndRadius > > *)(arg1)->getOtherRobotsCB();
  *(ArRetFunctor<std::list<ArMultiRobotPoseAndRadius > > **)&jresult = result; 
  return jresult;
}


JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_SWIGArBaseLocalizationTaskUpcast(JNIEnv *jenv, jclass jcls, jlong jarg1) {
    jlong baseptr = 0;
    (void)jenv;
    (void)jcls;
    *(ArASyncTask **)&baseptr = *(ArBaseLocalizationTask **)&jarg1;
    return baseptr;
}

JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_SWIGArPathPlanningTaskUpcast(JNIEnv *jenv, jclass jcls, jlong jarg1) {
    jlong baseptr = 0;
    (void)jenv;
    (void)jcls;
    *(ArASyncTask **)&baseptr = *(ArPathPlanningTask **)&jarg1;
    return baseptr;
}

JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_SWIGArActionPlanAndMoveToGoalUpcast(JNIEnv *jenv, jclass jcls, jlong jarg1) {
    jlong baseptr = 0;
    (void)jenv;
    (void)jcls;
    *(ArAction **)&baseptr = *(ArActionPlanAndMoveToGoal **)&jarg1;
    return baseptr;
}

JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_SWIGArGlobalReplanningRangeDeviceUpcast(JNIEnv *jenv, jclass jcls, jlong jarg1) {
    jlong baseptr = 0;
    (void)jenv;
    (void)jcls;
    *(ArRangeDevice **)&baseptr = *(ArGlobalReplanningRangeDevice **)&jarg1;
    return baseptr;
}

JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_SWIGArServerModeGotoLLAUpcast(JNIEnv *jenv, jclass jcls, jlong jarg1) {
    jlong baseptr = 0;
    (void)jenv;
    (void)jcls;
    *(ArServerMode **)&baseptr = *(ArServerModeGotoLLA **)&jarg1;
    return baseptr;
}

JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_SWIGArServerModeGotoUpcast(JNIEnv *jenv, jclass jcls, jlong jarg1) {
    jlong baseptr = 0;
    (void)jenv;
    (void)jcls;
    *(ArServerMode **)&baseptr = *(ArServerModeGoto **)&jarg1;
    return baseptr;
}

JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_SWIGArActionLostUpcast(JNIEnv *jenv, jclass jcls, jlong jarg1) {
    jlong baseptr = 0;
    (void)jenv;
    (void)jcls;
    *(ArAction **)&baseptr = *(ArActionLost **)&jarg1;
    return baseptr;
}

JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_SWIGArActionSlowDownWhenNotCertainUpcast(JNIEnv *jenv, jclass jcls, jlong jarg1) {
    jlong baseptr = 0;
    (void)jenv;
    (void)jcls;
    *(ArAction **)&baseptr = *(ArActionSlowDownWhenNotCertain **)&jarg1;
    return baseptr;
}

JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_SWIGArLocalizationManagerUpcast(JNIEnv *jenv, jclass jcls, jlong jarg1) {
    jlong baseptr = 0;
    (void)jenv;
    (void)jcls;
    *(ArBaseLocalizationTask **)&baseptr = *(ArLocalizationManager **)&jarg1;
    return baseptr;
}

JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_SWIGArMultiRobotRangeDeviceUpcast(JNIEnv *jenv, jclass jcls, jlong jarg1) {
    jlong baseptr = 0;
    (void)jenv;
    (void)jcls;
    *(ArRangeDevice **)&baseptr = *(ArMultiRobotRangeDevice **)&jarg1;
    return baseptr;
}

JNIEXPORT jlong JNICALL Java_com_mobilerobots_BaseArnl_BaseArnlJavaJNI_SWIGArMultiRobotPeerRangeDeviceUpcast(JNIEnv *jenv, jclass jcls, jlong jarg1) {
    jlong baseptr = 0;
    (void)jenv;
    (void)jcls;
    *(ArRangeDevice **)&baseptr = *(ArMultiRobotPeerRangeDevice **)&jarg1;
    return baseptr;
}

#ifdef __cplusplus
}
#endif

