Call by Reference über Java Native Interface

Hallo,

ich soll eine C - Funktion über Java Native Interface in Java aufrufen. Die C - Funktion hat in der Parameterliste u.a. eine Referenz.

DAQmxBaseReadAnalogF64(…,&read,…);

Ich brauche den Wert, auf den die Referenz zeigt auf der Java - Ebene.

Kann man über Java Native Interface eine Referenz übergeben, so dass man in Java mit dem Wert, auf den die Referenz zeigt weiterarbeiten kann?

Als Rückgabewert ist schon der Datenarray geplant, der die eingelesenen Abtastwerte enthält.

Hier der bisherige Code:

JNIEXPORT jfloatArray JNICALL Java_JavaWrapper_readAnalog(JNIEnv *env, jobject obj, jfloat timeout, jint arraySizeInSamps)

int32 read;
float64 dataArray[1000]; //Größe sollte ausreichen!

DAQmxBaseReadAnalogF64(taskHandle, arraySizeInSamps, timeout, DAQmx_Val_GroupByScanNumber,dataArray,arraySizeInSamps*2,&read,NULL);

int i=0;
jfloatArray ret = env->NewFloatArray(1000);
jfloat* returnArray = env->GetFloatArrayElements(ret,NULL);

for(i=0;iReleaseFloatArrayElements(ret,returnArray,0);

return ret; //Datenarray
}