| /* ---------------------------------------------------------------------------- |
| * This file was automatically generated by SWIG (http://www.swig.org). |
| * Version 2.0.4 |
| * |
| * This file is not intended to be easily readable and contains a number of |
| * coding conventions designed to improve portability and efficiency. Do not make |
| * changes to this file unless you know what you are doing--modify the SWIG |
| * interface file instead. |
| * ----------------------------------------------------------------------------- */ |
| |
| #define SWIGJAVA |
| |
| /* ----------------------------------------------------------------------------- |
| * This section contains generic SWIG labels for method/variable |
| * declarations/attributes, and other compiler dependent labels. |
| * ----------------------------------------------------------------------------- */ |
| |
| /* template workaround for compilers that cannot correctly implement the C++ standard */ |
| #ifndef SWIGTEMPLATEDISAMBIGUATOR |
| # if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560) |
| # define SWIGTEMPLATEDISAMBIGUATOR template |
| # elif defined(__HP_aCC) |
| /* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */ |
| /* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */ |
| # define SWIGTEMPLATEDISAMBIGUATOR template |
| # else |
| # define SWIGTEMPLATEDISAMBIGUATOR |
| # endif |
| #endif |
| |
| /* inline attribute */ |
| #ifndef SWIGINLINE |
| # if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__)) |
| # define SWIGINLINE inline |
| # else |
| # define SWIGINLINE |
| # endif |
| #endif |
| |
| /* attribute recognised by some compilers to avoid 'unused' warnings */ |
| #ifndef SWIGUNUSED |
| # if defined(__GNUC__) |
| # if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)) |
| # define SWIGUNUSED __attribute__ ((__unused__)) |
| # else |
| # define SWIGUNUSED |
| # endif |
| # elif defined(__ICC) |
| # define SWIGUNUSED __attribute__ ((__unused__)) |
| # else |
| # define SWIGUNUSED |
| # endif |
| #endif |
| |
| #ifndef SWIG_MSC_UNSUPPRESS_4505 |
| # if defined(_MSC_VER) |
| # pragma warning(disable : 4505) /* unreferenced local function has been removed */ |
| # endif |
| #endif |
| |
| #ifndef SWIGUNUSEDPARM |
| # ifdef __cplusplus |
| # define SWIGUNUSEDPARM(p) |
| # else |
| # define SWIGUNUSEDPARM(p) p SWIGUNUSED |
| # endif |
| #endif |
| |
| /* internal SWIG method */ |
| #ifndef SWIGINTERN |
| # define SWIGINTERN static SWIGUNUSED |
| #endif |
| |
| /* internal inline SWIG method */ |
| #ifndef SWIGINTERNINLINE |
| # define SWIGINTERNINLINE SWIGINTERN SWIGINLINE |
| #endif |
| |
| /* exporting methods */ |
| #if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4) |
| # ifndef GCC_HASCLASSVISIBILITY |
| # define GCC_HASCLASSVISIBILITY |
| # endif |
| #endif |
| |
| #ifndef SWIGEXPORT |
| # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__) |
| # if defined(STATIC_LINKED) |
| # define SWIGEXPORT |
| # else |
| # define SWIGEXPORT __declspec(dllexport) |
| # endif |
| # else |
| # if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY) |
| # define SWIGEXPORT __attribute__ ((visibility("default"))) |
| # else |
| # define SWIGEXPORT |
| # endif |
| # endif |
| #endif |
| |
| /* calling conventions for Windows */ |
| #ifndef SWIGSTDCALL |
| # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__) |
| # define SWIGSTDCALL __stdcall |
| # else |
| # define SWIGSTDCALL |
| # endif |
| #endif |
| |
| /* Deal with Microsoft's attempt at deprecating C standard runtime functions */ |
| #if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE) |
| # define _CRT_SECURE_NO_DEPRECATE |
| #endif |
| |
| /* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */ |
| #if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE) |
| # define _SCL_SECURE_NO_DEPRECATE |
| #endif |
| |
| |
| |
| /* Fix for jlong on some versions of gcc on Windows */ |
| #if defined(__GNUC__) && !defined(__INTEL_COMPILER) |
| typedef long long __int64; |
| #endif |
| |
| /* Fix for jlong on 64-bit x86 Solaris */ |
| #if defined(__x86_64) |
| # ifdef _LP64 |
| # undef _LP64 |
| # endif |
| #endif |
| |
| #include <jni.h> |
| #include <stdlib.h> |
| #include <string.h> |
| |
| |
| /* Support for throwing Java exceptions */ |
| typedef enum { |
| SWIG_JavaOutOfMemoryError = 1, |
| SWIG_JavaIOException, |
| SWIG_JavaRuntimeException, |
| SWIG_JavaIndexOutOfBoundsException, |
| SWIG_JavaArithmeticException, |
| SWIG_JavaIllegalArgumentException, |
| SWIG_JavaNullPointerException, |
| SWIG_JavaDirectorPureVirtual, |
| SWIG_JavaUnknownError |
| } SWIG_JavaExceptionCodes; |
| |
| typedef struct { |
| SWIG_JavaExceptionCodes code; |
| const char *java_exception; |
| } SWIG_JavaExceptions_t; |
| |
| |
| static void SWIGUNUSED SWIG_JavaThrowException(JNIEnv *jenv, SWIG_JavaExceptionCodes code, const char *msg) { |
| jclass excep; |
| static const SWIG_JavaExceptions_t java_exceptions[] = { |
| { SWIG_JavaOutOfMemoryError, "java/lang/OutOfMemoryError" }, |
| { SWIG_JavaIOException, "java/io/IOException" }, |
| { SWIG_JavaRuntimeException, "java/lang/RuntimeException" }, |
| { SWIG_JavaIndexOutOfBoundsException, "java/lang/IndexOutOfBoundsException" }, |
| { SWIG_JavaArithmeticException, "java/lang/ArithmeticException" }, |
| { SWIG_JavaIllegalArgumentException, "java/lang/IllegalArgumentException" }, |
| { SWIG_JavaNullPointerException, "java/lang/NullPointerException" }, |
| { SWIG_JavaDirectorPureVirtual, "java/lang/RuntimeException" }, |
| { SWIG_JavaUnknownError, "java/lang/UnknownError" }, |
| { (SWIG_JavaExceptionCodes)0, "java/lang/UnknownError" } |
| }; |
| const SWIG_JavaExceptions_t *except_ptr = java_exceptions; |
| |
| while (except_ptr->code != code && except_ptr->code) |
| except_ptr++; |
| |
| (*jenv)->ExceptionClear(jenv); |
| excep = (*jenv)->FindClass(jenv, except_ptr->java_exception); |
| if (excep) |
| (*jenv)->ThrowNew(jenv, excep, msg); |
| } |
| |
| |
| /* Contract support */ |
| |
| #define SWIG_contract_assert(nullreturn, expr, msg) if (!(expr)) {SWIG_JavaThrowException(jenv, SWIG_JavaIllegalArgumentException, msg); return nullreturn; } else |
| |
| /* Errors in SWIG */ |
| #define SWIG_UnknownError -1 |
| #define SWIG_IOError -2 |
| #define SWIG_RuntimeError -3 |
| #define SWIG_IndexError -4 |
| #define SWIG_TypeError -5 |
| #define SWIG_DivisionByZero -6 |
| #define SWIG_OverflowError -7 |
| #define SWIG_SyntaxError -8 |
| #define SWIG_ValueError -9 |
| #define SWIG_SystemError -10 |
| #define SWIG_AttributeError -11 |
| #define SWIG_MemoryError -12 |
| #define SWIG_NullReferenceError -13 |
| |
| |
| |
| |
| SWIGINTERN void SWIG_JavaException(JNIEnv *jenv, int code, const char *msg) { |
| SWIG_JavaExceptionCodes exception_code = SWIG_JavaUnknownError; |
| switch(code) { |
| case SWIG_MemoryError: |
| exception_code = SWIG_JavaOutOfMemoryError; |
| break; |
| case SWIG_IOError: |
| exception_code = SWIG_JavaIOException; |
| break; |
| case SWIG_SystemError: |
| case SWIG_RuntimeError: |
| exception_code = SWIG_JavaRuntimeException; |
| break; |
| case SWIG_OverflowError: |
| case SWIG_IndexError: |
| exception_code = SWIG_JavaIndexOutOfBoundsException; |
| break; |
| case SWIG_DivisionByZero: |
| exception_code = SWIG_JavaArithmeticException; |
| break; |
| case SWIG_SyntaxError: |
| case SWIG_ValueError: |
| case SWIG_TypeError: |
| exception_code = SWIG_JavaIllegalArgumentException; |
| break; |
| case SWIG_UnknownError: |
| default: |
| exception_code = SWIG_JavaUnknownError; |
| break; |
| } |
| SWIG_JavaThrowException(jenv, exception_code, msg); |
| } |
| |
| |
| #if defined(SWIG_NOINCLUDE) || defined(SWIG_NOARRAYS) |
| |
| |
| int SWIG_JavaArrayInSchar (JNIEnv *jenv, jbyte **jarr, signed char **carr, jbyteArray input); |
| void SWIG_JavaArrayArgoutSchar (JNIEnv *jenv, jbyte *jarr, signed char *carr, jbyteArray input); |
| jbyteArray SWIG_JavaArrayOutSchar (JNIEnv *jenv, signed char *result, jsize sz); |
| |
| |
| int SWIG_JavaArrayInUchar (JNIEnv *jenv, jshort **jarr, unsigned char **carr, jshortArray input); |
| void SWIG_JavaArrayArgoutUchar (JNIEnv *jenv, jshort *jarr, unsigned char *carr, jshortArray input); |
| jshortArray SWIG_JavaArrayOutUchar (JNIEnv *jenv, unsigned char *result, jsize sz); |
| |
| |
| int SWIG_JavaArrayInShort (JNIEnv *jenv, jshort **jarr, short **carr, jshortArray input); |
| void SWIG_JavaArrayArgoutShort (JNIEnv *jenv, jshort *jarr, short *carr, jshortArray input); |
| jshortArray SWIG_JavaArrayOutShort (JNIEnv *jenv, short *result, jsize sz); |
| |
| |
| int SWIG_JavaArrayInUshort (JNIEnv *jenv, jint **jarr, unsigned short **carr, jintArray input); |
| void SWIG_JavaArrayArgoutUshort (JNIEnv *jenv, jint *jarr, unsigned short *carr, jintArray input); |
| jintArray SWIG_JavaArrayOutUshort (JNIEnv *jenv, unsigned short *result, jsize sz); |
| |
| |
| int SWIG_JavaArrayInInt (JNIEnv *jenv, jint **jarr, int **carr, jintArray input); |
| void SWIG_JavaArrayArgoutInt (JNIEnv *jenv, jint *jarr, int *carr, jintArray input); |
| jintArray SWIG_JavaArrayOutInt (JNIEnv *jenv, int *result, jsize sz); |
| |
| |
| int SWIG_JavaArrayInUint (JNIEnv *jenv, jlong **jarr, unsigned int **carr, jlongArray input); |
| void SWIG_JavaArrayArgoutUint (JNIEnv *jenv, jlong *jarr, unsigned int *carr, jlongArray input); |
| jlongArray SWIG_JavaArrayOutUint (JNIEnv *jenv, unsigned int *result, jsize sz); |
| |
| |
| int SWIG_JavaArrayInLong (JNIEnv *jenv, jint **jarr, long **carr, jintArray input); |
| void SWIG_JavaArrayArgoutLong (JNIEnv *jenv, jint *jarr, long *carr, jintArray input); |
| jintArray SWIG_JavaArrayOutLong (JNIEnv *jenv, long *result, jsize sz); |
| |
| |
| int SWIG_JavaArrayInUlong (JNIEnv *jenv, jlong **jarr, unsigned long **carr, jlongArray input); |
| void SWIG_JavaArrayArgoutUlong (JNIEnv *jenv, jlong *jarr, unsigned long *carr, jlongArray input); |
| jlongArray SWIG_JavaArrayOutUlong (JNIEnv *jenv, unsigned long *result, jsize sz); |
| |
| |
| int SWIG_JavaArrayInLonglong (JNIEnv *jenv, jlong **jarr, jlong **carr, jlongArray input); |
| void SWIG_JavaArrayArgoutLonglong (JNIEnv *jenv, jlong *jarr, jlong *carr, jlongArray input); |
| jlongArray SWIG_JavaArrayOutLonglong (JNIEnv *jenv, jlong *result, jsize sz); |
| |
| |
| int SWIG_JavaArrayInFloat (JNIEnv *jenv, jfloat **jarr, float **carr, jfloatArray input); |
| void SWIG_JavaArrayArgoutFloat (JNIEnv *jenv, jfloat *jarr, float *carr, jfloatArray input); |
| jfloatArray SWIG_JavaArrayOutFloat (JNIEnv *jenv, float *result, jsize sz); |
| |
| |
| int SWIG_JavaArrayInDouble (JNIEnv *jenv, jdouble **jarr, double **carr, jdoubleArray input); |
| void SWIG_JavaArrayArgoutDouble (JNIEnv *jenv, jdouble *jarr, double *carr, jdoubleArray input); |
| jdoubleArray SWIG_JavaArrayOutDouble (JNIEnv *jenv, double *result, jsize sz); |
| |
| |
| #else |
| |
| |
| /* signed char[] support */ |
| int SWIG_JavaArrayInSchar (JNIEnv *jenv, jbyte **jarr, signed char **carr, jbyteArray input) { |
| int i; |
| jsize sz; |
| if (!input) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array"); |
| return 0; |
| } |
| sz = (*jenv)->GetArrayLength(jenv, input); |
| *jarr = (*jenv)->GetByteArrayElements(jenv, input, 0); |
| if (!*jarr) |
| return 0; |
| *carr = (signed char*) calloc(sz, sizeof(signed char)); |
| if (!*carr) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed"); |
| return 0; |
| } |
| for (i=0; i<sz; i++) |
| (*carr)[i] = (signed char)(*jarr)[i]; |
| return 1; |
| } |
| |
| void SWIG_JavaArrayArgoutSchar (JNIEnv *jenv, jbyte *jarr, signed char *carr, jbyteArray input) { |
| int i; |
| jsize sz = (*jenv)->GetArrayLength(jenv, input); |
| for (i=0; i<sz; i++) |
| jarr[i] = (jbyte)carr[i]; |
| (*jenv)->ReleaseByteArrayElements(jenv, input, jarr, 0); |
| } |
| |
| jbyteArray SWIG_JavaArrayOutSchar (JNIEnv *jenv, signed char *result, jsize sz) { |
| jbyte *arr; |
| int i; |
| jbyteArray jresult = (*jenv)->NewByteArray(jenv, sz); |
| if (!jresult) |
| return NULL; |
| arr = (*jenv)->GetByteArrayElements(jenv, jresult, 0); |
| if (!arr) |
| return NULL; |
| for (i=0; i<sz; i++) |
| arr[i] = (jbyte)result[i]; |
| (*jenv)->ReleaseByteArrayElements(jenv, jresult, arr, 0); |
| return jresult; |
| } |
| |
| |
| /* unsigned char[] support */ |
| int SWIG_JavaArrayInUchar (JNIEnv *jenv, jshort **jarr, unsigned char **carr, jshortArray input) { |
| int i; |
| jsize sz; |
| if (!input) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array"); |
| return 0; |
| } |
| sz = (*jenv)->GetArrayLength(jenv, input); |
| *jarr = (*jenv)->GetShortArrayElements(jenv, input, 0); |
| if (!*jarr) |
| return 0; |
| *carr = (unsigned char*) calloc(sz, sizeof(unsigned char)); |
| if (!*carr) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed"); |
| return 0; |
| } |
| for (i=0; i<sz; i++) |
| (*carr)[i] = (unsigned char)(*jarr)[i]; |
| return 1; |
| } |
| |
| void SWIG_JavaArrayArgoutUchar (JNIEnv *jenv, jshort *jarr, unsigned char *carr, jshortArray input) { |
| int i; |
| jsize sz = (*jenv)->GetArrayLength(jenv, input); |
| for (i=0; i<sz; i++) |
| jarr[i] = (jshort)carr[i]; |
| (*jenv)->ReleaseShortArrayElements(jenv, input, jarr, 0); |
| } |
| |
| jshortArray SWIG_JavaArrayOutUchar (JNIEnv *jenv, unsigned char *result, jsize sz) { |
| jshort *arr; |
| int i; |
| jshortArray jresult = (*jenv)->NewShortArray(jenv, sz); |
| if (!jresult) |
| return NULL; |
| arr = (*jenv)->GetShortArrayElements(jenv, jresult, 0); |
| if (!arr) |
| return NULL; |
| for (i=0; i<sz; i++) |
| arr[i] = (jshort)result[i]; |
| (*jenv)->ReleaseShortArrayElements(jenv, jresult, arr, 0); |
| return jresult; |
| } |
| |
| |
| /* short[] support */ |
| int SWIG_JavaArrayInShort (JNIEnv *jenv, jshort **jarr, short **carr, jshortArray input) { |
| int i; |
| jsize sz; |
| if (!input) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array"); |
| return 0; |
| } |
| sz = (*jenv)->GetArrayLength(jenv, input); |
| *jarr = (*jenv)->GetShortArrayElements(jenv, input, 0); |
| if (!*jarr) |
| return 0; |
| *carr = (short*) calloc(sz, sizeof(short)); |
| if (!*carr) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed"); |
| return 0; |
| } |
| for (i=0; i<sz; i++) |
| (*carr)[i] = (short)(*jarr)[i]; |
| return 1; |
| } |
| |
| void SWIG_JavaArrayArgoutShort (JNIEnv *jenv, jshort *jarr, short *carr, jshortArray input) { |
| int i; |
| jsize sz = (*jenv)->GetArrayLength(jenv, input); |
| for (i=0; i<sz; i++) |
| jarr[i] = (jshort)carr[i]; |
| (*jenv)->ReleaseShortArrayElements(jenv, input, jarr, 0); |
| } |
| |
| jshortArray SWIG_JavaArrayOutShort (JNIEnv *jenv, short *result, jsize sz) { |
| jshort *arr; |
| int i; |
| jshortArray jresult = (*jenv)->NewShortArray(jenv, sz); |
| if (!jresult) |
| return NULL; |
| arr = (*jenv)->GetShortArrayElements(jenv, jresult, 0); |
| if (!arr) |
| return NULL; |
| for (i=0; i<sz; i++) |
| arr[i] = (jshort)result[i]; |
| (*jenv)->ReleaseShortArrayElements(jenv, jresult, arr, 0); |
| return jresult; |
| } |
| |
| |
| /* unsigned short[] support */ |
| int SWIG_JavaArrayInUshort (JNIEnv *jenv, jint **jarr, unsigned short **carr, jintArray input) { |
| int i; |
| jsize sz; |
| if (!input) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array"); |
| return 0; |
| } |
| sz = (*jenv)->GetArrayLength(jenv, input); |
| *jarr = (*jenv)->GetIntArrayElements(jenv, input, 0); |
| if (!*jarr) |
| return 0; |
| *carr = (unsigned short*) calloc(sz, sizeof(unsigned short)); |
| if (!*carr) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed"); |
| return 0; |
| } |
| for (i=0; i<sz; i++) |
| (*carr)[i] = (unsigned short)(*jarr)[i]; |
| return 1; |
| } |
| |
| void SWIG_JavaArrayArgoutUshort (JNIEnv *jenv, jint *jarr, unsigned short *carr, jintArray input) { |
| int i; |
| jsize sz = (*jenv)->GetArrayLength(jenv, input); |
| for (i=0; i<sz; i++) |
| jarr[i] = (jint)carr[i]; |
| (*jenv)->ReleaseIntArrayElements(jenv, input, jarr, 0); |
| } |
| |
| jintArray SWIG_JavaArrayOutUshort (JNIEnv *jenv, unsigned short *result, jsize sz) { |
| jint *arr; |
| int i; |
| jintArray jresult = (*jenv)->NewIntArray(jenv, sz); |
| if (!jresult) |
| return NULL; |
| arr = (*jenv)->GetIntArrayElements(jenv, jresult, 0); |
| if (!arr) |
| return NULL; |
| for (i=0; i<sz; i++) |
| arr[i] = (jint)result[i]; |
| (*jenv)->ReleaseIntArrayElements(jenv, jresult, arr, 0); |
| return jresult; |
| } |
| |
| |
| /* int[] support */ |
| int SWIG_JavaArrayInInt (JNIEnv *jenv, jint **jarr, int **carr, jintArray input) { |
| int i; |
| jsize sz; |
| if (!input) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array"); |
| return 0; |
| } |
| sz = (*jenv)->GetArrayLength(jenv, input); |
| *jarr = (*jenv)->GetIntArrayElements(jenv, input, 0); |
| if (!*jarr) |
| return 0; |
| *carr = (int*) calloc(sz, sizeof(int)); |
| if (!*carr) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed"); |
| return 0; |
| } |
| for (i=0; i<sz; i++) |
| (*carr)[i] = (int)(*jarr)[i]; |
| return 1; |
| } |
| |
| void SWIG_JavaArrayArgoutInt (JNIEnv *jenv, jint *jarr, int *carr, jintArray input) { |
| int i; |
| jsize sz = (*jenv)->GetArrayLength(jenv, input); |
| for (i=0; i<sz; i++) |
| jarr[i] = (jint)carr[i]; |
| (*jenv)->ReleaseIntArrayElements(jenv, input, jarr, 0); |
| } |
| |
| jintArray SWIG_JavaArrayOutInt (JNIEnv *jenv, int *result, jsize sz) { |
| jint *arr; |
| int i; |
| jintArray jresult = (*jenv)->NewIntArray(jenv, sz); |
| if (!jresult) |
| return NULL; |
| arr = (*jenv)->GetIntArrayElements(jenv, jresult, 0); |
| if (!arr) |
| return NULL; |
| for (i=0; i<sz; i++) |
| arr[i] = (jint)result[i]; |
| (*jenv)->ReleaseIntArrayElements(jenv, jresult, arr, 0); |
| return jresult; |
| } |
| |
| |
| /* unsigned int[] support */ |
| int SWIG_JavaArrayInUint (JNIEnv *jenv, jlong **jarr, unsigned int **carr, jlongArray input) { |
| int i; |
| jsize sz; |
| if (!input) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array"); |
| return 0; |
| } |
| sz = (*jenv)->GetArrayLength(jenv, input); |
| *jarr = (*jenv)->GetLongArrayElements(jenv, input, 0); |
| if (!*jarr) |
| return 0; |
| *carr = (unsigned int*) calloc(sz, sizeof(unsigned int)); |
| if (!*carr) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed"); |
| return 0; |
| } |
| for (i=0; i<sz; i++) |
| (*carr)[i] = (unsigned int)(*jarr)[i]; |
| return 1; |
| } |
| |
| void SWIG_JavaArrayArgoutUint (JNIEnv *jenv, jlong *jarr, unsigned int *carr, jlongArray input) { |
| int i; |
| jsize sz = (*jenv)->GetArrayLength(jenv, input); |
| for (i=0; i<sz; i++) |
| jarr[i] = (jlong)carr[i]; |
| (*jenv)->ReleaseLongArrayElements(jenv, input, jarr, 0); |
| } |
| |
| jlongArray SWIG_JavaArrayOutUint (JNIEnv *jenv, unsigned int *result, jsize sz) { |
| jlong *arr; |
| int i; |
| jlongArray jresult = (*jenv)->NewLongArray(jenv, sz); |
| if (!jresult) |
| return NULL; |
| arr = (*jenv)->GetLongArrayElements(jenv, jresult, 0); |
| if (!arr) |
| return NULL; |
| for (i=0; i<sz; i++) |
| arr[i] = (jlong)result[i]; |
| (*jenv)->ReleaseLongArrayElements(jenv, jresult, arr, 0); |
| return jresult; |
| } |
| |
| |
| /* long[] support */ |
| int SWIG_JavaArrayInLong (JNIEnv *jenv, jint **jarr, long **carr, jintArray input) { |
| int i; |
| jsize sz; |
| if (!input) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array"); |
| return 0; |
| } |
| sz = (*jenv)->GetArrayLength(jenv, input); |
| *jarr = (*jenv)->GetIntArrayElements(jenv, input, 0); |
| if (!*jarr) |
| return 0; |
| *carr = (long*) calloc(sz, sizeof(long)); |
| if (!*carr) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed"); |
| return 0; |
| } |
| for (i=0; i<sz; i++) |
| (*carr)[i] = (long)(*jarr)[i]; |
| return 1; |
| } |
| |
| void SWIG_JavaArrayArgoutLong (JNIEnv *jenv, jint *jarr, long *carr, jintArray input) { |
| int i; |
| jsize sz = (*jenv)->GetArrayLength(jenv, input); |
| for (i=0; i<sz; i++) |
| jarr[i] = (jint)carr[i]; |
| (*jenv)->ReleaseIntArrayElements(jenv, input, jarr, 0); |
| } |
| |
| jintArray SWIG_JavaArrayOutLong (JNIEnv *jenv, long *result, jsize sz) { |
| jint *arr; |
| int i; |
| jintArray jresult = (*jenv)->NewIntArray(jenv, sz); |
| if (!jresult) |
| return NULL; |
| arr = (*jenv)->GetIntArrayElements(jenv, jresult, 0); |
| if (!arr) |
| return NULL; |
| for (i=0; i<sz; i++) |
| arr[i] = (jint)result[i]; |
| (*jenv)->ReleaseIntArrayElements(jenv, jresult, arr, 0); |
| return jresult; |
| } |
| |
| |
| /* unsigned long[] support */ |
| int SWIG_JavaArrayInUlong (JNIEnv *jenv, jlong **jarr, unsigned long **carr, jlongArray input) { |
| int i; |
| jsize sz; |
| if (!input) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array"); |
| return 0; |
| } |
| sz = (*jenv)->GetArrayLength(jenv, input); |
| *jarr = (*jenv)->GetLongArrayElements(jenv, input, 0); |
| if (!*jarr) |
| return 0; |
| *carr = (unsigned long*) calloc(sz, sizeof(unsigned long)); |
| if (!*carr) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed"); |
| return 0; |
| } |
| for (i=0; i<sz; i++) |
| (*carr)[i] = (unsigned long)(*jarr)[i]; |
| return 1; |
| } |
| |
| void SWIG_JavaArrayArgoutUlong (JNIEnv *jenv, jlong *jarr, unsigned long *carr, jlongArray input) { |
| int i; |
| jsize sz = (*jenv)->GetArrayLength(jenv, input); |
| for (i=0; i<sz; i++) |
| jarr[i] = (jlong)carr[i]; |
| (*jenv)->ReleaseLongArrayElements(jenv, input, jarr, 0); |
| } |
| |
| jlongArray SWIG_JavaArrayOutUlong (JNIEnv *jenv, unsigned long *result, jsize sz) { |
| jlong *arr; |
| int i; |
| jlongArray jresult = (*jenv)->NewLongArray(jenv, sz); |
| if (!jresult) |
| return NULL; |
| arr = (*jenv)->GetLongArrayElements(jenv, jresult, 0); |
| if (!arr) |
| return NULL; |
| for (i=0; i<sz; i++) |
| arr[i] = (jlong)result[i]; |
| (*jenv)->ReleaseLongArrayElements(jenv, jresult, arr, 0); |
| return jresult; |
| } |
| |
| |
| /* jlong[] support */ |
| int SWIG_JavaArrayInLonglong (JNIEnv *jenv, jlong **jarr, jlong **carr, jlongArray input) { |
| int i; |
| jsize sz; |
| if (!input) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array"); |
| return 0; |
| } |
| sz = (*jenv)->GetArrayLength(jenv, input); |
| *jarr = (*jenv)->GetLongArrayElements(jenv, input, 0); |
| if (!*jarr) |
| return 0; |
| *carr = (jlong*) calloc(sz, sizeof(jlong)); |
| if (!*carr) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed"); |
| return 0; |
| } |
| for (i=0; i<sz; i++) |
| (*carr)[i] = (jlong)(*jarr)[i]; |
| return 1; |
| } |
| |
| void SWIG_JavaArrayArgoutLonglong (JNIEnv *jenv, jlong *jarr, jlong *carr, jlongArray input) { |
| int i; |
| jsize sz = (*jenv)->GetArrayLength(jenv, input); |
| for (i=0; i<sz; i++) |
| jarr[i] = (jlong)carr[i]; |
| (*jenv)->ReleaseLongArrayElements(jenv, input, jarr, 0); |
| } |
| |
| jlongArray SWIG_JavaArrayOutLonglong (JNIEnv *jenv, jlong *result, jsize sz) { |
| jlong *arr; |
| int i; |
| jlongArray jresult = (*jenv)->NewLongArray(jenv, sz); |
| if (!jresult) |
| return NULL; |
| arr = (*jenv)->GetLongArrayElements(jenv, jresult, 0); |
| if (!arr) |
| return NULL; |
| for (i=0; i<sz; i++) |
| arr[i] = (jlong)result[i]; |
| (*jenv)->ReleaseLongArrayElements(jenv, jresult, arr, 0); |
| return jresult; |
| } |
| |
| |
| /* float[] support */ |
| int SWIG_JavaArrayInFloat (JNIEnv *jenv, jfloat **jarr, float **carr, jfloatArray input) { |
| int i; |
| jsize sz; |
| if (!input) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array"); |
| return 0; |
| } |
| sz = (*jenv)->GetArrayLength(jenv, input); |
| *jarr = (*jenv)->GetFloatArrayElements(jenv, input, 0); |
| if (!*jarr) |
| return 0; |
| *carr = (float*) calloc(sz, sizeof(float)); |
| if (!*carr) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed"); |
| return 0; |
| } |
| for (i=0; i<sz; i++) |
| (*carr)[i] = (float)(*jarr)[i]; |
| return 1; |
| } |
| |
| void SWIG_JavaArrayArgoutFloat (JNIEnv *jenv, jfloat *jarr, float *carr, jfloatArray input) { |
| int i; |
| jsize sz = (*jenv)->GetArrayLength(jenv, input); |
| for (i=0; i<sz; i++) |
| jarr[i] = (jfloat)carr[i]; |
| (*jenv)->ReleaseFloatArrayElements(jenv, input, jarr, 0); |
| } |
| |
| jfloatArray SWIG_JavaArrayOutFloat (JNIEnv *jenv, float *result, jsize sz) { |
| jfloat *arr; |
| int i; |
| jfloatArray jresult = (*jenv)->NewFloatArray(jenv, sz); |
| if (!jresult) |
| return NULL; |
| arr = (*jenv)->GetFloatArrayElements(jenv, jresult, 0); |
| if (!arr) |
| return NULL; |
| for (i=0; i<sz; i++) |
| arr[i] = (jfloat)result[i]; |
| (*jenv)->ReleaseFloatArrayElements(jenv, jresult, arr, 0); |
| return jresult; |
| } |
| |
| |
| /* double[] support */ |
| int SWIG_JavaArrayInDouble (JNIEnv *jenv, jdouble **jarr, double **carr, jdoubleArray input) { |
| int i; |
| jsize sz; |
| if (!input) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array"); |
| return 0; |
| } |
| sz = (*jenv)->GetArrayLength(jenv, input); |
| *jarr = (*jenv)->GetDoubleArrayElements(jenv, input, 0); |
| if (!*jarr) |
| return 0; |
| *carr = (double*) calloc(sz, sizeof(double)); |
| if (!*carr) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed"); |
| return 0; |
| } |
| for (i=0; i<sz; i++) |
| (*carr)[i] = (double)(*jarr)[i]; |
| return 1; |
| } |
| |
| void SWIG_JavaArrayArgoutDouble (JNIEnv *jenv, jdouble *jarr, double *carr, jdoubleArray input) { |
| int i; |
| jsize sz = (*jenv)->GetArrayLength(jenv, input); |
| for (i=0; i<sz; i++) |
| jarr[i] = (jdouble)carr[i]; |
| (*jenv)->ReleaseDoubleArrayElements(jenv, input, jarr, 0); |
| } |
| |
| jdoubleArray SWIG_JavaArrayOutDouble (JNIEnv *jenv, double *result, jsize sz) { |
| jdouble *arr; |
| int i; |
| jdoubleArray jresult = (*jenv)->NewDoubleArray(jenv, sz); |
| if (!jresult) |
| return NULL; |
| arr = (*jenv)->GetDoubleArrayElements(jenv, jresult, 0); |
| if (!arr) |
| return NULL; |
| for (i=0; i<sz; i++) |
| arr[i] = (jdouble)result[i]; |
| (*jenv)->ReleaseDoubleArrayElements(jenv, jresult, arr, 0); |
| return jresult; |
| } |
| |
| |
| #endif |
| |
| |
| #include "webp/types.h" |
| |
| |
| int SWIG_JavaArrayInUint8 (JNIEnv *jenv, jbyte **jarr, uint8_t **carr, jbyteArray input); |
| void SWIG_JavaArrayArgoutUint8 (JNIEnv *jenv, jbyte *jarr, uint8_t *carr, jbyteArray input); |
| jbyteArray SWIG_JavaArrayOutUint8 (JNIEnv *jenv, uint8_t *result, jsize sz); |
| |
| |
| /* uint8_t[] support */ |
| int SWIG_JavaArrayInUint8 (JNIEnv *jenv, jbyte **jarr, uint8_t **carr, jbyteArray input) { |
| int i; |
| jsize sz; |
| if (!input) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array"); |
| return 0; |
| } |
| sz = (*jenv)->GetArrayLength(jenv, input); |
| *jarr = (*jenv)->GetByteArrayElements(jenv, input, 0); |
| if (!*jarr) |
| return 0; |
| *carr = (uint8_t*) calloc(sz, sizeof(uint8_t)); |
| if (!*carr) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed"); |
| return 0; |
| } |
| for (i=0; i<sz; i++) |
| (*carr)[i] = (uint8_t)(*jarr)[i]; |
| return 1; |
| } |
| |
| void SWIG_JavaArrayArgoutUint8 (JNIEnv *jenv, jbyte *jarr, uint8_t *carr, jbyteArray input) { |
| int i; |
| jsize sz = (*jenv)->GetArrayLength(jenv, input); |
| for (i=0; i<sz; i++) |
| jarr[i] = (jbyte)carr[i]; |
| (*jenv)->ReleaseByteArrayElements(jenv, input, jarr, 0); |
| } |
| |
| jbyteArray SWIG_JavaArrayOutUint8 (JNIEnv *jenv, uint8_t *result, jsize sz) { |
| jbyte *arr; |
| int i; |
| jbyteArray jresult = (*jenv)->NewByteArray(jenv, sz); |
| if (!jresult) |
| return NULL; |
| arr = (*jenv)->GetByteArrayElements(jenv, jresult, 0); |
| if (!arr) |
| return NULL; |
| for (i=0; i<sz; i++) |
| arr[i] = (jbyte)result[i]; |
| (*jenv)->ReleaseByteArrayElements(jenv, jresult, arr, 0); |
| return jresult; |
| } |
| |
| |
| #include "webp/decode.h" |
| #include "webp/encode.h" |
| |
| |
| #define FillMeInAsSizeCannotBeDeterminedAutomatically \ |
| (result ? (jint)ReturnedBufferSize(__FUNCTION__, arg3, arg4) : 0) |
| |
| |
| static size_t ReturnedBufferSize( |
| const char* function, int* width, int* height) { |
| static const struct sizemap { |
| const char* function; |
| int size_multiplier; |
| } size_map[] = { |
| #ifdef SWIGJAVA |
| { "Java_com_google_webp_libwebpJNI_WebPDecodeRGB", 3 }, |
| { "Java_com_google_webp_libwebpJNI_WebPDecodeRGBA", 4 }, |
| { "Java_com_google_webp_libwebpJNI_WebPDecodeARGB", 4 }, |
| { "Java_com_google_webp_libwebpJNI_WebPDecodeBGR", 3 }, |
| { "Java_com_google_webp_libwebpJNI_WebPDecodeBGRA", 4 }, |
| { "Java_com_google_webp_libwebpJNI_wrap_1WebPEncodeRGB", 1 }, |
| { "Java_com_google_webp_libwebpJNI_wrap_1WebPEncodeBGR", 1 }, |
| { "Java_com_google_webp_libwebpJNI_wrap_1WebPEncodeRGBA", 1 }, |
| { "Java_com_google_webp_libwebpJNI_wrap_1WebPEncodeBGRA", 1 }, |
| { "Java_com_google_webp_libwebpJNI_wrap_1WebPEncodeLosslessRGB", 1 }, |
| { "Java_com_google_webp_libwebpJNI_wrap_1WebPEncodeLosslessBGR", 1 }, |
| { "Java_com_google_webp_libwebpJNI_wrap_1WebPEncodeLosslessRGBA", 1 }, |
| { "Java_com_google_webp_libwebpJNI_wrap_1WebPEncodeLosslessBGRA", 1 }, |
| #endif |
| #ifdef SWIGPYTHON |
| { "WebPDecodeRGB", 3 }, |
| { "WebPDecodeRGBA", 4 }, |
| { "WebPDecodeARGB", 4 }, |
| { "WebPDecodeBGR", 3 }, |
| { "WebPDecodeBGRA", 4 }, |
| { "wrap_WebPEncodeRGB", 1 }, |
| { "wrap_WebPEncodeBGR", 1 }, |
| { "wrap_WebPEncodeRGBA", 1 }, |
| { "wrap_WebPEncodeBGRA", 1 }, |
| { "wrap_WebPEncodeLosslessRGB", 1 }, |
| { "wrap_WebPEncodeLosslessBGR", 1 }, |
| { "wrap_WebPEncodeLosslessRGBA", 1 }, |
| { "wrap_WebPEncodeLosslessBGRA", 1 }, |
| #endif |
| { NULL, 0 } |
| }; |
| const struct sizemap* p; |
| size_t size = 0; |
| |
| for (p = size_map; p->function; ++p) { |
| if (!strcmp(function, p->function)) { |
| size = *width * *height * p->size_multiplier; |
| break; |
| } |
| } |
| |
| return size; |
| } |
| |
| |
| typedef size_t (*WebPEncodeFunction)(const uint8_t* rgb, |
| int width, int height, int stride, |
| float quality_factor, uint8_t** output); |
| typedef size_t (*WebPEncodeLosslessFunction)(const uint8_t* rgb, |
| int width, int height, int stride, |
| uint8_t** output); |
| |
| static uint8_t* EncodeLossy(const uint8_t* rgb, |
| int width, int height, int stride, |
| float quality_factor, |
| WebPEncodeFunction encfn, |
| int* output_size, int* unused) { |
| uint8_t* output = NULL; |
| const size_t image_size = |
| encfn(rgb, width, height, stride, quality_factor, &output); |
| // the values of following two will be interpreted by ReturnedBufferSize() |
| // as 'width' and 'height' in the size calculation. |
| *output_size = image_size; |
| *unused = 1; |
| return image_size ? output : NULL; |
| } |
| |
| static uint8_t* EncodeLossless(const uint8_t* rgb, |
| int width, int height, int stride, |
| WebPEncodeLosslessFunction encfn, |
| int* output_size, int* unused) { |
| uint8_t* output = NULL; |
| const size_t image_size = encfn(rgb, width, height, stride, &output); |
| // the values of the following two will be interpreted by |
| // ReturnedBufferSize() as 'width' and 'height' in the size calculation. |
| *output_size = image_size; |
| *unused = 1; |
| return image_size ? output : NULL; |
| } |
| |
| |
| // Changes the return type of WebPEncode* to more closely match Decode*. |
| // This also makes it easier to wrap the output buffer in a native type rather |
| // than dealing with the return pointer. |
| // The additional parameters are to allow reuse of ReturnedBufferSize(), |
| // unused2 and output_size will be used in this case. |
| #define LOSSY_WRAPPER(FUNC) \ |
| static uint8_t* wrap_##FUNC( \ |
| const uint8_t* rgb, int* unused1, int* unused2, int* output_size, \ |
| int width, int height, int stride, float quality_factor) { \ |
| return EncodeLossy(rgb, width, height, stride, quality_factor, \ |
| FUNC, output_size, unused2); \ |
| } \ |
| |
| LOSSY_WRAPPER(WebPEncodeRGB) |
| LOSSY_WRAPPER(WebPEncodeBGR) |
| LOSSY_WRAPPER(WebPEncodeRGBA) |
| LOSSY_WRAPPER(WebPEncodeBGRA) |
| |
| #undef LOSSY_WRAPPER |
| |
| #define LOSSLESS_WRAPPER(FUNC) \ |
| static uint8_t* wrap_##FUNC( \ |
| const uint8_t* rgb, int* unused1, int* unused2, int* output_size, \ |
| int width, int height, int stride) { \ |
| return EncodeLossless(rgb, width, height, stride, \ |
| FUNC, output_size, unused2); \ |
| } \ |
| |
| LOSSLESS_WRAPPER(WebPEncodeLosslessRGB) |
| LOSSLESS_WRAPPER(WebPEncodeLosslessBGR) |
| LOSSLESS_WRAPPER(WebPEncodeLosslessRGBA) |
| LOSSLESS_WRAPPER(WebPEncodeLosslessBGRA) |
| |
| #undef LOSSLESS_WRAPPER |
| |
| |
| |
| /* Work around broken gcj jni.h */ |
| #ifdef __GCJ_JNI_H__ |
| # undef JNIEXPORT |
| # define JNIEXPORT |
| # undef JNICALL |
| # define JNICALL |
| #endif |
| |
| |
| #ifdef __cplusplus |
| extern "C" { |
| #endif |
| |
| SWIGEXPORT jint JNICALL Java_com_google_webp_libwebpJNI_WebPGetDecoderVersion(JNIEnv *jenv, jclass jcls) { |
| jint jresult = 0 ; |
| int result; |
| |
| (void)jenv; |
| (void)jcls; |
| result = (int)WebPGetDecoderVersion(); |
| jresult = (jint)result; |
| return jresult; |
| } |
| |
| |
| SWIGEXPORT jint JNICALL Java_com_google_webp_libwebpJNI_WebPGetInfo(JNIEnv *jenv, jclass jcls, jbyteArray jarg1, jlong jarg2, jintArray jarg3, jintArray jarg4) { |
| jint jresult = 0 ; |
| uint8_t *arg1 = (uint8_t *) 0 ; |
| size_t arg2 ; |
| int *arg3 = (int *) 0 ; |
| int *arg4 = (int *) 0 ; |
| jbyte *jarr1 ; |
| int temp3 ; |
| int temp4 ; |
| int result; |
| |
| (void)jenv; |
| (void)jcls; |
| if (!SWIG_JavaArrayInUint8(jenv, &jarr1, &arg1, jarg1)) return 0; |
| arg2 = (size_t)jarg2; |
| { |
| if (!jarg3) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "array null"); |
| return 0; |
| } |
| if ((*jenv)->GetArrayLength(jenv, jarg3) == 0) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "Array must contain at least 1 element"); |
| return 0; |
| } |
| arg3 = &temp3; |
| } |
| { |
| if (!jarg4) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "array null"); |
| return 0; |
| } |
| if ((*jenv)->GetArrayLength(jenv, jarg4) == 0) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "Array must contain at least 1 element"); |
| return 0; |
| } |
| arg4 = &temp4; |
| } |
| result = (int)WebPGetInfo((uint8_t const *)arg1,arg2,arg3,arg4); |
| jresult = (jint)result; |
| SWIG_JavaArrayArgoutUint8(jenv, jarr1, arg1, jarg1); |
| { |
| jint jvalue = (jint)temp3; |
| (*jenv)->SetIntArrayRegion(jenv, jarg3, 0, 1, &jvalue); |
| } |
| { |
| jint jvalue = (jint)temp4; |
| (*jenv)->SetIntArrayRegion(jenv, jarg4, 0, 1, &jvalue); |
| } |
| free(arg1); |
| |
| |
| return jresult; |
| } |
| |
| |
| SWIGEXPORT jbyteArray JNICALL Java_com_google_webp_libwebpJNI_WebPDecodeRGB(JNIEnv *jenv, jclass jcls, jbyteArray jarg1, jlong jarg2, jintArray jarg3, jintArray jarg4) { |
| jbyteArray jresult = 0 ; |
| uint8_t *arg1 = (uint8_t *) 0 ; |
| size_t arg2 ; |
| int *arg3 = (int *) 0 ; |
| int *arg4 = (int *) 0 ; |
| jbyte *jarr1 ; |
| int temp3 ; |
| int temp4 ; |
| uint8_t *result = 0 ; |
| |
| (void)jenv; |
| (void)jcls; |
| if (!SWIG_JavaArrayInUint8(jenv, &jarr1, &arg1, jarg1)) return 0; |
| arg2 = (size_t)jarg2; |
| { |
| if (!jarg3) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "array null"); |
| return 0; |
| } |
| if ((*jenv)->GetArrayLength(jenv, jarg3) == 0) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "Array must contain at least 1 element"); |
| return 0; |
| } |
| arg3 = &temp3; |
| } |
| { |
| if (!jarg4) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "array null"); |
| return 0; |
| } |
| if ((*jenv)->GetArrayLength(jenv, jarg4) == 0) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "Array must contain at least 1 element"); |
| return 0; |
| } |
| arg4 = &temp4; |
| } |
| result = (uint8_t *)WebPDecodeRGB((uint8_t const *)arg1,arg2,arg3,arg4); |
| jresult = SWIG_JavaArrayOutUint8(jenv, result, FillMeInAsSizeCannotBeDeterminedAutomatically); |
| SWIG_JavaArrayArgoutUint8(jenv, jarr1, arg1, jarg1); |
| { |
| jint jvalue = (jint)temp3; |
| (*jenv)->SetIntArrayRegion(jenv, jarg3, 0, 1, &jvalue); |
| } |
| { |
| jint jvalue = (jint)temp4; |
| (*jenv)->SetIntArrayRegion(jenv, jarg4, 0, 1, &jvalue); |
| } |
| free(arg1); |
| |
| |
| free(result); |
| return jresult; |
| } |
| |
| |
| SWIGEXPORT jbyteArray JNICALL Java_com_google_webp_libwebpJNI_WebPDecodeRGBA(JNIEnv *jenv, jclass jcls, jbyteArray jarg1, jlong jarg2, jintArray jarg3, jintArray jarg4) { |
| jbyteArray jresult = 0 ; |
| uint8_t *arg1 = (uint8_t *) 0 ; |
| size_t arg2 ; |
| int *arg3 = (int *) 0 ; |
| int *arg4 = (int *) 0 ; |
| jbyte *jarr1 ; |
| int temp3 ; |
| int temp4 ; |
| uint8_t *result = 0 ; |
| |
| (void)jenv; |
| (void)jcls; |
| if (!SWIG_JavaArrayInUint8(jenv, &jarr1, &arg1, jarg1)) return 0; |
| arg2 = (size_t)jarg2; |
| { |
| if (!jarg3) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "array null"); |
| return 0; |
| } |
| if ((*jenv)->GetArrayLength(jenv, jarg3) == 0) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "Array must contain at least 1 element"); |
| return 0; |
| } |
| arg3 = &temp3; |
| } |
| { |
| if (!jarg4) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "array null"); |
| return 0; |
| } |
| if ((*jenv)->GetArrayLength(jenv, jarg4) == 0) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "Array must contain at least 1 element"); |
| return 0; |
| } |
| arg4 = &temp4; |
| } |
| result = (uint8_t *)WebPDecodeRGBA((uint8_t const *)arg1,arg2,arg3,arg4); |
| jresult = SWIG_JavaArrayOutUint8(jenv, result, FillMeInAsSizeCannotBeDeterminedAutomatically); |
| SWIG_JavaArrayArgoutUint8(jenv, jarr1, arg1, jarg1); |
| { |
| jint jvalue = (jint)temp3; |
| (*jenv)->SetIntArrayRegion(jenv, jarg3, 0, 1, &jvalue); |
| } |
| { |
| jint jvalue = (jint)temp4; |
| (*jenv)->SetIntArrayRegion(jenv, jarg4, 0, 1, &jvalue); |
| } |
| free(arg1); |
| |
| |
| free(result); |
| return jresult; |
| } |
| |
| |
| SWIGEXPORT jbyteArray JNICALL Java_com_google_webp_libwebpJNI_WebPDecodeARGB(JNIEnv *jenv, jclass jcls, jbyteArray jarg1, jlong jarg2, jintArray jarg3, jintArray jarg4) { |
| jbyteArray jresult = 0 ; |
| uint8_t *arg1 = (uint8_t *) 0 ; |
| size_t arg2 ; |
| int *arg3 = (int *) 0 ; |
| int *arg4 = (int *) 0 ; |
| jbyte *jarr1 ; |
| int temp3 ; |
| int temp4 ; |
| uint8_t *result = 0 ; |
| |
| (void)jenv; |
| (void)jcls; |
| if (!SWIG_JavaArrayInUint8(jenv, &jarr1, &arg1, jarg1)) return 0; |
| arg2 = (size_t)jarg2; |
| { |
| if (!jarg3) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "array null"); |
| return 0; |
| } |
| if ((*jenv)->GetArrayLength(jenv, jarg3) == 0) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "Array must contain at least 1 element"); |
| return 0; |
| } |
| arg3 = &temp3; |
| } |
| { |
| if (!jarg4) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "array null"); |
| return 0; |
| } |
| if ((*jenv)->GetArrayLength(jenv, jarg4) == 0) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "Array must contain at least 1 element"); |
| return 0; |
| } |
| arg4 = &temp4; |
| } |
| result = (uint8_t *)WebPDecodeARGB((uint8_t const *)arg1,arg2,arg3,arg4); |
| jresult = SWIG_JavaArrayOutUint8(jenv, result, FillMeInAsSizeCannotBeDeterminedAutomatically); |
| SWIG_JavaArrayArgoutUint8(jenv, jarr1, arg1, jarg1); |
| { |
| jint jvalue = (jint)temp3; |
| (*jenv)->SetIntArrayRegion(jenv, jarg3, 0, 1, &jvalue); |
| } |
| { |
| jint jvalue = (jint)temp4; |
| (*jenv)->SetIntArrayRegion(jenv, jarg4, 0, 1, &jvalue); |
| } |
| free(arg1); |
| |
| |
| free(result); |
| return jresult; |
| } |
| |
| |
| SWIGEXPORT jbyteArray JNICALL Java_com_google_webp_libwebpJNI_WebPDecodeBGR(JNIEnv *jenv, jclass jcls, jbyteArray jarg1, jlong jarg2, jintArray jarg3, jintArray jarg4) { |
| jbyteArray jresult = 0 ; |
| uint8_t *arg1 = (uint8_t *) 0 ; |
| size_t arg2 ; |
| int *arg3 = (int *) 0 ; |
| int *arg4 = (int *) 0 ; |
| jbyte *jarr1 ; |
| int temp3 ; |
| int temp4 ; |
| uint8_t *result = 0 ; |
| |
| (void)jenv; |
| (void)jcls; |
| if (!SWIG_JavaArrayInUint8(jenv, &jarr1, &arg1, jarg1)) return 0; |
| arg2 = (size_t)jarg2; |
| { |
| if (!jarg3) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "array null"); |
| return 0; |
| } |
| if ((*jenv)->GetArrayLength(jenv, jarg3) == 0) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "Array must contain at least 1 element"); |
| return 0; |
| } |
| arg3 = &temp3; |
| } |
| { |
| if (!jarg4) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "array null"); |
| return 0; |
| } |
| if ((*jenv)->GetArrayLength(jenv, jarg4) == 0) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "Array must contain at least 1 element"); |
| return 0; |
| } |
| arg4 = &temp4; |
| } |
| result = (uint8_t *)WebPDecodeBGR((uint8_t const *)arg1,arg2,arg3,arg4); |
| jresult = SWIG_JavaArrayOutUint8(jenv, result, FillMeInAsSizeCannotBeDeterminedAutomatically); |
| SWIG_JavaArrayArgoutUint8(jenv, jarr1, arg1, jarg1); |
| { |
| jint jvalue = (jint)temp3; |
| (*jenv)->SetIntArrayRegion(jenv, jarg3, 0, 1, &jvalue); |
| } |
| { |
| jint jvalue = (jint)temp4; |
| (*jenv)->SetIntArrayRegion(jenv, jarg4, 0, 1, &jvalue); |
| } |
| free(arg1); |
| |
| |
| free(result); |
| return jresult; |
| } |
| |
| |
| SWIGEXPORT jbyteArray JNICALL Java_com_google_webp_libwebpJNI_WebPDecodeBGRA(JNIEnv *jenv, jclass jcls, jbyteArray jarg1, jlong jarg2, jintArray jarg3, jintArray jarg4) { |
| jbyteArray jresult = 0 ; |
| uint8_t *arg1 = (uint8_t *) 0 ; |
| size_t arg2 ; |
| int *arg3 = (int *) 0 ; |
| int *arg4 = (int *) 0 ; |
| jbyte *jarr1 ; |
| int temp3 ; |
| int temp4 ; |
| uint8_t *result = 0 ; |
| |
| (void)jenv; |
| (void)jcls; |
| if (!SWIG_JavaArrayInUint8(jenv, &jarr1, &arg1, jarg1)) return 0; |
| arg2 = (size_t)jarg2; |
| { |
| if (!jarg3) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "array null"); |
| return 0; |
| } |
| if ((*jenv)->GetArrayLength(jenv, jarg3) == 0) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "Array must contain at least 1 element"); |
| return 0; |
| } |
| arg3 = &temp3; |
| } |
| { |
| if (!jarg4) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "array null"); |
| return 0; |
| } |
| if ((*jenv)->GetArrayLength(jenv, jarg4) == 0) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "Array must contain at least 1 element"); |
| return 0; |
| } |
| arg4 = &temp4; |
| } |
| result = (uint8_t *)WebPDecodeBGRA((uint8_t const *)arg1,arg2,arg3,arg4); |
| jresult = SWIG_JavaArrayOutUint8(jenv, result, FillMeInAsSizeCannotBeDeterminedAutomatically); |
| SWIG_JavaArrayArgoutUint8(jenv, jarr1, arg1, jarg1); |
| { |
| jint jvalue = (jint)temp3; |
| (*jenv)->SetIntArrayRegion(jenv, jarg3, 0, 1, &jvalue); |
| } |
| { |
| jint jvalue = (jint)temp4; |
| (*jenv)->SetIntArrayRegion(jenv, jarg4, 0, 1, &jvalue); |
| } |
| free(arg1); |
| |
| |
| free(result); |
| return jresult; |
| } |
| |
| |
| SWIGEXPORT jint JNICALL Java_com_google_webp_libwebpJNI_WebPGetEncoderVersion(JNIEnv *jenv, jclass jcls) { |
| jint jresult = 0 ; |
| int result; |
| |
| (void)jenv; |
| (void)jcls; |
| result = (int)WebPGetEncoderVersion(); |
| jresult = (jint)result; |
| return jresult; |
| } |
| |
| |
| SWIGEXPORT jbyteArray JNICALL Java_com_google_webp_libwebpJNI_wrap_1WebPEncodeRGB(JNIEnv *jenv, jclass jcls, jbyteArray jarg1, jint jarg2, jint jarg3, jintArray jarg4, jint jarg5, jint jarg6, jint jarg7, jfloat jarg8) { |
| jbyteArray jresult = 0 ; |
| uint8_t *arg1 = (uint8_t *) 0 ; |
| int *arg2 = (int *) 0 ; |
| int *arg3 = (int *) 0 ; |
| int *arg4 = (int *) 0 ; |
| int arg5 ; |
| int arg6 ; |
| int arg7 ; |
| float arg8 ; |
| jbyte *jarr1 ; |
| int temp4 ; |
| uint8_t *result = 0 ; |
| |
| (void)jenv; |
| (void)jcls; |
| if (!SWIG_JavaArrayInUint8(jenv, &jarr1, &arg1, jarg1)) return 0; |
| arg2 = (int *)&jarg2; |
| arg3 = (int *)&jarg3; |
| { |
| if (!jarg4) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "array null"); |
| return 0; |
| } |
| if ((*jenv)->GetArrayLength(jenv, jarg4) == 0) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "Array must contain at least 1 element"); |
| return 0; |
| } |
| arg4 = &temp4; |
| } |
| arg5 = (int)jarg5; |
| arg6 = (int)jarg6; |
| arg7 = (int)jarg7; |
| arg8 = (float)jarg8; |
| result = (uint8_t *)wrap_WebPEncodeRGB((uint8_t const *)arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8); |
| jresult = SWIG_JavaArrayOutUint8(jenv, result, FillMeInAsSizeCannotBeDeterminedAutomatically); |
| SWIG_JavaArrayArgoutUint8(jenv, jarr1, arg1, jarg1); |
| { |
| jint jvalue = (jint)temp4; |
| (*jenv)->SetIntArrayRegion(jenv, jarg4, 0, 1, &jvalue); |
| } |
| free(arg1); |
| |
| |
| |
| free(result); |
| return jresult; |
| } |
| |
| |
| SWIGEXPORT jbyteArray JNICALL Java_com_google_webp_libwebpJNI_wrap_1WebPEncodeBGR(JNIEnv *jenv, jclass jcls, jbyteArray jarg1, jint jarg2, jint jarg3, jintArray jarg4, jint jarg5, jint jarg6, jint jarg7, jfloat jarg8) { |
| jbyteArray jresult = 0 ; |
| uint8_t *arg1 = (uint8_t *) 0 ; |
| int *arg2 = (int *) 0 ; |
| int *arg3 = (int *) 0 ; |
| int *arg4 = (int *) 0 ; |
| int arg5 ; |
| int arg6 ; |
| int arg7 ; |
| float arg8 ; |
| jbyte *jarr1 ; |
| int temp4 ; |
| uint8_t *result = 0 ; |
| |
| (void)jenv; |
| (void)jcls; |
| if (!SWIG_JavaArrayInUint8(jenv, &jarr1, &arg1, jarg1)) return 0; |
| arg2 = (int *)&jarg2; |
| arg3 = (int *)&jarg3; |
| { |
| if (!jarg4) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "array null"); |
| return 0; |
| } |
| if ((*jenv)->GetArrayLength(jenv, jarg4) == 0) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "Array must contain at least 1 element"); |
| return 0; |
| } |
| arg4 = &temp4; |
| } |
| arg5 = (int)jarg5; |
| arg6 = (int)jarg6; |
| arg7 = (int)jarg7; |
| arg8 = (float)jarg8; |
| result = (uint8_t *)wrap_WebPEncodeBGR((uint8_t const *)arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8); |
| jresult = SWIG_JavaArrayOutUint8(jenv, result, FillMeInAsSizeCannotBeDeterminedAutomatically); |
| SWIG_JavaArrayArgoutUint8(jenv, jarr1, arg1, jarg1); |
| { |
| jint jvalue = (jint)temp4; |
| (*jenv)->SetIntArrayRegion(jenv, jarg4, 0, 1, &jvalue); |
| } |
| free(arg1); |
| |
| |
| |
| free(result); |
| return jresult; |
| } |
| |
| |
| SWIGEXPORT jbyteArray JNICALL Java_com_google_webp_libwebpJNI_wrap_1WebPEncodeRGBA(JNIEnv *jenv, jclass jcls, jbyteArray jarg1, jint jarg2, jint jarg3, jintArray jarg4, jint jarg5, jint jarg6, jint jarg7, jfloat jarg8) { |
| jbyteArray jresult = 0 ; |
| uint8_t *arg1 = (uint8_t *) 0 ; |
| int *arg2 = (int *) 0 ; |
| int *arg3 = (int *) 0 ; |
| int *arg4 = (int *) 0 ; |
| int arg5 ; |
| int arg6 ; |
| int arg7 ; |
| float arg8 ; |
| jbyte *jarr1 ; |
| int temp4 ; |
| uint8_t *result = 0 ; |
| |
| (void)jenv; |
| (void)jcls; |
| if (!SWIG_JavaArrayInUint8(jenv, &jarr1, &arg1, jarg1)) return 0; |
| arg2 = (int *)&jarg2; |
| arg3 = (int *)&jarg3; |
| { |
| if (!jarg4) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "array null"); |
| return 0; |
| } |
| if ((*jenv)->GetArrayLength(jenv, jarg4) == 0) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "Array must contain at least 1 element"); |
| return 0; |
| } |
| arg4 = &temp4; |
| } |
| arg5 = (int)jarg5; |
| arg6 = (int)jarg6; |
| arg7 = (int)jarg7; |
| arg8 = (float)jarg8; |
| result = (uint8_t *)wrap_WebPEncodeRGBA((uint8_t const *)arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8); |
| jresult = SWIG_JavaArrayOutUint8(jenv, result, FillMeInAsSizeCannotBeDeterminedAutomatically); |
| SWIG_JavaArrayArgoutUint8(jenv, jarr1, arg1, jarg1); |
| { |
| jint jvalue = (jint)temp4; |
| (*jenv)->SetIntArrayRegion(jenv, jarg4, 0, 1, &jvalue); |
| } |
| free(arg1); |
| |
| |
| |
| free(result); |
| return jresult; |
| } |
| |
| |
| SWIGEXPORT jbyteArray JNICALL Java_com_google_webp_libwebpJNI_wrap_1WebPEncodeBGRA(JNIEnv *jenv, jclass jcls, jbyteArray jarg1, jint jarg2, jint jarg3, jintArray jarg4, jint jarg5, jint jarg6, jint jarg7, jfloat jarg8) { |
| jbyteArray jresult = 0 ; |
| uint8_t *arg1 = (uint8_t *) 0 ; |
| int *arg2 = (int *) 0 ; |
| int *arg3 = (int *) 0 ; |
| int *arg4 = (int *) 0 ; |
| int arg5 ; |
| int arg6 ; |
| int arg7 ; |
| float arg8 ; |
| jbyte *jarr1 ; |
| int temp4 ; |
| uint8_t *result = 0 ; |
| |
| (void)jenv; |
| (void)jcls; |
| if (!SWIG_JavaArrayInUint8(jenv, &jarr1, &arg1, jarg1)) return 0; |
| arg2 = (int *)&jarg2; |
| arg3 = (int *)&jarg3; |
| { |
| if (!jarg4) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "array null"); |
| return 0; |
| } |
| if ((*jenv)->GetArrayLength(jenv, jarg4) == 0) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "Array must contain at least 1 element"); |
| return 0; |
| } |
| arg4 = &temp4; |
| } |
| arg5 = (int)jarg5; |
| arg6 = (int)jarg6; |
| arg7 = (int)jarg7; |
| arg8 = (float)jarg8; |
| result = (uint8_t *)wrap_WebPEncodeBGRA((uint8_t const *)arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8); |
| jresult = SWIG_JavaArrayOutUint8(jenv, result, FillMeInAsSizeCannotBeDeterminedAutomatically); |
| SWIG_JavaArrayArgoutUint8(jenv, jarr1, arg1, jarg1); |
| { |
| jint jvalue = (jint)temp4; |
| (*jenv)->SetIntArrayRegion(jenv, jarg4, 0, 1, &jvalue); |
| } |
| free(arg1); |
| |
| |
| |
| free(result); |
| return jresult; |
| } |
| |
| |
| SWIGEXPORT jbyteArray JNICALL Java_com_google_webp_libwebpJNI_wrap_1WebPEncodeLosslessRGB(JNIEnv *jenv, jclass jcls, jbyteArray jarg1, jint jarg2, jint jarg3, jintArray jarg4, jint jarg5, jint jarg6, jint jarg7) { |
| jbyteArray jresult = 0 ; |
| uint8_t *arg1 = (uint8_t *) 0 ; |
| int *arg2 = (int *) 0 ; |
| int *arg3 = (int *) 0 ; |
| int *arg4 = (int *) 0 ; |
| int arg5 ; |
| int arg6 ; |
| int arg7 ; |
| jbyte *jarr1 ; |
| int temp4 ; |
| uint8_t *result = 0 ; |
| |
| (void)jenv; |
| (void)jcls; |
| if (!SWIG_JavaArrayInUint8(jenv, &jarr1, &arg1, jarg1)) return 0; |
| arg2 = (int *)&jarg2; |
| arg3 = (int *)&jarg3; |
| { |
| if (!jarg4) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "array null"); |
| return 0; |
| } |
| if ((*jenv)->GetArrayLength(jenv, jarg4) == 0) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "Array must contain at least 1 element"); |
| return 0; |
| } |
| arg4 = &temp4; |
| } |
| arg5 = (int)jarg5; |
| arg6 = (int)jarg6; |
| arg7 = (int)jarg7; |
| result = (uint8_t *)wrap_WebPEncodeLosslessRGB((uint8_t const *)arg1,arg2,arg3,arg4,arg5,arg6,arg7); |
| jresult = SWIG_JavaArrayOutUint8(jenv, result, FillMeInAsSizeCannotBeDeterminedAutomatically); |
| SWIG_JavaArrayArgoutUint8(jenv, jarr1, arg1, jarg1); |
| { |
| jint jvalue = (jint)temp4; |
| (*jenv)->SetIntArrayRegion(jenv, jarg4, 0, 1, &jvalue); |
| } |
| free(arg1); |
| |
| |
| |
| free(result); |
| return jresult; |
| } |
| |
| |
| SWIGEXPORT jbyteArray JNICALL Java_com_google_webp_libwebpJNI_wrap_1WebPEncodeLosslessBGR(JNIEnv *jenv, jclass jcls, jbyteArray jarg1, jint jarg2, jint jarg3, jintArray jarg4, jint jarg5, jint jarg6, jint jarg7) { |
| jbyteArray jresult = 0 ; |
| uint8_t *arg1 = (uint8_t *) 0 ; |
| int *arg2 = (int *) 0 ; |
| int *arg3 = (int *) 0 ; |
| int *arg4 = (int *) 0 ; |
| int arg5 ; |
| int arg6 ; |
| int arg7 ; |
| jbyte *jarr1 ; |
| int temp4 ; |
| uint8_t *result = 0 ; |
| |
| (void)jenv; |
| (void)jcls; |
| if (!SWIG_JavaArrayInUint8(jenv, &jarr1, &arg1, jarg1)) return 0; |
| arg2 = (int *)&jarg2; |
| arg3 = (int *)&jarg3; |
| { |
| if (!jarg4) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "array null"); |
| return 0; |
| } |
| if ((*jenv)->GetArrayLength(jenv, jarg4) == 0) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "Array must contain at least 1 element"); |
| return 0; |
| } |
| arg4 = &temp4; |
| } |
| arg5 = (int)jarg5; |
| arg6 = (int)jarg6; |
| arg7 = (int)jarg7; |
| result = (uint8_t *)wrap_WebPEncodeLosslessBGR((uint8_t const *)arg1,arg2,arg3,arg4,arg5,arg6,arg7); |
| jresult = SWIG_JavaArrayOutUint8(jenv, result, FillMeInAsSizeCannotBeDeterminedAutomatically); |
| SWIG_JavaArrayArgoutUint8(jenv, jarr1, arg1, jarg1); |
| { |
| jint jvalue = (jint)temp4; |
| (*jenv)->SetIntArrayRegion(jenv, jarg4, 0, 1, &jvalue); |
| } |
| free(arg1); |
| |
| |
| |
| free(result); |
| return jresult; |
| } |
| |
| |
| SWIGEXPORT jbyteArray JNICALL Java_com_google_webp_libwebpJNI_wrap_1WebPEncodeLosslessRGBA(JNIEnv *jenv, jclass jcls, jbyteArray jarg1, jint jarg2, jint jarg3, jintArray jarg4, jint jarg5, jint jarg6, jint jarg7) { |
| jbyteArray jresult = 0 ; |
| uint8_t *arg1 = (uint8_t *) 0 ; |
| int *arg2 = (int *) 0 ; |
| int *arg3 = (int *) 0 ; |
| int *arg4 = (int *) 0 ; |
| int arg5 ; |
| int arg6 ; |
| int arg7 ; |
| jbyte *jarr1 ; |
| int temp4 ; |
| uint8_t *result = 0 ; |
| |
| (void)jenv; |
| (void)jcls; |
| if (!SWIG_JavaArrayInUint8(jenv, &jarr1, &arg1, jarg1)) return 0; |
| arg2 = (int *)&jarg2; |
| arg3 = (int *)&jarg3; |
| { |
| if (!jarg4) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "array null"); |
| return 0; |
| } |
| if ((*jenv)->GetArrayLength(jenv, jarg4) == 0) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "Array must contain at least 1 element"); |
| return 0; |
| } |
| arg4 = &temp4; |
| } |
| arg5 = (int)jarg5; |
| arg6 = (int)jarg6; |
| arg7 = (int)jarg7; |
| result = (uint8_t *)wrap_WebPEncodeLosslessRGBA((uint8_t const *)arg1,arg2,arg3,arg4,arg5,arg6,arg7); |
| jresult = SWIG_JavaArrayOutUint8(jenv, result, FillMeInAsSizeCannotBeDeterminedAutomatically); |
| SWIG_JavaArrayArgoutUint8(jenv, jarr1, arg1, jarg1); |
| { |
| jint jvalue = (jint)temp4; |
| (*jenv)->SetIntArrayRegion(jenv, jarg4, 0, 1, &jvalue); |
| } |
| free(arg1); |
| |
| |
| |
| free(result); |
| return jresult; |
| } |
| |
| |
| SWIGEXPORT jbyteArray JNICALL Java_com_google_webp_libwebpJNI_wrap_1WebPEncodeLosslessBGRA(JNIEnv *jenv, jclass jcls, jbyteArray jarg1, jint jarg2, jint jarg3, jintArray jarg4, jint jarg5, jint jarg6, jint jarg7) { |
| jbyteArray jresult = 0 ; |
| uint8_t *arg1 = (uint8_t *) 0 ; |
| int *arg2 = (int *) 0 ; |
| int *arg3 = (int *) 0 ; |
| int *arg4 = (int *) 0 ; |
| int arg5 ; |
| int arg6 ; |
| int arg7 ; |
| jbyte *jarr1 ; |
| int temp4 ; |
| uint8_t *result = 0 ; |
| |
| (void)jenv; |
| (void)jcls; |
| if (!SWIG_JavaArrayInUint8(jenv, &jarr1, &arg1, jarg1)) return 0; |
| arg2 = (int *)&jarg2; |
| arg3 = (int *)&jarg3; |
| { |
| if (!jarg4) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "array null"); |
| return 0; |
| } |
| if ((*jenv)->GetArrayLength(jenv, jarg4) == 0) { |
| SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "Array must contain at least 1 element"); |
| return 0; |
| } |
| arg4 = &temp4; |
| } |
| arg5 = (int)jarg5; |
| arg6 = (int)jarg6; |
| arg7 = (int)jarg7; |
| result = (uint8_t *)wrap_WebPEncodeLosslessBGRA((uint8_t const *)arg1,arg2,arg3,arg4,arg5,arg6,arg7); |
| jresult = SWIG_JavaArrayOutUint8(jenv, result, FillMeInAsSizeCannotBeDeterminedAutomatically); |
| SWIG_JavaArrayArgoutUint8(jenv, jarr1, arg1, jarg1); |
| { |
| jint jvalue = (jint)temp4; |
| (*jenv)->SetIntArrayRegion(jenv, jarg4, 0, 1, &jvalue); |
| } |
| free(arg1); |
| |
| |
| |
| free(result); |
| return jresult; |
| } |
| |
| |
| #ifdef __cplusplus |
| } |
| #endif |
| |