/* * Class: hdf_hdf5lib_H5 * Method: _H5Rdereference * Signature: (JJI[B)J */ JNIEXPORT jlong JNICALL Java_hdf_hdf5lib_H5__1H5Rdereference(JNIEnv *env, jclass clss, jlong dataset, jlong access_list, jint ref_type, jbyteArray ref) { jboolean isCopy; jbyte *refP; hid_t retVal = -1; if (ref == NULL) { h5nullArgument( env, "H5Rdereference: ref is NULL"); } /* end if */ else if ((ref_type == H5R_OBJECT) && ENVPTR->GetArrayLength(ENVPAR ref) != H5R_OBJ_REF_BUF_SIZE) { h5badArgument( env, "H5Rdereference: obj ref input array != H5R_OBJ_REF_BUF_SIZE"); } /* end else if */ else if ((ref_type == H5R_DATASET_REGION) && ENVPTR->GetArrayLength(ENVPAR ref) != H5R_DSET_REG_REF_BUF_SIZE) { h5badArgument( env, "H5Rdereference: region ref input array != H5R_DSET_REG_REF_BUF_SIZE"); } /* end else if */ else { refP = (jbyte*)ENVPTR->GetByteArrayElements(ENVPAR ref, &isCopy); if (refP == NULL) { h5JNIFatalError(env, "H5Rderefernce: ref not pinned"); } /* end if */ else { retVal = H5Rdereference2((hid_t)dataset, (hid_t)access_list, (H5R_type_t)ref_type, refP); ENVPTR->ReleaseByteArrayElements(ENVPAR ref, refP, JNI_ABORT); if (retVal < 0) h5libraryError(env); } /* end else */ } /* end else */ return (jlong)retVal; } /* end Java_hdf_hdf5lib_H5__1H5Rdereference */
/* * Class: hdf_hdf5lib_H5 * Method: H5Epush2 * Signature: (JLjava/lang/String;Ljava/lang/String;IJJJLjava/lang/String;)V */ JNIEXPORT void JNICALL Java_hdf_hdf5lib_H5_H5Epush2 (JNIEnv *env, jclass cls, jlong stk_id, jstring filename, jstring funcname, jint linenumber, jlong class_id, jlong major_id, jlong minor_id, jstring err_desc) { herr_t ret_val = -1; const char* fName; const char* fncName; const char* errMsg; if (stk_id < 0) { h5badArgument(env, "H5Epush: invalid argument"); } /* end if */ else if (class_id < 0) { h5badArgument(env, "H5Epush: invalid class_id argument"); } /* end else if */ else if (major_id < 0) { h5badArgument(env, "H5Epush: invalid major_id argument"); } /* end else if */ else if (minor_id < 0) { h5badArgument(env, "H5Epush: invalid minor_id argument"); } /* end else if */ else { PIN_JAVA_STRING_THREE(filename, fName, funcname, fncName, err_desc, errMsg); if (fName != NULL && fncName != NULL && errMsg != NULL) { ret_val = H5Epush2((hid_t)stk_id, fName, fncName, (unsigned)linenumber, (hid_t)class_id, (hid_t)major_id, (hid_t)minor_id, errMsg); UNPIN_JAVA_STRING_THREE(filename, fName, funcname, fncName, err_desc, errMsg); if (ret_val < 0) h5libraryError(env); } } /* end else */ } /* end Java_hdf_hdf5lib_H5_H5Epush2 */
/* * Class: hdf_hdf5lib_H5 * Method: H5Rget_name * Signature: (JI[B[Ljava/lang/String;J)J */ JNIEXPORT jlong JNICALL Java_hdf_hdf5lib_H5_H5Rget_1name(JNIEnv *env, jclass clss, jlong loc_id, jint ref_type, jbyteArray ref, jobjectArray name, jlong size) { jlong ret_val = -1; jbyte *refP; jboolean isCopy; char *aName = NULL; jstring str; size_t bs; bs = (size_t)size; if (bs <= 0) { h5badArgument(env, "H5Rget_name: size <= 0"); } /* end if */ else if (ref == NULL) { h5nullArgument(env, "H5Rget_name: ref is NULL"); } /* end else if */ else { if ((ref_type == H5R_OBJECT) && ENVPTR->GetArrayLength(ENVPAR ref) != H5R_OBJ_REF_BUF_SIZE) { h5badArgument(env, "H5Rget_name: obj ref input array != H5R_OBJ_REF_BUF_SIZE"); } /* end if */ else if ((ref_type == H5R_DATASET_REGION) && ENVPTR->GetArrayLength(ENVPAR ref) != H5R_DSET_REG_REF_BUF_SIZE) { h5badArgument(env, "H5Rget_name: region ref input array != H5R_DSET_REG_REF_BUF_SIZE"); } /* end else if */ else { refP = (jbyte *)ENVPTR->GetByteArrayElements(ENVPAR ref, &isCopy); if (refP == NULL) { h5JNIFatalError(env, "H5Rget_name: ref not pinned"); } /* end if */ else { aName = (char*)HDmalloc(sizeof(char)*bs); if (aName == NULL) { ENVPTR->ReleaseByteArrayElements(ENVPAR ref, refP, JNI_ABORT); h5outOfMemory(env, "H5Rget_name: malloc failed"); } /* end if */ else { ret_val = (jlong)H5Rget_name((hid_t)loc_id, (H5R_type_t)ref_type, refP, aName, bs) ; ENVPTR->ReleaseByteArrayElements(ENVPAR ref, refP, JNI_ABORT); if (ret_val < 0) { HDfree(aName); h5libraryError(env); } /* end if */ else { str = ENVPTR->NewStringUTF(ENVPAR aName); ENVPTR->SetObjectArrayElement(ENVPAR name, 0, str); HDfree(aName); } /* end else */ } /* end else */ } /* end else */ } /* end else */ } /* end else */ return ret_val; } /* end Java_hdf_hdf5lib_H5_H5Rget_1name */
/* * Class: hdf_hdf5lib_H5 * Method: H5Rcreate * Signature: ([BJLjava/lang/String;IJ)I */ JNIEXPORT jint JNICALL Java_hdf_hdf5lib_H5_H5Rcreate(JNIEnv *env, jclass clss, jbyteArray ref, jlong loc_id, jstring name, jint ref_type, jlong space_id) { const char *rName; herr_t status = -1; jbyte *refP; jboolean isCopy2; PIN_JAVA_STRING(name, rName, -1); if (ref == NULL) { UNPIN_JAVA_STRING(name, rName); h5nullArgument( env, "H5Rcreate: ref is NULL"); } /* end if */ else { if ((ref_type == H5R_OBJECT) && ENVPTR->GetArrayLength(ENVPAR ref) != H5R_OBJ_REF_BUF_SIZE) { UNPIN_JAVA_STRING(name, rName); h5badArgument( env, "H5Rcreate: ref input array != H5R_OBJ_REF_BUF_SIZE"); } /* end if */ else if ((ref_type == H5R_DATASET_REGION) && ENVPTR->GetArrayLength(ENVPAR ref) != H5R_DSET_REG_REF_BUF_SIZE) { UNPIN_JAVA_STRING(name, rName); h5badArgument( env, "H5Rcreate: region ref input array != H5R_DSET_REG_REF_BUF_SIZE"); } /* end else if */ else if ((ref_type != H5R_OBJECT) && (ref_type != H5R_DATASET_REGION)) { UNPIN_JAVA_STRING(name, rName); h5badArgument( env, "H5Rcreate: ref_type unknown type "); } /* end else if */ else { refP = (jbyte*)ENVPTR->GetByteArrayElements(ENVPAR ref, &isCopy2); if (refP == NULL) { UNPIN_JAVA_STRING(name, rName); h5JNIFatalError(env, "H5Rcreate: ref not pinned"); } /* end if */ else { status = H5Rcreate(refP, (hid_t)loc_id, rName, (H5R_type_t)ref_type, (hid_t)space_id); UNPIN_JAVA_STRING(name, rName); if (status < 0) { ENVPTR->ReleaseByteArrayElements(ENVPAR ref, refP, JNI_ABORT); h5libraryError(env); } /* end if */ else { ENVPTR->ReleaseByteArrayElements(ENVPAR ref, refP, 0); } /* end else */ } /* end else */ } /* end else */ } /* end else */ return (jint)status; } /* end Java_hdf_hdf5lib_H5_H5Rcreate */
/* * Class: hdf_hdf5lib_H5 * Method: H5Ecreate_msg * Signature: (JILjava/lang/String;)J */ JNIEXPORT jlong JNICALL Java_hdf_hdf5lib_H5_H5Ecreate_1msg (JNIEnv *env, jclass cls, jlong err_id, jint msg_type, jstring err_msg) { hid_t ret_val = -1; const char *the_err_msg; H5E_type_t error_msg_type = (H5E_type_t)msg_type; if (err_id < 0) { h5badArgument(env, "H5Ecreate_msg: invalid argument"); } /* end if */ else { PIN_JAVA_STRING(err_msg, the_err_msg); if (the_err_msg != NULL) { ret_val = H5Ecreate_msg((hid_t)err_id, error_msg_type, the_err_msg); UNPIN_JAVA_STRING(err_msg, the_err_msg); if (ret_val < 0) h5libraryError(env); } } /* end else */ return (jlong)ret_val; } /* end Java_hdf_hdf5lib_H5_H5Ecreate_1msg */
/* * Class: hdf_hdf5lib_H5 * Method: H5Aget_name * Signature: (J)Ljava/lang/String; */ JNIEXPORT jstring JNICALL Java_hdf_hdf5lib_H5_H5Aget_1name (JNIEnv *env, jclass clss, jlong attr_id) { char *aName; jstring str = NULL; ssize_t buf_size; /* get the length of the name */ buf_size = H5Aget_name((hid_t)attr_id, 0, NULL); if (buf_size <= 0) { h5badArgument(env, "H5Aget_name: buf_size <= 0"); } /* end if */ else { buf_size++; /* add extra space for the null terminator */ aName = (char*)HDmalloc(sizeof(char) * (size_t)buf_size); if (aName == NULL) { h5outOfMemory(env, "H5Aget_name: malloc failed"); } /* end if */ else { buf_size = H5Aget_name((hid_t)attr_id, (size_t)buf_size, aName); if (buf_size < 0) { HDfree(aName); h5libraryError(env); } /* end if */ else { /* save the string; */ str = ENVPTR->NewStringUTF(ENVPAR aName); HDfree(aName); } /* end else */ } /* end else */ } /* end else */ return str; } /* end Java_hdf_hdf5lib_H5_H5Aget_1name */
/* * Class: hdf_hdf5lib_H5 * Method: H5Iget_name_long * Signature: (JLjava/lang/String;J)J */ JNIEXPORT jlong JNICALL Java_hdf_hdf5lib_H5_H5Iget_1name_1long (JNIEnv *env, jclass clss, jlong obj_id, jobjectArray name, jlong buf_size) { char *aName; jstring str; hssize_t size = -1; long bs; bs = (long)buf_size; if (bs <= 0) { h5badArgument(env, "H5Iget_name: buf_size <= 0"); } /* end if */ else { aName = (char*)HDmalloc(sizeof(char) * (size_t)bs); if (aName == NULL) { h5outOfMemory(env, "H5Iget_name: malloc failed"); } /* end if */ else { size = H5Iget_name((hid_t)obj_id, aName, (size_t)buf_size); if (size < 0) { h5libraryError(env); } /* end if */ else { str = ENVPTR->NewStringUTF(ENVPAR aName); ENVPTR->SetObjectArrayElement(ENVPAR name, 0, str); } HDfree(aName); } } return (jlong)size; } /* end Java_hdf_hdf5lib_H5_H5Iget_1name */
/* * Class: hdf_hdf5lib_H5 * Method: H5PLget * Signature: (I)Ljava/lang/String; */ JNIEXPORT jstring JNICALL Java_hdf_hdf5lib_H5_H5PLget (JNIEnv *env, jclass clss, jint index) { char *aName; jstring str = NULL; ssize_t buf_size; /* get the length of the name */ buf_size = H5PLget(index, NULL, 0); if (buf_size <= 0) { h5badArgument(env, "H5PLget: buf_size <= 0"); } /* end if */ else { buf_size++; /* add extra space for the null terminator */ aName = (char*)HDmalloc(sizeof(char) * (size_t)buf_size); if (aName == NULL) { h5outOfMemory(env, "H5PLget: malloc failed"); } /* end if */ else { buf_size = H5PLget(index, aName, (size_t)buf_size); if (buf_size < 0) { h5libraryError(env); } /* end if */ else { str = ENVPTR->NewStringUTF(ENVPAR aName); } HDfree(aName); } } return str; } /* end Java_hdf_hdf5lib_H5_H5PLget */
/* * Class: hdf_hdf5lib_H5 * Method: H5Eget_msg * Signature: (J[I)Ljava/lang/String; */ JNIEXPORT jstring JNICALL Java_hdf_hdf5lib_H5_H5Eget_1msg (JNIEnv *env, jclass cls, jlong msg_id, jintArray error_msg_type_list) { char *namePtr; jstring str = NULL; jboolean isCopy; ssize_t buf_size; jint *theArray; H5E_type_t error_msg_type; if (msg_id < 0) { h5badArgument(env, "H5Eget_msg: invalid argument"); } /* end if */ else if (error_msg_type_list == NULL) { h5nullArgument(env, "H5Eget_msg: error_msg_type_list is NULL"); } /* end if */ else { /* get the length of the name */ buf_size = H5Eget_msg((hid_t)msg_id, NULL, NULL, 0); if ((buf_size < 0) || (buf_size == 0)) { h5JNIFatalError(env, "H5Eget_msg: Invalid message"); } /* end if */ else { buf_size++; /* add extra space for the null terminator */ namePtr = (char*)HDmalloc(sizeof(char) * (size_t)buf_size); if (namePtr == NULL) { h5outOfMemory(env, "H5Eget_msg: malloc failed"); } /* end if */ else { theArray = (jint*)ENVPTR->GetIntArrayElements(ENVPAR error_msg_type_list, &isCopy); if (theArray == NULL) { HDfree(namePtr); h5JNIFatalError(env, "H5Eget_msg: error_msg_type_list not pinned"); } /* end if */ else { buf_size = H5Eget_msg((hid_t)msg_id, &error_msg_type, (char *)namePtr, (size_t)buf_size); if (buf_size < 0) { HDfree(namePtr); ENVPTR->ReleaseIntArrayElements(ENVPAR error_msg_type_list, theArray, JNI_ABORT); h5libraryError(env); } /* end if */ else { theArray[0] = error_msg_type; ENVPTR->ReleaseIntArrayElements(ENVPAR error_msg_type_list, theArray, 0); str = ENVPTR->NewStringUTF(ENVPAR namePtr); HDfree(namePtr); } /* end else */ } /* end else */ } /* end else */ } /* end else */ } /* end else */ return str; } /* end Java_hdf_hdf5lib_H5_H5Eget_1msg */
/* * Class: hdf_hdf5lib_H5 * Method: H5Eclear2 * Signature: (J)V */ JNIEXPORT void JNICALL Java_hdf_hdf5lib_H5_H5Eclear2 (JNIEnv *env, jclass cls, jlong stk_id) { if (stk_id < 0) { h5badArgument(env, "H5Eclear2: invalid argument"); } /* end if */ else if (H5Eclear2((hid_t)stk_id) < 0) h5libraryError(env); } /* end Java_hdf_hdf5lib_H5_H5Eclear2 */
/* * Class: hdf_hdf5lib_H5 * Method: H5Epop * Signature: (JJ)V */ JNIEXPORT void JNICALL Java_hdf_hdf5lib_H5_H5Epop (JNIEnv *env, jclass cls, jlong stk_id, jlong count) { if (stk_id < 0) { h5badArgument(env, "H5Epop: invalid argument"); } /* end if */ else if (H5Epop((hid_t)stk_id, (size_t)count) < 0) h5libraryError(env); } /* end Java_hdf_hdf5lib_H5_H5Epop */
/* * Class: hdf_hdf5lib_H5 * Method: H5Eset_current_stack * Signature: (J)V */ JNIEXPORT void JNICALL Java_hdf_hdf5lib_H5_H5Eset_1current_1stack (JNIEnv *env, jclass cls, jlong stk_id) { if (stk_id < 0) { h5badArgument(env, "H5Eset_current_stack: invalid argument"); } /* end if */ else if (H5Eset_current_stack((hid_t)stk_id) < 0) h5libraryError(env); } /* end Java_hdf_hdf5lib_H5_H5Eset_1current_1stack */
/* * Class: hdf_hdf5lib_H5 * Method: H5Eget_class_name * Signature: (J)Ljava/lang/String; */ JNIEXPORT jstring JNICALL Java_hdf_hdf5lib_H5_H5Eget_1class_1name (JNIEnv *env, jclass cls, jlong cls_id) { char *namePtr; jstring str = NULL; ssize_t buf_size; if (cls_id < 0) { h5badArgument(env, "H5Eget_class_name: invalid argument"); } /* end if */ else { /* get the length of the name */ buf_size = H5Eget_class_name((hid_t)cls_id, NULL, 0); if (buf_size < 0) { h5badArgument( env, "H5Eget_class_name: buf_size < 0"); } /* end if */ else if (buf_size == 0) { h5badArgument( env, "H5Eget_class_name: No class name"); } /* end else if */ else { buf_size++; /* add extra space for the null terminator */ namePtr = (char*)HDmalloc(sizeof(char) * (size_t)buf_size); if (namePtr == NULL) { h5outOfMemory( env, "H5Eget_class_name: malloc failed"); } /* end if */ else { buf_size = H5Eget_class_name((hid_t)cls_id, (char *)namePtr, (size_t)buf_size); if (buf_size < 0) { HDfree(namePtr); h5libraryError(env); } /* end if */ else { str = ENVPTR->NewStringUTF(ENVPAR namePtr); HDfree(namePtr); } /* end else */ } /* end else */ } /* end else */ } /* end else */ return str; } /* end Java_hdf_hdf5lib_H5_H5Eget_1class_1name */
/* * Class: hdf_hdf5lib_H5 * Method: H5Eclose_msg * Signature: (J)V */ JNIEXPORT void JNICALL Java_hdf_hdf5lib_H5_H5Eclose_1msg (JNIEnv *env, jclass cls, jlong err_id) { if (err_id < 0) { h5badArgument(env, "H5Eclose_msg: invalid argument"); } /* end if */ else if (H5Eclose_msg((hid_t)err_id) < 0) h5libraryError(env); } /* end Java_hdf_hdf5lib_H5_H5Eclose_1msg */
/* * Class: hdf_hdf5lib_H5 * Method: H5Eunregister_class * Signature: (J)V */ JNIEXPORT void JNICALL Java_hdf_hdf5lib_H5_H5Eunregister_1class (JNIEnv *env, jclass cls, jlong cls_id) { if (cls_id < 0) { h5badArgument(env, "H5Eunregister_class: invalid argument"); } /* end if */ else if (H5Eunregister_class((hid_t)cls_id) < 0) h5libraryError(env); } /* end Java_hdf_hdf5lib_H5_H5Eunregister_1class */
/* * Class: hdf_hdf5lib_H5 * Method: H5Eauto_is_v2 * Signature: (J)Z */ JNIEXPORT jboolean JNICALL Java_hdf_hdf5lib_H5_H5Eauto_1is_1v2 (JNIEnv *env, jclass cls, jlong stk_id) { unsigned int is_stack = 0; if (stk_id < 0) { h5badArgument(env, "H5Eauto_is_v2: invalid argument"); } /* end if */ else if (H5Eauto_is_v2((hid_t)stk_id, &is_stack) < 0) h5libraryError(env); return (jboolean)is_stack; } /* end Java_hdf_hdf5lib_H5_H5Eauto_1is_1v2 */
/* * Class: hdf_hdf5lib_H5 * Method: H5Eget_num * Signature: (J)J */ JNIEXPORT jlong JNICALL Java_hdf_hdf5lib_H5_H5Eget_1num (JNIEnv *env, jclass cls, jlong stk_id) { ssize_t ret_val = -1; if (stk_id < 0) { h5badArgument(env, "H5Eget_num: invalid argument"); } /* end if */ else { ret_val = H5Eget_num((hid_t)stk_id); if (ret_val < 0) h5libraryError(env); } /* end else */ return (jlong)ret_val; } /* end Java_hdf_hdf5lib_H5_H5Eget_1num */
/* * Class: hdf_hdf5lib_H5 * Method: H5Oget_comment_by_name * Signature: (JLjava/lang/String;J)Ljava/lang/String; */ JNIEXPORT jstring JNICALL Java_hdf_hdf5lib_H5_H5Oget_1comment_1by_1name (JNIEnv *env, jclass clss, jlong loc_id, jstring name, jlong access_id) { char *oComment; const char *oName; ssize_t buf_size; ssize_t status; jstring str = NULL; PIN_JAVA_STRING(name, oName); if (oName != NULL) { /* get the length of the comment */ buf_size = H5Oget_comment_by_name((hid_t)loc_id, oName, NULL, 0, (hid_t)access_id); if (buf_size < 0) { h5badArgument( env, "H5Oget_comment_by_name: buf_size < 0"); } /* end if */ else if (buf_size > 0) { buf_size++; /* add extra space for the null terminator */ oComment = (char *)HDmalloc(sizeof(char) * (size_t)buf_size); if (oComment == NULL) { h5outOfMemory( env, "H5Oget_comment_by_name: malloc failed"); } /* end if */ else { status = H5Oget_comment_by_name((hid_t)loc_id, oName, oComment, (size_t)buf_size, (hid_t)access_id); if (status < 0) { h5libraryError(env); } /* end if */ else { /* may throw OutOfMemoryError */ str = ENVPTR->NewStringUTF(ENVPAR oComment); if (str == NULL) { h5JNIFatalError( env, "H5Oget_comment_by_name: return string not allocated"); } /* end if */ } /* end else */ HDfree(oComment); } } /* end if */ UNPIN_JAVA_STRING(name, oName); } return (jstring)str; } /* end Java_hdf_hdf5lib_H5_H5Oget_1comment_1by_1name */
/* * Class: hdf_hdf5lib_H5 * Method: H5Eprint2 * Signature: (JLjava/lang/Object;)V */ JNIEXPORT void JNICALL Java_hdf_hdf5lib_H5_H5Eprint2 (JNIEnv *env, jclass cls, jlong stk_id, jobject stream_obj) { herr_t ret_val = -1; if (stk_id < 0) { h5badArgument(env, "H5Eprint2: invalid argument"); } /* end if */ else { if(!stream_obj) ret_val = H5Eprint2((hid_t)stk_id, stdout); else ret_val = H5Eprint2((hid_t)stk_id, (FILE*)stream_obj); if (ret_val < 0) h5libraryError(env); } /* end else */ } /* end Java_hdf_hdf5lib_H5_H5Eprint2 */
/* * Class: hdf_hdf5lib_H5 * Method: H5Oget_comment * Signature: (J)Ljava/lang/String; */ JNIEXPORT jstring JNICALL Java_hdf_hdf5lib_H5_H5Oget_1comment (JNIEnv *env, jclass clss, jlong loc_id) { char *oComment; ssize_t buf_size; ssize_t status; jstring str = NULL; /* get the length of the comment */ buf_size = H5Oget_comment((hid_t)loc_id, NULL, 0); if (buf_size < 0) { h5badArgument( env, "H5Oget_comment: buf_size < 0"); } /* end if */ else if (buf_size > 0) { buf_size++; /* add extra space for the null terminator */ oComment = (char *)HDmalloc(sizeof(char) * (size_t)buf_size); if (oComment == NULL) { /* exception -- out of memory */ h5outOfMemory( env, "H5Oget_comment: malloc failed"); } /* end if */ else { status = H5Oget_comment((hid_t)loc_id, oComment, (size_t)buf_size); if (status < 0) { h5libraryError(env); } /* end if */ else { /* may throw OutOfMemoryError */ str = ENVPTR->NewStringUTF(ENVPAR oComment); if (str == NULL) { h5JNIFatalError( env, "H5Oget_comment: return string not allocated"); } /* end if */ } /* end else */ HDfree(oComment); } } /* end else if */ return (jstring)str; } /* end Java_hdf_hdf5lib_H5_H5Oget_1comment */