LCOV - code coverage report
Current view: top level - build-coverage/swig/java/org/gdal/gnm - gnm_wrap.cpp (source / functions) Hit Total Coverage
Test: gdal_filtered.info Lines: 0 1185 0.0 %
Date: 2025-01-18 12:42:00 Functions: 0 137 0.0 %

          Line data    Source code
       1             : /* ----------------------------------------------------------------------------
       2             :  * This file was automatically generated by SWIG (http://www.swig.org).
       3             :  * Version 4.0.1
       4             :  *
       5             :  * This file is not intended to be easily readable and contains a number of
       6             :  * coding conventions designed to improve portability and efficiency. Do not make
       7             :  * changes to this file unless you know what you are doing--modify the SWIG
       8             :  * interface file instead.
       9             :  * ----------------------------------------------------------------------------- */
      10             : 
      11             : 
      12             : #ifndef SWIGJAVA
      13             : #define SWIGJAVA
      14             : #endif
      15             : 
      16             : 
      17             : 
      18             : #ifdef __cplusplus
      19             : /* SwigValueWrapper is described in swig.swg */
      20             : template<typename T> class SwigValueWrapper {
      21             :   struct SwigMovePointer {
      22             :     T *ptr;
      23             :     SwigMovePointer(T *p) : ptr(p) { }
      24             :     ~SwigMovePointer() { delete ptr; }
      25             :     SwigMovePointer& operator=(SwigMovePointer& rhs) { T* oldptr = ptr; ptr = 0; delete oldptr; ptr = rhs.ptr; rhs.ptr = 0; return *this; }
      26             :   } pointer;
      27             :   SwigValueWrapper& operator=(const SwigValueWrapper<T>& rhs);
      28             :   SwigValueWrapper(const SwigValueWrapper<T>& rhs);
      29             : public:
      30             :   SwigValueWrapper() : pointer(0) { }
      31             :   SwigValueWrapper& operator=(const T& t) { SwigMovePointer tmp(new T(t)); pointer = tmp; return *this; }
      32             :   operator T&() const { return *pointer.ptr; }
      33             :   T *operator&() { return pointer.ptr; }
      34             : };
      35             : 
      36             : template <typename T> T SwigValueInit() {
      37             :   return T();
      38             : }
      39             : #endif
      40             : 
      41             : /* -----------------------------------------------------------------------------
      42             :  *  This section contains generic SWIG labels for method/variable
      43             :  *  declarations/attributes, and other compiler dependent labels.
      44             :  * ----------------------------------------------------------------------------- */
      45             : 
      46             : /* template workaround for compilers that cannot correctly implement the C++ standard */
      47             : #ifndef SWIGTEMPLATEDISAMBIGUATOR
      48             : # if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
      49             : #  define SWIGTEMPLATEDISAMBIGUATOR template
      50             : # elif defined(__HP_aCC)
      51             : /* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */
      52             : /* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */
      53             : #  define SWIGTEMPLATEDISAMBIGUATOR template
      54             : # else
      55             : #  define SWIGTEMPLATEDISAMBIGUATOR
      56             : # endif
      57             : #endif
      58             : 
      59             : /* inline attribute */
      60             : #ifndef SWIGINLINE
      61             : # if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
      62             : #   define SWIGINLINE inline
      63             : # else
      64             : #   define SWIGINLINE
      65             : # endif
      66             : #endif
      67             : 
      68             : /* attribute recognised by some compilers to avoid 'unused' warnings */
      69             : #ifndef SWIGUNUSED
      70             : # if defined(__GNUC__)
      71             : #   if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
      72             : #     define SWIGUNUSED __attribute__ ((__unused__))
      73             : #   else
      74             : #     define SWIGUNUSED
      75             : #   endif
      76             : # elif defined(__ICC)
      77             : #   define SWIGUNUSED __attribute__ ((__unused__))
      78             : # else
      79             : #   define SWIGUNUSED
      80             : # endif
      81             : #endif
      82             : 
      83             : #ifndef SWIG_MSC_UNSUPPRESS_4505
      84             : # if defined(_MSC_VER)
      85             : #   pragma warning(disable : 4505) /* unreferenced local function has been removed */
      86             : # endif
      87             : #endif
      88             : 
      89             : #ifndef SWIGUNUSEDPARM
      90             : # ifdef __cplusplus
      91             : #   define SWIGUNUSEDPARM(p)
      92             : # else
      93             : #   define SWIGUNUSEDPARM(p) p SWIGUNUSED
      94             : # endif
      95             : #endif
      96             : 
      97             : /* internal SWIG method */
      98             : #ifndef SWIGINTERN
      99             : # define SWIGINTERN static SWIGUNUSED
     100             : #endif
     101             : 
     102             : /* internal inline SWIG method */
     103             : #ifndef SWIGINTERNINLINE
     104             : # define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
     105             : #endif
     106             : 
     107             : /* exporting methods */
     108             : #if defined(__GNUC__)
     109             : #  if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
     110             : #    ifndef GCC_HASCLASSVISIBILITY
     111             : #      define GCC_HASCLASSVISIBILITY
     112             : #    endif
     113             : #  endif
     114             : #endif
     115             : 
     116             : #ifndef SWIGEXPORT
     117             : # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
     118             : #   if defined(STATIC_LINKED)
     119             : #     define SWIGEXPORT
     120             : #   else
     121             : #     define SWIGEXPORT __declspec(dllexport)
     122             : #   endif
     123             : # else
     124             : #   if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
     125             : #     define SWIGEXPORT __attribute__ ((visibility("default")))
     126             : #   else
     127             : #     define SWIGEXPORT
     128             : #   endif
     129             : # endif
     130             : #endif
     131             : 
     132             : /* calling conventions for Windows */
     133             : #ifndef SWIGSTDCALL
     134             : # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
     135             : #   define SWIGSTDCALL __stdcall
     136             : # else
     137             : #   define SWIGSTDCALL
     138             : # endif
     139             : #endif
     140             : 
     141             : /* Deal with Microsoft's attempt at deprecating C standard runtime functions */
     142             : #if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
     143             : # define _CRT_SECURE_NO_DEPRECATE
     144             : #endif
     145             : 
     146             : /* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */
     147             : #if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE)
     148             : # define _SCL_SECURE_NO_DEPRECATE
     149             : #endif
     150             : 
     151             : /* Deal with Apple's deprecated 'AssertMacros.h' from Carbon-framework */
     152             : #if defined(__APPLE__) && !defined(__ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES)
     153             : # define __ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES 0
     154             : #endif
     155             : 
     156             : /* Intel's compiler complains if a variable which was never initialised is
     157             :  * cast to void, which is a common idiom which we use to indicate that we
     158             :  * are aware a variable isn't used.  So we just silence that warning.
     159             :  * See: https://github.com/swig/swig/issues/192 for more discussion.
     160             :  */
     161             : #ifdef __INTEL_COMPILER
     162             : # pragma warning disable 592
     163             : #endif
     164             : 
     165             : 
     166             : /* Fix for jlong on some versions of gcc on Windows */
     167             : #if defined(__GNUC__) && !defined(__INTEL_COMPILER)
     168             :   typedef long long __int64;
     169             : #endif
     170             : 
     171             : /* Fix for jlong on 64-bit x86 Solaris */
     172             : #if defined(__x86_64)
     173             : # ifdef _LP64
     174             : #   undef _LP64
     175             : # endif
     176             : #endif
     177             : 
     178             : #include <jni.h>
     179             : #include <stdlib.h>
     180             : #include <string.h>
     181             : 
     182             : 
     183             : /* Support for throwing Java exceptions */
     184             : typedef enum {
     185             :   SWIG_JavaOutOfMemoryError = 1,
     186             :   SWIG_JavaIOException,
     187             :   SWIG_JavaRuntimeException,
     188             :   SWIG_JavaIndexOutOfBoundsException,
     189             :   SWIG_JavaArithmeticException,
     190             :   SWIG_JavaIllegalArgumentException,
     191             :   SWIG_JavaNullPointerException,
     192             :   SWIG_JavaDirectorPureVirtual,
     193             :   SWIG_JavaUnknownError,
     194             :   SWIG_JavaIllegalStateException,
     195             : } SWIG_JavaExceptionCodes;
     196             : 
     197             : typedef struct {
     198             :   SWIG_JavaExceptionCodes code;
     199             :   const char *java_exception;
     200             : } SWIG_JavaExceptions_t;
     201             : 
     202             : 
     203           0 : static void SWIGUNUSED SWIG_JavaThrowException(JNIEnv *jenv, SWIG_JavaExceptionCodes code, const char *msg) {
     204             :   jclass excep;
     205             :   static const SWIG_JavaExceptions_t java_exceptions[] = {
     206             :     { SWIG_JavaOutOfMemoryError, "java/lang/OutOfMemoryError" },
     207             :     { SWIG_JavaIOException, "java/io/IOException" },
     208             :     { SWIG_JavaRuntimeException, "java/lang/RuntimeException" },
     209             :     { SWIG_JavaIndexOutOfBoundsException, "java/lang/IndexOutOfBoundsException" },
     210             :     { SWIG_JavaArithmeticException, "java/lang/ArithmeticException" },
     211             :     { SWIG_JavaIllegalArgumentException, "java/lang/IllegalArgumentException" },
     212             :     { SWIG_JavaNullPointerException, "java/lang/NullPointerException" },
     213             :     { SWIG_JavaDirectorPureVirtual, "java/lang/RuntimeException" },
     214             :     { SWIG_JavaUnknownError,  "java/lang/UnknownError" },
     215             :     { SWIG_JavaIllegalStateException, "java/lang/IllegalStateException" },
     216             :     { (SWIG_JavaExceptionCodes)0,  "java/lang/UnknownError" }
     217             :   };
     218           0 :   const SWIG_JavaExceptions_t *except_ptr = java_exceptions;
     219             : 
     220           0 :   while (except_ptr->code != code && except_ptr->code)
     221           0 :     except_ptr++;
     222             : 
     223           0 :   jenv->ExceptionClear();
     224           0 :   excep = jenv->FindClass(except_ptr->java_exception);
     225           0 :   if (excep)
     226           0 :     jenv->ThrowNew(excep, msg);
     227           0 : }
     228             : 
     229             : 
     230             : /* Contract support */
     231             : 
     232             : #define SWIG_contract_assert(nullreturn, expr, msg) if (!(expr)) {SWIG_JavaThrowException(jenv, SWIG_JavaIllegalArgumentException, msg); return nullreturn; } else
     233             : 
     234             : /*  Errors in SWIG */
     235             : #define  SWIG_UnknownError         -1
     236             : #define  SWIG_IOError            -2
     237             : #define  SWIG_RuntimeError       -3
     238             : #define  SWIG_IndexError         -4
     239             : #define  SWIG_TypeError          -5
     240             : #define  SWIG_DivisionByZero     -6
     241             : #define  SWIG_OverflowError      -7
     242             : #define  SWIG_SyntaxError        -8
     243             : #define  SWIG_ValueError         -9
     244             : #define  SWIG_SystemError        -10
     245             : #define  SWIG_AttributeError     -11
     246             : #define  SWIG_MemoryError        -12
     247             : #define  SWIG_NullReferenceError   -13
     248             : 
     249             : 
     250             : 
     251             : 
     252           0 : SWIGINTERN void SWIG_JavaException(JNIEnv *jenv, int code, const char *msg) {
     253           0 :   SWIG_JavaExceptionCodes exception_code = SWIG_JavaUnknownError;
     254           0 :   switch(code) {
     255           0 :   case SWIG_MemoryError:
     256           0 :     exception_code = SWIG_JavaOutOfMemoryError;
     257           0 :     break;
     258           0 :   case SWIG_IOError:
     259           0 :     exception_code = SWIG_JavaIOException;
     260           0 :     break;
     261           0 :   case SWIG_SystemError:
     262             :   case SWIG_RuntimeError:
     263           0 :     exception_code = SWIG_JavaRuntimeException;
     264           0 :     break;
     265           0 :   case SWIG_OverflowError:
     266             :   case SWIG_IndexError:
     267           0 :     exception_code = SWIG_JavaIndexOutOfBoundsException;
     268           0 :     break;
     269           0 :   case SWIG_DivisionByZero:
     270           0 :     exception_code = SWIG_JavaArithmeticException;
     271           0 :     break;
     272           0 :   case SWIG_SyntaxError:
     273             :   case SWIG_ValueError:
     274             :   case SWIG_TypeError:
     275           0 :     exception_code = SWIG_JavaIllegalArgumentException;
     276           0 :     break;
     277           0 :   case SWIG_UnknownError:
     278             :   default:
     279           0 :     exception_code = SWIG_JavaUnknownError;
     280           0 :     break;
     281             :   }
     282           0 :   SWIG_JavaThrowException(jenv, exception_code, msg);
     283           0 : }
     284             : 
     285             : 
     286             : #include <typeinfo>
     287             : #include <stdexcept>
     288             : 
     289             : 
     290             : #include <iostream>
     291             : using namespace std;
     292             : 
     293             : #define CPL_SUPRESS_CPLUSPLUS
     294             : 
     295             : #include "gdal.h"
     296             : #include "ogr_api.h"
     297             : #include "ogr_core.h"
     298             : #include "cpl_port.h"
     299             : #include "cpl_string.h"
     300             : #include "ogr_srs_api.h"
     301             : #include "gnm_api.h"
     302             : 
     303             : typedef void GDALMajorObjectShadow;
     304             : typedef void GNMNetworkShadow;
     305             : typedef void GNMGenericNetworkShadow;
     306             : 
     307             : #ifdef DEBUG
     308             : typedef struct OGRSpatialReferenceHS OSRSpatialReferenceShadow;
     309             : typedef struct OGRDriverHS OGRDriverShadow;
     310             : typedef struct OGRDataSourceHS OGRDataSourceShadow;
     311             : typedef struct OGRLayerHS OGRLayerShadow;
     312             : typedef struct OGRFeatureHS OGRFeatureShadow;
     313             : typedef struct OGRFeatureDefnHS OGRFeatureDefnShadow;
     314             : typedef struct OGRGeometryHS OGRGeometryShadow;
     315             : typedef struct OGRCoordinateTransformationHS OSRCoordinateTransformationShadow;
     316             : typedef struct OGRCoordinateTransformationHS OGRCoordinateTransformationShadow;
     317             : typedef struct OGRFieldDefnHS OGRFieldDefnShadow;
     318             : #else
     319             : typedef void OSRSpatialReferenceShadow;
     320             : typedef void OGRDriverShadow;
     321             : typedef void OGRDataSourceShadow;
     322             : typedef void OGRLayerShadow;
     323             : typedef void OGRFeatureShadow;
     324             : typedef void OGRFeatureDefnShadow;
     325             : typedef void OGRGeometryShadow;
     326             : typedef void OSRCoordinateTransformationShadow;
     327             : typedef void OGRFieldDefnShadow;
     328             : #endif
     329             : typedef struct OGRStyleTableHS OGRStyleTableShadow;
     330             : typedef struct OGRGeomFieldDefnHS OGRGeomFieldDefnShadow;
     331             : 
     332             : 
     333             : static int bUseExceptions=1;
     334             : 
     335             : static void CPL_STDCALL
     336           0 : VeryQuietErrorHandler(CPLErr eclass, int code, const char *msg )
     337             : {
     338             :   /* If the error class is CE_Fatal, we want to have a message issued
     339             :      because the CPL support code does an abort() before any exception
     340             :      can be generated */
     341           0 :   if (eclass == CE_Fatal ) {
     342           0 :     CPLDefaultErrorHandler(eclass, code, msg );
     343             :   }
     344           0 : }
     345             : 
     346             : 
     347           0 : static void UseExceptions() {
     348           0 :   bUseExceptions = 1;
     349           0 :   CPLSetErrorHandler( (CPLErrorHandler) VeryQuietErrorHandler );
     350           0 : }
     351             : 
     352           0 : static void DontUseExceptions() {
     353           0 :   bUseExceptions = 0;
     354           0 :   CPLSetErrorHandler( CPLDefaultErrorHandler );
     355           0 : }
     356             : 
     357           0 : static bool GetUseExceptions() {
     358           0 :   return bUseExceptions == 1;
     359             : }
     360             : 
     361             : 
     362             : typedef struct {
     363             :     JNIEnv *jenv;
     364             :     jobject pJavaCallback;
     365             : } JavaProgressData;
     366             : 
     367             : 
     368             : class ProgressCallback
     369             : {
     370             : public:
     371           0 :         virtual ~ProgressCallback() {  }
     372           0 :         virtual int run(double dfComplete, const char* pszMessage)
     373             :         {
     374           0 :             return 1;
     375             :         }
     376             : };
     377             : 
     378             : class TermProgressCallback : public ProgressCallback
     379             : {
     380             : public:
     381           0 :     TermProgressCallback()
     382           0 :     {
     383           0 :     }
     384             : 
     385           0 :     virtual int run(double dfComplete, const char* pszMessage)
     386             :     {
     387           0 :         return GDALTermProgress(dfComplete, pszMessage, NULL);
     388             :     }
     389             : };
     390             : 
     391             : 
     392             : /************************************************************************/
     393             : /*                        JavaProgressProxy()                           */
     394             : /************************************************************************/
     395             : 
     396             : static int CPL_STDCALL
     397           0 : JavaProgressProxy( double dfComplete, const char *pszMessage, void *pData )
     398             : {
     399           0 :     JavaProgressData* psProgressInfo = (JavaProgressData*)pData;
     400           0 :     JNIEnv *jenv = psProgressInfo->jenv;
     401             :     int ret;
     402           0 :     const jclass progressCallbackClass = jenv->FindClass("org/gdal/gdal/ProgressCallback");
     403           0 :     const jmethodID runMethod = jenv->GetMethodID(progressCallbackClass, "run", "(DLjava/lang/String;)I");
     404           0 :     jstring temp_string = jenv->NewStringUTF(pszMessage);
     405           0 :     ret = jenv->CallIntMethod(psProgressInfo->pJavaCallback, runMethod, dfComplete, temp_string);
     406           0 :     jenv->DeleteLocalRef(temp_string);
     407           0 :     return ret;
     408             : }
     409             : 
     410             : 
     411             : #if defined(SWIG_NOINCLUDE) || defined(SWIG_NOARRAYS)
     412             : 
     413             : 
     414             : static int SWIG_JavaArrayInBool (JNIEnv *jenv, jboolean **jarr, bool **carr, jbooleanArray input);
     415             : static void SWIG_JavaArrayArgoutBool (JNIEnv *jenv, jboolean *jarr, bool *carr, jbooleanArray input);
     416             : static jbooleanArray SWIG_JavaArrayOutBool (JNIEnv *jenv, bool *result, jsize sz);
     417             : 
     418             : 
     419             : static int SWIG_JavaArrayInSchar (JNIEnv *jenv, jbyte **jarr, signed char **carr, jbyteArray input);
     420             : static void SWIG_JavaArrayArgoutSchar (JNIEnv *jenv, jbyte *jarr, signed char *carr, jbyteArray input);
     421             : static jbyteArray SWIG_JavaArrayOutSchar (JNIEnv *jenv, signed char *result, jsize sz);
     422             : 
     423             : 
     424             : static int SWIG_JavaArrayInUchar (JNIEnv *jenv, jshort **jarr, unsigned char **carr, jshortArray input);
     425             : static void SWIG_JavaArrayArgoutUchar (JNIEnv *jenv, jshort *jarr, unsigned char *carr, jshortArray input);
     426             : static jshortArray SWIG_JavaArrayOutUchar (JNIEnv *jenv, unsigned char *result, jsize sz);
     427             : 
     428             : 
     429             : static int SWIG_JavaArrayInShort (JNIEnv *jenv, jshort **jarr, short **carr, jshortArray input);
     430             : static void SWIG_JavaArrayArgoutShort (JNIEnv *jenv, jshort *jarr, short *carr, jshortArray input);
     431             : static jshortArray SWIG_JavaArrayOutShort (JNIEnv *jenv, short *result, jsize sz);
     432             : 
     433             : 
     434             : static int SWIG_JavaArrayInUshort (JNIEnv *jenv, jint **jarr, unsigned short **carr, jintArray input);
     435             : static void SWIG_JavaArrayArgoutUshort (JNIEnv *jenv, jint *jarr, unsigned short *carr, jintArray input);
     436             : static jintArray SWIG_JavaArrayOutUshort (JNIEnv *jenv, unsigned short *result, jsize sz);
     437             : 
     438             : 
     439             : static int SWIG_JavaArrayInInt (JNIEnv *jenv, jint **jarr, int **carr, jintArray input);
     440             : static void SWIG_JavaArrayArgoutInt (JNIEnv *jenv, jint *jarr, int *carr, jintArray input);
     441             : static jintArray SWIG_JavaArrayOutInt (JNIEnv *jenv, int *result, jsize sz);
     442             : 
     443             : 
     444             : static int SWIG_JavaArrayInUint (JNIEnv *jenv, jlong **jarr, unsigned int **carr, jlongArray input);
     445             : static void SWIG_JavaArrayArgoutUint (JNIEnv *jenv, jlong *jarr, unsigned int *carr, jlongArray input);
     446             : static jlongArray SWIG_JavaArrayOutUint (JNIEnv *jenv, unsigned int *result, jsize sz);
     447             : 
     448             : 
     449             : static int SWIG_JavaArrayInLong (JNIEnv *jenv, jint **jarr, long **carr, jintArray input);
     450             : static void SWIG_JavaArrayArgoutLong (JNIEnv *jenv, jint *jarr, long *carr, jintArray input);
     451             : static jintArray SWIG_JavaArrayOutLong (JNIEnv *jenv, long *result, jsize sz);
     452             : 
     453             : 
     454             : static int SWIG_JavaArrayInUlong (JNIEnv *jenv, jlong **jarr, unsigned long **carr, jlongArray input);
     455             : static void SWIG_JavaArrayArgoutUlong (JNIEnv *jenv, jlong *jarr, unsigned long *carr, jlongArray input);
     456             : static jlongArray SWIG_JavaArrayOutUlong (JNIEnv *jenv, unsigned long *result, jsize sz);
     457             : 
     458             : 
     459             : static int SWIG_JavaArrayInLonglong (JNIEnv *jenv, jlong **jarr, jlong **carr, jlongArray input);
     460             : static void SWIG_JavaArrayArgoutLonglong (JNIEnv *jenv, jlong *jarr, jlong *carr, jlongArray input);
     461             : static jlongArray SWIG_JavaArrayOutLonglong (JNIEnv *jenv, jlong *result, jsize sz);
     462             : 
     463             : 
     464             : static int SWIG_JavaArrayInFloat (JNIEnv *jenv, jfloat **jarr, float **carr, jfloatArray input);
     465             : static void SWIG_JavaArrayArgoutFloat (JNIEnv *jenv, jfloat *jarr, float *carr, jfloatArray input);
     466             : static jfloatArray SWIG_JavaArrayOutFloat (JNIEnv *jenv, float *result, jsize sz);
     467             : 
     468             : 
     469             : static int SWIG_JavaArrayInDouble (JNIEnv *jenv, jdouble **jarr, double **carr, jdoubleArray input);
     470             : static void SWIG_JavaArrayArgoutDouble (JNIEnv *jenv, jdouble *jarr, double *carr, jdoubleArray input);
     471             : static jdoubleArray SWIG_JavaArrayOutDouble (JNIEnv *jenv, double *result, jsize sz);
     472             : 
     473             : 
     474             : #else
     475             : 
     476             : 
     477             : /* bool[] support */
     478           0 : static int SWIG_JavaArrayInBool (JNIEnv *jenv, jboolean **jarr, bool **carr, jbooleanArray input) {
     479             :   int i;
     480             :   jsize sz;
     481           0 :   if (!input) {
     482           0 :     SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array");
     483           0 :     return 0;
     484             :   }
     485           0 :   sz = jenv->GetArrayLength(input);
     486           0 :   *jarr = jenv->GetBooleanArrayElements(input, 0);
     487           0 :   if (!*jarr)
     488           0 :     return 0; 
     489           0 :   *carr = new bool[sz]; 
     490           0 :   if (!*carr) {
     491           0 :     SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed");
     492           0 :     return 0;
     493             :   }
     494           0 :   for (i=0; i<sz; i++)
     495           0 :     (*carr)[i] = ((*jarr)[i] != 0);
     496           0 :   return 1;
     497             : }
     498             : 
     499           0 : static void SWIG_JavaArrayArgoutBool (JNIEnv *jenv, jboolean *jarr, bool *carr, jbooleanArray input) {
     500             :   int i;
     501           0 :   jsize sz = jenv->GetArrayLength(input);
     502           0 :   for (i=0; i<sz; i++)
     503           0 :     jarr[i] = (jboolean)carr[i];
     504           0 :   jenv->ReleaseBooleanArrayElements(input, jarr, 0);
     505           0 : }
     506             : 
     507           0 : static jbooleanArray SWIG_JavaArrayOutBool (JNIEnv *jenv, bool *result, jsize sz) {
     508             :   jboolean *arr;
     509             :   int i;
     510           0 :   jbooleanArray jresult = jenv->NewBooleanArray(sz);
     511           0 :   if (!jresult)
     512           0 :     return NULL;
     513           0 :   arr = jenv->GetBooleanArrayElements(jresult, 0);
     514           0 :   if (!arr)
     515           0 :     return NULL;
     516           0 :   for (i=0; i<sz; i++)
     517           0 :     arr[i] = (jboolean)result[i];
     518           0 :   jenv->ReleaseBooleanArrayElements(jresult, arr, 0);
     519           0 :   return jresult;
     520             : }
     521             : 
     522             : 
     523             : /* signed char[] support */
     524           0 : static int SWIG_JavaArrayInSchar (JNIEnv *jenv, jbyte **jarr, signed char **carr, jbyteArray input) {
     525             :   int i;
     526             :   jsize sz;
     527           0 :   if (!input) {
     528           0 :     SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array");
     529           0 :     return 0;
     530             :   }
     531           0 :   sz = jenv->GetArrayLength(input);
     532           0 :   *jarr = jenv->GetByteArrayElements(input, 0);
     533           0 :   if (!*jarr)
     534           0 :     return 0; 
     535           0 :   *carr = new signed char[sz]; 
     536           0 :   if (!*carr) {
     537           0 :     SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed");
     538           0 :     return 0;
     539             :   }
     540           0 :   for (i=0; i<sz; i++)
     541           0 :     (*carr)[i] = (signed char)(*jarr)[i];
     542           0 :   return 1;
     543             : }
     544             : 
     545           0 : static void SWIG_JavaArrayArgoutSchar (JNIEnv *jenv, jbyte *jarr, signed char *carr, jbyteArray input) {
     546             :   int i;
     547           0 :   jsize sz = jenv->GetArrayLength(input);
     548           0 :   for (i=0; i<sz; i++)
     549           0 :     jarr[i] = (jbyte)carr[i];
     550           0 :   jenv->ReleaseByteArrayElements(input, jarr, 0);
     551           0 : }
     552             : 
     553           0 : static jbyteArray SWIG_JavaArrayOutSchar (JNIEnv *jenv, signed char *result, jsize sz) {
     554             :   jbyte *arr;
     555             :   int i;
     556           0 :   jbyteArray jresult = jenv->NewByteArray(sz);
     557           0 :   if (!jresult)
     558           0 :     return NULL;
     559           0 :   arr = jenv->GetByteArrayElements(jresult, 0);
     560           0 :   if (!arr)
     561           0 :     return NULL;
     562           0 :   for (i=0; i<sz; i++)
     563           0 :     arr[i] = (jbyte)result[i];
     564           0 :   jenv->ReleaseByteArrayElements(jresult, arr, 0);
     565           0 :   return jresult;
     566             : }
     567             : 
     568             : 
     569             : /* unsigned char[] support */
     570           0 : static int SWIG_JavaArrayInUchar (JNIEnv *jenv, jshort **jarr, unsigned char **carr, jshortArray input) {
     571             :   int i;
     572             :   jsize sz;
     573           0 :   if (!input) {
     574           0 :     SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array");
     575           0 :     return 0;
     576             :   }
     577           0 :   sz = jenv->GetArrayLength(input);
     578           0 :   *jarr = jenv->GetShortArrayElements(input, 0);
     579           0 :   if (!*jarr)
     580           0 :     return 0; 
     581           0 :   *carr = new unsigned char[sz]; 
     582           0 :   if (!*carr) {
     583           0 :     SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed");
     584           0 :     return 0;
     585             :   }
     586           0 :   for (i=0; i<sz; i++)
     587           0 :     (*carr)[i] = (unsigned char)(*jarr)[i];
     588           0 :   return 1;
     589             : }
     590             : 
     591           0 : static void SWIG_JavaArrayArgoutUchar (JNIEnv *jenv, jshort *jarr, unsigned char *carr, jshortArray input) {
     592             :   int i;
     593           0 :   jsize sz = jenv->GetArrayLength(input);
     594           0 :   for (i=0; i<sz; i++)
     595           0 :     jarr[i] = (jshort)carr[i];
     596           0 :   jenv->ReleaseShortArrayElements(input, jarr, 0);
     597           0 : }
     598             : 
     599           0 : static jshortArray SWIG_JavaArrayOutUchar (JNIEnv *jenv, unsigned char *result, jsize sz) {
     600             :   jshort *arr;
     601             :   int i;
     602           0 :   jshortArray jresult = jenv->NewShortArray(sz);
     603           0 :   if (!jresult)
     604           0 :     return NULL;
     605           0 :   arr = jenv->GetShortArrayElements(jresult, 0);
     606           0 :   if (!arr)
     607           0 :     return NULL;
     608           0 :   for (i=0; i<sz; i++)
     609           0 :     arr[i] = (jshort)result[i];
     610           0 :   jenv->ReleaseShortArrayElements(jresult, arr, 0);
     611           0 :   return jresult;
     612             : }
     613             : 
     614             : 
     615             : /* short[] support */
     616           0 : static int SWIG_JavaArrayInShort (JNIEnv *jenv, jshort **jarr, short **carr, jshortArray input) {
     617             :   int i;
     618             :   jsize sz;
     619           0 :   if (!input) {
     620           0 :     SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array");
     621           0 :     return 0;
     622             :   }
     623           0 :   sz = jenv->GetArrayLength(input);
     624           0 :   *jarr = jenv->GetShortArrayElements(input, 0);
     625           0 :   if (!*jarr)
     626           0 :     return 0; 
     627           0 :   *carr = new short[sz]; 
     628           0 :   if (!*carr) {
     629           0 :     SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed");
     630           0 :     return 0;
     631             :   }
     632           0 :   for (i=0; i<sz; i++)
     633           0 :     (*carr)[i] = (short)(*jarr)[i];
     634           0 :   return 1;
     635             : }
     636             : 
     637           0 : static void SWIG_JavaArrayArgoutShort (JNIEnv *jenv, jshort *jarr, short *carr, jshortArray input) {
     638             :   int i;
     639           0 :   jsize sz = jenv->GetArrayLength(input);
     640           0 :   for (i=0; i<sz; i++)
     641           0 :     jarr[i] = (jshort)carr[i];
     642           0 :   jenv->ReleaseShortArrayElements(input, jarr, 0);
     643           0 : }
     644             : 
     645           0 : static jshortArray SWIG_JavaArrayOutShort (JNIEnv *jenv, short *result, jsize sz) {
     646             :   jshort *arr;
     647             :   int i;
     648           0 :   jshortArray jresult = jenv->NewShortArray(sz);
     649           0 :   if (!jresult)
     650           0 :     return NULL;
     651           0 :   arr = jenv->GetShortArrayElements(jresult, 0);
     652           0 :   if (!arr)
     653           0 :     return NULL;
     654           0 :   for (i=0; i<sz; i++)
     655           0 :     arr[i] = (jshort)result[i];
     656           0 :   jenv->ReleaseShortArrayElements(jresult, arr, 0);
     657           0 :   return jresult;
     658             : }
     659             : 
     660             : 
     661             : /* unsigned short[] support */
     662           0 : static int SWIG_JavaArrayInUshort (JNIEnv *jenv, jint **jarr, unsigned short **carr, jintArray input) {
     663             :   int i;
     664             :   jsize sz;
     665           0 :   if (!input) {
     666           0 :     SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array");
     667           0 :     return 0;
     668             :   }
     669           0 :   sz = jenv->GetArrayLength(input);
     670           0 :   *jarr = jenv->GetIntArrayElements(input, 0);
     671           0 :   if (!*jarr)
     672           0 :     return 0; 
     673           0 :   *carr = new unsigned short[sz]; 
     674           0 :   if (!*carr) {
     675           0 :     SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed");
     676           0 :     return 0;
     677             :   }
     678           0 :   for (i=0; i<sz; i++)
     679           0 :     (*carr)[i] = (unsigned short)(*jarr)[i];
     680           0 :   return 1;
     681             : }
     682             : 
     683           0 : static void SWIG_JavaArrayArgoutUshort (JNIEnv *jenv, jint *jarr, unsigned short *carr, jintArray input) {
     684             :   int i;
     685           0 :   jsize sz = jenv->GetArrayLength(input);
     686           0 :   for (i=0; i<sz; i++)
     687           0 :     jarr[i] = (jint)carr[i];
     688           0 :   jenv->ReleaseIntArrayElements(input, jarr, 0);
     689           0 : }
     690             : 
     691           0 : static jintArray SWIG_JavaArrayOutUshort (JNIEnv *jenv, unsigned short *result, jsize sz) {
     692             :   jint *arr;
     693             :   int i;
     694           0 :   jintArray jresult = jenv->NewIntArray(sz);
     695           0 :   if (!jresult)
     696           0 :     return NULL;
     697           0 :   arr = jenv->GetIntArrayElements(jresult, 0);
     698           0 :   if (!arr)
     699           0 :     return NULL;
     700           0 :   for (i=0; i<sz; i++)
     701           0 :     arr[i] = (jint)result[i];
     702           0 :   jenv->ReleaseIntArrayElements(jresult, arr, 0);
     703           0 :   return jresult;
     704             : }
     705             : 
     706             : 
     707             : /* int[] support */
     708           0 : static int SWIG_JavaArrayInInt (JNIEnv *jenv, jint **jarr, int **carr, jintArray input) {
     709             :   int i;
     710             :   jsize sz;
     711           0 :   if (!input) {
     712           0 :     SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array");
     713           0 :     return 0;
     714             :   }
     715           0 :   sz = jenv->GetArrayLength(input);
     716           0 :   *jarr = jenv->GetIntArrayElements(input, 0);
     717           0 :   if (!*jarr)
     718           0 :     return 0; 
     719           0 :   *carr = new int[sz]; 
     720           0 :   if (!*carr) {
     721           0 :     SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed");
     722           0 :     return 0;
     723             :   }
     724           0 :   for (i=0; i<sz; i++)
     725           0 :     (*carr)[i] = (int)(*jarr)[i];
     726           0 :   return 1;
     727             : }
     728             : 
     729           0 : static void SWIG_JavaArrayArgoutInt (JNIEnv *jenv, jint *jarr, int *carr, jintArray input) {
     730             :   int i;
     731           0 :   jsize sz = jenv->GetArrayLength(input);
     732           0 :   for (i=0; i<sz; i++)
     733           0 :     jarr[i] = (jint)carr[i];
     734           0 :   jenv->ReleaseIntArrayElements(input, jarr, 0);
     735           0 : }
     736             : 
     737           0 : static jintArray SWIG_JavaArrayOutInt (JNIEnv *jenv, int *result, jsize sz) {
     738             :   jint *arr;
     739             :   int i;
     740           0 :   jintArray jresult = jenv->NewIntArray(sz);
     741           0 :   if (!jresult)
     742           0 :     return NULL;
     743           0 :   arr = jenv->GetIntArrayElements(jresult, 0);
     744           0 :   if (!arr)
     745           0 :     return NULL;
     746           0 :   for (i=0; i<sz; i++)
     747           0 :     arr[i] = (jint)result[i];
     748           0 :   jenv->ReleaseIntArrayElements(jresult, arr, 0);
     749           0 :   return jresult;
     750             : }
     751             : 
     752             : 
     753             : /* unsigned int[] support */
     754           0 : static int SWIG_JavaArrayInUint (JNIEnv *jenv, jlong **jarr, unsigned int **carr, jlongArray input) {
     755             :   int i;
     756             :   jsize sz;
     757           0 :   if (!input) {
     758           0 :     SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array");
     759           0 :     return 0;
     760             :   }
     761           0 :   sz = jenv->GetArrayLength(input);
     762           0 :   *jarr = jenv->GetLongArrayElements(input, 0);
     763           0 :   if (!*jarr)
     764           0 :     return 0; 
     765           0 :   *carr = new unsigned int[sz]; 
     766           0 :   if (!*carr) {
     767           0 :     SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed");
     768           0 :     return 0;
     769             :   }
     770           0 :   for (i=0; i<sz; i++)
     771           0 :     (*carr)[i] = (unsigned int)(*jarr)[i];
     772           0 :   return 1;
     773             : }
     774             : 
     775           0 : static void SWIG_JavaArrayArgoutUint (JNIEnv *jenv, jlong *jarr, unsigned int *carr, jlongArray input) {
     776             :   int i;
     777           0 :   jsize sz = jenv->GetArrayLength(input);
     778           0 :   for (i=0; i<sz; i++)
     779           0 :     jarr[i] = (jlong)carr[i];
     780           0 :   jenv->ReleaseLongArrayElements(input, jarr, 0);
     781           0 : }
     782             : 
     783           0 : static jlongArray SWIG_JavaArrayOutUint (JNIEnv *jenv, unsigned int *result, jsize sz) {
     784             :   jlong *arr;
     785             :   int i;
     786           0 :   jlongArray jresult = jenv->NewLongArray(sz);
     787           0 :   if (!jresult)
     788           0 :     return NULL;
     789           0 :   arr = jenv->GetLongArrayElements(jresult, 0);
     790           0 :   if (!arr)
     791           0 :     return NULL;
     792           0 :   for (i=0; i<sz; i++)
     793           0 :     arr[i] = (jlong)result[i];
     794           0 :   jenv->ReleaseLongArrayElements(jresult, arr, 0);
     795           0 :   return jresult;
     796             : }
     797             : 
     798             : 
     799             : /* long[] support */
     800           0 : static int SWIG_JavaArrayInLong (JNIEnv *jenv, jint **jarr, long **carr, jintArray input) {
     801             :   int i;
     802             :   jsize sz;
     803           0 :   if (!input) {
     804           0 :     SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array");
     805           0 :     return 0;
     806             :   }
     807           0 :   sz = jenv->GetArrayLength(input);
     808           0 :   *jarr = jenv->GetIntArrayElements(input, 0);
     809           0 :   if (!*jarr)
     810           0 :     return 0; 
     811           0 :   *carr = new long[sz]; 
     812           0 :   if (!*carr) {
     813           0 :     SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed");
     814           0 :     return 0;
     815             :   }
     816           0 :   for (i=0; i<sz; i++)
     817           0 :     (*carr)[i] = (long)(*jarr)[i];
     818           0 :   return 1;
     819             : }
     820             : 
     821           0 : static void SWIG_JavaArrayArgoutLong (JNIEnv *jenv, jint *jarr, long *carr, jintArray input) {
     822             :   int i;
     823           0 :   jsize sz = jenv->GetArrayLength(input);
     824           0 :   for (i=0; i<sz; i++)
     825           0 :     jarr[i] = (jint)carr[i];
     826           0 :   jenv->ReleaseIntArrayElements(input, jarr, 0);
     827           0 : }
     828             : 
     829           0 : static jintArray SWIG_JavaArrayOutLong (JNIEnv *jenv, long *result, jsize sz) {
     830             :   jint *arr;
     831             :   int i;
     832           0 :   jintArray jresult = jenv->NewIntArray(sz);
     833           0 :   if (!jresult)
     834           0 :     return NULL;
     835           0 :   arr = jenv->GetIntArrayElements(jresult, 0);
     836           0 :   if (!arr)
     837           0 :     return NULL;
     838           0 :   for (i=0; i<sz; i++)
     839           0 :     arr[i] = (jint)result[i];
     840           0 :   jenv->ReleaseIntArrayElements(jresult, arr, 0);
     841           0 :   return jresult;
     842             : }
     843             : 
     844             : 
     845             : /* unsigned long[] support */
     846           0 : static int SWIG_JavaArrayInUlong (JNIEnv *jenv, jlong **jarr, unsigned long **carr, jlongArray input) {
     847             :   int i;
     848             :   jsize sz;
     849           0 :   if (!input) {
     850           0 :     SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array");
     851           0 :     return 0;
     852             :   }
     853           0 :   sz = jenv->GetArrayLength(input);
     854           0 :   *jarr = jenv->GetLongArrayElements(input, 0);
     855           0 :   if (!*jarr)
     856           0 :     return 0; 
     857           0 :   *carr = new unsigned long[sz]; 
     858           0 :   if (!*carr) {
     859           0 :     SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed");
     860           0 :     return 0;
     861             :   }
     862           0 :   for (i=0; i<sz; i++)
     863           0 :     (*carr)[i] = (unsigned long)(*jarr)[i];
     864           0 :   return 1;
     865             : }
     866             : 
     867           0 : static void SWIG_JavaArrayArgoutUlong (JNIEnv *jenv, jlong *jarr, unsigned long *carr, jlongArray input) {
     868             :   int i;
     869           0 :   jsize sz = jenv->GetArrayLength(input);
     870           0 :   for (i=0; i<sz; i++)
     871           0 :     jarr[i] = (jlong)carr[i];
     872           0 :   jenv->ReleaseLongArrayElements(input, jarr, 0);
     873           0 : }
     874             : 
     875           0 : static jlongArray SWIG_JavaArrayOutUlong (JNIEnv *jenv, unsigned long *result, jsize sz) {
     876             :   jlong *arr;
     877             :   int i;
     878           0 :   jlongArray jresult = jenv->NewLongArray(sz);
     879           0 :   if (!jresult)
     880           0 :     return NULL;
     881           0 :   arr = jenv->GetLongArrayElements(jresult, 0);
     882           0 :   if (!arr)
     883           0 :     return NULL;
     884           0 :   for (i=0; i<sz; i++)
     885           0 :     arr[i] = (jlong)result[i];
     886           0 :   jenv->ReleaseLongArrayElements(jresult, arr, 0);
     887           0 :   return jresult;
     888             : }
     889             : 
     890             : 
     891             : /* jlong[] support */
     892           0 : static int SWIG_JavaArrayInLonglong (JNIEnv *jenv, jlong **jarr, jlong **carr, jlongArray input) {
     893             :   int i;
     894             :   jsize sz;
     895           0 :   if (!input) {
     896           0 :     SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array");
     897           0 :     return 0;
     898             :   }
     899           0 :   sz = jenv->GetArrayLength(input);
     900           0 :   *jarr = jenv->GetLongArrayElements(input, 0);
     901           0 :   if (!*jarr)
     902           0 :     return 0; 
     903           0 :   *carr = new jlong[sz]; 
     904           0 :   if (!*carr) {
     905           0 :     SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed");
     906           0 :     return 0;
     907             :   }
     908           0 :   for (i=0; i<sz; i++)
     909           0 :     (*carr)[i] = (jlong)(*jarr)[i];
     910           0 :   return 1;
     911             : }
     912             : 
     913           0 : static void SWIG_JavaArrayArgoutLonglong (JNIEnv *jenv, jlong *jarr, jlong *carr, jlongArray input) {
     914             :   int i;
     915           0 :   jsize sz = jenv->GetArrayLength(input);
     916           0 :   for (i=0; i<sz; i++)
     917           0 :     jarr[i] = (jlong)carr[i];
     918           0 :   jenv->ReleaseLongArrayElements(input, jarr, 0);
     919           0 : }
     920             : 
     921           0 : static jlongArray SWIG_JavaArrayOutLonglong (JNIEnv *jenv, jlong *result, jsize sz) {
     922             :   jlong *arr;
     923             :   int i;
     924           0 :   jlongArray jresult = jenv->NewLongArray(sz);
     925           0 :   if (!jresult)
     926           0 :     return NULL;
     927           0 :   arr = jenv->GetLongArrayElements(jresult, 0);
     928           0 :   if (!arr)
     929           0 :     return NULL;
     930           0 :   for (i=0; i<sz; i++)
     931           0 :     arr[i] = (jlong)result[i];
     932           0 :   jenv->ReleaseLongArrayElements(jresult, arr, 0);
     933           0 :   return jresult;
     934             : }
     935             : 
     936             : 
     937             : /* float[] support */
     938           0 : static int SWIG_JavaArrayInFloat (JNIEnv *jenv, jfloat **jarr, float **carr, jfloatArray input) {
     939             :   int i;
     940             :   jsize sz;
     941           0 :   if (!input) {
     942           0 :     SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array");
     943           0 :     return 0;
     944             :   }
     945           0 :   sz = jenv->GetArrayLength(input);
     946           0 :   *jarr = jenv->GetFloatArrayElements(input, 0);
     947           0 :   if (!*jarr)
     948           0 :     return 0; 
     949           0 :   *carr = new float[sz]; 
     950           0 :   if (!*carr) {
     951           0 :     SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed");
     952           0 :     return 0;
     953             :   }
     954           0 :   for (i=0; i<sz; i++)
     955           0 :     (*carr)[i] = (float)(*jarr)[i];
     956           0 :   return 1;
     957             : }
     958             : 
     959           0 : static void SWIG_JavaArrayArgoutFloat (JNIEnv *jenv, jfloat *jarr, float *carr, jfloatArray input) {
     960             :   int i;
     961           0 :   jsize sz = jenv->GetArrayLength(input);
     962           0 :   for (i=0; i<sz; i++)
     963           0 :     jarr[i] = (jfloat)carr[i];
     964           0 :   jenv->ReleaseFloatArrayElements(input, jarr, 0);
     965           0 : }
     966             : 
     967           0 : static jfloatArray SWIG_JavaArrayOutFloat (JNIEnv *jenv, float *result, jsize sz) {
     968             :   jfloat *arr;
     969             :   int i;
     970           0 :   jfloatArray jresult = jenv->NewFloatArray(sz);
     971           0 :   if (!jresult)
     972           0 :     return NULL;
     973           0 :   arr = jenv->GetFloatArrayElements(jresult, 0);
     974           0 :   if (!arr)
     975           0 :     return NULL;
     976           0 :   for (i=0; i<sz; i++)
     977           0 :     arr[i] = (jfloat)result[i];
     978           0 :   jenv->ReleaseFloatArrayElements(jresult, arr, 0);
     979           0 :   return jresult;
     980             : }
     981             : 
     982             : 
     983             : /* double[] support */
     984           0 : static int SWIG_JavaArrayInDouble (JNIEnv *jenv, jdouble **jarr, double **carr, jdoubleArray input) {
     985             :   int i;
     986             :   jsize sz;
     987           0 :   if (!input) {
     988           0 :     SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array");
     989           0 :     return 0;
     990             :   }
     991           0 :   sz = jenv->GetArrayLength(input);
     992           0 :   *jarr = jenv->GetDoubleArrayElements(input, 0);
     993           0 :   if (!*jarr)
     994           0 :     return 0; 
     995           0 :   *carr = new double[sz]; 
     996           0 :   if (!*carr) {
     997           0 :     SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed");
     998           0 :     return 0;
     999             :   }
    1000           0 :   for (i=0; i<sz; i++)
    1001           0 :     (*carr)[i] = (double)(*jarr)[i];
    1002           0 :   return 1;
    1003             : }
    1004             : 
    1005           0 : static void SWIG_JavaArrayArgoutDouble (JNIEnv *jenv, jdouble *jarr, double *carr, jdoubleArray input) {
    1006             :   int i;
    1007           0 :   jsize sz = jenv->GetArrayLength(input);
    1008           0 :   for (i=0; i<sz; i++)
    1009           0 :     jarr[i] = (jdouble)carr[i];
    1010           0 :   jenv->ReleaseDoubleArrayElements(input, jarr, 0);
    1011           0 : }
    1012             : 
    1013           0 : static jdoubleArray SWIG_JavaArrayOutDouble (JNIEnv *jenv, double *result, jsize sz) {
    1014             :   jdouble *arr;
    1015             :   int i;
    1016           0 :   jdoubleArray jresult = jenv->NewDoubleArray(sz);
    1017           0 :   if (!jresult)
    1018           0 :     return NULL;
    1019           0 :   arr = jenv->GetDoubleArrayElements(jresult, 0);
    1020           0 :   if (!arr)
    1021           0 :     return NULL;
    1022           0 :   for (i=0; i<sz; i++)
    1023           0 :     arr[i] = (jdouble)result[i];
    1024           0 :   jenv->ReleaseDoubleArrayElements(jresult, arr, 0);
    1025           0 :   return jresult;
    1026             : }
    1027             : 
    1028             : 
    1029             : #endif
    1030             : 
    1031           0 : SWIGINTERN void delete_GNMNetworkShadow(GNMNetworkShadow *self){
    1032           0 :             if ( GDALDereferenceDataset( self ) <= 0 ) {
    1033           0 :               GDALClose(self);
    1034             :             }
    1035           0 :         }
    1036           0 : SWIGINTERN int GNMNetworkShadow_GetVersion(GNMNetworkShadow *self){
    1037           0 :             return GNMGetVersion(self);
    1038             :         }
    1039           0 : SWIGINTERN char const *GNMNetworkShadow_GetName(GNMNetworkShadow *self){
    1040           0 :             return GNMGetName(self);
    1041             :         }
    1042             : 
    1043             : static jstring
    1044           0 : SafeNewStringUTF8(JNIEnv *jenv, const char* pszInput)
    1045             : {
    1046           0 :   jstring ret = 0;
    1047           0 :   if (pszInput)
    1048             :   {
    1049           0 :       if( !CPLIsUTF8(pszInput, -1) )
    1050             :       {
    1051           0 :           CPLError(CE_Warning, CPLE_AppDefined,
    1052             :                    "A non-UTF8 string has been detected. Forcing it to ASCII");
    1053           0 :           char* pszTmp = CPLUTF8ForceToASCII(pszInput, '_');
    1054             : #ifdef __cplusplus
    1055           0 :           ret = jenv->NewStringUTF(pszTmp);
    1056             : #else
    1057             :           ret = (*jenv)->NewStringUTF(jenv, pszTmp);
    1058             : #endif
    1059           0 :           CPLFree(pszTmp);
    1060             :       }
    1061             :       else
    1062             :       {
    1063             : #ifdef __cplusplus
    1064           0 :           ret = jenv->NewStringUTF(pszInput);
    1065             : #else
    1066             :           ret = (*jenv)->NewStringUTF(jenv, pszInput);
    1067             : #endif
    1068             :       }
    1069             :   }
    1070           0 :   return ret;
    1071             : }
    1072             : 
    1073           0 : SWIGINTERN OGRFeatureShadow *GNMNetworkShadow_GetFeatureByGlobalFID(GNMNetworkShadow *self,GIntBig GFID){
    1074           0 :             return (OGRFeatureShadow*)GNMGetFeatureByGlobalFID(self, GFID);
    1075             :         }
    1076           0 : SWIGINTERN OGRLayerShadow *GNMNetworkShadow_GetPath__SWIG_0(GNMNetworkShadow *self,GIntBig nStartFID,GIntBig nEndFID,GNMGraphAlgorithmType eAlgorithm,char **options=0){
    1077           0 :             return (OGRLayerShadow*)GNMGetPath(self, nStartFID, nEndFID, eAlgorithm, options);
    1078             :         }
    1079           0 : SWIGINTERN CPLErr GNMNetworkShadow_DisconnectAll(GNMNetworkShadow *self){
    1080           0 :             return GNMDisconnectAll( self );
    1081             :         }
    1082           0 : SWIGINTERN char const *GNMNetworkShadow_GetProjection(GNMNetworkShadow *self){
    1083           0 :             return GDALGetProjectionRef( self );
    1084             :         }
    1085           0 : SWIGINTERN char const *GNMNetworkShadow_GetProjectionRef(GNMNetworkShadow *self){
    1086           0 :             return GDALGetProjectionRef( self );
    1087             :         }
    1088           0 : SWIGINTERN char **GNMNetworkShadow_GetFileList(GNMNetworkShadow *self){
    1089           0 :             return GDALGetFileList( self );
    1090             :         }
    1091           0 : SWIGINTERN OGRLayerShadow *GNMNetworkShadow_CreateLayer__SWIG_0(GNMNetworkShadow *self,char const *name,OSRSpatialReferenceShadow *srs=NULL,OGRwkbGeometryType geom_type=wkbUnknown,char **options=0){
    1092           0 :             OGRLayerShadow* layer = (OGRLayerShadow*) GDALDatasetCreateLayer( self,
    1093             :                                       name,
    1094             :                                       srs,
    1095             :                                       geom_type,
    1096             :                                       options);
    1097           0 :             return layer;
    1098             :         }
    1099           0 : SWIGINTERN OGRLayerShadow *GNMNetworkShadow_CopyLayer__SWIG_0(GNMNetworkShadow *self,OGRLayerShadow *src_layer,char const *new_name,char **options=0){
    1100           0 :             OGRLayerShadow* layer = (OGRLayerShadow*) GDALDatasetCopyLayer( self,
    1101             :                                                       src_layer,
    1102             :                                                       new_name,
    1103             :                                                       options);
    1104           0 :             return layer;
    1105             :         }
    1106           0 : SWIGINTERN OGRErr GNMNetworkShadow_DeleteLayer(GNMNetworkShadow *self,int index){
    1107           0 :             return GDALDatasetDeleteLayer(self, index);
    1108             :         }
    1109             : 
    1110             : 
    1111             : #include "ogr_core.h"
    1112             : static char const *
    1113           0 : OGRErrMessages( int rc ) {
    1114           0 :   switch( rc ) {
    1115           0 :   case OGRERR_NONE:
    1116           0 :     return "OGR Error: None";
    1117           0 :   case OGRERR_NOT_ENOUGH_DATA:
    1118           0 :     return "OGR Error: Not enough data to deserialize";
    1119           0 :   case OGRERR_NOT_ENOUGH_MEMORY:
    1120           0 :     return "OGR Error: Not enough memory";
    1121           0 :   case OGRERR_UNSUPPORTED_GEOMETRY_TYPE:
    1122           0 :     return "OGR Error: Unsupported geometry type";
    1123           0 :   case OGRERR_UNSUPPORTED_OPERATION:
    1124           0 :     return "OGR Error: Unsupported operation";
    1125           0 :   case OGRERR_CORRUPT_DATA:
    1126           0 :     return "OGR Error: Corrupt data";
    1127           0 :   case OGRERR_FAILURE:
    1128           0 :     return "OGR Error: General Error";
    1129           0 :   case OGRERR_UNSUPPORTED_SRS:
    1130           0 :     return "OGR Error: Unsupported SRS";
    1131           0 :   case OGRERR_INVALID_HANDLE:
    1132           0 :     return "OGR Error: Invalid handle";
    1133           0 :   case OGRERR_NON_EXISTING_FEATURE:
    1134           0 :     return "OGR Error: Non existing feature";
    1135           0 :   default:
    1136           0 :     return "OGR Error: Unknown";
    1137             :   }
    1138             : }
    1139             : 
    1140           0 : SWIGINTERN int GNMNetworkShadow_GetLayerCount(GNMNetworkShadow *self){
    1141           0 :             return GDALDatasetGetLayerCount(self);
    1142             :         }
    1143           0 : SWIGINTERN OGRLayerShadow *GNMNetworkShadow_GetLayerByIndex(GNMNetworkShadow *self,int index){
    1144             :         
    1145             : 
    1146             : 
    1147           0 :         OGRLayerShadow* layer = (OGRLayerShadow*) GDALDatasetGetLayer(self,
    1148             :                                                                       index);
    1149           0 :             return layer;
    1150             :         }
    1151           0 : SWIGINTERN OGRLayerShadow *GNMNetworkShadow_GetLayerByName(GNMNetworkShadow *self,char const *layer_name){
    1152             :             OGRLayerShadow* layer =
    1153           0 :                   (OGRLayerShadow*) GDALDatasetGetLayerByName(self, layer_name);
    1154           0 :             return layer;
    1155             :         }
    1156           0 : SWIGINTERN bool GNMNetworkShadow_TestCapability(GNMNetworkShadow *self,char const *cap){
    1157           0 :             return (GDALDatasetTestCapability(self, cap) > 0);
    1158             :         }
    1159           0 : SWIGINTERN OGRErr GNMNetworkShadow_StartTransaction__SWIG_0(GNMNetworkShadow *self,int force=FALSE){
    1160           0 :             return GDALDatasetStartTransaction(self, force);
    1161             :         }
    1162           0 : SWIGINTERN OGRErr GNMNetworkShadow_CommitTransaction(GNMNetworkShadow *self){
    1163           0 :             return GDALDatasetCommitTransaction(self);
    1164             :         }
    1165           0 : SWIGINTERN OGRErr GNMNetworkShadow_RollbackTransaction(GNMNetworkShadow *self){
    1166           0 :             return GDALDatasetRollbackTransaction(self);
    1167             :         }
    1168           0 : SWIGINTERN void delete_GNMGenericNetworkShadow(GNMGenericNetworkShadow *self){
    1169           0 :             if ( GDALDereferenceDataset( self ) <= 0 ) {
    1170           0 :               GDALClose(self);
    1171             :             }
    1172           0 :         }
    1173           0 : SWIGINTERN CPLErr GNMGenericNetworkShadow_ConnectFeatures(GNMGenericNetworkShadow *self,GIntBig nSrcFID,GIntBig nTgtFID,GIntBig nConFID,double dfCost,double dfInvCost,GNMDirection eDir){
    1174           0 :             return GNMConnectFeatures(self, nSrcFID, nTgtFID,
    1175           0 :                                               nConFID, dfCost, dfInvCost, eDir);
    1176             :         }
    1177           0 : SWIGINTERN CPLErr GNMGenericNetworkShadow_DisconnectFeatures(GNMGenericNetworkShadow *self,GIntBig nSrcFID,GIntBig nTgtFID,GIntBig nConFID){
    1178           0 :             return GNMDisconnectFeatures(self, nSrcFID, nTgtFID,
    1179           0 :                                                            nConFID);
    1180             :         }
    1181           0 : SWIGINTERN CPLErr GNMGenericNetworkShadow_DisconnectFeaturesWithId(GNMGenericNetworkShadow *self,GIntBig nFID){
    1182           0 :             return GNMDisconnectFeaturesWithId(self, nFID);
    1183             :         }
    1184           0 : SWIGINTERN CPLErr GNMGenericNetworkShadow_ReconnectFeatures(GNMGenericNetworkShadow *self,GIntBig nSrcFID,GIntBig nTgtFID,GIntBig nConFID,double dfCost,double dfInvCost,GNMDirection eDir){
    1185           0 :             return GNMReconnectFeatures(self, nSrcFID, nTgtFID, nConFID, dfCost, dfInvCost, eDir);
    1186             :         }
    1187           0 : SWIGINTERN CPLErr GNMGenericNetworkShadow_CreateRule(GNMGenericNetworkShadow *self,char const *pszRuleStr){
    1188           0 :             return GNMCreateRule(self, pszRuleStr);
    1189             :         }
    1190           0 : SWIGINTERN CPLErr GNMGenericNetworkShadow_DeleteAllRules(GNMGenericNetworkShadow *self){
    1191           0 :             return GNMDeleteAllRules(self);
    1192             :         }
    1193           0 : SWIGINTERN CPLErr GNMGenericNetworkShadow_DeleteRule(GNMGenericNetworkShadow *self,char const *pszRuleStr){
    1194           0 :             return GNMDeleteRule(self, pszRuleStr);
    1195             :         }
    1196           0 : SWIGINTERN char **GNMGenericNetworkShadow_GetRules(GNMGenericNetworkShadow *self){
    1197           0 :             return GNMGetRules(self);
    1198             :         }
    1199           0 : SWIGINTERN CPLErr GNMGenericNetworkShadow_ConnectPointsByLines(GNMGenericNetworkShadow *self,char **papszLayerList,double dfTolerance,double dfCost,double dfInvCost,GNMDirection eDir){
    1200           0 :             return GNMConnectPointsByLines(self, papszLayerList, dfTolerance, dfCost, dfInvCost, eDir);
    1201             :         }
    1202           0 : SWIGINTERN CPLErr GNMGenericNetworkShadow_ChangeBlockState(GNMGenericNetworkShadow *self,GIntBig nFID,bool bIsBlock){
    1203           0 :             return GNMChangeBlockState(self, nFID, bIsBlock);
    1204             :         }
    1205           0 : SWIGINTERN CPLErr GNMGenericNetworkShadow_ChangeAllBlockState__SWIG_0(GNMGenericNetworkShadow *self,bool bIsBlock=false){
    1206           0 :             return GNMChangeAllBlockState(self, bIsBlock);
    1207             :         }
    1208             : 
    1209             : #ifdef __cplusplus
    1210             : extern "C" {
    1211             : #endif
    1212             : 
    1213           0 : SWIGEXPORT void JNICALL Java_org_gdal_gnm_gnmJNI_UseExceptions(JNIEnv *jenv, jclass jcls) {
    1214             :   (void)jenv;
    1215             :   (void)jcls;
    1216           0 :   UseExceptions();
    1217           0 : }
    1218             : 
    1219             : 
    1220           0 : SWIGEXPORT void JNICALL Java_org_gdal_gnm_gnmJNI_DontUseExceptions(JNIEnv *jenv, jclass jcls) {
    1221             :   (void)jenv;
    1222             :   (void)jcls;
    1223           0 :   DontUseExceptions();
    1224           0 : }
    1225             : 
    1226             : 
    1227           0 : SWIGEXPORT jboolean JNICALL Java_org_gdal_gnm_gnmJNI_GetUseExceptions(JNIEnv *jenv, jclass jcls) {
    1228           0 :   jboolean jresult = 0 ;
    1229             :   bool result;
    1230             :   
    1231             :   (void)jenv;
    1232             :   (void)jcls;
    1233           0 :   result = (bool)GetUseExceptions();
    1234           0 :   jresult = (jboolean)result; 
    1235           0 :   return jresult;
    1236             : }
    1237             : 
    1238             : 
    1239           0 : SWIGEXPORT void JNICALL Java_org_gdal_gnm_gnmJNI_delete_1ProgressCallback(JNIEnv *jenv, jclass jcls, jlong jarg1) {
    1240           0 :   ProgressCallback *arg1 = (ProgressCallback *) 0 ;
    1241             :   
    1242             :   (void)jenv;
    1243             :   (void)jcls;
    1244           0 :   arg1 = *(ProgressCallback **)&jarg1; 
    1245           0 :   delete arg1;
    1246           0 : }
    1247             : 
    1248             : 
    1249           0 : SWIGEXPORT jint JNICALL Java_org_gdal_gnm_gnmJNI_ProgressCallback_1run(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jdouble jarg2, jstring jarg3) {
    1250           0 :   jint jresult = 0 ;
    1251           0 :   ProgressCallback *arg1 = (ProgressCallback *) 0 ;
    1252             :   double arg2 ;
    1253           0 :   char *arg3 = (char *) 0 ;
    1254             :   int result;
    1255             :   
    1256             :   (void)jenv;
    1257             :   (void)jcls;
    1258             :   (void)jarg1_;
    1259           0 :   arg1 = *(ProgressCallback **)&jarg1; 
    1260           0 :   arg2 = (double)jarg2; 
    1261           0 :   arg3 = 0;
    1262           0 :   if (jarg3) {
    1263           0 :     arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0);
    1264           0 :     if (!arg3) return 0;
    1265             :   }
    1266           0 :   result = (int)(arg1)->run(arg2,(char const *)arg3);
    1267           0 :   jresult = (jint)result; 
    1268           0 :   if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3);
    1269           0 :   return jresult;
    1270             : }
    1271             : 
    1272             : 
    1273           0 : SWIGEXPORT jlong JNICALL Java_org_gdal_gnm_gnmJNI_new_1ProgressCallback(JNIEnv *jenv, jclass jcls) {
    1274           0 :   jlong jresult = 0 ;
    1275           0 :   ProgressCallback *result = 0 ;
    1276             :   
    1277             :   (void)jenv;
    1278             :   (void)jcls;
    1279           0 :   result = (ProgressCallback *)new ProgressCallback();
    1280           0 :   *(ProgressCallback **)&jresult = result; 
    1281           0 :   return jresult;
    1282             : }
    1283             : 
    1284             : 
    1285           0 : SWIGEXPORT jlong JNICALL Java_org_gdal_gnm_gnmJNI_new_1TermProgressCallback(JNIEnv *jenv, jclass jcls) {
    1286           0 :   jlong jresult = 0 ;
    1287           0 :   TermProgressCallback *result = 0 ;
    1288             :   
    1289             :   (void)jenv;
    1290             :   (void)jcls;
    1291           0 :   result = (TermProgressCallback *)new TermProgressCallback();
    1292           0 :   *(TermProgressCallback **)&jresult = result; 
    1293           0 :   return jresult;
    1294             : }
    1295             : 
    1296             : 
    1297           0 : SWIGEXPORT jint JNICALL Java_org_gdal_gnm_gnmJNI_TermProgressCallback_1run(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jdouble jarg2, jstring jarg3) {
    1298           0 :   jint jresult = 0 ;
    1299           0 :   TermProgressCallback *arg1 = (TermProgressCallback *) 0 ;
    1300             :   double arg2 ;
    1301           0 :   char *arg3 = (char *) 0 ;
    1302             :   int result;
    1303             :   
    1304             :   (void)jenv;
    1305             :   (void)jcls;
    1306             :   (void)jarg1_;
    1307           0 :   arg1 = *(TermProgressCallback **)&jarg1; 
    1308           0 :   arg2 = (double)jarg2; 
    1309           0 :   arg3 = 0;
    1310           0 :   if (jarg3) {
    1311           0 :     arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0);
    1312           0 :     if (!arg3) return 0;
    1313             :   }
    1314           0 :   result = (int)(arg1)->run(arg2,(char const *)arg3);
    1315           0 :   jresult = (jint)result; 
    1316           0 :   if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3);
    1317           0 :   return jresult;
    1318             : }
    1319             : 
    1320             : 
    1321           0 : SWIGEXPORT void JNICALL Java_org_gdal_gnm_gnmJNI_delete_1TermProgressCallback(JNIEnv *jenv, jclass jcls, jlong jarg1) {
    1322           0 :   TermProgressCallback *arg1 = (TermProgressCallback *) 0 ;
    1323             :   
    1324             :   (void)jenv;
    1325             :   (void)jcls;
    1326           0 :   arg1 = *(TermProgressCallback **)&jarg1; 
    1327           0 :   delete arg1;
    1328           0 : }
    1329             : 
    1330             : 
    1331           0 : SWIGEXPORT jint JNICALL Java_org_gdal_gnm_gnmJNI_GATDijkstraShortestPath_1get(JNIEnv *jenv, jclass jcls) {
    1332           0 :   jint jresult = 0 ;
    1333             :   GNMGraphAlgorithmType result;
    1334             :   
    1335             :   (void)jenv;
    1336             :   (void)jcls;
    1337           0 :   result = (GNMGraphAlgorithmType)GATDijkstraShortestPath;
    1338           0 :   jresult = (jint)result; 
    1339           0 :   return jresult;
    1340             : }
    1341             : 
    1342             : 
    1343           0 : SWIGEXPORT jint JNICALL Java_org_gdal_gnm_gnmJNI_GATKShortestPath_1get(JNIEnv *jenv, jclass jcls) {
    1344           0 :   jint jresult = 0 ;
    1345             :   GNMGraphAlgorithmType result;
    1346             :   
    1347             :   (void)jenv;
    1348             :   (void)jcls;
    1349           0 :   result = (GNMGraphAlgorithmType)GATKShortestPath;
    1350           0 :   jresult = (jint)result; 
    1351           0 :   return jresult;
    1352             : }
    1353             : 
    1354             : 
    1355           0 : SWIGEXPORT jint JNICALL Java_org_gdal_gnm_gnmJNI_GATConnectedComponents_1get(JNIEnv *jenv, jclass jcls) {
    1356           0 :   jint jresult = 0 ;
    1357             :   GNMGraphAlgorithmType result;
    1358             :   
    1359             :   (void)jenv;
    1360             :   (void)jcls;
    1361           0 :   result = (GNMGraphAlgorithmType)GATConnectedComponents;
    1362           0 :   jresult = (jint)result; 
    1363           0 :   return jresult;
    1364             : }
    1365             : 
    1366             : 
    1367           0 : SWIGEXPORT jint JNICALL Java_org_gdal_gnm_gnmJNI_GNM_1EDGE_1DIR_1BOTH_1get(JNIEnv *jenv, jclass jcls) {
    1368           0 :   jint jresult = 0 ;
    1369             :   int result;
    1370             :   
    1371             :   (void)jenv;
    1372             :   (void)jcls;
    1373           0 :   result = (int)(0);
    1374           0 :   jresult = (jint)result; 
    1375           0 :   return jresult;
    1376             : }
    1377             : 
    1378             : 
    1379           0 : SWIGEXPORT jint JNICALL Java_org_gdal_gnm_gnmJNI_GNM_1EDGE_1DIR_1SRCTOTGT_1get(JNIEnv *jenv, jclass jcls) {
    1380           0 :   jint jresult = 0 ;
    1381             :   int result;
    1382             :   
    1383             :   (void)jenv;
    1384             :   (void)jcls;
    1385           0 :   result = (int)(1);
    1386           0 :   jresult = (jint)result; 
    1387           0 :   return jresult;
    1388             : }
    1389             : 
    1390             : 
    1391           0 : SWIGEXPORT jint JNICALL Java_org_gdal_gnm_gnmJNI_GNM_1EDGE_1DIR_1TGTTOSRC_1get(JNIEnv *jenv, jclass jcls) {
    1392           0 :   jint jresult = 0 ;
    1393             :   int result;
    1394             :   
    1395             :   (void)jenv;
    1396             :   (void)jcls;
    1397           0 :   result = (int)(2);
    1398           0 :   jresult = (jint)result; 
    1399           0 :   return jresult;
    1400             : }
    1401             : 
    1402             : 
    1403           0 : SWIGEXPORT void JNICALL Java_org_gdal_gnm_gnmJNI_delete_1Network(JNIEnv *jenv, jclass jcls, jlong jarg1) {
    1404           0 :   GNMNetworkShadow *arg1 = (GNMNetworkShadow *) 0 ;
    1405             :   
    1406             :   (void)jenv;
    1407             :   (void)jcls;
    1408           0 :   arg1 = *(GNMNetworkShadow **)&jarg1; 
    1409           0 :   delete_GNMNetworkShadow(arg1);
    1410           0 : }
    1411             : 
    1412             : 
    1413           0 : SWIGEXPORT jint JNICALL Java_org_gdal_gnm_gnmJNI_Network_1GetVersion(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
    1414           0 :   jint jresult = 0 ;
    1415           0 :   GNMNetworkShadow *arg1 = (GNMNetworkShadow *) 0 ;
    1416             :   int result;
    1417             :   
    1418             :   (void)jenv;
    1419             :   (void)jcls;
    1420             :   (void)jarg1_;
    1421           0 :   arg1 = *(GNMNetworkShadow **)&jarg1; 
    1422           0 :   result = (int)GNMNetworkShadow_GetVersion(arg1);
    1423           0 :   jresult = (jint)result; 
    1424           0 :   return jresult;
    1425             : }
    1426             : 
    1427             : 
    1428           0 : SWIGEXPORT jstring JNICALL Java_org_gdal_gnm_gnmJNI_Network_1GetName(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
    1429           0 :   jstring jresult = 0 ;
    1430           0 :   GNMNetworkShadow *arg1 = (GNMNetworkShadow *) 0 ;
    1431           0 :   char *result = 0 ;
    1432             :   
    1433             :   (void)jenv;
    1434             :   (void)jcls;
    1435             :   (void)jarg1_;
    1436           0 :   arg1 = *(GNMNetworkShadow **)&jarg1; 
    1437           0 :   result = (char *)GNMNetworkShadow_GetName(arg1);
    1438           0 :   jresult = SafeNewStringUTF8(jenv, (const char *)result);
    1439           0 :   return jresult;
    1440             : }
    1441             : 
    1442             : 
    1443           0 : SWIGEXPORT jlong JNICALL Java_org_gdal_gnm_gnmJNI_Network_1GetFeatureByGlobalFID(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) {
    1444           0 :   jlong jresult = 0 ;
    1445           0 :   GNMNetworkShadow *arg1 = (GNMNetworkShadow *) 0 ;
    1446             :   GIntBig arg2 ;
    1447           0 :   OGRFeatureShadow *result = 0 ;
    1448             :   
    1449             :   (void)jenv;
    1450             :   (void)jcls;
    1451             :   (void)jarg1_;
    1452           0 :   arg1 = *(GNMNetworkShadow **)&jarg1; 
    1453             :   {
    1454             :     /* %typemap(in) (GIntBig) */
    1455           0 :     arg2 = (GIntBig) jarg2;
    1456             :   }
    1457           0 :   result = (OGRFeatureShadow *)GNMNetworkShadow_GetFeatureByGlobalFID(arg1,arg2);
    1458           0 :   *(OGRFeatureShadow **)&jresult = result; 
    1459           0 :   return jresult;
    1460             : }
    1461             : 
    1462             : 
    1463           0 : SWIGEXPORT jlong JNICALL Java_org_gdal_gnm_gnmJNI_Network_1GetPath_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jint jarg4, jobject jarg5) {
    1464           0 :   jlong jresult = 0 ;
    1465           0 :   GNMNetworkShadow *arg1 = (GNMNetworkShadow *) 0 ;
    1466             :   GIntBig arg2 ;
    1467             :   GIntBig arg3 ;
    1468             :   GNMGraphAlgorithmType arg4 ;
    1469           0 :   char **arg5 = (char **) 0 ;
    1470           0 :   OGRLayerShadow *result = 0 ;
    1471             :   
    1472             :   (void)jenv;
    1473             :   (void)jcls;
    1474             :   (void)jarg1_;
    1475           0 :   arg1 = *(GNMNetworkShadow **)&jarg1; 
    1476             :   {
    1477             :     /* %typemap(in) (GIntBig) */
    1478           0 :     arg2 = (GIntBig) jarg2;
    1479             :   }
    1480             :   {
    1481             :     /* %typemap(in) (GIntBig) */
    1482           0 :     arg3 = (GIntBig) jarg3;
    1483             :   }
    1484           0 :   arg4 = (GNMGraphAlgorithmType)jarg4; 
    1485             :   {
    1486             :     /* %typemap(in) char **options */
    1487           0 :     arg5 = NULL;
    1488           0 :     if(jarg5 != 0) {
    1489           0 :       const jclass vector = jenv->FindClass("java/util/Vector");
    1490           0 :       const jclass enumeration = jenv->FindClass("java/util/Enumeration");
    1491           0 :       const jclass stringClass = jenv->FindClass("java/lang/String");
    1492           0 :       const jmethodID elements = jenv->GetMethodID(vector, "elements",
    1493             :         "()Ljava/util/Enumeration;");
    1494           0 :       const jmethodID hasMoreElements = jenv->GetMethodID(enumeration,
    1495             :         "hasMoreElements", "()Z");
    1496           0 :       const jmethodID getNextElement = jenv->GetMethodID(enumeration,
    1497             :         "nextElement", "()Ljava/lang/Object;");
    1498           0 :       if(vector == NULL || enumeration == NULL || elements == NULL ||
    1499           0 :         hasMoreElements == NULL || getNextElement == NULL) {
    1500           0 :         fprintf(stderr, "Could not load (options **) jni types.\n");
    1501           0 :         return 0;
    1502             :       }
    1503           0 :       for (jobject keys = jenv->CallObjectMethod(jarg5, elements);
    1504           0 :         jenv->CallBooleanMethod(keys, hasMoreElements) == JNI_TRUE;) {
    1505           0 :         jstring value = (jstring)jenv->CallObjectMethod(keys, getNextElement);
    1506           0 :         if (value == NULL || !jenv->IsInstanceOf(value, stringClass))
    1507             :         {
    1508           0 :           CSLDestroy(arg5);
    1509           0 :           SWIG_JavaThrowException(jenv, SWIG_JavaIllegalArgumentException, "an element in the vector is not a string");
    1510           0 :           return 0;
    1511             :         }
    1512           0 :         const char *valptr = jenv->GetStringUTFChars(value, 0);
    1513           0 :         arg5 = CSLAddString(arg5,  valptr);
    1514           0 :         jenv->ReleaseStringUTFChars(value, valptr);
    1515             :       }
    1516             :     }
    1517             :   }
    1518           0 :   result = (OGRLayerShadow *)GNMNetworkShadow_GetPath__SWIG_0(arg1,arg2,arg3,arg4,arg5);
    1519           0 :   *(OGRLayerShadow **)&jresult = result; 
    1520             :   {
    1521             :     /* %typemap(freearg) char **options */
    1522           0 :     CSLDestroy( arg5 );
    1523             :   }
    1524           0 :   return jresult;
    1525             : }
    1526             : 
    1527             : 
    1528           0 : SWIGEXPORT jlong JNICALL Java_org_gdal_gnm_gnmJNI_Network_1GetPath_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jint jarg4) {
    1529           0 :   jlong jresult = 0 ;
    1530           0 :   GNMNetworkShadow *arg1 = (GNMNetworkShadow *) 0 ;
    1531             :   GIntBig arg2 ;
    1532             :   GIntBig arg3 ;
    1533             :   GNMGraphAlgorithmType arg4 ;
    1534           0 :   OGRLayerShadow *result = 0 ;
    1535             :   
    1536             :   (void)jenv;
    1537             :   (void)jcls;
    1538             :   (void)jarg1_;
    1539           0 :   arg1 = *(GNMNetworkShadow **)&jarg1; 
    1540             :   {
    1541             :     /* %typemap(in) (GIntBig) */
    1542           0 :     arg2 = (GIntBig) jarg2;
    1543             :   }
    1544             :   {
    1545             :     /* %typemap(in) (GIntBig) */
    1546           0 :     arg3 = (GIntBig) jarg3;
    1547             :   }
    1548           0 :   arg4 = (GNMGraphAlgorithmType)jarg4; 
    1549           0 :   result = (OGRLayerShadow *)GNMNetworkShadow_GetPath__SWIG_0(arg1,arg2,arg3,arg4);
    1550           0 :   *(OGRLayerShadow **)&jresult = result; 
    1551           0 :   return jresult;
    1552             : }
    1553             : 
    1554             : 
    1555           0 : SWIGEXPORT jlong JNICALL Java_org_gdal_gnm_gnmJNI_Network_1DisconnectAll(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
    1556           0 :   jlong jresult = 0 ;
    1557           0 :   GNMNetworkShadow *arg1 = (GNMNetworkShadow *) 0 ;
    1558             :   CPLErr result;
    1559             :   
    1560             :   (void)jenv;
    1561             :   (void)jcls;
    1562             :   (void)jarg1_;
    1563           0 :   arg1 = *(GNMNetworkShadow **)&jarg1; 
    1564           0 :   result = GNMNetworkShadow_DisconnectAll(arg1);
    1565           0 :   *(CPLErr **)&jresult = new CPLErr((const CPLErr &)result); 
    1566           0 :   return jresult;
    1567             : }
    1568             : 
    1569             : 
    1570           0 : SWIGEXPORT jstring JNICALL Java_org_gdal_gnm_gnmJNI_Network_1GetProjection(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
    1571           0 :   jstring jresult = 0 ;
    1572           0 :   GNMNetworkShadow *arg1 = (GNMNetworkShadow *) 0 ;
    1573           0 :   char *result = 0 ;
    1574             :   
    1575             :   (void)jenv;
    1576             :   (void)jcls;
    1577             :   (void)jarg1_;
    1578           0 :   arg1 = *(GNMNetworkShadow **)&jarg1; 
    1579           0 :   result = (char *)GNMNetworkShadow_GetProjection(arg1);
    1580           0 :   jresult = SafeNewStringUTF8(jenv, (const char *)result);
    1581           0 :   return jresult;
    1582             : }
    1583             : 
    1584             : 
    1585           0 : SWIGEXPORT jstring JNICALL Java_org_gdal_gnm_gnmJNI_Network_1GetProjectionRef(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
    1586           0 :   jstring jresult = 0 ;
    1587           0 :   GNMNetworkShadow *arg1 = (GNMNetworkShadow *) 0 ;
    1588           0 :   char *result = 0 ;
    1589             :   
    1590             :   (void)jenv;
    1591             :   (void)jcls;
    1592             :   (void)jarg1_;
    1593           0 :   arg1 = *(GNMNetworkShadow **)&jarg1; 
    1594           0 :   result = (char *)GNMNetworkShadow_GetProjectionRef(arg1);
    1595           0 :   jresult = SafeNewStringUTF8(jenv, (const char *)result);
    1596           0 :   return jresult;
    1597             : }
    1598             : 
    1599             : 
    1600           0 : SWIGEXPORT jobject JNICALL Java_org_gdal_gnm_gnmJNI_Network_1GetFileList(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
    1601           0 :   jobject jresult = 0 ;
    1602           0 :   GNMNetworkShadow *arg1 = (GNMNetworkShadow *) 0 ;
    1603           0 :   char **result = 0 ;
    1604             :   
    1605             :   (void)jenv;
    1606             :   (void)jcls;
    1607             :   (void)jarg1_;
    1608           0 :   arg1 = *(GNMNetworkShadow **)&jarg1; 
    1609           0 :   result = (char **)GNMNetworkShadow_GetFileList(arg1);
    1610             :   {
    1611             :     /* %typemap(out) char **CSL */
    1612           0 :     char **stringarray = result;
    1613           0 :     const jclass vector = jenv->FindClass("java/util/Vector");
    1614           0 :     const jmethodID constructor = jenv->GetMethodID(vector, "<init>", "()V");
    1615           0 :     const jmethodID add = jenv->GetMethodID(vector, "add", "(Ljava/lang/Object;)Z");
    1616             :     
    1617           0 :     jresult = jenv->NewObject(vector, constructor);
    1618           0 :     if ( stringarray != NULL ) {
    1619           0 :       while(*stringarray != NULL) {
    1620           0 :         jstring value = SafeNewStringUTF8(jenv, *stringarray);
    1621           0 :         jenv->CallBooleanMethod(jresult, add, value);
    1622           0 :         jenv->DeleteLocalRef(value);
    1623           0 :         stringarray++;
    1624             :       }
    1625             :     }
    1626           0 :     CSLDestroy(result);
    1627             :   }
    1628           0 :   return jresult;
    1629             : }
    1630             : 
    1631             : 
    1632           0 : SWIGEXPORT jlong JNICALL Java_org_gdal_gnm_gnmJNI_Network_1CreateLayer_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2, jlong jarg3, jobject jarg3_, jint jarg4, jobject jarg5) {
    1633           0 :   jlong jresult = 0 ;
    1634           0 :   GNMNetworkShadow *arg1 = (GNMNetworkShadow *) 0 ;
    1635           0 :   char *arg2 = (char *) 0 ;
    1636           0 :   OSRSpatialReferenceShadow *arg3 = (OSRSpatialReferenceShadow *) 0 ;
    1637             :   OGRwkbGeometryType arg4 ;
    1638           0 :   char **arg5 = (char **) 0 ;
    1639           0 :   OGRLayerShadow *result = 0 ;
    1640             :   
    1641             :   (void)jenv;
    1642             :   (void)jcls;
    1643             :   (void)jarg1_;
    1644             :   (void)jarg3_;
    1645           0 :   arg1 = *(GNMNetworkShadow **)&jarg1; 
    1646           0 :   arg2 = 0;
    1647           0 :   if (jarg2) {
    1648           0 :     arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    1649           0 :     if (!arg2) return 0;
    1650             :   }
    1651           0 :   arg3 = *(OSRSpatialReferenceShadow **)&jarg3; 
    1652           0 :   arg4 = (OGRwkbGeometryType)jarg4; 
    1653             :   {
    1654             :     /* %typemap(in) char **options */
    1655           0 :     arg5 = NULL;
    1656           0 :     if(jarg5 != 0) {
    1657           0 :       const jclass vector = jenv->FindClass("java/util/Vector");
    1658           0 :       const jclass enumeration = jenv->FindClass("java/util/Enumeration");
    1659           0 :       const jclass stringClass = jenv->FindClass("java/lang/String");
    1660           0 :       const jmethodID elements = jenv->GetMethodID(vector, "elements",
    1661             :         "()Ljava/util/Enumeration;");
    1662           0 :       const jmethodID hasMoreElements = jenv->GetMethodID(enumeration,
    1663             :         "hasMoreElements", "()Z");
    1664           0 :       const jmethodID getNextElement = jenv->GetMethodID(enumeration,
    1665             :         "nextElement", "()Ljava/lang/Object;");
    1666           0 :       if(vector == NULL || enumeration == NULL || elements == NULL ||
    1667           0 :         hasMoreElements == NULL || getNextElement == NULL) {
    1668           0 :         fprintf(stderr, "Could not load (options **) jni types.\n");
    1669           0 :         return 0;
    1670             :       }
    1671           0 :       for (jobject keys = jenv->CallObjectMethod(jarg5, elements);
    1672           0 :         jenv->CallBooleanMethod(keys, hasMoreElements) == JNI_TRUE;) {
    1673           0 :         jstring value = (jstring)jenv->CallObjectMethod(keys, getNextElement);
    1674           0 :         if (value == NULL || !jenv->IsInstanceOf(value, stringClass))
    1675             :         {
    1676           0 :           CSLDestroy(arg5);
    1677           0 :           SWIG_JavaThrowException(jenv, SWIG_JavaIllegalArgumentException, "an element in the vector is not a string");
    1678           0 :           return 0;
    1679             :         }
    1680           0 :         const char *valptr = jenv->GetStringUTFChars(value, 0);
    1681           0 :         arg5 = CSLAddString(arg5,  valptr);
    1682           0 :         jenv->ReleaseStringUTFChars(value, valptr);
    1683             :       }
    1684             :     }
    1685             :   }
    1686           0 :   result = (OGRLayerShadow *)GNMNetworkShadow_CreateLayer__SWIG_0(arg1,(char const *)arg2,arg3,arg4,arg5);
    1687           0 :   *(OGRLayerShadow **)&jresult = result; 
    1688           0 :   if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2);
    1689             :   {
    1690             :     /* %typemap(freearg) char **options */
    1691           0 :     CSLDestroy( arg5 );
    1692             :   }
    1693           0 :   return jresult;
    1694             : }
    1695             : 
    1696             : 
    1697           0 : SWIGEXPORT jlong JNICALL Java_org_gdal_gnm_gnmJNI_Network_1CreateLayer_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2, jlong jarg3, jobject jarg3_, jint jarg4) {
    1698           0 :   jlong jresult = 0 ;
    1699           0 :   GNMNetworkShadow *arg1 = (GNMNetworkShadow *) 0 ;
    1700           0 :   char *arg2 = (char *) 0 ;
    1701           0 :   OSRSpatialReferenceShadow *arg3 = (OSRSpatialReferenceShadow *) 0 ;
    1702             :   OGRwkbGeometryType arg4 ;
    1703           0 :   OGRLayerShadow *result = 0 ;
    1704             :   
    1705             :   (void)jenv;
    1706             :   (void)jcls;
    1707             :   (void)jarg1_;
    1708             :   (void)jarg3_;
    1709           0 :   arg1 = *(GNMNetworkShadow **)&jarg1; 
    1710           0 :   arg2 = 0;
    1711           0 :   if (jarg2) {
    1712           0 :     arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    1713           0 :     if (!arg2) return 0;
    1714             :   }
    1715           0 :   arg3 = *(OSRSpatialReferenceShadow **)&jarg3; 
    1716           0 :   arg4 = (OGRwkbGeometryType)jarg4; 
    1717           0 :   result = (OGRLayerShadow *)GNMNetworkShadow_CreateLayer__SWIG_0(arg1,(char const *)arg2,arg3,arg4);
    1718           0 :   *(OGRLayerShadow **)&jresult = result; 
    1719           0 :   if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2);
    1720           0 :   return jresult;
    1721             : }
    1722             : 
    1723             : 
    1724           0 : SWIGEXPORT jlong JNICALL Java_org_gdal_gnm_gnmJNI_Network_1CreateLayer_1_1SWIG_12(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2, jlong jarg3, jobject jarg3_) {
    1725           0 :   jlong jresult = 0 ;
    1726           0 :   GNMNetworkShadow *arg1 = (GNMNetworkShadow *) 0 ;
    1727           0 :   char *arg2 = (char *) 0 ;
    1728           0 :   OSRSpatialReferenceShadow *arg3 = (OSRSpatialReferenceShadow *) 0 ;
    1729           0 :   OGRLayerShadow *result = 0 ;
    1730             :   
    1731             :   (void)jenv;
    1732             :   (void)jcls;
    1733             :   (void)jarg1_;
    1734             :   (void)jarg3_;
    1735           0 :   arg1 = *(GNMNetworkShadow **)&jarg1; 
    1736           0 :   arg2 = 0;
    1737           0 :   if (jarg2) {
    1738           0 :     arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    1739           0 :     if (!arg2) return 0;
    1740             :   }
    1741           0 :   arg3 = *(OSRSpatialReferenceShadow **)&jarg3; 
    1742           0 :   result = (OGRLayerShadow *)GNMNetworkShadow_CreateLayer__SWIG_0(arg1,(char const *)arg2,arg3);
    1743           0 :   *(OGRLayerShadow **)&jresult = result; 
    1744           0 :   if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2);
    1745           0 :   return jresult;
    1746             : }
    1747             : 
    1748             : 
    1749           0 : SWIGEXPORT jlong JNICALL Java_org_gdal_gnm_gnmJNI_Network_1CreateLayer_1_1SWIG_13(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2) {
    1750           0 :   jlong jresult = 0 ;
    1751           0 :   GNMNetworkShadow *arg1 = (GNMNetworkShadow *) 0 ;
    1752           0 :   char *arg2 = (char *) 0 ;
    1753           0 :   OGRLayerShadow *result = 0 ;
    1754             :   
    1755             :   (void)jenv;
    1756             :   (void)jcls;
    1757             :   (void)jarg1_;
    1758           0 :   arg1 = *(GNMNetworkShadow **)&jarg1; 
    1759           0 :   arg2 = 0;
    1760           0 :   if (jarg2) {
    1761           0 :     arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    1762           0 :     if (!arg2) return 0;
    1763             :   }
    1764           0 :   result = (OGRLayerShadow *)GNMNetworkShadow_CreateLayer__SWIG_0(arg1,(char const *)arg2);
    1765           0 :   *(OGRLayerShadow **)&jresult = result; 
    1766           0 :   if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2);
    1767           0 :   return jresult;
    1768             : }
    1769             : 
    1770             : 
    1771           0 : SWIGEXPORT jlong JNICALL Java_org_gdal_gnm_gnmJNI_Network_1CopyLayer_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jstring jarg3, jobject jarg4) {
    1772           0 :   jlong jresult = 0 ;
    1773           0 :   GNMNetworkShadow *arg1 = (GNMNetworkShadow *) 0 ;
    1774           0 :   OGRLayerShadow *arg2 = (OGRLayerShadow *) 0 ;
    1775           0 :   char *arg3 = (char *) 0 ;
    1776           0 :   char **arg4 = (char **) 0 ;
    1777           0 :   OGRLayerShadow *result = 0 ;
    1778             :   
    1779             :   (void)jenv;
    1780             :   (void)jcls;
    1781             :   (void)jarg1_;
    1782             :   (void)jarg2_;
    1783           0 :   arg1 = *(GNMNetworkShadow **)&jarg1; 
    1784           0 :   arg2 = *(OGRLayerShadow **)&jarg2; 
    1785           0 :   arg3 = 0;
    1786           0 :   if (jarg3) {
    1787           0 :     arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0);
    1788           0 :     if (!arg3) return 0;
    1789             :   }
    1790             :   {
    1791             :     /* %typemap(in) char **options */
    1792           0 :     arg4 = NULL;
    1793           0 :     if(jarg4 != 0) {
    1794           0 :       const jclass vector = jenv->FindClass("java/util/Vector");
    1795           0 :       const jclass enumeration = jenv->FindClass("java/util/Enumeration");
    1796           0 :       const jclass stringClass = jenv->FindClass("java/lang/String");
    1797           0 :       const jmethodID elements = jenv->GetMethodID(vector, "elements",
    1798             :         "()Ljava/util/Enumeration;");
    1799           0 :       const jmethodID hasMoreElements = jenv->GetMethodID(enumeration,
    1800             :         "hasMoreElements", "()Z");
    1801           0 :       const jmethodID getNextElement = jenv->GetMethodID(enumeration,
    1802             :         "nextElement", "()Ljava/lang/Object;");
    1803           0 :       if(vector == NULL || enumeration == NULL || elements == NULL ||
    1804           0 :         hasMoreElements == NULL || getNextElement == NULL) {
    1805           0 :         fprintf(stderr, "Could not load (options **) jni types.\n");
    1806           0 :         return 0;
    1807             :       }
    1808           0 :       for (jobject keys = jenv->CallObjectMethod(jarg4, elements);
    1809           0 :         jenv->CallBooleanMethod(keys, hasMoreElements) == JNI_TRUE;) {
    1810           0 :         jstring value = (jstring)jenv->CallObjectMethod(keys, getNextElement);
    1811           0 :         if (value == NULL || !jenv->IsInstanceOf(value, stringClass))
    1812             :         {
    1813           0 :           CSLDestroy(arg4);
    1814           0 :           SWIG_JavaThrowException(jenv, SWIG_JavaIllegalArgumentException, "an element in the vector is not a string");
    1815           0 :           return 0;
    1816             :         }
    1817           0 :         const char *valptr = jenv->GetStringUTFChars(value, 0);
    1818           0 :         arg4 = CSLAddString(arg4,  valptr);
    1819           0 :         jenv->ReleaseStringUTFChars(value, valptr);
    1820             :       }
    1821             :     }
    1822             :   }
    1823             :   {
    1824           0 :     if (!arg2) {
    1825             :       {
    1826           0 :         SWIG_JavaException(jenv, SWIG_ValueError, "Received a NULL pointer."); return 0; 
    1827             :       };
    1828             :     }
    1829             :   }
    1830           0 :   result = (OGRLayerShadow *)GNMNetworkShadow_CopyLayer__SWIG_0(arg1,arg2,(char const *)arg3,arg4);
    1831           0 :   *(OGRLayerShadow **)&jresult = result; 
    1832           0 :   if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3);
    1833             :   {
    1834             :     /* %typemap(freearg) char **options */
    1835           0 :     CSLDestroy( arg4 );
    1836             :   }
    1837           0 :   return jresult;
    1838             : }
    1839             : 
    1840             : 
    1841           0 : SWIGEXPORT jlong JNICALL Java_org_gdal_gnm_gnmJNI_Network_1CopyLayer_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jstring jarg3) {
    1842           0 :   jlong jresult = 0 ;
    1843           0 :   GNMNetworkShadow *arg1 = (GNMNetworkShadow *) 0 ;
    1844           0 :   OGRLayerShadow *arg2 = (OGRLayerShadow *) 0 ;
    1845           0 :   char *arg3 = (char *) 0 ;
    1846           0 :   OGRLayerShadow *result = 0 ;
    1847             :   
    1848             :   (void)jenv;
    1849             :   (void)jcls;
    1850             :   (void)jarg1_;
    1851             :   (void)jarg2_;
    1852           0 :   arg1 = *(GNMNetworkShadow **)&jarg1; 
    1853           0 :   arg2 = *(OGRLayerShadow **)&jarg2; 
    1854           0 :   arg3 = 0;
    1855           0 :   if (jarg3) {
    1856           0 :     arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0);
    1857           0 :     if (!arg3) return 0;
    1858             :   }
    1859             :   {
    1860           0 :     if (!arg2) {
    1861             :       {
    1862           0 :         SWIG_JavaException(jenv, SWIG_ValueError, "Received a NULL pointer."); return 0; 
    1863             :       };
    1864             :     }
    1865             :   }
    1866           0 :   result = (OGRLayerShadow *)GNMNetworkShadow_CopyLayer__SWIG_0(arg1,arg2,(char const *)arg3);
    1867           0 :   *(OGRLayerShadow **)&jresult = result; 
    1868           0 :   if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3);
    1869           0 :   return jresult;
    1870             : }
    1871             : 
    1872             : 
    1873           0 : SWIGEXPORT jint JNICALL Java_org_gdal_gnm_gnmJNI_Network_1DeleteLayer(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2) {
    1874           0 :   jint jresult = 0 ;
    1875           0 :   GNMNetworkShadow *arg1 = (GNMNetworkShadow *) 0 ;
    1876             :   int arg2 ;
    1877             :   OGRErr result;
    1878             :   
    1879             :   (void)jenv;
    1880             :   (void)jcls;
    1881             :   (void)jarg1_;
    1882           0 :   arg1 = *(GNMNetworkShadow **)&jarg1; 
    1883           0 :   arg2 = (int)jarg2; 
    1884           0 :   result = (OGRErr)GNMNetworkShadow_DeleteLayer(arg1,arg2);
    1885             :   {
    1886             :     /* %typemap(out,fragment="OGRErrMessages") OGRErr */
    1887           0 :     if (result != 0 && bUseExceptions) {
    1888           0 :       SWIG_JavaThrowException(jenv, SWIG_JavaRuntimeException,
    1889             :         OGRErrMessages(result));
    1890           0 :       return 0;
    1891             :     }
    1892           0 :     jresult = (jint)result;
    1893             :   }
    1894             :   {
    1895             :     /* %typemap(ret) OGRErr */
    1896             :   }
    1897           0 :   return jresult;
    1898             : }
    1899             : 
    1900             : 
    1901           0 : SWIGEXPORT jint JNICALL Java_org_gdal_gnm_gnmJNI_Network_1GetLayerCount(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
    1902           0 :   jint jresult = 0 ;
    1903           0 :   GNMNetworkShadow *arg1 = (GNMNetworkShadow *) 0 ;
    1904             :   int result;
    1905             :   
    1906             :   (void)jenv;
    1907             :   (void)jcls;
    1908             :   (void)jarg1_;
    1909           0 :   arg1 = *(GNMNetworkShadow **)&jarg1; 
    1910           0 :   result = (int)GNMNetworkShadow_GetLayerCount(arg1);
    1911           0 :   jresult = (jint)result; 
    1912           0 :   return jresult;
    1913             : }
    1914             : 
    1915             : 
    1916           0 : SWIGEXPORT jlong JNICALL Java_org_gdal_gnm_gnmJNI_Network_1GetLayerByIndex(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2) {
    1917           0 :   jlong jresult = 0 ;
    1918           0 :   GNMNetworkShadow *arg1 = (GNMNetworkShadow *) 0 ;
    1919             :   int arg2 ;
    1920           0 :   OGRLayerShadow *result = 0 ;
    1921             :   
    1922             :   (void)jenv;
    1923             :   (void)jcls;
    1924             :   (void)jarg1_;
    1925           0 :   arg1 = *(GNMNetworkShadow **)&jarg1; 
    1926           0 :   arg2 = (int)jarg2; 
    1927           0 :   result = (OGRLayerShadow *)GNMNetworkShadow_GetLayerByIndex(arg1,arg2);
    1928           0 :   *(OGRLayerShadow **)&jresult = result; 
    1929           0 :   return jresult;
    1930             : }
    1931             : 
    1932             : 
    1933           0 : SWIGEXPORT jlong JNICALL Java_org_gdal_gnm_gnmJNI_Network_1GetLayerByName(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2) {
    1934           0 :   jlong jresult = 0 ;
    1935           0 :   GNMNetworkShadow *arg1 = (GNMNetworkShadow *) 0 ;
    1936           0 :   char *arg2 = (char *) 0 ;
    1937           0 :   OGRLayerShadow *result = 0 ;
    1938             :   
    1939             :   (void)jenv;
    1940             :   (void)jcls;
    1941             :   (void)jarg1_;
    1942           0 :   arg1 = *(GNMNetworkShadow **)&jarg1; 
    1943           0 :   arg2 = 0;
    1944           0 :   if (jarg2) {
    1945           0 :     arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    1946           0 :     if (!arg2) return 0;
    1947             :   }
    1948           0 :   result = (OGRLayerShadow *)GNMNetworkShadow_GetLayerByName(arg1,(char const *)arg2);
    1949           0 :   *(OGRLayerShadow **)&jresult = result; 
    1950           0 :   if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2);
    1951           0 :   return jresult;
    1952             : }
    1953             : 
    1954             : 
    1955           0 : SWIGEXPORT jboolean JNICALL Java_org_gdal_gnm_gnmJNI_Network_1TestCapability(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2) {
    1956           0 :   jboolean jresult = 0 ;
    1957           0 :   GNMNetworkShadow *arg1 = (GNMNetworkShadow *) 0 ;
    1958           0 :   char *arg2 = (char *) 0 ;
    1959             :   bool result;
    1960             :   
    1961             :   (void)jenv;
    1962             :   (void)jcls;
    1963             :   (void)jarg1_;
    1964           0 :   arg1 = *(GNMNetworkShadow **)&jarg1; 
    1965           0 :   arg2 = 0;
    1966           0 :   if (jarg2) {
    1967           0 :     arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    1968           0 :     if (!arg2) return 0;
    1969             :   }
    1970             :   {
    1971           0 :     if (!arg2) {
    1972             :       {
    1973           0 :         SWIG_JavaException(jenv, SWIG_ValueError, "Received a NULL pointer."); return 0; 
    1974             :       };
    1975             :     }
    1976             :   }
    1977           0 :   result = (bool)GNMNetworkShadow_TestCapability(arg1,(char const *)arg2);
    1978           0 :   jresult = (jboolean)result; 
    1979           0 :   if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2);
    1980           0 :   return jresult;
    1981             : }
    1982             : 
    1983             : 
    1984           0 : SWIGEXPORT jint JNICALL Java_org_gdal_gnm_gnmJNI_Network_1StartTransaction_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2) {
    1985           0 :   jint jresult = 0 ;
    1986           0 :   GNMNetworkShadow *arg1 = (GNMNetworkShadow *) 0 ;
    1987             :   int arg2 ;
    1988             :   OGRErr result;
    1989             :   
    1990             :   (void)jenv;
    1991             :   (void)jcls;
    1992             :   (void)jarg1_;
    1993           0 :   arg1 = *(GNMNetworkShadow **)&jarg1; 
    1994           0 :   arg2 = (int)jarg2; 
    1995           0 :   result = (OGRErr)GNMNetworkShadow_StartTransaction__SWIG_0(arg1,arg2);
    1996             :   {
    1997             :     /* %typemap(out,fragment="OGRErrMessages") OGRErr */
    1998           0 :     if (result != 0 && bUseExceptions) {
    1999           0 :       SWIG_JavaThrowException(jenv, SWIG_JavaRuntimeException,
    2000             :         OGRErrMessages(result));
    2001           0 :       return 0;
    2002             :     }
    2003           0 :     jresult = (jint)result;
    2004             :   }
    2005             :   {
    2006             :     /* %typemap(ret) OGRErr */
    2007             :   }
    2008           0 :   return jresult;
    2009             : }
    2010             : 
    2011             : 
    2012           0 : SWIGEXPORT jint JNICALL Java_org_gdal_gnm_gnmJNI_Network_1StartTransaction_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
    2013           0 :   jint jresult = 0 ;
    2014           0 :   GNMNetworkShadow *arg1 = (GNMNetworkShadow *) 0 ;
    2015             :   OGRErr result;
    2016             :   
    2017             :   (void)jenv;
    2018             :   (void)jcls;
    2019             :   (void)jarg1_;
    2020           0 :   arg1 = *(GNMNetworkShadow **)&jarg1; 
    2021           0 :   result = (OGRErr)GNMNetworkShadow_StartTransaction__SWIG_0(arg1);
    2022             :   {
    2023             :     /* %typemap(out,fragment="OGRErrMessages") OGRErr */
    2024           0 :     if (result != 0 && bUseExceptions) {
    2025           0 :       SWIG_JavaThrowException(jenv, SWIG_JavaRuntimeException,
    2026             :         OGRErrMessages(result));
    2027           0 :       return 0;
    2028             :     }
    2029           0 :     jresult = (jint)result;
    2030             :   }
    2031             :   {
    2032             :     /* %typemap(ret) OGRErr */
    2033             :   }
    2034           0 :   return jresult;
    2035             : }
    2036             : 
    2037             : 
    2038           0 : SWIGEXPORT jint JNICALL Java_org_gdal_gnm_gnmJNI_Network_1CommitTransaction(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
    2039           0 :   jint jresult = 0 ;
    2040           0 :   GNMNetworkShadow *arg1 = (GNMNetworkShadow *) 0 ;
    2041             :   OGRErr result;
    2042             :   
    2043             :   (void)jenv;
    2044             :   (void)jcls;
    2045             :   (void)jarg1_;
    2046           0 :   arg1 = *(GNMNetworkShadow **)&jarg1; 
    2047           0 :   result = (OGRErr)GNMNetworkShadow_CommitTransaction(arg1);
    2048             :   {
    2049             :     /* %typemap(out,fragment="OGRErrMessages") OGRErr */
    2050           0 :     if (result != 0 && bUseExceptions) {
    2051           0 :       SWIG_JavaThrowException(jenv, SWIG_JavaRuntimeException,
    2052             :         OGRErrMessages(result));
    2053           0 :       return 0;
    2054             :     }
    2055           0 :     jresult = (jint)result;
    2056             :   }
    2057             :   {
    2058             :     /* %typemap(ret) OGRErr */
    2059             :   }
    2060           0 :   return jresult;
    2061             : }
    2062             : 
    2063             : 
    2064           0 : SWIGEXPORT jint JNICALL Java_org_gdal_gnm_gnmJNI_Network_1RollbackTransaction(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
    2065           0 :   jint jresult = 0 ;
    2066           0 :   GNMNetworkShadow *arg1 = (GNMNetworkShadow *) 0 ;
    2067             :   OGRErr result;
    2068             :   
    2069             :   (void)jenv;
    2070             :   (void)jcls;
    2071             :   (void)jarg1_;
    2072           0 :   arg1 = *(GNMNetworkShadow **)&jarg1; 
    2073           0 :   result = (OGRErr)GNMNetworkShadow_RollbackTransaction(arg1);
    2074             :   {
    2075             :     /* %typemap(out,fragment="OGRErrMessages") OGRErr */
    2076           0 :     if (result != 0 && bUseExceptions) {
    2077           0 :       SWIG_JavaThrowException(jenv, SWIG_JavaRuntimeException,
    2078             :         OGRErrMessages(result));
    2079           0 :       return 0;
    2080             :     }
    2081           0 :     jresult = (jint)result;
    2082             :   }
    2083             :   {
    2084             :     /* %typemap(ret) OGRErr */
    2085             :   }
    2086           0 :   return jresult;
    2087             : }
    2088             : 
    2089             : 
    2090           0 : SWIGEXPORT void JNICALL Java_org_gdal_gnm_gnmJNI_delete_1GenericNetwork(JNIEnv *jenv, jclass jcls, jlong jarg1) {
    2091           0 :   GNMGenericNetworkShadow *arg1 = (GNMGenericNetworkShadow *) 0 ;
    2092             :   
    2093             :   (void)jenv;
    2094             :   (void)jcls;
    2095           0 :   arg1 = *(GNMGenericNetworkShadow **)&jarg1; 
    2096           0 :   delete_GNMGenericNetworkShadow(arg1);
    2097           0 : }
    2098             : 
    2099             : 
    2100           0 : SWIGEXPORT jlong JNICALL Java_org_gdal_gnm_gnmJNI_GenericNetwork_1ConnectFeatures(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jlong jarg4, jdouble jarg5, jdouble jarg6, jint jarg7) {
    2101           0 :   jlong jresult = 0 ;
    2102           0 :   GNMGenericNetworkShadow *arg1 = (GNMGenericNetworkShadow *) 0 ;
    2103             :   GIntBig arg2 ;
    2104             :   GIntBig arg3 ;
    2105             :   GIntBig arg4 ;
    2106             :   double arg5 ;
    2107             :   double arg6 ;
    2108             :   GNMDirection arg7 ;
    2109             :   CPLErr result;
    2110             :   
    2111             :   (void)jenv;
    2112             :   (void)jcls;
    2113             :   (void)jarg1_;
    2114           0 :   arg1 = *(GNMGenericNetworkShadow **)&jarg1; 
    2115             :   {
    2116             :     /* %typemap(in) (GIntBig) */
    2117           0 :     arg2 = (GIntBig) jarg2;
    2118             :   }
    2119             :   {
    2120             :     /* %typemap(in) (GIntBig) */
    2121           0 :     arg3 = (GIntBig) jarg3;
    2122             :   }
    2123             :   {
    2124             :     /* %typemap(in) (GIntBig) */
    2125           0 :     arg4 = (GIntBig) jarg4;
    2126             :   }
    2127           0 :   arg5 = (double)jarg5; 
    2128           0 :   arg6 = (double)jarg6; 
    2129           0 :   arg7 = (GNMDirection)jarg7; 
    2130           0 :   result = GNMGenericNetworkShadow_ConnectFeatures(arg1,arg2,arg3,arg4,arg5,arg6,arg7);
    2131           0 :   *(CPLErr **)&jresult = new CPLErr((const CPLErr &)result); 
    2132           0 :   return jresult;
    2133             : }
    2134             : 
    2135             : 
    2136           0 : SWIGEXPORT jlong JNICALL Java_org_gdal_gnm_gnmJNI_GenericNetwork_1DisconnectFeatures(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jlong jarg4) {
    2137           0 :   jlong jresult = 0 ;
    2138           0 :   GNMGenericNetworkShadow *arg1 = (GNMGenericNetworkShadow *) 0 ;
    2139             :   GIntBig arg2 ;
    2140             :   GIntBig arg3 ;
    2141             :   GIntBig arg4 ;
    2142             :   CPLErr result;
    2143             :   
    2144             :   (void)jenv;
    2145             :   (void)jcls;
    2146             :   (void)jarg1_;
    2147           0 :   arg1 = *(GNMGenericNetworkShadow **)&jarg1; 
    2148             :   {
    2149             :     /* %typemap(in) (GIntBig) */
    2150           0 :     arg2 = (GIntBig) jarg2;
    2151             :   }
    2152             :   {
    2153             :     /* %typemap(in) (GIntBig) */
    2154           0 :     arg3 = (GIntBig) jarg3;
    2155             :   }
    2156             :   {
    2157             :     /* %typemap(in) (GIntBig) */
    2158           0 :     arg4 = (GIntBig) jarg4;
    2159             :   }
    2160           0 :   result = GNMGenericNetworkShadow_DisconnectFeatures(arg1,arg2,arg3,arg4);
    2161           0 :   *(CPLErr **)&jresult = new CPLErr((const CPLErr &)result); 
    2162           0 :   return jresult;
    2163             : }
    2164             : 
    2165             : 
    2166           0 : SWIGEXPORT jlong JNICALL Java_org_gdal_gnm_gnmJNI_GenericNetwork_1DisconnectFeaturesWithId(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) {
    2167           0 :   jlong jresult = 0 ;
    2168           0 :   GNMGenericNetworkShadow *arg1 = (GNMGenericNetworkShadow *) 0 ;
    2169             :   GIntBig arg2 ;
    2170             :   CPLErr result;
    2171             :   
    2172             :   (void)jenv;
    2173             :   (void)jcls;
    2174             :   (void)jarg1_;
    2175           0 :   arg1 = *(GNMGenericNetworkShadow **)&jarg1; 
    2176             :   {
    2177             :     /* %typemap(in) (GIntBig) */
    2178           0 :     arg2 = (GIntBig) jarg2;
    2179             :   }
    2180           0 :   result = GNMGenericNetworkShadow_DisconnectFeaturesWithId(arg1,arg2);
    2181           0 :   *(CPLErr **)&jresult = new CPLErr((const CPLErr &)result); 
    2182           0 :   return jresult;
    2183             : }
    2184             : 
    2185             : 
    2186           0 : SWIGEXPORT jlong JNICALL Java_org_gdal_gnm_gnmJNI_GenericNetwork_1ReconnectFeatures(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3, jlong jarg4, jdouble jarg5, jdouble jarg6, jint jarg7) {
    2187           0 :   jlong jresult = 0 ;
    2188           0 :   GNMGenericNetworkShadow *arg1 = (GNMGenericNetworkShadow *) 0 ;
    2189             :   GIntBig arg2 ;
    2190             :   GIntBig arg3 ;
    2191             :   GIntBig arg4 ;
    2192             :   double arg5 ;
    2193             :   double arg6 ;
    2194             :   GNMDirection arg7 ;
    2195             :   CPLErr result;
    2196             :   
    2197             :   (void)jenv;
    2198             :   (void)jcls;
    2199             :   (void)jarg1_;
    2200           0 :   arg1 = *(GNMGenericNetworkShadow **)&jarg1; 
    2201             :   {
    2202             :     /* %typemap(in) (GIntBig) */
    2203           0 :     arg2 = (GIntBig) jarg2;
    2204             :   }
    2205             :   {
    2206             :     /* %typemap(in) (GIntBig) */
    2207           0 :     arg3 = (GIntBig) jarg3;
    2208             :   }
    2209             :   {
    2210             :     /* %typemap(in) (GIntBig) */
    2211           0 :     arg4 = (GIntBig) jarg4;
    2212             :   }
    2213           0 :   arg5 = (double)jarg5; 
    2214           0 :   arg6 = (double)jarg6; 
    2215           0 :   arg7 = (GNMDirection)jarg7; 
    2216           0 :   result = GNMGenericNetworkShadow_ReconnectFeatures(arg1,arg2,arg3,arg4,arg5,arg6,arg7);
    2217           0 :   *(CPLErr **)&jresult = new CPLErr((const CPLErr &)result); 
    2218           0 :   return jresult;
    2219             : }
    2220             : 
    2221             : 
    2222           0 : SWIGEXPORT jlong JNICALL Java_org_gdal_gnm_gnmJNI_GenericNetwork_1CreateRule(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2) {
    2223           0 :   jlong jresult = 0 ;
    2224           0 :   GNMGenericNetworkShadow *arg1 = (GNMGenericNetworkShadow *) 0 ;
    2225           0 :   char *arg2 = (char *) 0 ;
    2226             :   CPLErr result;
    2227             :   
    2228             :   (void)jenv;
    2229             :   (void)jcls;
    2230             :   (void)jarg1_;
    2231           0 :   arg1 = *(GNMGenericNetworkShadow **)&jarg1; 
    2232           0 :   arg2 = 0;
    2233           0 :   if (jarg2) {
    2234           0 :     arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    2235           0 :     if (!arg2) return 0;
    2236             :   }
    2237             :   {
    2238           0 :     if (!arg2) {
    2239             :       {
    2240           0 :         SWIG_JavaException(jenv, SWIG_ValueError, "Received a NULL pointer."); return 0; 
    2241             :       };
    2242             :     }
    2243             :   }
    2244           0 :   result = GNMGenericNetworkShadow_CreateRule(arg1,(char const *)arg2);
    2245           0 :   *(CPLErr **)&jresult = new CPLErr((const CPLErr &)result); 
    2246           0 :   if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2);
    2247           0 :   return jresult;
    2248             : }
    2249             : 
    2250             : 
    2251           0 : SWIGEXPORT jlong JNICALL Java_org_gdal_gnm_gnmJNI_GenericNetwork_1DeleteAllRules(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
    2252           0 :   jlong jresult = 0 ;
    2253           0 :   GNMGenericNetworkShadow *arg1 = (GNMGenericNetworkShadow *) 0 ;
    2254             :   CPLErr result;
    2255             :   
    2256             :   (void)jenv;
    2257             :   (void)jcls;
    2258             :   (void)jarg1_;
    2259           0 :   arg1 = *(GNMGenericNetworkShadow **)&jarg1; 
    2260           0 :   result = GNMGenericNetworkShadow_DeleteAllRules(arg1);
    2261           0 :   *(CPLErr **)&jresult = new CPLErr((const CPLErr &)result); 
    2262           0 :   return jresult;
    2263             : }
    2264             : 
    2265             : 
    2266           0 : SWIGEXPORT jlong JNICALL Java_org_gdal_gnm_gnmJNI_GenericNetwork_1DeleteRule(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2) {
    2267           0 :   jlong jresult = 0 ;
    2268           0 :   GNMGenericNetworkShadow *arg1 = (GNMGenericNetworkShadow *) 0 ;
    2269           0 :   char *arg2 = (char *) 0 ;
    2270             :   CPLErr result;
    2271             :   
    2272             :   (void)jenv;
    2273             :   (void)jcls;
    2274             :   (void)jarg1_;
    2275           0 :   arg1 = *(GNMGenericNetworkShadow **)&jarg1; 
    2276           0 :   arg2 = 0;
    2277           0 :   if (jarg2) {
    2278           0 :     arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0);
    2279           0 :     if (!arg2) return 0;
    2280             :   }
    2281             :   {
    2282           0 :     if (!arg2) {
    2283             :       {
    2284           0 :         SWIG_JavaException(jenv, SWIG_ValueError, "Received a NULL pointer."); return 0; 
    2285             :       };
    2286             :     }
    2287             :   }
    2288           0 :   result = GNMGenericNetworkShadow_DeleteRule(arg1,(char const *)arg2);
    2289           0 :   *(CPLErr **)&jresult = new CPLErr((const CPLErr &)result); 
    2290           0 :   if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2);
    2291           0 :   return jresult;
    2292             : }
    2293             : 
    2294             : 
    2295           0 : SWIGEXPORT jobject JNICALL Java_org_gdal_gnm_gnmJNI_GenericNetwork_1GetRules(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
    2296           0 :   jobject jresult = 0 ;
    2297           0 :   GNMGenericNetworkShadow *arg1 = (GNMGenericNetworkShadow *) 0 ;
    2298           0 :   char **result = 0 ;
    2299             :   
    2300             :   (void)jenv;
    2301             :   (void)jcls;
    2302             :   (void)jarg1_;
    2303           0 :   arg1 = *(GNMGenericNetworkShadow **)&jarg1; 
    2304           0 :   result = (char **)GNMGenericNetworkShadow_GetRules(arg1);
    2305             :   {
    2306             :     /* %typemap(out) char **CSL */
    2307           0 :     char **stringarray = result;
    2308           0 :     const jclass vector = jenv->FindClass("java/util/Vector");
    2309           0 :     const jmethodID constructor = jenv->GetMethodID(vector, "<init>", "()V");
    2310           0 :     const jmethodID add = jenv->GetMethodID(vector, "add", "(Ljava/lang/Object;)Z");
    2311             :     
    2312           0 :     jresult = jenv->NewObject(vector, constructor);
    2313           0 :     if ( stringarray != NULL ) {
    2314           0 :       while(*stringarray != NULL) {
    2315           0 :         jstring value = SafeNewStringUTF8(jenv, *stringarray);
    2316           0 :         jenv->CallBooleanMethod(jresult, add, value);
    2317           0 :         jenv->DeleteLocalRef(value);
    2318           0 :         stringarray++;
    2319             :       }
    2320             :     }
    2321           0 :     CSLDestroy(result);
    2322             :   }
    2323           0 :   return jresult;
    2324             : }
    2325             : 
    2326             : 
    2327           0 : SWIGEXPORT jlong JNICALL Java_org_gdal_gnm_gnmJNI_GenericNetwork_1ConnectPointsByLines(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jobject jarg2, jdouble jarg3, jdouble jarg4, jdouble jarg5, jint jarg6) {
    2328           0 :   jlong jresult = 0 ;
    2329           0 :   GNMGenericNetworkShadow *arg1 = (GNMGenericNetworkShadow *) 0 ;
    2330           0 :   char **arg2 = (char **) 0 ;
    2331             :   double arg3 ;
    2332             :   double arg4 ;
    2333             :   double arg5 ;
    2334             :   GNMDirection arg6 ;
    2335             :   CPLErr result;
    2336             :   
    2337             :   (void)jenv;
    2338             :   (void)jcls;
    2339             :   (void)jarg1_;
    2340           0 :   arg1 = *(GNMGenericNetworkShadow **)&jarg1; 
    2341             :   {
    2342             :     /* %typemap(in) char **options */
    2343           0 :     arg2 = NULL;
    2344           0 :     if(jarg2 != 0) {
    2345           0 :       const jclass vector = jenv->FindClass("java/util/Vector");
    2346           0 :       const jclass enumeration = jenv->FindClass("java/util/Enumeration");
    2347           0 :       const jclass stringClass = jenv->FindClass("java/lang/String");
    2348           0 :       const jmethodID elements = jenv->GetMethodID(vector, "elements",
    2349             :         "()Ljava/util/Enumeration;");
    2350           0 :       const jmethodID hasMoreElements = jenv->GetMethodID(enumeration,
    2351             :         "hasMoreElements", "()Z");
    2352           0 :       const jmethodID getNextElement = jenv->GetMethodID(enumeration,
    2353             :         "nextElement", "()Ljava/lang/Object;");
    2354           0 :       if(vector == NULL || enumeration == NULL || elements == NULL ||
    2355           0 :         hasMoreElements == NULL || getNextElement == NULL) {
    2356           0 :         fprintf(stderr, "Could not load (options **) jni types.\n");
    2357           0 :         return 0;
    2358             :       }
    2359           0 :       for (jobject keys = jenv->CallObjectMethod(jarg2, elements);
    2360           0 :         jenv->CallBooleanMethod(keys, hasMoreElements) == JNI_TRUE;) {
    2361           0 :         jstring value = (jstring)jenv->CallObjectMethod(keys, getNextElement);
    2362           0 :         if (value == NULL || !jenv->IsInstanceOf(value, stringClass))
    2363             :         {
    2364           0 :           CSLDestroy(arg2);
    2365           0 :           SWIG_JavaThrowException(jenv, SWIG_JavaIllegalArgumentException, "an element in the vector is not a string");
    2366           0 :           return 0;
    2367             :         }
    2368           0 :         const char *valptr = jenv->GetStringUTFChars(value, 0);
    2369           0 :         arg2 = CSLAddString(arg2,  valptr);
    2370           0 :         jenv->ReleaseStringUTFChars(value, valptr);
    2371             :       }
    2372             :     }
    2373             :   }
    2374           0 :   arg3 = (double)jarg3; 
    2375           0 :   arg4 = (double)jarg4; 
    2376           0 :   arg5 = (double)jarg5; 
    2377           0 :   arg6 = (GNMDirection)jarg6; 
    2378           0 :   result = GNMGenericNetworkShadow_ConnectPointsByLines(arg1,arg2,arg3,arg4,arg5,arg6);
    2379           0 :   *(CPLErr **)&jresult = new CPLErr((const CPLErr &)result); 
    2380             :   {
    2381             :     /* %typemap(freearg) char **options */
    2382           0 :     CSLDestroy( arg2 );
    2383             :   }
    2384           0 :   return jresult;
    2385             : }
    2386             : 
    2387             : 
    2388           0 : SWIGEXPORT jlong JNICALL Java_org_gdal_gnm_gnmJNI_GenericNetwork_1ChangeBlockState(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jboolean jarg3) {
    2389           0 :   jlong jresult = 0 ;
    2390           0 :   GNMGenericNetworkShadow *arg1 = (GNMGenericNetworkShadow *) 0 ;
    2391             :   GIntBig arg2 ;
    2392             :   bool arg3 ;
    2393             :   CPLErr result;
    2394             :   
    2395             :   (void)jenv;
    2396             :   (void)jcls;
    2397             :   (void)jarg1_;
    2398           0 :   arg1 = *(GNMGenericNetworkShadow **)&jarg1; 
    2399             :   {
    2400             :     /* %typemap(in) (GIntBig) */
    2401           0 :     arg2 = (GIntBig) jarg2;
    2402             :   }
    2403           0 :   arg3 = jarg3 ? true : false; 
    2404           0 :   result = GNMGenericNetworkShadow_ChangeBlockState(arg1,arg2,arg3);
    2405           0 :   *(CPLErr **)&jresult = new CPLErr((const CPLErr &)result); 
    2406           0 :   return jresult;
    2407             : }
    2408             : 
    2409             : 
    2410           0 : SWIGEXPORT jlong JNICALL Java_org_gdal_gnm_gnmJNI_GenericNetwork_1ChangeAllBlockState_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jboolean jarg2) {
    2411           0 :   jlong jresult = 0 ;
    2412           0 :   GNMGenericNetworkShadow *arg1 = (GNMGenericNetworkShadow *) 0 ;
    2413             :   bool arg2 ;
    2414             :   CPLErr result;
    2415             :   
    2416             :   (void)jenv;
    2417             :   (void)jcls;
    2418             :   (void)jarg1_;
    2419           0 :   arg1 = *(GNMGenericNetworkShadow **)&jarg1; 
    2420           0 :   arg2 = jarg2 ? true : false; 
    2421           0 :   result = GNMGenericNetworkShadow_ChangeAllBlockState__SWIG_0(arg1,arg2);
    2422           0 :   *(CPLErr **)&jresult = new CPLErr((const CPLErr &)result); 
    2423           0 :   return jresult;
    2424             : }
    2425             : 
    2426             : 
    2427           0 : SWIGEXPORT jlong JNICALL Java_org_gdal_gnm_gnmJNI_GenericNetwork_1ChangeAllBlockState_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
    2428           0 :   jlong jresult = 0 ;
    2429           0 :   GNMGenericNetworkShadow *arg1 = (GNMGenericNetworkShadow *) 0 ;
    2430             :   CPLErr result;
    2431             :   
    2432             :   (void)jenv;
    2433             :   (void)jcls;
    2434             :   (void)jarg1_;
    2435           0 :   arg1 = *(GNMGenericNetworkShadow **)&jarg1; 
    2436           0 :   result = GNMGenericNetworkShadow_ChangeAllBlockState__SWIG_0(arg1);
    2437           0 :   *(CPLErr **)&jresult = new CPLErr((const CPLErr &)result); 
    2438           0 :   return jresult;
    2439             : }
    2440             : 
    2441             : 
    2442           0 : SWIGEXPORT jlong JNICALL Java_org_gdal_gnm_gnmJNI_TermProgressCallback_1SWIGUpcast(JNIEnv *jenv, jclass jcls, jlong jarg1) {
    2443           0 :     jlong baseptr = 0;
    2444             :     (void)jenv;
    2445             :     (void)jcls;
    2446           0 :     *(ProgressCallback **)&baseptr = *(TermProgressCallback **)&jarg1;
    2447           0 :     return baseptr;
    2448             : }
    2449             : 
    2450           0 : SWIGEXPORT jlong JNICALL Java_org_gdal_gnm_gnmJNI_Network_1SWIGUpcast(JNIEnv *jenv, jclass jcls, jlong jarg1) {
    2451           0 :     jlong baseptr = 0;
    2452             :     (void)jenv;
    2453             :     (void)jcls;
    2454           0 :     *(GDALMajorObjectShadow **)&baseptr = *(GNMNetworkShadow **)&jarg1;
    2455           0 :     return baseptr;
    2456             : }
    2457             : 
    2458           0 : SWIGEXPORT jlong JNICALL Java_org_gdal_gnm_gnmJNI_GenericNetwork_1SWIGUpcast(JNIEnv *jenv, jclass jcls, jlong jarg1) {
    2459           0 :     jlong baseptr = 0;
    2460             :     (void)jenv;
    2461             :     (void)jcls;
    2462           0 :     *(GNMNetworkShadow **)&baseptr = *(GNMGenericNetworkShadow **)&jarg1;
    2463           0 :     return baseptr;
    2464             : }
    2465             : 
    2466             : #ifdef __cplusplus
    2467             : }
    2468             : #endif
    2469             : 

Generated by: LCOV version 1.14