--- a/javauis/m3g_qt/src/jni/loader.inl Tue May 11 16:07:20 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,234 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-#include "javax_microedition_m3g_Loader.h"
-
-#include <ezlib.h>
-
-/*!
- * \brief Symbian implementation of the block inflation function for
- * the Loader class
- */
-static M3Gsizei m3gSymbianInflateBlock1(M3Gsizei srcLength,
- const M3Gubyte *src,
- M3Gsizei dstLength,
- M3Gubyte *dst)
-{
- unsigned long len = (unsigned long) dstLength;
- if (uncompress((Bytef *) dst, &len,
- (const Bytef *) src, (uLong) srcLength) != Z_OK)
- {
- return 0;
- }
- return (M3Gsizei) len;
-}
-
-JNIEXPORT jboolean JNICALL Java_javax_microedition_m3g_Loader__1inflate
-(JNIEnv* aEnv, jclass, jbyteArray aCompressed, jbyteArray aInflated)
-{
- M3Guint result;
-
- M3Gubyte *compressedData = (M3Gubyte *)aEnv->GetByteArrayElements(aCompressed, NULL);
- if (compressedData == NULL)
- {
- M3G_RAISE_EXCEPTION(aEnv, "java/lang/OutOfMemoryError");
- return 0;
- }
- M3Gint compressedLength = aEnv->GetArrayLength(aCompressed);
- M3Gubyte *inflatedData = (M3Gubyte *)aEnv->GetByteArrayElements(aInflated, NULL);
- if (inflatedData == NULL)
- {
- if (compressedData)
- aEnv->ReleaseByteArrayElements(aCompressed, (jbyte*)compressedData, JNI_ABORT);
- M3G_RAISE_EXCEPTION(aEnv, "java/lang/OutOfMemoryError");
- return 0;
- }
- M3Gint inflatedLength = aEnv->GetArrayLength(aInflated);
-
- M3G_DO_LOCK
- if (m3gSymbianInflateBlock1(compressedLength, compressedData,
- inflatedLength, inflatedData))
- {
- result = TRUE;
- }
- else
- {
- result = FALSE;
- }
- M3G_DO_UNLOCK(aEnv)
-
- if (aCompressed)
- {
- aEnv->ReleaseByteArrayElements(aCompressed, (jbyte*)compressedData, JNI_ABORT);
- }
-
- if (aInflated)
- {
- aEnv->ReleaseByteArrayElements(aInflated, (jbyte*)inflatedData, 0);
- }
-
- return result;
-}
-
-
-JNIEXPORT jint JNICALL Java_javax_microedition_m3g_Loader__1ctor
-(JNIEnv* aEnv, jclass, jint aM3g)
-{
- M3G_DO_LOCK
- M3GLoader loader = (M3GLoader)m3gCreateLoader((M3GInterface)aM3g);
- M3G_DO_UNLOCK(aEnv)
- return (M3Guint)loader;
-}
-
-JNIEXPORT jint JNICALL Java_javax_microedition_m3g_Loader__1decodeData
-(JNIEnv* aEnv, jclass, jint aLoader, jint aOffset, jbyteArray aDataArray)
-{
- /* null array is never passed */
- M3Gubyte *data = (M3Gubyte *)aEnv->GetByteArrayElements(aDataArray, NULL);
- if (data == NULL)
- {
- M3G_RAISE_EXCEPTION(aEnv, "java/lang/OutOfMemoryError");
- return 0;
- }
-
- M3Gint bytes = aEnv->GetArrayLength(aDataArray);
- M3GLoader loader = (M3GLoader)aLoader;
-
- M3G_DO_LOCK
- jint retVal = m3gDecodeData(loader, bytes, data + aOffset);
- M3G_DO_UNLOCK(aEnv)
-
- if (aDataArray)
- {
- aEnv->ReleaseByteArrayElements(aDataArray, (jbyte*)data, JNI_ABORT);
- }
-
- return retVal;
-}
-
-JNIEXPORT jint JNICALL Java_javax_microedition_m3g_Loader__1getLoadedObjects
-(JNIEnv* aEnv, jclass, jint aLoader, jintArray aObjectArray)
-{
- M3GObject *objects = NULL;
- if (aObjectArray)
- {
- objects = (M3GObject *)aEnv->GetIntArrayElements(aObjectArray, NULL);
- if (objects == NULL)
- {
- M3G_RAISE_EXCEPTION(aEnv, "java/lang/OutOfMemoryError");
- return 0;
- }
- }
-
- M3GLoader loader = (M3GLoader)aLoader;
-
- M3G_DO_LOCK
- jint retVal = m3gGetLoadedObjects(loader, objects);
- M3G_DO_UNLOCK(aEnv)
-
- if (aObjectArray)
- {
- aEnv->ReleaseIntArrayElements(aObjectArray, (jint*)objects, 0);
- }
-
- return retVal;
-}
-
-JNIEXPORT void JNICALL Java_javax_microedition_m3g_Loader__1setExternalReferences
-(JNIEnv* aEnv, jclass, jint aLoader, jintArray aObjectArray)
-{
- /* null array is never passed */
- M3GObject *xRefs = (M3GObject *)aEnv->GetIntArrayElements(aObjectArray, NULL);
- if (xRefs == NULL)
- {
- M3G_RAISE_EXCEPTION(aEnv, "java/lang/OutOfMemoryError");
- return;
- }
-
- M3Gint numXRefs = aEnv->GetArrayLength(aObjectArray);
- M3GLoader loader = (M3GLoader)aLoader;
-
- M3G_DO_LOCK
- m3gImportObjects(loader, numXRefs, xRefs);
- M3G_DO_UNLOCK(aEnv)
-
- aEnv->ReleaseIntArrayElements(aObjectArray, (jint*)xRefs, JNI_ABORT);
-}
-
-JNIEXPORT jint JNICALL Java_javax_microedition_m3g_Loader__1getObjectsWithUserParameters
-(JNIEnv* aEnv, jclass, jint aLoader, jintArray aObjectArray)
-{
- M3GObject *objects = NULL;
- if (aObjectArray)
- {
- objects = (M3GObject *)aEnv->GetIntArrayElements(aObjectArray, NULL);
- if (objects == NULL)
- {
- M3G_RAISE_EXCEPTION(aEnv, "java/lang/OutOfMemoryError");
- return 0;
- }
- }
-
- M3GLoader loader = (M3GLoader)aLoader;
-
- M3G_DO_LOCK
- jint retVal = m3gGetObjectsWithUserParameters(loader, objects);
- M3G_DO_UNLOCK(aEnv)
-
- if (objects)
- {
- aEnv->ReleaseIntArrayElements(aObjectArray, (jint*)objects, 0);
- }
-
- return retVal;
-}
-
-JNIEXPORT jint JNICALL Java_javax_microedition_m3g_Loader__1getNumUserParameters
-(JNIEnv* aEnv, jclass, jint aLoader, jint aObj)
-{
- M3GLoader loader = (M3GLoader)aLoader;
- M3G_DO_LOCK
- jint numParams = (jint)m3gGetNumUserParameters(loader, aObj);
- M3G_DO_UNLOCK(aEnv)
- return numParams;
-}
-
-JNIEXPORT jint JNICALL Java_javax_microedition_m3g_Loader__1getUserParameter
-(JNIEnv* aEnv, jclass, jint aLoader, jint aObj, jint aIndex, jbyteArray aDataArray)
-{
- M3Gbyte *data = NULL;
- if (aDataArray)
- {
- data = (M3Gbyte *)aEnv->GetByteArrayElements(aDataArray, NULL);
- if (data == NULL)
- {
- M3G_RAISE_EXCEPTION(aEnv, "java/lang/OutOfMemoryError");
- return 0;
- }
- }
-
- M3GLoader loader = (M3GLoader)aLoader;
- M3G_DO_LOCK
- jint retVal = m3gGetUserParameter(loader, aObj, aIndex, data);
- M3G_DO_UNLOCK(aEnv)
-
- if (data)
- {
- aEnv->ReleaseByteArrayElements(aDataArray, (jbyte*)data, 0);
- }
-
- return retVal;
-}