- allocate and return Strings (interface changes)
- Version 00.02.00 git-svn-id: https://svn.code.sf.net/p/libusbjava/code/trunk@149 94ad28fe-ef68-46b1-9651-e7ae4fcf1c4c
This commit is contained in:
@@ -49,6 +49,8 @@
|
|||||||
</profile>
|
</profile>
|
||||||
</item>
|
</item>
|
||||||
<item id="org.eclipse.cdt.core.pathentry">
|
<item id="org.eclipse.cdt.core.pathentry">
|
||||||
|
<pathentry include="C:/Program Files/Java/jdk1.5.0_04/include" kind="inc" path="" system="true"/>
|
||||||
|
<pathentry include="C:/MinGW/include" kind="inc" path="" system="true"/>
|
||||||
<pathentry kind="src" path=""/>
|
<pathentry kind="src" path=""/>
|
||||||
<pathentry kind="out" path=""/>
|
<pathentry kind="out" path=""/>
|
||||||
<pathentry kind="con" path="org.eclipse.cdt.make.core.DISCOVERED_SCANNER_INFO"/>
|
<pathentry kind="con" path="org.eclipse.cdt.make.core.DISCOVERED_SCANNER_INFO"/>
|
||||||
@@ -57,7 +59,7 @@
|
|||||||
<buildTargets>
|
<buildTargets>
|
||||||
<target name="dll" path="" targetID="org.eclipse.cdt.make.MakeTargetBuilder">
|
<target name="dll" path="" targetID="org.eclipse.cdt.make.MakeTargetBuilder">
|
||||||
<buildCommand>make</buildCommand>
|
<buildCommand>make</buildCommand>
|
||||||
<buildArguments></buildArguments>
|
<buildArguments/>
|
||||||
<buildTarget>dll</buildTarget>
|
<buildTarget>dll</buildTarget>
|
||||||
<stopOnError>false</stopOnError>
|
<stopOnError>false</stopOnError>
|
||||||
<useDefaultCommand>true</useDefaultCommand>
|
<useDefaultCommand>true</useDefaultCommand>
|
||||||
|
|||||||
@@ -4,6 +4,7 @@
|
|||||||
* Computer Science Laboratory, inf.ntb.ch
|
* Computer Science Laboratory, inf.ntb.ch
|
||||||
* Andreas Schl<68>pfer, aschlaepfer@ntb.ch
|
* Andreas Schl<68>pfer, aschlaepfer@ntb.ch
|
||||||
*
|
*
|
||||||
|
* Version 00.02.00
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <jni.h>
|
#include <jni.h>
|
||||||
@@ -586,51 +587,63 @@ JNIEXPORT jint JNICALL Java_ch_ntb_usb_LibusbWin_usb_1control_1msg
|
|||||||
/*
|
/*
|
||||||
* Class: ch_ntb_usb_LibusbWin
|
* Class: ch_ntb_usb_LibusbWin
|
||||||
* Method: usb_get_string
|
* Method: usb_get_string
|
||||||
* Signature: (IIILjava/lang/String;I)I
|
* Signature: (III)Ljava/lang/String;
|
||||||
*/
|
*/
|
||||||
JNIEXPORT jint JNICALL Java_ch_ntb_usb_LibusbWin_usb_1get_1string
|
JNIEXPORT jstring JNICALL Java_ch_ntb_usb_LibusbWin_usb_1get_1string
|
||||||
(JNIEnv *env, jobject obj, jint dev_handle, jint index, jint langid, jstring jbuf, jint buflen)
|
(JNIEnv *env, jobject obj, jint dev_handle, jint index, jint langid)
|
||||||
{
|
{
|
||||||
const jchar *buf = env->GetStringChars(jbuf, NULL);
|
char string[256];
|
||||||
int retVal = usb_get_string((usb_dev_handle *) dev_handle, index, langid, (char *) buf, buflen);
|
int retVal = usb_get_string((usb_dev_handle *) dev_handle, index, langid, string, 256);
|
||||||
jbuf = env->NewString(buf, buflen);
|
if (retVal > 0)
|
||||||
return retVal;
|
return env->NewStringUTF(string);
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Class: ch_ntb_usb_LibusbWin
|
* Class: ch_ntb_usb_LibusbWin
|
||||||
* Method: usb_get_string_simple
|
* Method: usb_get_string_simple
|
||||||
* Signature: (IILjava/lang/String;I)I
|
* Signature: (II)Ljava/lang/String;
|
||||||
*/
|
*/
|
||||||
JNIEXPORT jint JNICALL Java_ch_ntb_usb_LibusbWin_usb_1get_1string_1simple
|
JNIEXPORT jstring JNICALL Java_ch_ntb_usb_LibusbWin_usb_1get_1string_1simple
|
||||||
(JNIEnv *env, jobject obj, jint dev_handle, jint index, jstring jbuf, jint buflen)
|
(JNIEnv *env, jobject obj, jint dev_handle, jint index)
|
||||||
{
|
{
|
||||||
const jchar *buf = env->GetStringChars(jbuf, NULL);
|
char string[256];
|
||||||
int retVal = usb_get_string_simple((usb_dev_handle *) dev_handle, index, (char *) buf, buflen);
|
int retVal = usb_get_string_simple((usb_dev_handle *) dev_handle, index, string, 256);
|
||||||
jbuf = env->NewString(buf, buflen);
|
if (retVal > 0)
|
||||||
return retVal;
|
return env->NewStringUTF(string);
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Class: ch_ntb_usb_LibusbWin
|
* Class: ch_ntb_usb_LibusbWin
|
||||||
* Method: usb_get_descriptor
|
* Method: usb_get_descriptor
|
||||||
* Signature: (IBBLjava/lang/String;I)I
|
* Signature: (IBBI)Ljava/lang/String;
|
||||||
*/
|
*/
|
||||||
JNIEXPORT jint JNICALL Java_ch_ntb_usb_LibusbWin_usb_1get_1descriptor
|
JNIEXPORT jstring JNICALL Java_ch_ntb_usb_LibusbWin_usb_1get_1descriptor
|
||||||
(JNIEnv *env, jobject obj, jint dev_handle, jbyte type, jbyte index, jstring buf, jint size)
|
(JNIEnv *env, jobject obj, jint dev_handle, jbyte type, jbyte index, jint size)
|
||||||
{
|
{
|
||||||
return usb_get_descriptor((usb_dev_handle *) dev_handle, (unsigned) type, (unsigned) index, buf, size);
|
char *string = (char *) malloc(size * sizeof(char));
|
||||||
|
int retVal = usb_get_descriptor((usb_dev_handle *) dev_handle, (unsigned) type,
|
||||||
|
(unsigned) index, string, size);
|
||||||
|
if (retVal > 0)
|
||||||
|
return env->NewStringUTF(string);
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Class: ch_ntb_usb_LibusbWin
|
* Class: ch_ntb_usb_LibusbWin
|
||||||
* Method: usb_get_descriptor_by_endpoint
|
* Method: usb_get_descriptor_by_endpoint
|
||||||
* Signature: (IIBBLjava/lang/String;I)I
|
* Signature: (IIBBI)Ljava/lang/String;
|
||||||
*/
|
*/
|
||||||
JNIEXPORT jint JNICALL Java_ch_ntb_usb_LibusbWin_usb_1get_1descriptor_1by_1endpoint
|
JNIEXPORT jstring JNICALL Java_ch_ntb_usb_LibusbWin_usb_1get_1descriptor_1by_1endpoint
|
||||||
(JNIEnv *env, jobject obj, jint dev_handle, jint ep, jbyte type, jbyte index, jstring buf, jint size)
|
(JNIEnv *env, jobject obj, jint dev_handle, jint ep, jbyte type, jbyte index, jint size)
|
||||||
{
|
{
|
||||||
return usb_get_descriptor_by_endpoint((usb_dev_handle *) dev_handle, ep, (unsigned) type, (unsigned) index, buf, size);
|
char *string = (char *) malloc(size * sizeof(char));
|
||||||
|
int retVal = usb_get_descriptor_by_endpoint((usb_dev_handle *) dev_handle, ep, (unsigned) type,
|
||||||
|
(unsigned) index, string, size);
|
||||||
|
if (retVal > 0)
|
||||||
|
return env->NewStringUTF(string);
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|||||||
@@ -114,34 +114,34 @@ JNIEXPORT jint JNICALL Java_ch_ntb_usb_LibusbWin_usb_1control_1msg
|
|||||||
/*
|
/*
|
||||||
* Class: ch_ntb_usb_LibusbWin
|
* Class: ch_ntb_usb_LibusbWin
|
||||||
* Method: usb_get_string
|
* Method: usb_get_string
|
||||||
* Signature: (IIILjava/lang/String;I)I
|
* Signature: (III)Ljava/lang/String;
|
||||||
*/
|
*/
|
||||||
JNIEXPORT jint JNICALL Java_ch_ntb_usb_LibusbWin_usb_1get_1string
|
JNIEXPORT jstring JNICALL Java_ch_ntb_usb_LibusbWin_usb_1get_1string
|
||||||
(JNIEnv *, jobject, jint, jint, jint, jstring, jint);
|
(JNIEnv *, jobject, jint, jint, jint);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Class: ch_ntb_usb_LibusbWin
|
* Class: ch_ntb_usb_LibusbWin
|
||||||
* Method: usb_get_string_simple
|
* Method: usb_get_string_simple
|
||||||
* Signature: (IILjava/lang/String;I)I
|
* Signature: (II)Ljava/lang/String;
|
||||||
*/
|
*/
|
||||||
JNIEXPORT jint JNICALL Java_ch_ntb_usb_LibusbWin_usb_1get_1string_1simple
|
JNIEXPORT jstring JNICALL Java_ch_ntb_usb_LibusbWin_usb_1get_1string_1simple
|
||||||
(JNIEnv *, jobject, jint, jint, jstring, jint);
|
(JNIEnv *, jobject, jint, jint);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Class: ch_ntb_usb_LibusbWin
|
* Class: ch_ntb_usb_LibusbWin
|
||||||
* Method: usb_get_descriptor
|
* Method: usb_get_descriptor
|
||||||
* Signature: (IBBLjava/lang/String;I)I
|
* Signature: (IBBI)Ljava/lang/String;
|
||||||
*/
|
*/
|
||||||
JNIEXPORT jint JNICALL Java_ch_ntb_usb_LibusbWin_usb_1get_1descriptor
|
JNIEXPORT jstring JNICALL Java_ch_ntb_usb_LibusbWin_usb_1get_1descriptor
|
||||||
(JNIEnv *, jobject, jint, jbyte, jbyte, jstring, jint);
|
(JNIEnv *, jobject, jint, jbyte, jbyte, jint);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Class: ch_ntb_usb_LibusbWin
|
* Class: ch_ntb_usb_LibusbWin
|
||||||
* Method: usb_get_descriptor_by_endpoint
|
* Method: usb_get_descriptor_by_endpoint
|
||||||
* Signature: (IIBBLjava/lang/String;I)I
|
* Signature: (IIBBI)Ljava/lang/String;
|
||||||
*/
|
*/
|
||||||
JNIEXPORT jint JNICALL Java_ch_ntb_usb_LibusbWin_usb_1get_1descriptor_1by_1endpoint
|
JNIEXPORT jstring JNICALL Java_ch_ntb_usb_LibusbWin_usb_1get_1descriptor_1by_1endpoint
|
||||||
(JNIEnv *, jobject, jint, jint, jbyte, jbyte, jstring, jint);
|
(JNIEnv *, jobject, jint, jint, jbyte, jbyte, jint);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Class: ch_ntb_usb_LibusbWin
|
* Class: ch_ntb_usb_LibusbWin
|
||||||
|
|||||||
Reference in New Issue
Block a user