/* hid_t H5Freopen(hid_t file_id ) */ SEXP _H5Freopen( SEXP _file_id ) { hid_t file_id = INTEGER(_file_id)[0]; hid_t hid = H5Freopen( file_id ); addHandle(file_id); SEXP Rval; PROTECT(Rval = allocVector(INTSXP, 1)); INTEGER(Rval)[0] = hid; UNPROTECT(1); return Rval; }
static VALUE rb_H5Freopen (VALUE mod, VALUE v_file_id) { herr_t status; status = H5Freopen(NUM2INT(v_file_id)); if ( status < 0 ) rb_hdf5_raise("can't reopen HDF5 file"); return INT2NUM(status); }
/*---------------------------------------------------------------------------- * Name: h5freopen_c * Purpose: Call H5Freopen to open the file * Inputs: file_id1 - file identifier * Outputs: file_id2 - file identifier * Returns: 0 on success, -1 on failure * Programmer: Xiangyang Su * Wednesday, November 3, 1999 * Modifications: *---------------------------------------------------------------------------*/ int_f nh5freopen_c (hid_t_f *file_id1, hid_t_f *file_id2) { int ret_value = -1; hid_t c_file_id1, c_file_id2; c_file_id1 = *file_id1; c_file_id2 = H5Freopen(c_file_id1); if (c_file_id2 < 0) return ret_value; *file_id2 = (hid_t_f)c_file_id2; ret_value = 0; return ret_value; }