144 |
|
|
145 |
#define READ_WRITE_MMAPED_FILE(TYPE,ELT) \ |
#define READ_WRITE_MMAPED_FILE(TYPE,ELT) \ |
146 |
\ |
\ |
|
\ |
|
147 |
ELT Java_gnu_java_nio_MappedByteFileBuffer_nio_1read_1 ## TYPE ## _1file_1channel(JNIEnv *env, \ |
ELT Java_gnu_java_nio_MappedByteFileBuffer_nio_1read_1 ## TYPE ## _1file_1channel(JNIEnv *env, \ |
148 |
jclass c, jobject b, \ |
jclass c, jobject b, \ |
149 |
int index, int limit, jlong jaddress) \ |
int index, int limit, jlong jaddress) \ |
155 |
return convert_ ## TYPE (*(ELT *) address); \ |
return convert_ ## TYPE (*(ELT *) address); \ |
156 |
} \ |
} \ |
157 |
\ |
\ |
|
\ |
|
|
\ |
|
|
\ |
|
|
\ |
|
|
\ |
|
158 |
void Java_gnu_java_nio_MappedByteFileBuffer_nio_1write_1 ## TYPE ## _1file_1channel(JNIEnv *env, \ |
void Java_gnu_java_nio_MappedByteFileBuffer_nio_1write_1 ## TYPE ## _1file_1channel(JNIEnv *env, \ |
159 |
jclass c, jobject b, \ |
jclass c, jobject b, \ |
160 |
int index, int limit, ELT value, jlong jaddress) \ |
int index, int limit, ELT value, jlong jaddress) \ |
167 |
*(ELT *) address = value; \ |
*(ELT *) address = value; \ |
168 |
} \ |
} \ |
169 |
\ |
\ |
|
\ |
|
|
\ |
|
|
\ |
|
|
\ |
|
170 |
ELT Java_gnu_java_nio_MappedByteFileBuffer_nio_1get_1 ## TYPE(JNIEnv *env, jclass c, jobject b, \ |
ELT Java_gnu_java_nio_MappedByteFileBuffer_nio_1get_1 ## TYPE(JNIEnv *env, jclass c, jobject b, \ |
171 |
int index, int limit, jlong jaddress) \ |
int index, int limit, jlong jaddress) \ |
172 |
{ \ |
{ \ |
173 |
fprintf(stderr, "unimplemented\n"); return 0; \ |
fprintf(stderr, "unimplemented\n"); return 0; \ |
174 |
} \ |
} \ |
175 |
\ |
\ |
|
\ |
|
|
\ |
|
|
\ |
|
176 |
void Java_gnu_java_nio_MappedByteFileBuffer_nio_1put_1 ## TYPE(JNIEnv *env, jclass c, jobject b, \ |
void Java_gnu_java_nio_MappedByteFileBuffer_nio_1put_1 ## TYPE(JNIEnv *env, jclass c, jobject b, \ |
177 |
int index, int limit, \ |
int index, int limit, \ |
178 |
ELT value, jlong jaddress) \ |
ELT value, jlong jaddress) \ |
180 |
fprintf(stderr, "unimplemented\n"); \ |
fprintf(stderr, "unimplemented\n"); \ |
181 |
} |
} |
182 |
|
|
|
|
|
183 |
READ_WRITE_MMAPED_FILE(Byte,u_int8_t); |
READ_WRITE_MMAPED_FILE(Byte,u_int8_t); |
184 |
READ_WRITE_MMAPED_FILE(Char,u_int16_t); |
READ_WRITE_MMAPED_FILE(Char,u_int16_t); |
185 |
READ_WRITE_MMAPED_FILE(Short,u_int16_t); |
READ_WRITE_MMAPED_FILE(Short,u_int16_t); |
188 |
READ_WRITE_MMAPED_FILE(Float,float); |
READ_WRITE_MMAPED_FILE(Float,float); |
189 |
READ_WRITE_MMAPED_FILE(Double,double); |
READ_WRITE_MMAPED_FILE(Double,double); |
190 |
|
|
|
|
|
|
|
|
|
|
|
|
JNIEXPORT jlong JNICALL |
|
|
Java_gnu_java_nio_FileChannelImpl_lengthInternal(JNIEnv *env, jobject obj, jint fd) |
|
|
{ |
|
|
return(_javaio_get_file_length(env, fd)); |
|
|
} |
|
|
|
|
|
|
|
191 |
u_int64_t nio_mmap_file(jint fd, |
u_int64_t nio_mmap_file(jint fd, |
192 |
jlong pos, |
jlong pos, |
193 |
jint size, |
jint size, |