Fortran API review
This commit is contained in:
+141
-329
@@ -13,298 +13,113 @@
|
||||
#include "h5core/h5_debug.h"
|
||||
#include "h5core/h5_model.h"
|
||||
|
||||
/* file handling interface */
|
||||
static inline h5_int64_t
|
||||
open_file (
|
||||
const char *name,
|
||||
const int l_name,
|
||||
h5_int32_t flags,
|
||||
MPI_Comm ccomm,
|
||||
h5_size_t align
|
||||
#define h5_createprop_file F77_NAME( \
|
||||
h5_createprop_file, \
|
||||
h5_createprop_file_, \
|
||||
H5_CREATEPROP_FILE)
|
||||
h5_int64_t
|
||||
h5_createprop_file (
|
||||
void
|
||||
) {
|
||||
char *name2 = h5_strdupfor2c ( name, l_name );
|
||||
h5_file_t f = h5_open_file ( name2, flags, ccomm, align );
|
||||
free ( name2 );
|
||||
return (h5_int64_t)f;
|
||||
H5_API_ENTER (h5_int64_t, "%s", "");
|
||||
H5_API_RETURN ((h5_int64_t)h5_create_prop (H5_PROP_FILE));
|
||||
}
|
||||
|
||||
#define h5_openr F77_NAME( \
|
||||
h5_openr, \
|
||||
h5_openr_, \
|
||||
H5_OPENR)
|
||||
#define h5_setprop_filempio F77_NAME( \
|
||||
h5_setprop_filempio, \
|
||||
h5_setprop_filempio_, \
|
||||
H5_SETPROP_FILEMPIO)
|
||||
h5_int64_t
|
||||
h5_openr (
|
||||
const char *file_name,
|
||||
const int l_file_name
|
||||
) {
|
||||
H5_API_ENTER (h5_int64_t, "file_name='%s'",
|
||||
file_name);
|
||||
H5_API_RETURN (open_file (file_name, l_file_name, H5_O_RDONLY, 0, 0));
|
||||
h5_setprop_filempio (
|
||||
h5_int64_t* _prop,
|
||||
MPI_Fint* _comm
|
||||
) {
|
||||
H5_API_ENTER (h5_int64_t,
|
||||
"prop=%lld, comm=%lld",
|
||||
(long long int)*_prop, (long long int)*_comm);
|
||||
h5_prop_t prop = (h5_prop_t)*_prop;
|
||||
MPI_Comm comm = MPI_Comm_f2c (*_comm);
|
||||
H5_API_RETURN ((h5_int64_t)h5_set_prop_file_mpio (prop, &comm));
|
||||
}
|
||||
|
||||
#define h5_openw F77_NAME( \
|
||||
h5_openw, \
|
||||
h5_openw_, \
|
||||
H5_OPENW)
|
||||
#define h5_setprop_filealign F77_NAME ( \
|
||||
h5_setprop_filealign, \
|
||||
h5_setprop_filealign_, \
|
||||
H5_SETPROP_FILEALIGN)
|
||||
h5_int64_t
|
||||
h5_openw (
|
||||
const char *file_name,
|
||||
const int l_file_name
|
||||
) {
|
||||
H5_API_ENTER (h5_int64_t, "file_name='%s'",
|
||||
file_name);
|
||||
H5_API_RETURN (open_file (file_name, l_file_name, H5_O_WRONLY, 0, 0));
|
||||
h5_setprop_filealign (
|
||||
h5_int64_t* _prop,
|
||||
h5_int64_t* align
|
||||
) {
|
||||
H5_API_ENTER (h5_err_t,
|
||||
"prop=%lld, align=%lld",
|
||||
(long long int)*_prop, (long long int)*align);
|
||||
h5_prop_t prop = (h5_prop_t)*_prop;
|
||||
H5_API_RETURN (h5_set_prop_file_align (prop, *align));
|
||||
}
|
||||
|
||||
#define h5_opena F77_NAME( \
|
||||
h5_opena, \
|
||||
h5_opena_, \
|
||||
H5_OPENA)
|
||||
#define h5_setprop_filethrottle F77_NAME ( \
|
||||
h5_setprop_filethrottle, \
|
||||
h5_setprop_filethrottle_, \
|
||||
H5_SETPROP_FILETHROTTLE)
|
||||
|
||||
h5_int64_t
|
||||
h5_opena (
|
||||
const char *file_name,
|
||||
const int l_file_name
|
||||
) {
|
||||
H5_API_ENTER (h5_int64_t, "file_name='%s'",
|
||||
file_name);
|
||||
H5_API_RETURN (open_file (file_name, l_file_name, H5_O_APPEND, 0, 0));
|
||||
h5_setprop_filethrottle (
|
||||
h5_int64_t* _prop,
|
||||
h5_int64_t* throttle
|
||||
) {
|
||||
H5_API_ENTER (
|
||||
h5_err_t,
|
||||
"prop=%lld, throttle=%lld",
|
||||
(long long int)*_prop, (long long int)*throttle);
|
||||
h5_prop_t prop = (h5_prop_t)*_prop;
|
||||
H5_API_RETURN (h5_set_prop_file_throttle (prop, *throttle));
|
||||
}
|
||||
|
||||
#define h5_openr_align F77_NAME( \
|
||||
h5_openr_align, \
|
||||
h5_openr_align_, \
|
||||
H5_OPENR_ALIGN)
|
||||
#define h5_closeprop F77_NAME ( \
|
||||
h5_closeprop, \
|
||||
h5_closeprop_, \
|
||||
H5_CLOSEPROP)
|
||||
h5_int64_t
|
||||
h5_openr_align (
|
||||
const char *file_name,
|
||||
const h5_int64_t *align,
|
||||
const int l_file_name
|
||||
) {
|
||||
H5_API_ENTER (h5_int64_t, "file_name='%s', align=%llu",
|
||||
file_name, (long long unsigned)align);
|
||||
H5_API_RETURN (open_file (file_name, l_file_name, H5_O_RDONLY, 0, *align));
|
||||
h5_closeprop (
|
||||
h5_int64_t* _prop
|
||||
) {
|
||||
H5_API_ENTER (h5_err_t,
|
||||
"prop=%lld",
|
||||
(long long int)*_prop);
|
||||
h5_prop_t prop = (h5_prop_t)*_prop;
|
||||
H5_API_RETURN (h5_close_prop (prop));
|
||||
}
|
||||
|
||||
#define h5_openw_align F77_NAME( \
|
||||
h5_openw_align, \
|
||||
h5_openw_align_, \
|
||||
H5_OPENW_ALIGN)
|
||||
#define h5_openfile F77_NAME( \
|
||||
h5_openfile, \
|
||||
h5_openfile_, \
|
||||
H5_OPENFILE)
|
||||
h5_int64_t
|
||||
h5_openw_align (
|
||||
const char *file_name,
|
||||
const h5_int64_t *align,
|
||||
const int l_file_name
|
||||
) {
|
||||
H5_API_ENTER (h5_int64_t, "file_name='%s', align=%llu",
|
||||
file_name, (long long unsigned)align);
|
||||
H5_API_RETURN (open_file (file_name, l_file_name, H5_O_WRONLY, 0, *align));
|
||||
h5_openfile (
|
||||
const char* _fname,
|
||||
h5_int64_t* _mode,
|
||||
h5_int64_t* _props,
|
||||
const int _len_fname
|
||||
) {
|
||||
int len_fname = strlenf (_fname, _len_fname);
|
||||
H5_API_ENTER (h5_int64_t,
|
||||
"fname = %*s, mode=%lld, props=%lld",
|
||||
len_fname, _fname, (long long int)*_mode, (long long int)*_props);
|
||||
char* fname = h5_strdupfor2c (_fname, _len_fname);
|
||||
h5_int64_t mode = *_mode;
|
||||
h5_prop_t props = (h5_prop_t)*_props;
|
||||
h5_file_t f = h5_open_file2 (fname, mode, props);
|
||||
free (fname);
|
||||
H5_API_RETURN ((h5_int64_t)f);
|
||||
}
|
||||
|
||||
#define h5_opena_align F77_NAME( \
|
||||
h5_opena_align, \
|
||||
h5_opena_align_, \
|
||||
H5_OPENA_ALIGN)
|
||||
#define h5_closefile F77_NAME( \
|
||||
h5_closefile, \
|
||||
h5_closefile_, \
|
||||
H5_CLOSEFILE)
|
||||
h5_int64_t
|
||||
h5_opena_align (
|
||||
const char *file_name,
|
||||
const h5_int64_t *align,
|
||||
const int l_file_name
|
||||
) {
|
||||
H5_API_ENTER (h5_int64_t, "file_name='%s', align=%llu",
|
||||
file_name, (long long unsigned)align);
|
||||
H5_API_RETURN (open_file (file_name, l_file_name, H5_O_APPEND, 0, *align));
|
||||
}
|
||||
|
||||
#ifdef PARALLEL_IO
|
||||
h5_int32_t
|
||||
flagsfor2c (
|
||||
const char* flags,
|
||||
const int l_flags
|
||||
) {
|
||||
if (flags == NULL)
|
||||
return 0;
|
||||
|
||||
h5_int32_t fbits = 0;
|
||||
char* flags2 = h5_strdupfor2c (flags, l_flags);
|
||||
|
||||
flags2 = strtok (flags2, ",");
|
||||
while (flags != NULL) {
|
||||
if (strcmp (flags2, "vfd_mpiposix") == 0)
|
||||
fbits |= H5_VFD_MPIPOSIX;
|
||||
else if (strcmp (flags2, "vfd_core") == 0)
|
||||
fbits |= H5_VFD_CORE;
|
||||
else if (strcmp (flags2, "vfd_mpio_ind") == 0)
|
||||
fbits |= H5_VFD_MPIIO_IND;
|
||||
else if (strcmp (flags2, "fs_lustre") == 0)
|
||||
fbits |= H5_FS_LUSTRE;
|
||||
else {
|
||||
// :FIXME: ignore unknown strings!?
|
||||
}
|
||||
flags2 = strtok (NULL, ",");
|
||||
}
|
||||
free (flags2);
|
||||
return fbits;
|
||||
}
|
||||
|
||||
static inline h5_int64_t
|
||||
open_file_par (
|
||||
const char* file_name,
|
||||
const int l_file_name,
|
||||
MPI_Fint* fcomm,
|
||||
const h5_int32_t mode,
|
||||
const char* flags,
|
||||
const int l_flags,
|
||||
h5_int64_t align
|
||||
) {
|
||||
return open_file (
|
||||
file_name, l_file_name,
|
||||
mode | flagsfor2c (flags, l_flags),
|
||||
MPI_Comm_f2c (*fcomm),
|
||||
align);
|
||||
}
|
||||
|
||||
#define h5_openr_par F77_NAME( \
|
||||
h5_openr_par, \
|
||||
h5_openr_par_, \
|
||||
H5_OPENR_PAR)
|
||||
h5_int64_t
|
||||
h5_openr_par (
|
||||
const char *file_name,
|
||||
MPI_Fint *fcomm,
|
||||
const int l_file_name
|
||||
) {
|
||||
H5_API_ENTER (h5_int64_t, "file_name='%*s', fcomm=%d",
|
||||
l_file_name, file_name, *fcomm);
|
||||
H5_API_RETURN (
|
||||
open_file_par (
|
||||
file_name, l_file_name,
|
||||
fcomm,
|
||||
H5_O_RDONLY,
|
||||
NULL, 0,
|
||||
0));
|
||||
}
|
||||
|
||||
#define h5_openw_par F77_NAME( \
|
||||
h5_openw_par, \
|
||||
h5_openw_par_, \
|
||||
H5_OPENW_PAR)
|
||||
h5_int64_t
|
||||
h5_openw_par (
|
||||
const char* file_name,
|
||||
MPI_Fint* fcomm,
|
||||
const int l_file_name
|
||||
) {
|
||||
H5_API_ENTER (h5_int64_t, "file_name='%*s', fcomm=%d",
|
||||
l_file_name, file_name, *fcomm);
|
||||
H5_API_RETURN (
|
||||
open_file_par (
|
||||
file_name, l_file_name,
|
||||
fcomm,
|
||||
H5_O_WRONLY,
|
||||
NULL, 0,
|
||||
0));
|
||||
}
|
||||
|
||||
#define h5_opena_par F77_NAME( \
|
||||
h5_opena_par, \
|
||||
h5_opena_par_, \
|
||||
H5_OPENA_PAR)
|
||||
h5_int64_t
|
||||
h5_opena_par (
|
||||
const char* file_name,
|
||||
MPI_Fint* fcomm,
|
||||
const int l_file_name
|
||||
) {
|
||||
H5_API_ENTER (h5_int64_t, "file_name='%*s', fcomm=%d",
|
||||
l_file_name, file_name, *fcomm);
|
||||
H5_API_RETURN (
|
||||
open_file_par (
|
||||
file_name, l_file_name,
|
||||
fcomm,
|
||||
H5_O_APPEND,
|
||||
NULL, 0,
|
||||
0));
|
||||
}
|
||||
|
||||
#define h5_openr_par_align F77_NAME( \
|
||||
h5_openr_par_align, \
|
||||
h5_openr_par_align_, \
|
||||
H5_OPENR_PAR_ALIGN)
|
||||
h5_int64_t
|
||||
h5_openr_par_align (
|
||||
const char *file_name,
|
||||
MPI_Fint *fcomm,
|
||||
const h5_int64_t *align,
|
||||
const char *flags,
|
||||
const int l_file_name,
|
||||
const int l_flags
|
||||
) {
|
||||
H5_API_ENTER (h5_int64_t, "file_name='%*s', fcomm=%d, flags=%s, align=%lld",
|
||||
l_file_name, file_name, *fcomm, flags, (long long)align);
|
||||
H5_API_RETURN (
|
||||
open_file_par (
|
||||
file_name, l_file_name,
|
||||
fcomm,
|
||||
H5_O_RDONLY,
|
||||
flags, l_flags,
|
||||
*align));
|
||||
}
|
||||
|
||||
#define h5_openw_par_align F77_NAME( \
|
||||
h5_openw_par_align, \
|
||||
h5_openw_par_align_, \
|
||||
H5_OPENW_PAR_ALIGN)
|
||||
h5_int64_t
|
||||
h5_openw_par_align (
|
||||
const char *file_name,
|
||||
MPI_Fint *fcomm,
|
||||
const h5_int64_t *align,
|
||||
const char *flags,
|
||||
const int l_file_name,
|
||||
const int l_flags
|
||||
) {
|
||||
H5_API_ENTER (h5_int64_t, "file_name='%*s', fcomm=%d, flags=%s, align=%lld",
|
||||
l_file_name, file_name, *fcomm, flags, (long long)align);
|
||||
H5_API_RETURN (
|
||||
open_file_par (
|
||||
file_name, l_file_name,
|
||||
fcomm,
|
||||
H5_O_WRONLY,
|
||||
flags, l_flags,
|
||||
*align));
|
||||
}
|
||||
|
||||
#define h5_opena_par_align F77_NAME( \
|
||||
h5_opena_par_align, \
|
||||
h5_opena_par_align_, \
|
||||
H5_OPENA_PAR_ALIGN)
|
||||
h5_int64_t
|
||||
h5_opena_par_align (
|
||||
const char *file_name,
|
||||
MPI_Fint *fcomm,
|
||||
const h5_int64_t *align,
|
||||
const char *flags,
|
||||
const int l_file_name,
|
||||
const int l_flags
|
||||
) {
|
||||
H5_API_ENTER (h5_int64_t, "file_name='%*s', fcomm=%d, flags=%s, align=%lld",
|
||||
l_file_name, file_name, *fcomm, flags, (long long)align);
|
||||
H5_API_RETURN (
|
||||
open_file_par (
|
||||
file_name, l_file_name,
|
||||
fcomm,
|
||||
H5_O_APPEND,
|
||||
flags, l_flags,
|
||||
*align));
|
||||
}
|
||||
#endif
|
||||
|
||||
#define h5_close F77_NAME( \
|
||||
h5_close, \
|
||||
h5_close_, \
|
||||
H5_CLOSE)
|
||||
h5_int64_t
|
||||
h5_close (
|
||||
h5_closefile (
|
||||
const h5_int64_t *f
|
||||
) {
|
||||
h5_file_t fh = h5_filehandlefor2c(f);
|
||||
@@ -312,6 +127,45 @@ h5_close (
|
||||
H5_API_RETURN (h5_close_file (fh));
|
||||
}
|
||||
|
||||
#define h5_checkfile F77_NAME( \
|
||||
h5_checkfile, \
|
||||
h5_checkfile_, \
|
||||
H5_CHECKFILE)
|
||||
h5_int64_t
|
||||
h5_checkfile (
|
||||
const h5_int64_t *f
|
||||
) {
|
||||
h5_file_t fh = h5_filehandlefor2c(f);
|
||||
H5_API_ENTER (h5_int64_t, "f=%p", (h5_file_p)fh);
|
||||
H5_API_RETURN (h5_check_filehandle (fh));
|
||||
}
|
||||
|
||||
#define h5_flushfile F77_NAME( \
|
||||
h5_flushfile, \
|
||||
h5_flushfile_, \
|
||||
H5_FLUSHFILE)
|
||||
h5_int64_t
|
||||
h5_flushfile (
|
||||
const h5_int64_t* f
|
||||
) {
|
||||
h5_file_t fh = h5_filehandlefor2c(f);
|
||||
H5_API_ENTER (h5_int64_t, "f=%p", (h5_file_p)fh);
|
||||
H5_API_RETURN (h5_flush_file (fh));
|
||||
}
|
||||
|
||||
#define h5_flushstep F77_NAME( \
|
||||
h5_flushstep, \
|
||||
h5_flushstep_, \
|
||||
H5_FLUSHSTEP)
|
||||
h5_int64_t
|
||||
h5_flushstep (
|
||||
const h5_int64_t* f
|
||||
) {
|
||||
h5_file_t fh = h5_filehandlefor2c(f);
|
||||
H5_API_ENTER (h5_int64_t, "f=%p", (h5_file_p)fh);
|
||||
H5_API_RETURN (h5_flush_step (fh));
|
||||
}
|
||||
|
||||
#define h5_finalize F77_NAME( \
|
||||
h5_finalize, \
|
||||
h5_finalize_, \
|
||||
@@ -324,62 +178,6 @@ h5_finalize (
|
||||
H5_API_RETURN (h5_close_hdf5());
|
||||
}
|
||||
|
||||
#define h5_check F77_NAME( \
|
||||
h5_check, \
|
||||
h5_check_, \
|
||||
H5_CHECK)
|
||||
h5_int64_t
|
||||
h5_check (
|
||||
const h5_int64_t *f
|
||||
) {
|
||||
|
||||
h5_file_t fh = h5_filehandlefor2c(f);
|
||||
H5_API_ENTER (h5_int64_t, "f=%p", (h5_file_p)fh);
|
||||
H5_API_RETURN (h5_check_filehandle (fh));
|
||||
}
|
||||
|
||||
/* H5hut data model */
|
||||
#define h5_setstep F77_NAME( \
|
||||
h5_setstep, \
|
||||
h5_setstep_, \
|
||||
H5_SETSTEP)
|
||||
h5_int64_t
|
||||
h5_setstep (
|
||||
const h5_int64_t *f,
|
||||
h5_int64_t *step ) {
|
||||
|
||||
h5_file_t fh = h5_filehandlefor2c(f);
|
||||
H5_API_ENTER (h5_int64_t, "f=%p, step=%lld", (h5_file_p)fh, (long long)*step);
|
||||
H5_API_RETURN (h5_set_step (fh, (*step)-1));
|
||||
}
|
||||
|
||||
#define h5_getstep F77_NAME( \
|
||||
h5_getstep, \
|
||||
h5_getstep_, \
|
||||
H5_GETSTEP)
|
||||
h5_int64_t
|
||||
h5_getstep (
|
||||
const h5_int64_t *f
|
||||
) {
|
||||
|
||||
h5_file_t fh = h5_filehandlefor2c(f);
|
||||
H5_API_ENTER (h5_int64_t, "f=%p", (h5_file_p)fh);
|
||||
H5_API_RETURN (h5_get_step (fh) + 1);
|
||||
}
|
||||
|
||||
#define h5_getnsteps F77_NAME( \
|
||||
h5_getnsteps, \
|
||||
h5_getnsteps_, \
|
||||
H5_GETNSTEPS)
|
||||
h5_int64_t
|
||||
h5_getnsteps (
|
||||
const h5_int64_t *f
|
||||
) {
|
||||
|
||||
h5_file_t fh = h5_filehandlefor2c(f);
|
||||
H5_API_ENTER (h5_int64_t, "f=%p", (h5_file_p)fh);
|
||||
H5_API_RETURN (h5_get_num_steps (fh));
|
||||
}
|
||||
|
||||
|
||||
/* debug output */
|
||||
@@ -396,3 +194,17 @@ h5_set_verbosity_level (
|
||||
H5_API_RETURN(h5_set_debuglevel (*level));
|
||||
}
|
||||
|
||||
#define h5_abort_on_error F77_NAME( \
|
||||
h5_abort_on_error, \
|
||||
h5_abort_on_error_, \
|
||||
H5_ABORT_ON_ERROR)
|
||||
h5_int64_t
|
||||
h5_abort_on_error (
|
||||
void
|
||||
) {
|
||||
H5_API_ENTER (h5_int64_t, "%s", "");
|
||||
h5_set_debuglevel (1);
|
||||
H5_API_RETURN (h5_set_errorhandler (h5_abort_errorhandler));
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -69,7 +69,7 @@ h5bl_getfieldattribinfo (
|
||||
|
||||
char *field_name2 = h5_strdupfor2c ( field_name, l_field_name );
|
||||
h5_int64_t attrib_type;
|
||||
h5_int64_t herr = h5b_get_field_attrib_info (
|
||||
h5_int64_t herr = h5b_get_field_attrib_info_by_idx (
|
||||
f,
|
||||
field_name2, *attrib_idx - 1,
|
||||
attrib_name, l_attrib_name,
|
||||
|
||||
@@ -39,9 +39,9 @@ h5_getnfileattribs (
|
||||
}
|
||||
|
||||
#define h5_getfileattribinfo F77_NAME( \
|
||||
h5_getfileattribinfo, \
|
||||
h5_getfileattribinfo_, \
|
||||
H5_GETFILEATTRIBINFO)
|
||||
h5_getfileattribinfo, \
|
||||
h5_getfileattribinfo_, \
|
||||
H5_GETFILEATTRIBINFO)
|
||||
h5_int64_t
|
||||
h5_getfileattribinfo (
|
||||
const h5_int64_t* const fh,
|
||||
@@ -61,7 +61,7 @@ h5_getfileattribinfo (
|
||||
(h5_file_p)fh,
|
||||
(long long)*attrib_idx,
|
||||
attrib_name, attrib_type, attrib_nelem);
|
||||
h5_int64_t h5err = h5_get_file_attrib_info (
|
||||
h5_int64_t h5err = h5_get_file_attrib_info_by_idx (
|
||||
f,
|
||||
*attrib_idx - 1,
|
||||
attrib_name, l_attrib_name,
|
||||
@@ -72,6 +72,36 @@ h5_getfileattribinfo (
|
||||
H5_API_RETURN (h5err);
|
||||
}
|
||||
|
||||
#define h5_getfileattribinfo_by_name F77_NAME( \
|
||||
h5_getfileattribinfo_by_name, \
|
||||
h5_getfileattribinfo_by_name_, \
|
||||
H5_GETFILEATTRIBINFO_BY_NAME)
|
||||
h5_int64_t
|
||||
h5_getfileattribinfo_by_name (
|
||||
const h5_int64_t* const fh,
|
||||
const char* const _name,
|
||||
h5_int64_t* const _type,
|
||||
h5_int64_t* const _nelem,
|
||||
const int l_name
|
||||
) {
|
||||
h5_file_t f = h5_filehandlefor2c(fh);
|
||||
H5_API_ENTER (h5_int64_t,
|
||||
"fh=%p, "
|
||||
"name=%.*s, "
|
||||
"type=%p, "
|
||||
"nelem=%p",
|
||||
(h5_file_p)fh,
|
||||
l_name, _name, _type, _nelem);
|
||||
char* name = h5_strdupfor2c (_name, l_name);
|
||||
h5_int64_t h5err = h5_get_file_attrib_info_by_name (
|
||||
f,
|
||||
name,
|
||||
_type,
|
||||
(h5_size_t*)_nelem);
|
||||
convert_type2for (_type);
|
||||
H5_API_RETURN (h5err);
|
||||
}
|
||||
|
||||
/*
|
||||
_ __
|
||||
(_) / /__
|
||||
@@ -309,8 +339,8 @@ h5_writefileattrib_i4 (
|
||||
) {
|
||||
h5_file_t f = h5_filehandlefor2c(fh);
|
||||
H5_API_ENTER (h5_int64_t,
|
||||
"fh=%p, name='%.*s', buffer=%p, nelem=%lld",
|
||||
(h5_file_p)f, l_name, name, buffer, (long long)*nelem);
|
||||
"fh=%p, name='%.*s', buffer[12]=%d, %x, %x, nelem=%lld",
|
||||
(h5_file_p)f, l_name, name, buffer[12], buffer[13], buffer[14], (long long)*nelem);
|
||||
H5_API_RETURN (write_file_attrib(
|
||||
f,
|
||||
name, l_name,
|
||||
@@ -386,7 +416,7 @@ h5_getstepattribinfo (
|
||||
(h5_file_p)f,
|
||||
(long long)*attrib_idx,
|
||||
attrib_name, attrib_type, attrib_nelem);
|
||||
h5_int64_t h5err = h5_get_step_attrib_info (
|
||||
h5_int64_t h5err = h5_get_step_attrib_info_by_idx (
|
||||
f,
|
||||
*attrib_idx - 1,
|
||||
attrib_name, l_attrib_name,
|
||||
@@ -397,6 +427,36 @@ h5_getstepattribinfo (
|
||||
H5_API_RETURN (h5err);
|
||||
}
|
||||
|
||||
#define h5_getstepattribinfo_by_name F77_NAME( \
|
||||
h5_getstepattribinfo_by_name, \
|
||||
h5_getstepattribinfo_by_name_, \
|
||||
H5_GETSTEPATTRIBINFO_BY_NAME)
|
||||
h5_int64_t
|
||||
h5_getstepattribinfo_by_name (
|
||||
const h5_int64_t* const fh,
|
||||
const char* const _name,
|
||||
h5_int64_t* const _type,
|
||||
h5_int64_t* const _nelem,
|
||||
const int l_name
|
||||
) {
|
||||
h5_file_t f = h5_filehandlefor2c(fh);
|
||||
H5_API_ENTER (h5_int64_t,
|
||||
"fh=%p, "
|
||||
"name=%.*s, "
|
||||
"type=%p, "
|
||||
"nelem=%p",
|
||||
(h5_file_p)fh,
|
||||
l_name, _name, _type, _nelem);
|
||||
char* name = h5_strdupfor2c (_name, l_name);
|
||||
h5_int64_t h5err = h5_get_step_attrib_info_by_name (
|
||||
f,
|
||||
name,
|
||||
_type,
|
||||
(h5_size_t*)_nelem);
|
||||
convert_type2for (_type);
|
||||
H5_API_RETURN (h5err);
|
||||
}
|
||||
|
||||
static inline h5_int64_t
|
||||
write_step_attrib (
|
||||
const h5_file_t fh,
|
||||
|
||||
@@ -0,0 +1,76 @@
|
||||
/*
|
||||
Copyright (c) 2006-2013, The Regents of the University of California,
|
||||
through Lawrence Berkeley National Laboratory (subject to receipt of any
|
||||
required approvals from the U.S. Dept. of Energy) and the Paul Scherrer
|
||||
Institut (Switzerland). All rights reserved.
|
||||
|
||||
License: see file COPYING in top level of source distribution.
|
||||
*/
|
||||
|
||||
#include "h5_private.h"
|
||||
|
||||
#include "h5core/h5.h"
|
||||
#include "h5core/h5_debug.h"
|
||||
#include "h5core/h5_model.h"
|
||||
|
||||
/* H5hut data model */
|
||||
|
||||
#define h5_hasstep F77_NAME( \
|
||||
h5_hasstep, \
|
||||
h5_hasstep_, \
|
||||
H5_HASSTEP)
|
||||
int
|
||||
h5_hasstep (
|
||||
const h5_int64_t* f,
|
||||
const h5_int64_t* stepno
|
||||
) {
|
||||
|
||||
h5_file_t fh = h5_filehandlefor2c(f);
|
||||
H5_API_ENTER (
|
||||
int,
|
||||
"f=%p, stepno=%lld",
|
||||
(h5_file_p)fh, (long long int)stepno);
|
||||
H5_API_RETURN (h5_has_step (fh, *stepno));
|
||||
}
|
||||
|
||||
#define h5_setstep F77_NAME( \
|
||||
h5_setstep, \
|
||||
h5_setstep_, \
|
||||
H5_SETSTEP)
|
||||
h5_int64_t
|
||||
h5_setstep (
|
||||
const h5_int64_t *f,
|
||||
h5_int64_t *step ) {
|
||||
|
||||
h5_file_t fh = h5_filehandlefor2c(f);
|
||||
H5_API_ENTER (h5_int64_t, "f=%p, step=%lld", (h5_file_p)fh, (long long)*step);
|
||||
H5_API_RETURN (h5_set_step (fh, *step));
|
||||
}
|
||||
|
||||
#define h5_getstep F77_NAME( \
|
||||
h5_getstep, \
|
||||
h5_getstep_, \
|
||||
H5_GETSTEP)
|
||||
h5_int64_t
|
||||
h5_getstep (
|
||||
const h5_int64_t *f
|
||||
) {
|
||||
|
||||
h5_file_t fh = h5_filehandlefor2c(f);
|
||||
H5_API_ENTER (h5_int64_t, "f=%p", (h5_file_p)fh);
|
||||
H5_API_RETURN (h5_get_step (fh) + 1);
|
||||
}
|
||||
|
||||
#define h5_getnsteps F77_NAME( \
|
||||
h5_getnsteps, \
|
||||
h5_getnsteps_, \
|
||||
H5_GETNSTEPS)
|
||||
h5_int64_t
|
||||
h5_getnsteps (
|
||||
const h5_int64_t *f
|
||||
) {
|
||||
|
||||
h5_file_t fh = h5_filehandlefor2c(f);
|
||||
H5_API_ENTER (h5_int64_t, "f=%p", (h5_file_p)fh);
|
||||
H5_API_RETURN (h5_get_num_steps (fh));
|
||||
}
|
||||
+22
-18
@@ -2,15 +2,17 @@
|
||||
if ENABLE_FORTRAN
|
||||
AM_CPPFLAGS += -I$(top_srcdir)/src/include
|
||||
|
||||
F90_FILES = \
|
||||
H5F.f90 \
|
||||
H5_constF.f90 \
|
||||
H5_attribsF.f90 \
|
||||
H5PartF.f90 \
|
||||
H5Part_ioF.f90 \
|
||||
H5BlockF.f90 \
|
||||
H5Block_attribsF.f90 \
|
||||
H5Block_ioF.f90
|
||||
F90_FILES = \
|
||||
$(top_srcdir)/src/include/H5hut.f90 \
|
||||
$(top_srcdir)/src/include/H5.f90 \
|
||||
$(top_srcdir)/src/include/H5_const.f90 \
|
||||
$(top_srcdir)/src/include/H5_attribs.f90 \
|
||||
$(top_srcdir)/src/include/H5_model.f90 \
|
||||
$(top_srcdir)/src/include/H5Part.f90 \
|
||||
$(top_srcdir)/src/include/H5Part_io.f90 \
|
||||
$(top_srcdir)/src/include/H5Block.f90 \
|
||||
$(top_srcdir)/src/include/H5Block_attribs.f90 \
|
||||
$(top_srcdir)/src/include/H5Block_io.f90
|
||||
|
||||
EXTRA_HEADERS =
|
||||
|
||||
@@ -20,16 +22,18 @@ EXTRA_DIST = \
|
||||
$(F90_FILES)
|
||||
|
||||
nodist_include_HEADERS = \
|
||||
$(top_srcdir)/src/include/H5hutF.h
|
||||
$(top_srcdir)/src/include/H5hut.f
|
||||
|
||||
lib_LTLIBRARIES = libH5hutF.la
|
||||
|
||||
include_HEADERS = \
|
||||
../include/H5hutF.h
|
||||
$(F90_FILES) \
|
||||
$(top_srcdir)/src/include/H5hut.f
|
||||
|
||||
libH5hutF_la_SOURCES = \
|
||||
H5.c \
|
||||
H5_attribs.c \
|
||||
H5_model.c \
|
||||
H5Part.c \
|
||||
H5Part_io.c \
|
||||
H5Block.c \
|
||||
@@ -37,17 +41,17 @@ libH5hutF_la_SOURCES = \
|
||||
H5Block_io.c
|
||||
|
||||
libH5hutF_la_DEPENDENCIES = \
|
||||
$(top_srcdir)/src/include/H5hutF.h
|
||||
$(top_srcdir)/src/include/H5hut.f
|
||||
|
||||
libH5hutF_la_LDFLAGS = -version-info 2:0:0 -rpath '$(libdir)'
|
||||
|
||||
$(top_srcdir)/src/include/H5hutF.h: $(F90_FILES)
|
||||
awk '/INTEGER\*8 :: /{print "\t" $$0}' $^ >$@
|
||||
awk '/PARAMETER /{print "\t" $$0}' $^ >> $@
|
||||
awk '/INTEGER\*8 FUNCTION/{print "\t" $$1 " " $$3}' $^ >>$@
|
||||
$(top_srcdir)/src/include/H5hut.f: $(F90_FILES)
|
||||
awk '/INTEGER\*8 :: /{print " " $$0}' $^ >$@
|
||||
awk '/PARAMETER /{print " " $$0}' $^ >> $@
|
||||
awk '/INTEGER\*8 FUNCTION/{print " " $$1 " " $$3}' $^ >>$@
|
||||
|
||||
all-local: ../include/H5hutF.h
|
||||
$(INSTALL) -m644 .libs/libH5hutF.a ../lib
|
||||
all-local: $(top_srcdir)/src/include/H5hut.f
|
||||
$(INSTALL) -m644 .libs/libH5hutF.a $(top_builddir)/src/lib
|
||||
endif
|
||||
|
||||
clean: clean-am
|
||||
|
||||
@@ -80,4 +80,15 @@ h5_filehandlefor2c (
|
||||
) {
|
||||
return (h5_file_t)*ptr;
|
||||
}
|
||||
|
||||
static inline
|
||||
int strlenf (
|
||||
const char* s,
|
||||
int len
|
||||
) {
|
||||
if (len == 0) return 0;
|
||||
while (s[--len] == ' ');
|
||||
return ++len;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
+125
-210
@@ -1,215 +1,130 @@
|
||||
! Declaration of subroutines for Fortran Bindings
|
||||
!
|
||||
! Copyright (c) 2006-2013, The Regents of the University of California,
|
||||
! through Lawrence Berkeley National Laboratory (subject to receipt of any
|
||||
! required approvals from the U.S. Dept. of Energy) and the Paul Scherrer
|
||||
! Institut (Switzerland). All rights reserved.!
|
||||
!
|
||||
! License: see file COPYING in top level of source distribution.
|
||||
!
|
||||
INTERFACE
|
||||
|
||||
!!!!!!!! File Opening and Closing !!!!!!!!
|
||||
!>
|
||||
!! \ingroup h5hut_file_f
|
||||
!! Create file property. See \ref H5CreateProp
|
||||
!! \return 0 on success or -2 on error
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_createprop_file ()
|
||||
END FUNCTION h5_createprop_file
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_file_f
|
||||
!! Store MPI IO comminicator information in file property list. See \ref H5SetPropFileMPIO
|
||||
!! \return 0 on success or -2 on error
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_setprop_filempio (prop, comm)
|
||||
INTEGER*8, INTENT(IN) :: prop !< property
|
||||
INTEGER, INTENT(IN) :: comm !< the MPI communicator used by the program
|
||||
END FUNCTION h5_setprop_filempio
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_file_f
|
||||
!! Set alignment. See \ref H5SetPropFileAlign
|
||||
!! \return 0 on success or -2 on error
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_setprop_filealign (prop, align)
|
||||
INTEGER*8, INTENT(IN) :: prop !< property
|
||||
INTEGER*8, INTENT(IN) :: align !< alignment
|
||||
END FUNCTION h5_setprop_filealign
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_file_f
|
||||
!! Set throttle. See \ref H5SetPropFileThrottle
|
||||
!! \return 0 on success or -2 on error
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_setprop_filethrottle (prop, throttle)
|
||||
INTEGER*8, INTENT(IN) :: prop !< property
|
||||
INTEGER*8, INTENT(IN) :: throttle !< throttle
|
||||
END FUNCTION h5_setprop_filethrottle
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_file_f
|
||||
!! Close property. See \ref H5CloseProp
|
||||
!! \return 0 on success or -2 on error
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_closeprop (prop)
|
||||
INTEGER*8, INTENT(IN) :: prop !< property
|
||||
END FUNCTION h5_closeprop
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_file_f
|
||||
!! Opens a file for reading. See \ref H5OpenFile
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_openfile (fname, mode, props)
|
||||
CHARACTER(LEN=*), INTENT(IN) :: fname !< the filename to open for reading
|
||||
INTEGER*8, INTENT(IN) :: mode !< file mode
|
||||
INTEGER*8, INTENT(IN) :: props !< properties
|
||||
END FUNCTION h5_openfile
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_file_f
|
||||
!! Closes a file. See \ref H5CloseFile
|
||||
!! \return 0 on success or error code
|
||||
INTEGER*8 FUNCTION h5_closefile (filehandle)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
END FUNCTION h5_closefile
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_file_f
|
||||
!! Checks that a file is valid. See \ref H5CheckFile
|
||||
!! \return H5_SUCCESS or H5_FAILURE
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_checkfile ( filehandle )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
END FUNCTION h5_checkfile
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_file_f
|
||||
!! Flush file data to disk.
|
||||
!! \return H5_SUCCESS or H5_FAILURE
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_flushfile (filehandle)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
END FUNCTION h5_flushfile
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_file_f
|
||||
!! Flush step data to disk.
|
||||
!! \return H5_SUCCESS or H5_FAILURE
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_flushstep (filehandle)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
END FUNCTION h5_flushstep
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_file_f
|
||||
!! Close HDF5 library. See \ref H5Finalize
|
||||
!! \return \c H5_SUCCESS or \c H5_FAILURE
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_finalize ()
|
||||
END FUNCTION h5_finalize
|
||||
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_file_f
|
||||
!! Opens a file for reading. See \ref H5OpenFile
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_openr ( filename )
|
||||
CHARACTER(LEN=*), INTENT(IN) :: filename !< the filename to open for reading
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5hut_error_f
|
||||
!! See \ref H5SetVerbosityLevel
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
SUBROUTINE h5_set_verbosity_level ( level )
|
||||
INTEGER*8, INTENT(IN) :: level !< the level from 0 (no output) to 5 (most detailed)
|
||||
END SUBROUTINE h5_set_verbosity_level
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_file_f
|
||||
!! Opens a file for writing in truncate mode. See \ref H5OpenFile
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_openw ( filename )
|
||||
CHARACTER(LEN=*), INTENT(IN) :: filename !< the filename to open for writing
|
||||
END FUNCTION
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_file_f
|
||||
!! Opens a file for writing in append mode. See \ref H5OpenFile
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_opena ( filename )
|
||||
CHARACTER(LEN=*), INTENT(IN) :: filename !< the filename to open for appending
|
||||
END FUNCTION
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_file_f
|
||||
!! Opens a parallel file for reading. See \ref H5OpenFile
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_openr_par ( filename, mpi_communicator )
|
||||
CHARACTER(LEN=*), INTENT(IN) :: filename !< the filename to open for reading
|
||||
INTEGER, INTENT(IN) :: mpi_communicator !< the MPI communicator used by the program
|
||||
END FUNCTION
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_file_f
|
||||
!! Opens a parallel file for writing in truncate mode. See \ref H5OpenFile
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_openw_par ( filename, mpi_communicator )
|
||||
CHARACTER(LEN=*), INTENT(IN) :: filename !< the filename to open for writing
|
||||
INTEGER, INTENT(IN) :: mpi_communicator !< the MPI_Communicator used by the program
|
||||
END FUNCTION
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_file_f
|
||||
!! Opens a parallel file for writing in append mode. See \ref H5OpenFile
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_opena_par ( filename, mpi_communicator )
|
||||
CHARACTER(LEN=*), INTENT(IN) :: filename !< the filename to open for appending
|
||||
INTEGER, INTENT(IN) :: mpi_communicator !< the MPI_Communicator used by the program
|
||||
END FUNCTION
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_file_f
|
||||
!! Opens a file for reading and specifies an HDF5 alignment.
|
||||
!! See \ref H5OpenFileAlign
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_openr_align ( filename, align )
|
||||
CHARACTER(LEN=*), INTENT(IN) :: filename !< the filename to open for reading
|
||||
INTEGER*8, INTENT(IN) :: align !< alignment value in bytes
|
||||
END FUNCTION
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_file_f
|
||||
!! Opens a file for writing in truncate mode and specifies an HDF5 alignment.
|
||||
!! See \ref H5OpenFileAlign
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_openw_align ( filename, align )
|
||||
CHARACTER(LEN=*), INTENT(IN) :: filename !< the filename to open for writing
|
||||
INTEGER*8, INTENT(IN) :: align !< alignment value in bytes
|
||||
END FUNCTION
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_file_f
|
||||
!! Opens a file for writing in append mode and specifies an HDF5 alignment.
|
||||
!! See \ref H5OpenFileAlign
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_opena_align ( filename, align )
|
||||
CHARACTER(LEN=*), INTENT(IN) :: filename !< the filename to open for appending
|
||||
INTEGER*8, INTENT(IN) :: align !< alignment value in bytes
|
||||
END FUNCTION
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_file_f
|
||||
!! Opens a parallel file for reading and specifies an HDF5 alignment.
|
||||
!! See \ref H5OpenFileAlign
|
||||
!!
|
||||
!! Flags are specified as a comma separated string that can include:
|
||||
!!
|
||||
!! - \c fs_lustre - enable optimizations for the Lustre file system
|
||||
!! - \c vfd_mpiposix - use the HDF5 MPI-POSIX virtual file driver
|
||||
!! - \c vfd_mpio_ind - use MPI-IO in indepedent mode
|
||||
!!
|
||||
!! See \ref H5OpenFileAlign
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_openr_par_align ( filename, mpi_communicator, align, flags )
|
||||
CHARACTER(LEN=*), INTENT(IN) :: filename !< the filename to open for reading
|
||||
INTEGER, INTENT(IN) :: mpi_communicator !< the MPI_Communicator used by the program
|
||||
INTEGER*8, INTENT(IN) :: align !< alignment value in bytes
|
||||
CHARACTER(LEN=*), INTENT(IN) :: flags !< additional flags
|
||||
END FUNCTION
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_file_f
|
||||
!! Opens a parallel file for writing in truncate mode and specifies
|
||||
!! an HDF5 alignment.
|
||||
!!
|
||||
!! Flags are specified as a comma separated string that can include:
|
||||
!!
|
||||
!! - \c fs_lustre - enable optimizations for the Lustre file system
|
||||
!! - \c vfd_mpiposix - use the HDF5 MPI-POSIX virtual file driver
|
||||
!! - \c vfd_mpio_ind - use MPI-IO in indepedent mode
|
||||
!!
|
||||
!! See \ref H5OpenFileAlign
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_openw_par_align ( filename, mpi_communicator, align, flags )
|
||||
CHARACTER(LEN=*), INTENT(IN) :: filename !< the filename to open for writing
|
||||
INTEGER, INTENT(IN) :: mpi_communicator !< the MPI_Communicator used by the program
|
||||
INTEGER*8, INTENT(IN) :: align !< alignment value in bytes
|
||||
CHARACTER(LEN=*), INTENT(IN) :: flags !< additional flags
|
||||
END FUNCTION
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_file_f
|
||||
!! Opens a parallel file for writing in append mode and specifies
|
||||
!! an HDF5 alignment.
|
||||
!!
|
||||
!! Flags are specified as a comma separated string that can include:
|
||||
!!
|
||||
!! - \c fs_lustre - enable optimizations for the Lustre file system
|
||||
!! - \c vfd_mpiposix - use the HDF5 MPI-POSIX virtual file driver
|
||||
!! - \c vfd_mpio_ind - use MPI-IO in indepedent mode
|
||||
!!
|
||||
!! See \ref H5OpenFileAlign
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_opena_par_align ( filename, mpi_communicator, align, flags )
|
||||
CHARACTER(LEN=*), INTENT(IN) :: filename !< the filename to open for appending
|
||||
INTEGER, INTENT(IN) :: mpi_communicator !< the MPI_Communicator used by the program
|
||||
INTEGER*8, INTENT(IN) :: align !< alignment value in bytes
|
||||
CHARACTER(LEN=*), INTENT(IN) :: flags !< additional flags
|
||||
END FUNCTION
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_file_f
|
||||
!! Closes a file. See \ref H5CloseFile
|
||||
!! \return 0 on success or error code
|
||||
INTEGER*8 FUNCTION h5_close ( filehandle )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
END FUNCTION
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_file_f
|
||||
!! Close HDF5 library. See \ref H5Finalize
|
||||
!! \return \c H5_SUCCESS or \c H5_FAILURE
|
||||
INTEGER*8 FUNCTION h5_finalize ()
|
||||
END FUNCTION
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_file_f
|
||||
!! Checks that a file is valid. See \ref H5CheckFile
|
||||
!! \return 0 on success or error code
|
||||
INTEGER*8 FUNCTION h5_check ( filehandle )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
END FUNCTION
|
||||
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_model_f
|
||||
!! See \ref H5SetStep
|
||||
!! \return 0 on success or error code
|
||||
INTEGER*8 FUNCTION h5_setstep (filehandle,step)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
INTEGER*8, INTENT(IN) :: step !< a timestep value >= 1
|
||||
END FUNCTION
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_model_f
|
||||
!! See \ref H5GetStep
|
||||
!! \return the the current step or \c H5_FAILURE
|
||||
INTEGER*8 FUNCTION h5_getstep (filehandle)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
END FUNCTION
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_model_f
|
||||
!! See \ref H5GetNumSteps
|
||||
!! \return the number of steps or error code
|
||||
INTEGER*8 FUNCTION h5_getnsteps (filehandle)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
END FUNCTION
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_error_f
|
||||
!! See \ref H5SetVerbosityLevel
|
||||
!! \return 0 on success or error code
|
||||
INTEGER*8 FUNCTION h5_set_verbosity_level ( level )
|
||||
INTEGER*8, INTENT(IN) :: level !< the level from 0 (no output) to 5 (most detailed)
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5hut_error_f
|
||||
!! Abort program on error.
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
SUBROUTINE h5_abort_on_error ()
|
||||
END SUBROUTINE h5_abort_on_error
|
||||
|
||||
END INTERFACE
|
||||
|
||||
+100
-91
@@ -1,97 +1,106 @@
|
||||
! _ _ _ _
|
||||
! __| | __ _| |_ __ _ _ __ ___ ___ __| | ___| |
|
||||
! / _` |/ _` | __/ _` | | '_ ` _ \ / _ \ / _` |/ _ \ |
|
||||
! | (_| | (_| | || (_| | | | | | | | (_) | (_| | __/ |
|
||||
! \__,_|\__,_|\__\__,_| |_| |_| |_|\___/ \__,_|\___|_|
|
||||
!
|
||||
! Copyright (c) 2006-2013, The Regents of the University of California,
|
||||
! through Lawrence Berkeley National Laboratory (subject to receipt of any
|
||||
! required approvals from the U.S. Dept. of Energy) and the Paul Scherrer
|
||||
! Institut (Switzerland). All rights reserved.!
|
||||
!
|
||||
! License: see file COPYING in top level of source distribution.
|
||||
!
|
||||
INTERFACE
|
||||
! _ _ _ _
|
||||
! __| | __ _| |_ __ _ _ __ ___ ___ __| | ___| |
|
||||
! / _` |/ _` | __/ _` | | '_ ` _ \ / _ \ / _` |/ _ \ |
|
||||
! | (_| | (_| | || (_| | | | | | | | (_) | (_| | __/ |
|
||||
! \__,_|\__,_|\__\__,_| |_| |_| |_|\___/ \__,_|\___|_|
|
||||
|
||||
|
||||
!>
|
||||
!! \ingroup h5block_model_f
|
||||
!! See \ref H5Block3dSetView
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_setview ( filehandle, i_start, i_end, j_start, j_end, k_start, k_end )
|
||||
INTEGER*8, INTENT(IN) :: filehandle
|
||||
INTEGER*8, INTENT(IN) :: i_start
|
||||
INTEGER*8, INTENT(IN) :: i_end
|
||||
INTEGER*8, INTENT(IN) :: j_start
|
||||
INTEGER*8, INTENT(IN) :: j_end
|
||||
INTEGER*8, INTENT(IN) :: k_start
|
||||
INTEGER*8, INTENT(IN) :: k_end
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5block_model_f
|
||||
!! See \ref H5Block3dSetView
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_setview ( filehandle, i_start, i_end, j_start, j_end, k_start, k_end )
|
||||
INTEGER*8, INTENT(IN) :: filehandle
|
||||
INTEGER*8, INTENT(IN) :: i_start
|
||||
INTEGER*8, INTENT(IN) :: i_end
|
||||
INTEGER*8, INTENT(IN) :: j_start
|
||||
INTEGER*8, INTENT(IN) :: j_end
|
||||
INTEGER*8, INTENT(IN) :: k_start
|
||||
INTEGER*8, INTENT(IN) :: k_end
|
||||
END FUNCTION h5bl_3d_setview
|
||||
|
||||
!>
|
||||
!! \ingroup h5block_model_f
|
||||
!! See \ref H5Block3dGetView
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_getview ( filehandle, i_start, i_end, j_start, j_end, k_start, k_end )
|
||||
INTEGER*8, INTENT(IN) :: filehandle
|
||||
INTEGER*8, INTENT(OUT) :: i_start
|
||||
INTEGER*8, INTENT(OUT) :: i_end
|
||||
INTEGER*8, INTENT(OUT) :: j_start
|
||||
INTEGER*8, INTENT(OUT) :: j_end
|
||||
INTEGER*8, INTENT(OUT) :: k_start
|
||||
INTEGER*8, INTENT(OUT) :: k_end
|
||||
END FUNCTION
|
||||
|
||||
!>
|
||||
!! \ingroup h5block_model_f
|
||||
!! See \ref H5Block3dGetReducedView
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_getreducedview ( filehandle, i_start, i_end, j_start, j_end, k_start, k_end )
|
||||
INTEGER*8, INTENT(IN) :: filehandle
|
||||
INTEGER*8, INTENT(OUT) :: i_start
|
||||
INTEGER*8, INTENT(OUT) :: i_end
|
||||
INTEGER*8, INTENT(OUT) :: j_start
|
||||
INTEGER*8, INTENT(OUT) :: j_end
|
||||
INTEGER*8, INTENT(OUT) :: k_start
|
||||
INTEGER*8, INTENT(OUT) :: k_end
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5block_model_f
|
||||
!! See \ref H5Block3dGetView
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_getview ( filehandle, i_start, i_end, j_start, j_end, k_start, k_end )
|
||||
INTEGER*8, INTENT(IN) :: filehandle
|
||||
INTEGER*8, INTENT(OUT) :: i_start
|
||||
INTEGER*8, INTENT(OUT) :: i_end
|
||||
INTEGER*8, INTENT(OUT) :: j_start
|
||||
INTEGER*8, INTENT(OUT) :: j_end
|
||||
INTEGER*8, INTENT(OUT) :: k_start
|
||||
INTEGER*8, INTENT(OUT) :: k_end
|
||||
END FUNCTION h5bl_3d_getview
|
||||
|
||||
!>
|
||||
!! \ingroup h5block_model_f
|
||||
!! See \ref H5Block3dHasView
|
||||
!! \return rank of processor error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_hasview ( filehandle )
|
||||
INTEGER*8, INTENT(IN) :: filehandle
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5block_model_f
|
||||
!! See \ref H5Block3dGetReducedView
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_getreducedview ( filehandle, i_start, i_end, j_start, j_end, k_start, k_end )
|
||||
INTEGER*8, INTENT(IN) :: filehandle
|
||||
INTEGER*8, INTENT(OUT) :: i_start
|
||||
INTEGER*8, INTENT(OUT) :: i_end
|
||||
INTEGER*8, INTENT(OUT) :: j_start
|
||||
INTEGER*8, INTENT(OUT) :: j_end
|
||||
INTEGER*8, INTENT(OUT) :: k_start
|
||||
INTEGER*8, INTENT(OUT) :: k_end
|
||||
END FUNCTION h5bl_3d_getreducedview
|
||||
|
||||
!>
|
||||
!! \ingroup h5block_model_f
|
||||
!! See \ref H5Block3dSetChunk
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_setchunk ( filehandle, i, j, k )
|
||||
INTEGER*8, INTENT(IN) :: filehandle
|
||||
INTEGER*8, INTENT(IN) :: i
|
||||
INTEGER*8, INTENT(IN) :: j
|
||||
INTEGER*8, INTENT(IN) :: k
|
||||
END FUNCTION
|
||||
|
||||
!>
|
||||
!! \ingroup h5block_model_f
|
||||
!! See \ref H5BlockGetNumFields
|
||||
!! \return number of fields or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_getnumfields ( filehandle )
|
||||
INTEGER*8, INTENT(IN) :: filehandle
|
||||
END FUNCTION
|
||||
|
||||
!>
|
||||
!! \ingroup h5block_model_f
|
||||
!! See \ref H5BlockGetFieldInfo
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_getfieldinfo ( filehandle, idx, field_name, grid_rank, grid_dims, field_dims )
|
||||
INTEGER*8, INTENT(IN) :: filehandle
|
||||
INTEGER*8, INTENT(IN) :: idx
|
||||
CHARACTER(LEN=*), INTENT(OUT) :: field_name
|
||||
INTEGER*8, INTENT(OUT) :: grid_rank
|
||||
INTEGER*8, INTENT(OUT) :: grid_dims(*)
|
||||
INTEGER*8, INTENT(OUT) :: field_dims
|
||||
INTEGER*8, INTENT(OUT) :: type
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5block_model_f
|
||||
!! See \ref H5Block3dHasView
|
||||
!! \return rank of processor error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_hasview ( filehandle )
|
||||
INTEGER*8, INTENT(IN) :: filehandle
|
||||
END FUNCTION h5bl_3d_hasview
|
||||
|
||||
!>
|
||||
!! \ingroup h5block_model_f
|
||||
!! See \ref H5Block3dSetChunk
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_setchunk ( filehandle, i, j, k )
|
||||
INTEGER*8, INTENT(IN) :: filehandle
|
||||
INTEGER*8, INTENT(IN) :: i
|
||||
INTEGER*8, INTENT(IN) :: j
|
||||
INTEGER*8, INTENT(IN) :: k
|
||||
END FUNCTION h5bl_3d_setchunk
|
||||
|
||||
!>
|
||||
!! \ingroup h5block_model_f
|
||||
!! See \ref H5BlockGetNumFields
|
||||
!! \return number of fields or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_getnumfields ( filehandle )
|
||||
INTEGER*8, INTENT(IN) :: filehandle
|
||||
END FUNCTION h5bl_getnumfields
|
||||
|
||||
!>
|
||||
!! \ingroup h5block_model_f
|
||||
!! See \ref H5BlockGetFieldInfo
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_getfieldinfo ( filehandle, idx, field_name, grid_rank, grid_dims, field_dims )
|
||||
INTEGER*8, INTENT(IN) :: filehandle
|
||||
INTEGER*8, INTENT(IN) :: idx
|
||||
CHARACTER(LEN=*), INTENT(OUT) :: field_name
|
||||
INTEGER*8, INTENT(OUT) :: grid_rank
|
||||
INTEGER*8, INTENT(OUT) :: grid_dims(*)
|
||||
INTEGER*8, INTENT(OUT) :: field_dims
|
||||
END FUNCTION h5bl_getfieldinfo
|
||||
|
||||
END INTERFACE
|
||||
|
||||
+239
-229
@@ -1,249 +1,259 @@
|
||||
|
||||
! __ _ _ _ _ _ _ _ _
|
||||
! / _(_) ___| | __| | __ _| |_| |_ _ __(_) |__ _ _| |_ ___ ___
|
||||
! | |_| |/ _ \ |/ _` | / _` | __| __| '__| | '_ \| | | | __/ _ \/ __|
|
||||
! | _| | __/ | (_| | | (_| | |_| |_| | | | |_) | |_| | || __/\__ \
|
||||
! |_| |_|\___|_|\__,_| \__,_|\__|\__|_| |_|_.__/ \__,_|\__\___||___/
|
||||
|
||||
!
|
||||
! __ _ _ _ ___ _ __ _ _
|
||||
! / _` | | | |/ _ \ '__| | | |
|
||||
! | (_| | |_| | __/ | | |_| |
|
||||
! \__, |\__,_|\___|_| \__, |
|
||||
! |_| |___/
|
||||
! Copyright (c) 2006-2013, The Regents of the University of California,
|
||||
! through Lawrence Berkeley National Laboratory (subject to receipt of any
|
||||
! required approvals from the U.S. Dept. of Energy) and the Paul Scherrer
|
||||
! Institut (Switzerland). All rights reserved.!
|
||||
!
|
||||
! License: see file COPYING in top level of source distribution.
|
||||
!
|
||||
INTERFACE
|
||||
|
||||
!>
|
||||
!! \ingroup h5block_attrib_f
|
||||
!! See \ref H5BlockGetNumFieldAttribs
|
||||
!! \return number of attributes or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_getnfieldattribs (filehandle, field_name)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: field_name !< name of field
|
||||
END FUNCTION
|
||||
|
||||
!>
|
||||
!! \ingroup h5block_attrib_f
|
||||
!! See \ref H5BlockGetFieldAttribInfo
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_getfieldattribinfo (filehandle, field_name, idx, attrib_name, attrib_nelems)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: field_name !< name of field
|
||||
INTEGER*8,INTENT(IN) :: idx !< index of attribute being queried
|
||||
CHARACTER(LEN=*), INTENT(OUT):: attrib_name !< name of attribute
|
||||
INTEGER*8,INTENT(OUT):: attrib_nelems !< number of elements in the attrib array
|
||||
END FUNCTION
|
||||
! __ _ _ _ _ _ _ _ _
|
||||
! / _(_) ___| | __| | __ _| |_| |_ _ __(_) |__ _ _| |_ ___ ___
|
||||
! | |_| |/ _ \ |/ _` | / _` | __| __| '__| | '_ \| | | | __/ _ \/ __|
|
||||
! | _| | __/ | (_| | | (_| | |_| |_| | | | |_) | |_| | || __/\__ \
|
||||
! |_| |_|\___|_|\__,_| \__,_|\__|\__|_| |_|_.__/ \__,_|\__\___||___/
|
||||
|
||||
! _ __ _ _
|
||||
! (_) / /__ ___| |_ _ __(_)_ __ __ _
|
||||
! | | / / _ \ / __| __| '__| | '_ \ / _` |
|
||||
! | |/ / (_) | \__ \ |_| | | | | | | (_| |
|
||||
! |_/_/ \___/ |___/\__|_| |_|_| |_|\__, |
|
||||
! |___/
|
||||
!
|
||||
! __ _ _ _ ___ _ __ _ _
|
||||
! / _` | | | |/ _ \ '__| | | |
|
||||
! | (_| | |_| | __/ | | |_| |
|
||||
! \__, |\__,_|\___|_| \__, |
|
||||
! |_| |___/
|
||||
|
||||
!>
|
||||
!! \ingroup h5block_attrib_f
|
||||
!! See \ref H5BlockWriteFieldAttribString
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_writefieldattrib_string (filehandle, field_name, attrib_name, attrib_value, attrib_nelems)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: field_name !< name of field
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_value!< attribute data to be written
|
||||
INTEGER*8, INTENT(IN) :: attrib_nelems !< number of elements in data array
|
||||
END FUNCTION
|
||||
|
||||
!>
|
||||
!! \ingroup h5block_attrib_f
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_readfieldattrib_string (filehandle, field_name, attrib_name, attrib_value)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: field_name !< name of field
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_value!< attribute data will be read into this array
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5block_attrib_f
|
||||
!! See \ref H5BlockGetNumFieldAttribs
|
||||
!! \return number of attributes or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_getnfieldattribs (filehandle, field_name)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: field_name !< name of field
|
||||
END FUNCTION h5bl_getnfieldattribs
|
||||
|
||||
! _ __ _
|
||||
! (_) / /__ _ __ ___ __ _| |
|
||||
! | | / / _ \ | '__/ _ \/ _` | |
|
||||
! | |/ / (_) | | | | __/ (_| | |
|
||||
! |_/_/ \___/ |_| \___|\__,_|_|
|
||||
!>
|
||||
!! \ingroup h5block_attrib_f
|
||||
!! See \ref H5BlockGetFieldAttribInfo
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_getfieldattribinfo (filehandle, field_name, idx, attrib_name, attrib_nelems)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: field_name !< name of field
|
||||
INTEGER*8,INTENT(IN) :: idx !< index of attribute being queried
|
||||
CHARACTER(LEN=*), INTENT(OUT):: attrib_name !< name of attribute
|
||||
INTEGER*8,INTENT(OUT):: attrib_nelems !< number of elements in the attrib array
|
||||
END FUNCTION h5bl_getfieldattribinfo
|
||||
|
||||
!>
|
||||
!! \ingroup h5block_attrib_f
|
||||
!!
|
||||
!! See \ref H5BlockWriteFieldAttribFloat64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_writefieldattrib_r8 (filehandle, field_name, attrib_name, attrib_value, attrib_nelems)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: field_name !< name of field
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to write
|
||||
REAL*8, INTENT(OUT):: attrib_value(*) !< attribute data to be written
|
||||
INTEGER*8, INTENT(IN) :: attrib_nelems !< number of elements in data array
|
||||
END FUNCTION
|
||||
! _ __ _ _
|
||||
! (_) / /__ ___| |_ _ __(_)_ __ __ _
|
||||
! | | / / _ \ / __| __| '__| | '_ \ / _` |
|
||||
! | |/ / (_) | \__ \ |_| | | | | | | (_| |
|
||||
! |_/_/ \___/ |___/\__|_| |_|_| |_|\__, |
|
||||
! |___/
|
||||
|
||||
!>
|
||||
!! \ingroup h5block_attrib_f
|
||||
!! See \ref H5BlockReadFieldAttribFloat64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_readfieldattrib_r8 ( filehandle, field_name, attrib_name, attrib_value )
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: field_name !< name of field
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to read
|
||||
REAL*8, INTENT(OUT):: attrib_value(*) !< attribute data will be read into this array
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5block_attrib_f
|
||||
!! See \ref H5BlockWriteFieldAttribString
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_writefieldattrib_string (filehandle, field_name, attrib_name, attrib_value, attrib_nelems)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: field_name !< name of field
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_value!< attribute data to be written
|
||||
INTEGER*8, INTENT(IN) :: attrib_nelems !< number of elements in data array
|
||||
END FUNCTION h5bl_writefieldattrib_string
|
||||
|
||||
!>
|
||||
!! \ingroup h5block_attrib_f
|
||||
!! See \ref H5BlockWriteFieldAttribFloat32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_writefieldattrib_r4 (filehandle, field_name, attrib_name, attrib_value, attrib_nelems)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: field_name !< name of field
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to write
|
||||
REAL*4, INTENT(OUT):: attrib_value(*) !< attribute datato be written
|
||||
INTEGER*8, INTENT(IN) :: attrib_nelems !< number of elements in data array
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5block_attrib_f
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_readfieldattrib_string (filehandle, field_name, attrib_name, attrib_value)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: field_name !< name of field
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_value!< attribute data will be read into this array
|
||||
END FUNCTION h5bl_readfieldattrib_string
|
||||
|
||||
!>
|
||||
!! \ingroup h5block_attrib_f
|
||||
!! See \ref H5BlockReadFieldAttribFloat32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_readfieldattrib_r4 (filehandle, field_name, attrib_name, attrib_value)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: field_name !< name of field
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to read
|
||||
REAL*4, INTENT(OUT):: attrib_value(*) !< attribute data will be read into this array
|
||||
END FUNCTION
|
||||
! _ __ _
|
||||
! (_) / /__ _ __ ___ __ _| |
|
||||
! | | / / _ \ | '__/ _ \/ _` | |
|
||||
! | |/ / (_) | | | | __/ (_| | |
|
||||
! |_/_/ \___/ |_| \___|\__,_|_|
|
||||
|
||||
! _ __ _ _
|
||||
! (_) / /__ (_)_ __ | |_ ___ __ _ ___ _ __
|
||||
! | | / / _ \ | | '_ \| __/ _ \/ _` |/ _ \ '__|
|
||||
! | |/ / (_) | | | | | | || __/ (_| | __/ |
|
||||
! |_/_/ \___/ |_|_| |_|\__\___|\__, |\___|_|
|
||||
! |___/
|
||||
!>
|
||||
!! \ingroup h5block_attrib_f
|
||||
!!
|
||||
!! See \ref H5BlockWriteFieldAttribFloat64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_writefieldattrib_r8 (filehandle, field_name, attrib_name, attrib_value, attrib_nelems)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: field_name !< name of field
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to write
|
||||
REAL*8, INTENT(OUT):: attrib_value(*) !< attribute data to be written
|
||||
INTEGER*8, INTENT(IN) :: attrib_nelems !< number of elements in data array
|
||||
END FUNCTION h5bl_writefieldattrib_r8
|
||||
|
||||
!>
|
||||
!! \ingroup h5block_attrib_f
|
||||
!! See \ref H5BlockWriteFieldAttribInt64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_writefieldattrib_i8 (filehandle, field_name, attrib_name, attrib_value, attrib_nelems)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: field_name !< name of field
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to write
|
||||
INTEGER*8,INTENT(OUT):: attrib_value(*) !< attribute data to be written
|
||||
INTEGER*8, INTENT(IN) :: attrib_nelems !< number of elements in data array
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5block_attrib_f
|
||||
!! See \ref H5BlockReadFieldAttribFloat64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_readfieldattrib_r8 ( filehandle, field_name, attrib_name, attrib_value )
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: field_name !< name of field
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to read
|
||||
REAL*8, INTENT(OUT):: attrib_value(*) !< attribute data will be read into this array
|
||||
END FUNCTION h5bl_readfieldattrib_r8
|
||||
|
||||
!>
|
||||
!! \ingroup h5block_attrib_f
|
||||
!! See \ref H5BlockReadFieldAttribInt64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_readfieldattrib_i8 (filehandle, field_name, attrib_name, attrib_value)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: field_name !< name of field
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to read
|
||||
INTEGER*8,INTENT(OUT):: attrib_value(*) !< attribute data will be read into this array
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5block_attrib_f
|
||||
!! See \ref H5BlockWriteFieldAttribFloat32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_writefieldattrib_r4 (filehandle, field_name, attrib_name, attrib_value, attrib_nelems)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: field_name !< name of field
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to write
|
||||
REAL*4, INTENT(OUT):: attrib_value(*) !< attribute datato be written
|
||||
INTEGER*8, INTENT(IN) :: attrib_nelems !< number of elements in data array
|
||||
END FUNCTION h5bl_writefieldattrib_r4
|
||||
|
||||
!>
|
||||
!! \ingroup h5block_attrib_f
|
||||
!! See \ref H5BlockWriteFieldAttribInt32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_writefieldattrib_i4 (filehandle, field_name, attrib_name, attrib_value, attrib_nelems)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: field_name !< name of field
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to write
|
||||
INTEGER*4,INTENT(OUT):: attrib_value(*) !< attribute data to be written
|
||||
INTEGER*8, INTENT(IN) :: attrib_nelems !< number of elements in data array
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5block_attrib_f
|
||||
!! See \ref H5BlockReadFieldAttribFloat32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_readfieldattrib_r4 (filehandle, field_name, attrib_name, attrib_value)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: field_name !< name of field
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to read
|
||||
REAL*4, INTENT(OUT):: attrib_value(*) !< attribute data will be read into this array
|
||||
END FUNCTION h5bl_readfieldattrib_r4
|
||||
|
||||
!>
|
||||
!! \ingroup h5block_attrib_f
|
||||
!! See \ref H5BlockReadFieldAttribInt32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_readfieldattrib_i4 (filehandle, field_name, attrib_name, attrib_value)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: field_name !< name of field
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to read
|
||||
INTEGER*4,INTENT(OUT):: attrib_value(*) !< attribute data will be read into this array
|
||||
END FUNCTION
|
||||
! _ __ _ _
|
||||
! (_) / /__ (_)_ __ | |_ ___ __ _ ___ _ __
|
||||
! | | / / _ \ | | '_ \| __/ _ \/ _` |/ _ \ '__|
|
||||
! | |/ / (_) | | | | | | || __/ (_| | __/ |
|
||||
! |_/_/ \___/ |_|_| |_|\__\___|\__, |\___|_|
|
||||
! |___/
|
||||
|
||||
! __ _ _ _ _
|
||||
! / _(_) ___| | __| | ___ _ __ __ _ ___(_)_ __ __ _
|
||||
! | |_| |/ _ \ |/ _` | / __| '_ \ / _` |/ __| | '_ \ / _` |
|
||||
! | _| | __/ | (_| | \__ \ |_) | (_| | (__| | | | | (_| |
|
||||
! |_| |_|\___|_|\__,_| |___/ .__/ \__,_|\___|_|_| |_|\__, |
|
||||
! |_| |___/
|
||||
!>
|
||||
!! \ingroup h5block_attrib_f
|
||||
!! See \ref H5BlockWriteFieldAttribInt64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_writefieldattrib_i8 (filehandle, field_name, attrib_name, attrib_value, attrib_nelems)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: field_name !< name of field
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to write
|
||||
INTEGER*8,INTENT(OUT):: attrib_value(*) !< attribute data to be written
|
||||
INTEGER*8, INTENT(IN) :: attrib_nelems !< number of elements in data array
|
||||
END FUNCTION h5bl_writefieldattrib_i8
|
||||
|
||||
!>
|
||||
!! \ingroup h5block_attrib_f
|
||||
!! See \ref H5Block3dGetFieldSpacing
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_get_field_spacing (filehandle, name, x, y, z)
|
||||
INTEGER*8, INTENT(IN) :: filehandle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name
|
||||
REAL*8, INTENT(OUT) :: x
|
||||
REAL*8, INTENT(OUT) :: y
|
||||
REAL*8, INTENT(OUT) :: z
|
||||
END FUNCTION
|
||||
!!>
|
||||
!! \ingroup h5block_attrib_f
|
||||
!! See \ref H5BlockReadFieldAttribInt64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_readfieldattrib_i8 (filehandle, field_name, attrib_name, attrib_value)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: field_name !< name of field
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to read
|
||||
INTEGER*8,INTENT(OUT):: attrib_value(*) !< attribute data will be read into this array
|
||||
END FUNCTION h5bl_readfieldattrib_i8
|
||||
|
||||
!>
|
||||
!! \ingroup h5block_attrib_f
|
||||
!! See \ref H5Block3dSetFieldSpacing
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_set_field_spacing (filehandle, name, x, y, z)
|
||||
INTEGER*8, INTENT(IN) :: filehandle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name
|
||||
REAL*8, INTENT(IN) :: x
|
||||
REAL*8, INTENT(IN) :: y
|
||||
REAL*8, INTENT(IN) :: z
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5block_attrib_f
|
||||
!! See \ref H5BlockWriteFieldAttribInt32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_writefieldattrib_i4 (filehandle, field_name, attrib_name, attrib_value, attrib_nelems)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: field_name !< name of field
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to write
|
||||
INTEGER*4,INTENT(OUT):: attrib_value(*) !< attribute data to be written
|
||||
INTEGER*8, INTENT(IN) :: attrib_nelems !< number of elements in data array
|
||||
END FUNCTION h5bl_writefieldattrib_i4
|
||||
|
||||
! __ _ _ _ _ _
|
||||
! / _(_) ___| | __| | ___ _ __(_) __ _(_)_ __
|
||||
! | |_| |/ _ \ |/ _` | / _ \| '__| |/ _` | | '_ \
|
||||
! | _| | __/ | (_| | | (_) | | | | (_| | | | | |
|
||||
! |_| |_|\___|_|\__,_| \___/|_| |_|\__, |_|_| |_|
|
||||
! |___/
|
||||
!>
|
||||
!! \ingroup h5block_attrib_f
|
||||
!! See \ref H5BlockReadFieldAttribInt32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_readfieldattrib_i4 (filehandle, field_name, attrib_name, attrib_value)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: field_name !< name of field
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to read
|
||||
INTEGER*4,INTENT(OUT):: attrib_value(*) !< attribute data will be read into this array
|
||||
END FUNCTION h5bl_readfieldattrib_i4
|
||||
|
||||
!>
|
||||
!! \ingroup h5block_attrib_f
|
||||
!! See \ref H5Block3dGetFieldOrigin
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_get_field_origin (filehandle, name, x, y, z)
|
||||
INTEGER*8, INTENT(IN) :: filehandle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name
|
||||
REAL*8, INTENT(OUT) :: x
|
||||
REAL*8, INTENT(OUT) :: y
|
||||
REAL*8, INTENT(OUT) :: z
|
||||
END FUNCTION
|
||||
|
||||
!>
|
||||
!! \ingroup h5block_attrib_f
|
||||
!! See \ref H5Block3dSetFieldOrigin
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_set_field_origin (filehandle, name, x, y, z)
|
||||
INTEGER*8, INTENT(IN) :: filehandle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name
|
||||
REAL*8, INTENT(IN) :: x
|
||||
REAL*8, INTENT(IN) :: y
|
||||
REAL*8, INTENT(IN) :: z
|
||||
END FUNCTION
|
||||
! __ _ _ _ _
|
||||
! / _(_) ___| | __| | ___ _ __ __ _ ___(_)_ __ __ _
|
||||
! | |_| |/ _ \ |/ _` | / __| '_ \ / _` |/ __| | '_ \ / _` |
|
||||
! | _| | __/ | (_| | \__ \ |_) | (_| | (__| | | | | (_| |
|
||||
! |_| |_|\___|_|\__,_| |___/ .__/ \__,_|\___|_|_| |_|\__, |
|
||||
! |_| |___/
|
||||
|
||||
!> @}
|
||||
!>
|
||||
!! \ingroup h5block_attrib_f
|
||||
!! See \ref H5Block3dGetFieldSpacing
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_get_field_spacing (filehandle, name, x, y, z)
|
||||
INTEGER*8, INTENT(IN) :: filehandle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name
|
||||
REAL*8, INTENT(OUT) :: x
|
||||
REAL*8, INTENT(OUT) :: y
|
||||
REAL*8, INTENT(OUT) :: z
|
||||
END FUNCTION h5bl_3d_get_field_spacing
|
||||
|
||||
!>
|
||||
!! \ingroup h5block_attrib_f
|
||||
!! See \ref H5Block3dSetFieldSpacing
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_set_field_spacing (filehandle, name, x, y, z)
|
||||
INTEGER*8, INTENT(IN) :: filehandle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name
|
||||
REAL*8, INTENT(IN) :: x
|
||||
REAL*8, INTENT(IN) :: y
|
||||
REAL*8, INTENT(IN) :: z
|
||||
END FUNCTION h5bl_3d_set_field_spacing
|
||||
|
||||
! __ _ _ _ _ _
|
||||
! / _(_) ___| | __| | ___ _ __(_) __ _(_)_ __
|
||||
! | |_| |/ _ \ |/ _` | / _ \| '__| |/ _` | | '_ \
|
||||
! | _| | __/ | (_| | | (_) | | | | (_| | | | | |
|
||||
! |_| |_|\___|_|\__,_| \___/|_| |_|\__, |_|_| |_|
|
||||
! |___/
|
||||
|
||||
!>
|
||||
!! \ingroup h5block_attrib_f
|
||||
!! See \ref H5Block3dGetFieldOrigin
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_get_field_origin (filehandle, name, x, y, z)
|
||||
INTEGER*8, INTENT(IN) :: filehandle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name
|
||||
REAL*8, INTENT(OUT) :: x
|
||||
REAL*8, INTENT(OUT) :: y
|
||||
REAL*8, INTENT(OUT) :: z
|
||||
END FUNCTION h5bl_3d_get_field_origin
|
||||
|
||||
!>
|
||||
!! \ingroup h5block_attrib_f
|
||||
!! See \ref H5Block3dSetFieldOrigin
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_set_field_origin (filehandle, name, x, y, z)
|
||||
INTEGER*8, INTENT(IN) :: filehandle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name
|
||||
REAL*8, INTENT(IN) :: x
|
||||
REAL*8, INTENT(IN) :: y
|
||||
REAL*8, INTENT(IN) :: z
|
||||
END FUNCTION h5bl_3d_set_field_origin
|
||||
|
||||
!> @}
|
||||
END INTERFACE
|
||||
|
||||
+178
-168
@@ -1,181 +1,191 @@
|
||||
!> \ingroup h5hut_f90_api
|
||||
!! \addtogroup h5block_data_f
|
||||
!! @{
|
||||
!
|
||||
! Copyright (c) 2006-2013, The Regents of the University of California,
|
||||
! through Lawrence Berkeley National Laboratory (subject to receipt of any
|
||||
! required approvals from the U.S. Dept. of Energy) and the Paul Scherrer
|
||||
! Institut (Switzerland). All rights reserved.!
|
||||
!
|
||||
! License: see file COPYING in top level of source distribution.
|
||||
!
|
||||
INTERFACE
|
||||
!> \ingroup h5hut_f90_api
|
||||
!! \addtogroup h5block_data_f
|
||||
!! @{
|
||||
|
||||
!>
|
||||
!! See \ref H5Block3dWriteScalarFieldFloat64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_write_scalar_field_r8 ( filehandle, name, buffer )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned at file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
REAL*8, INTENT(IN) :: buffer(*) !< the array of data
|
||||
END FUNCTION
|
||||
!>
|
||||
!! See \ref H5Block3dWriteScalarFieldFloat64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_write_scalar_field_r8 ( filehandle, name, buffer )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned at file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
REAL*8, INTENT(IN) :: buffer(*) !< the array of data
|
||||
END FUNCTION h5bl_3d_write_scalar_field_r8
|
||||
|
||||
!>
|
||||
!! See \ref H5Block3dReadScalarFieldFloat64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_read_scalar_field_r8 ( filehandle, name, buffer )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned at file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
REAL*8, INTENT(OUT) :: buffer(*) !< buffer to read the data into
|
||||
END FUNCTION
|
||||
|
||||
!>
|
||||
!! See \ref H5Block3dWriteVector3dFieldFloat64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_write_vector3d_field_r8 ( filehandle, name, x, y, z )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned at file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
REAL*8, INTENT(IN) :: x(*) !< the array of x data to write
|
||||
REAL*8, INTENT(IN) :: y(*) !< the array of y data to write
|
||||
REAL*8, INTENT(IN) :: z(*) !< the array of z data to write
|
||||
END FUNCTION
|
||||
!>
|
||||
!! See \ref H5Block3dReadScalarFieldFloat64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_read_scalar_field_r8 ( filehandle, name, buffer )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned at file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
REAL*8, INTENT(OUT) :: buffer(*) !< buffer to read the data into
|
||||
END FUNCTION h5bl_3d_read_scalar_field_r8
|
||||
|
||||
!>
|
||||
!! See \ref H5Block3dReadVector3dFieldFloat64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_read_vector3d_field_r8 ( filehandle, name, x, y, z )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned at file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
REAL*8, INTENT(OUT) :: x(*) !< buffer to read the x data into
|
||||
REAL*8, INTENT(OUT) :: y(*) !< buffer to read the y data into
|
||||
REAL*8, INTENT(OUT) :: z(*) !< buffer to read the z data into
|
||||
END FUNCTION
|
||||
!>
|
||||
!! See \ref H5Block3dWriteVector3dFieldFloat64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_write_vector3d_field_r8 ( filehandle, name, x, y, z )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned at file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
REAL*8, INTENT(IN) :: x(*) !< the array of x data to write
|
||||
REAL*8, INTENT(IN) :: y(*) !< the array of y data to write
|
||||
REAL*8, INTENT(IN) :: z(*) !< the array of z data to write
|
||||
END FUNCTION h5bl_3d_write_vector3d_field_r8
|
||||
|
||||
!>
|
||||
!! See \ref H5Block3dWriteScalarFieldFloat32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_write_scalar_field_r4 ( filehandle, name, buffer )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned at file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
REAL*4, INTENT(IN) :: buffer(*) !< the array of data
|
||||
END FUNCTION
|
||||
!>
|
||||
!! See \ref H5Block3dReadVector3dFieldFloat64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_read_vector3d_field_r8 ( filehandle, name, x, y, z )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned at file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
REAL*8, INTENT(OUT) :: x(*) !< buffer to read the x data into
|
||||
REAL*8, INTENT(OUT) :: y(*) !< buffer to read the y data into
|
||||
REAL*8, INTENT(OUT) :: z(*) !< buffer to read the z data into
|
||||
END FUNCTION h5bl_3d_read_vector3d_field_r8
|
||||
|
||||
!>
|
||||
!! See \ref H5Block3dReadScalarFieldFloat32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_read_scalar_field_r4 ( filehandle, name, buffer )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned at file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
REAL*4, INTENT(OUT) :: buffer(*) !< buffer to read the data into
|
||||
END FUNCTION
|
||||
|
||||
!>
|
||||
!! See \ref H5Block3dWriteVector3dFieldFloat32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_write_vector3d_field_r4 ( filehandle, name, x, y, z )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned at file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
REAL*4, INTENT(IN) :: x(*) !< the array of x data to write
|
||||
REAL*4, INTENT(IN) :: y(*) !< the array of y data to write
|
||||
REAL*4, INTENT(IN) :: z(*) !< the array of z data to write
|
||||
END FUNCTION
|
||||
!>
|
||||
!! See \ref H5Block3dWriteScalarFieldFloat32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_write_scalar_field_r4 ( filehandle, name, buffer )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned at file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
REAL*4, INTENT(IN) :: buffer(*) !< the array of data
|
||||
END FUNCTION h5bl_3d_write_scalar_field_r4
|
||||
|
||||
!>
|
||||
!! See \ref H5Block3dReadVector3dFieldFloat32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_read_vector3d_field_r4 ( filehandle, name, x, y, z )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned at file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
REAL*4, INTENT(OUT) :: x(*) !< buffer to read the x data into
|
||||
REAL*4, INTENT(OUT) :: y(*) !< buffer to read the y data into
|
||||
REAL*4, INTENT(OUT) :: z(*) !< buffer to read the z data into
|
||||
END FUNCTION
|
||||
!>
|
||||
!! See \ref H5Block3dReadScalarFieldFloat32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_read_scalar_field_r4 ( filehandle, name, buffer )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned at file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
REAL*4, INTENT(OUT) :: buffer(*) !< buffer to read the data into
|
||||
END FUNCTION h5bl_3d_read_scalar_field_r4
|
||||
|
||||
!>
|
||||
!! See \ref H5Block3dWriteScalarFieldInt64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_write_scalar_field_i8 ( filehandle, name, buffer )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned at file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
INTEGER*8, INTENT(IN) :: buffer(*) !< the array of data
|
||||
END FUNCTION
|
||||
!>
|
||||
!! See \ref H5Block3dWriteVector3dFieldFloat32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_write_vector3d_field_r4 ( filehandle, name, x, y, z )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned at file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
REAL*4, INTENT(IN) :: x(*) !< the array of x data to write
|
||||
REAL*4, INTENT(IN) :: y(*) !< the array of y data to write
|
||||
REAL*4, INTENT(IN) :: z(*) !< the array of z data to write
|
||||
END FUNCTION h5bl_3d_write_vector3d_field_r4
|
||||
|
||||
!>
|
||||
!! See \ref H5Block3dReadScalarFieldInt64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_read_scalar_field_i8 ( filehandle, name, buffer )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned at file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
INTEGER*8, INTENT(OUT) :: buffer(*) !< buffer to read the data into
|
||||
END FUNCTION
|
||||
|
||||
!>
|
||||
!! See \ref H5Block3dWriteVector3dFieldInt64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_write_vector3d_field_i8 ( filehandle, name, x, y, z )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned at file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
INTEGER*8, INTENT(IN) :: x(*) !< the array of x data to write
|
||||
INTEGER*8, INTENT(IN) :: y(*) !< the array of y data to write
|
||||
INTEGER*8, INTENT(IN) :: z(*) !< the array of z data to write
|
||||
END FUNCTION
|
||||
!>
|
||||
!! See \ref H5Block3dReadVector3dFieldFloat32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_read_vector3d_field_r4 ( filehandle, name, x, y, z )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned at file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
REAL*4, INTENT(OUT) :: x(*) !< buffer to read the x data into
|
||||
REAL*4, INTENT(OUT) :: y(*) !< buffer to read the y data into
|
||||
REAL*4, INTENT(OUT) :: z(*) !< buffer to read the z data into
|
||||
END FUNCTION h5bl_3d_read_vector3d_field_r4
|
||||
|
||||
!>
|
||||
!! See \ref H5Block3dReadVector3dFieldInt64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_read_vector3d_field_i8 ( filehandle, name, x, y, z )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned at file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
INTEGER*8, INTENT(OUT) :: x(*) !< buffer to read the x data into
|
||||
INTEGER*8, INTENT(OUT) :: y(*) !< buffer to read the y data into
|
||||
INTEGER*8, INTENT(OUT) :: z(*) !< buffer to read the z data into
|
||||
END FUNCTION
|
||||
!>
|
||||
!! See \ref H5Block3dWriteScalarFieldInt64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_write_scalar_field_i8 ( filehandle, name, buffer )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned at file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
INTEGER*8, INTENT(IN) :: buffer(*) !< the array of data
|
||||
END FUNCTION h5bl_3d_write_scalar_field_i8
|
||||
|
||||
!>
|
||||
!! See \ref H5Block3dWriteScalarFieldInt32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_write_scalar_field_i4 ( filehandle, name, buffer )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned at file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
INTEGER*4, INTENT(IN) :: buffer(*) !< the array of data
|
||||
END FUNCTION
|
||||
!>
|
||||
!! See \ref H5Block3dReadScalarFieldInt64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_read_scalar_field_i8 ( filehandle, name, buffer )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned at file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
INTEGER*8, INTENT(OUT) :: buffer(*) !< buffer to read the data into
|
||||
END FUNCTION h5bl_3d_read_scalar_field_i8
|
||||
|
||||
!>
|
||||
!! See \ref H5Block3dReadScalarFieldInt32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_read_scalar_field_i4 ( filehandle, name, buffer )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned at file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
INTEGER*4, INTENT(OUT) :: buffer(*) !< buffer to read the data into
|
||||
END FUNCTION
|
||||
|
||||
!>
|
||||
!! See \ref H5Block3dWriteVector3dFieldInt32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_write_vector3d_field_i4 ( filehandle, name, x, y, z )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned at file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
INTEGER*4, INTENT(IN) :: x(*) !< the array of x data to write
|
||||
INTEGER*4, INTENT(IN) :: y(*) !< the array of y data to write
|
||||
INTEGER*4, INTENT(IN) :: z(*) !< the array of z data to write
|
||||
END FUNCTION
|
||||
!>
|
||||
!! See \ref H5Block3dWriteVector3dFieldInt64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_write_vector3d_field_i8 ( filehandle, name, x, y, z )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned at file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
INTEGER*8, INTENT(IN) :: x(*) !< the array of x data to write
|
||||
INTEGER*8, INTENT(IN) :: y(*) !< the array of y data to write
|
||||
INTEGER*8, INTENT(IN) :: z(*) !< the array of z data to write
|
||||
END FUNCTION h5bl_3d_write_vector3d_field_i8
|
||||
|
||||
!>
|
||||
!! See \ref H5Block3dReadVector3dFieldInt32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_read_vector3d_field_i4 ( filehandle, name, x, y, z )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned at file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
INTEGER*4, INTENT(OUT) :: x(*) !< buffer to read the x data into
|
||||
INTEGER*4, INTENT(OUT) :: y(*) !< buffer to read the y data into
|
||||
INTEGER*4, INTENT(OUT) :: z(*) !< buffer to read the z data into
|
||||
END FUNCTION
|
||||
!>
|
||||
!! See \ref H5Block3dReadVector3dFieldInt64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_read_vector3d_field_i8 ( filehandle, name, x, y, z )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned at file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
INTEGER*8, INTENT(OUT) :: x(*) !< buffer to read the x data into
|
||||
INTEGER*8, INTENT(OUT) :: y(*) !< buffer to read the y data into
|
||||
INTEGER*8, INTENT(OUT) :: z(*) !< buffer to read the z data into
|
||||
END FUNCTION h5bl_3d_read_vector3d_field_i8
|
||||
|
||||
!> @}
|
||||
!>
|
||||
!! See \ref H5Block3dWriteScalarFieldInt32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_write_scalar_field_i4 ( filehandle, name, buffer )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned at file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
INTEGER*4, INTENT(IN) :: buffer(*) !< the array of data
|
||||
END FUNCTION h5bl_3d_write_scalar_field_i4
|
||||
|
||||
!>
|
||||
!! See \ref H5Block3dReadScalarFieldInt32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_read_scalar_field_i4 ( filehandle, name, buffer )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned at file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
INTEGER*4, INTENT(OUT) :: buffer(*) !< buffer to read the data into
|
||||
END FUNCTION h5bl_3d_read_scalar_field_i4
|
||||
|
||||
!>
|
||||
!! See \ref H5Block3dWriteVector3dFieldInt32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_write_vector3d_field_i4 ( filehandle, name, x, y, z )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned at file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
INTEGER*4, INTENT(IN) :: x(*) !< the array of x data to write
|
||||
INTEGER*4, INTENT(IN) :: y(*) !< the array of y data to write
|
||||
INTEGER*4, INTENT(IN) :: z(*) !< the array of z data to write
|
||||
END FUNCTION h5bl_3d_write_vector3d_field_i4
|
||||
|
||||
!>
|
||||
!! See \ref H5Block3dReadVector3dFieldInt32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5bl_3d_read_vector3d_field_i4 ( filehandle, name, x, y, z )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned at file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
INTEGER*4, INTENT(OUT) :: x(*) !< buffer to read the x data into
|
||||
INTEGER*4, INTENT(OUT) :: y(*) !< buffer to read the y data into
|
||||
INTEGER*4, INTENT(OUT) :: z(*) !< buffer to read the z data into
|
||||
END FUNCTION h5bl_3d_read_vector3d_field_i4
|
||||
|
||||
!> @}
|
||||
END INTERFACE
|
||||
|
||||
+124
-116
@@ -1,127 +1,135 @@
|
||||
!!!!!!!! Setting up the Data Model !!!!!!!!
|
||||
!
|
||||
! Copyright (c) 2006-2013, The Regents of the University of California,
|
||||
! through Lawrence Berkeley National Laboratory (subject to receipt of any
|
||||
! required approvals from the U.S. Dept. of Energy) and the Paul Scherrer
|
||||
! Institut (Switzerland). All rights reserved.!
|
||||
!
|
||||
! License: see file COPYING in top level of source distribution.
|
||||
!
|
||||
INTERFACE
|
||||
!>
|
||||
!! \ingroup h5part_model_f
|
||||
!!
|
||||
!! See \ref H5PartSetNumParticles
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5pt_setnpoints ( filehandle, npoints )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
INTEGER*8, INTENT(IN) :: npoints !< the number of particles on *this* processor
|
||||
END FUNCTION h5pt_setnpoints
|
||||
|
||||
!>
|
||||
!! \ingroup h5part_model_f
|
||||
!!
|
||||
!! See \ref H5PartSetNumParticlesStrided
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5pt_setnpoints_strided ( filehandle, npoints, stride )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
INTEGER*8, INTENT(IN) :: npoints !< the number of particles on *this* processor
|
||||
INTEGER*8, INTENT(IN) :: stride !< the stride value (e.g. the number of fields in the particle data array)
|
||||
END FUNCTION h5pt_setnpoints_strided
|
||||
|
||||
!>
|
||||
!! \ingroup h5part_model_f
|
||||
!!
|
||||
!! See \ref H5PartSetNumParticles
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5pt_setnpoints ( filehandle, npoints )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
INTEGER*8, INTENT(IN) :: npoints !< the number of particles on *this* processor
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5part_model_f
|
||||
!!
|
||||
!! See \ref H5PartGetNumDatasets
|
||||
!! \return the number of datasets or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5pt_getndatasets (filehandle)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
END FUNCTION h5pt_getndatasets
|
||||
|
||||
!>
|
||||
!! \ingroup h5part_model_f
|
||||
!!
|
||||
!! See \ref H5PartSetNumParticlesStrided
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5pt_setnpoints_strided ( filehandle, npoints, stride )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
INTEGER*8, INTENT(IN) :: npoints !< the number of particles on *this* processor
|
||||
INTEGER*8, INTENT(IN) :: stride !< the stride value (e.g. the number of fields in the particle data array)
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5part_model_f
|
||||
!!
|
||||
!! See \ref H5PartGetNumParticles
|
||||
!! \return the number of particles or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5pt_getnpoints (filehandle)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
END FUNCTION h5pt_getnpoints
|
||||
|
||||
!>
|
||||
!! \ingroup h5part_model_f
|
||||
!!
|
||||
!! See \ref H5PartGetNumDatasets
|
||||
!! \return the number of datasets or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5pt_getndatasets (filehandle)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5part_model_f
|
||||
!!
|
||||
!! See \ref H5PartGetDatasetName
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5pt_getdatasetname (filehandle,index,name)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
INTEGER*8, INTENT(IN) :: index !< index of dataset to query (starting from 0)
|
||||
CHARACTER(LEN=*), INTENT(OUT) :: name !< buffer to read the dataset name into
|
||||
END FUNCTION h5pt_getdatasetname
|
||||
|
||||
!>
|
||||
!! \ingroup h5part_model_f
|
||||
!!
|
||||
!! See \ref H5PartGetNumParticles
|
||||
!! \return the number of particles or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5pt_getnpoints (filehandle)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5part_model_f
|
||||
!!
|
||||
!! See \ref H5PartGetDatasetInfo
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5pt_getdatasetinfo (filehandle, idx, name, type, num_elems)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
INTEGER*8,INTENT(IN) :: idx !< index of dataset being queried
|
||||
CHARACTER(LEN=*), INTENT(OUT):: name !< name of datset
|
||||
INTEGER*8,INTENT(OUT):: type !< type of datset
|
||||
INTEGER*8,INTENT(OUT):: num_elems !< number of elements in the dataset
|
||||
END FUNCTION h5pt_getdatasetinfo
|
||||
|
||||
!>
|
||||
!! \ingroup h5part_model_f
|
||||
!!
|
||||
!! See \ref H5PartGetDatasetName
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5pt_getdatasetname (filehandle,index,name)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
INTEGER*8, INTENT(IN) :: index !< index of dataset to query (starting from 0)
|
||||
CHARACTER(LEN=*), INTENT(OUT) :: name !< buffer to read the dataset name into
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5part_model_f
|
||||
!!
|
||||
!! See \ref H5PartSetView
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5pt_setview (filehandle,start,end)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
INTEGER*8, INTENT(IN) :: start !< offset of the first particle in the view
|
||||
INTEGER*8, INTENT(IN) :: end !< offset of the last particle in the view (inclusive)
|
||||
END FUNCTION h5pt_setview
|
||||
|
||||
!>
|
||||
!! \ingroup h5part_model_f
|
||||
!!
|
||||
!! See \ref H5PartGetDatasetInfo
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5pt_getdatasetinfo (filehandle, idx, name, type, num_elems)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
INTEGER*8,INTENT(IN) :: idx !< index of dataset being queried
|
||||
CHARACTER(LEN=*), INTENT(OUT):: name !< name of datset
|
||||
INTEGER*8,INTENT(OUT):: type !< type of datset
|
||||
INTEGER*8,INTENT(OUT):: num_elems !< number of elements in the dataset
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5part_model_f
|
||||
!!
|
||||
!! See \ref H5PartSetViewIndices
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5pt_setview_indices (filehandle,indices,nelem)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
INTEGER*8, INTENT(IN) :: indices(*) !< list of indicies to select in this view
|
||||
INTEGER*8, INTENT(IN) :: nelem !< number of particles in the list
|
||||
END FUNCTION h5pt_setview_indices
|
||||
|
||||
!>
|
||||
!! \ingroup h5part_model_f
|
||||
!!
|
||||
!! See \ref H5PartSetView
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5pt_setview (filehandle,start,end)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
INTEGER*8, INTENT(IN) :: start !< offset of the first particle in the view
|
||||
INTEGER*8, INTENT(IN) :: end !< offset of the last particle in the view (inclusive)
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5part_model_f
|
||||
!!
|
||||
!! See \ref H5PartResetView
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5pt_resetview (filehandle)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
END FUNCTION h5pt_resetview
|
||||
|
||||
!>
|
||||
!! \ingroup h5part_model_f
|
||||
!!
|
||||
!! See \ref H5PartSetViewIndices
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5pt_setview_indices (filehandle,indices,nelem)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
INTEGER*8, INTENT(IN) :: indices(*) !< list of indicies to select in this view
|
||||
INTEGER*8, INTENT(IN) :: nelem !< number of particles in the list
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5part_model_f
|
||||
!!
|
||||
!! See \ref H5PartResetView
|
||||
!! \return 1 if true, 0 if false, or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5pt_hasview (filehandle)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
END FUNCTION h5pt_hasview
|
||||
|
||||
!>
|
||||
!! \ingroup h5part_model_f
|
||||
!!
|
||||
!! See \ref H5PartResetView
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5pt_resetview (filehandle)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5part_model_f
|
||||
!!
|
||||
!! See \ref H5PartGetView
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5pt_getview (filehandle,start,end)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
INTEGER*8, INTENT(OUT) :: start !< buffer to store the offset of the first particle in the view
|
||||
INTEGER*8, INTENT(OUT) :: end !< buffer to store the offset of the last particle in the view (inclusive)
|
||||
END FUNCTION h5pt_getview
|
||||
|
||||
!>
|
||||
!! \ingroup h5part_model_f
|
||||
!!
|
||||
!! See \ref H5PartResetView
|
||||
!! \return 1 if true, 0 if false, or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5pt_hasview (filehandle)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
END FUNCTION
|
||||
|
||||
!>
|
||||
!! \ingroup h5part_model_f
|
||||
!!
|
||||
!! See \ref H5PartGetView
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5pt_getview (filehandle,start,end)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
INTEGER*8, INTENT(OUT) :: start !< buffer to store the offset of the first particle in the view
|
||||
INTEGER*8, INTENT(OUT) :: end !< buffer to store the offset of the last particle in the view (inclusive)
|
||||
END FUNCTION
|
||||
END INTERFACE
|
||||
|
||||
+82
-74
@@ -1,83 +1,91 @@
|
||||
!!!!!!!! Reading and Writing Datasets !!!!!!!!
|
||||
!
|
||||
! Copyright (c) 2006-2013, The Regents of the University of California,
|
||||
! through Lawrence Berkeley National Laboratory (subject to receipt of any
|
||||
! required approvals from the U.S. Dept. of Energy) and the Paul Scherrer
|
||||
! Institut (Switzerland). All rights reserved.!
|
||||
!
|
||||
! License: see file COPYING in top level of source distribution.
|
||||
!
|
||||
INTERFACE
|
||||
!>
|
||||
!! \ingroup h5part_data_f
|
||||
!! See \ref H5PartWriteDataFloat64
|
||||
!! \return 0 on success or error code
|
||||
INTEGER*8 FUNCTION h5pt_writedata_r8 ( filehandle, name, data )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
REAL*8, INTENT(IN) :: data(*) !< the array of float64 data to write
|
||||
END FUNCTION h5pt_writedata_r8
|
||||
|
||||
!>
|
||||
!! \ingroup h5part_data_f
|
||||
!! See \ref H5PartWriteDataFloat64
|
||||
!! \return 0 on success or error code
|
||||
INTEGER*8 FUNCTION h5pt_writedata_r8 ( filehandle, name, data )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
REAL*8, INTENT(IN) :: data(*) !< the array of float64 data to write
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5part_data_f
|
||||
!! See \ref H5PartWriteDataFloat32
|
||||
!! \return 0 on success or error code
|
||||
INTEGER*8 FUNCTION h5pt_writedata_r4 ( filehandle, name, data )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
REAL, INTENT(IN) :: data(*) !< the array of float32 data to write
|
||||
END FUNCTION h5pt_writedata_r4
|
||||
|
||||
!>
|
||||
!! \ingroup h5part_data_f
|
||||
!! See \ref H5PartWriteDataFloat32
|
||||
!! \return 0 on success or error code
|
||||
INTEGER*8 FUNCTION h5pt_writedata_r4 ( filehandle, name, data )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
REAL, INTENT(IN) :: data(*) !< the array of float32 data to write
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5part_data_f
|
||||
!! See \ref H5PartWriteDataInt64
|
||||
!! \return 0 on success or error code
|
||||
INTEGER*8 FUNCTION h5pt_writedata_i8 ( filehandle, name, data )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
INTEGER*8, INTENT(IN) :: data(*) !< the array of int64 data to write
|
||||
END FUNCTION h5pt_writedata_i8
|
||||
|
||||
!>
|
||||
!! \ingroup h5part_data_f
|
||||
!! See \ref H5PartWriteDataInt64
|
||||
!! \return 0 on success or error code
|
||||
INTEGER*8 FUNCTION h5pt_writedata_i8 ( filehandle, name, data )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
INTEGER*8, INTENT(IN) :: data(*) !< the array of int64 data to write
|
||||
END FUNCTION
|
||||
|
||||
!>
|
||||
!! \ingroup h5part_data_f
|
||||
!! See \ref H5PartWriteDataInt32
|
||||
!! \return 0 on success or error code
|
||||
INTEGER*8 FUNCTION h5pt_writedata_i4 ( filehandle, name, data )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
INTEGER, INTENT(IN) :: data(*) !< the array of int32 data to write
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5part_data_f
|
||||
!! See \ref H5PartWriteDataInt32
|
||||
!! \return 0 on success or error code
|
||||
INTEGER*8 FUNCTION h5pt_writedata_i4 ( filehandle, name, data )
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
INTEGER, INTENT(IN) :: data(*) !< the array of int32 data to write
|
||||
END FUNCTION h5pt_writedata_i4
|
||||
|
||||
|
||||
!>
|
||||
!! \ingroup h5part_data_f
|
||||
!! See \ref H5PartReadDataFloat64
|
||||
!! \return 0 on success or error code
|
||||
INTEGER*8 FUNCTION h5pt_readdata_r8 (filehandle,name,data)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
REAL*8, INTENT(OUT) :: data(*) !< array to read float64 data into
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5part_data_f
|
||||
!! See \ref H5PartReadDataFloat64
|
||||
!! \return 0 on success or error code
|
||||
INTEGER*8 FUNCTION h5pt_readdata_r8 (filehandle,name,data)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
REAL*8, INTENT(OUT) :: data(*) !< array to read float64 data into
|
||||
END FUNCTION h5pt_readdata_r8
|
||||
|
||||
!>
|
||||
!! \ingroup h5part_data_f
|
||||
!! See \ref H5PartReadDataFloat32
|
||||
!! \return 0 on success or error code
|
||||
INTEGER*8 FUNCTION h5pt_readdata_r4 (filehandle,name,data)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
REAL, INTENT(OUT) :: data(*) !< array to read float32 data into
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5part_data_f
|
||||
!! See \ref H5PartReadDataFloat32
|
||||
!! \return 0 on success or error code
|
||||
INTEGER*8 FUNCTION h5pt_readdata_r4 (filehandle,name,data)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
REAL, INTENT(OUT) :: data(*) !< array to read float32 data into
|
||||
END FUNCTION h5pt_readdata_r4
|
||||
|
||||
!>
|
||||
!! \ingroup h5part_data_f
|
||||
!! See \ref H5PartReadDataInt64
|
||||
!! \return 0 on success or error code
|
||||
INTEGER*8 FUNCTION h5pt_readdata_i8 (filehandle,name,data)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
INTEGER*8, INTENT(OUT) :: data(*) !< array to read int64 data into
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5part_data_f
|
||||
!! See \ref H5PartReadDataInt64
|
||||
!! \return 0 on success or error code
|
||||
INTEGER*8 FUNCTION h5pt_readdata_i8 (filehandle,name,data)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
INTEGER*8, INTENT(OUT) :: data(*) !< array to read int64 data into
|
||||
END FUNCTION h5pt_readdata_i8
|
||||
|
||||
!>
|
||||
!! \ingroup h5part_data_f
|
||||
!! See \ref H5PartReadDataInt32
|
||||
!! \return 0 on success or error code
|
||||
INTEGER*8 FUNCTION h5pt_readdata_i4 (filehandle,name,data)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
INTEGER, INTENT(OUT) :: data(*) !< array to read int32 data into
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5part_data_f
|
||||
!! See \ref H5PartReadDataInt32
|
||||
!! \return 0 on success or error code
|
||||
INTEGER*8 FUNCTION h5pt_readdata_i4 (filehandle,name,data)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
CHARACTER(LEN=*), INTENT(IN) :: name !< the name of the dataset
|
||||
INTEGER, INTENT(OUT) :: data(*) !< array to read int32 data into
|
||||
END FUNCTION h5pt_readdata_i4
|
||||
|
||||
END INTERFACE
|
||||
|
||||
+374
-339
@@ -1,366 +1,401 @@
|
||||
! __ _ _ _ _ _ _ _
|
||||
! / _(_) | ___ __ _| |_| |_ _ __(_) |__ _ _| |_ ___ ___
|
||||
! | |_| | |/ _ \ / _` | __| __| '__| | '_ \| | | | __/ _ \/ __|
|
||||
! | _| | | __/ | (_| | |_| |_| | | | |_) | |_| | || __/\__ \
|
||||
! |_| |_|_|\___| \__,_|\__|\__|_| |_|_.__/ \__,_|\__\___||___/
|
||||
! __ _ _ _ ___ _ __ _ _
|
||||
! / _` | | | |/ _ \ '__| | | |
|
||||
! | (_| | |_| | __/ | | |_| |
|
||||
! \__, |\__,_|\___|_| \__, |
|
||||
! |_| |___/
|
||||
!
|
||||
! Copyright (c) 2006-2013, The Regents of the University of California,
|
||||
! through Lawrence Berkeley National Laboratory (subject to receipt of any
|
||||
! required approvals from the U.S. Dept. of Energy) and the Paul Scherrer
|
||||
! Institut (Switzerland). All rights reserved.!
|
||||
!
|
||||
! License: see file COPYING in top level of source distribution.
|
||||
!
|
||||
INTERFACE
|
||||
! __ _ _ _ _ _ _ _
|
||||
! / _(_) | ___ __ _| |_| |_ _ __(_) |__ _ _| |_ ___ ___
|
||||
! | |_| | |/ _ \ / _` | __| __| '__| | '_ \| | | | __/ _ \/ __|
|
||||
! | _| | | __/ | (_| | |_| |_| | | | |_) | |_| | || __/\__ \
|
||||
! |_| |_|_|\___| \__,_|\__|\__|_| |_|_.__/ \__,_|\__\___||___/
|
||||
! __ _ _ _ ___ _ __ _ _
|
||||
! / _` | | | |/ _ \ '__| | | |
|
||||
! | (_| | |_| | __/ | | |_| |
|
||||
! \__, |\__,_|\___|_| \__, |
|
||||
! |_| |___/
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5GetNumFileAttribs
|
||||
!! \return number of attributes or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_getnfileattribs (filehandle)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< file handle
|
||||
END FUNCTION h5_getnfileattribs
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5GetNumFileAttribs
|
||||
!! \return number of attributes or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_getnfileattribs (filehandle)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< file handle
|
||||
END FUNCTION
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5GetFileAttribInfo
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_getfileattribinfo (filehandle, idx, attrib_name, attrib_nelem)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
INTEGER*8,INTENT(IN) :: idx !< index of attribute being queried
|
||||
CHARACTER(LEN=*), INTENT(OUT):: attrib_name !< name of attribute
|
||||
INTEGER*8,INTENT(OUT):: attrib_type !< type of attribute
|
||||
INTEGER*8,INTENT(OUT):: attrib_nelem !< number of elements in the attrib array
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5GetFileAttribInfo
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_getfileattribinfo (fhandle, idx, name, type, nelem)
|
||||
INTEGER*8,INTENT(IN) :: fhandle !< file handle
|
||||
INTEGER*8,INTENT(IN) :: idx !< index of attribute being queried
|
||||
CHARACTER(LEN=*), INTENT(OUT):: name !< name of attribute
|
||||
INTEGER*8,INTENT(OUT):: type !< type of attribute
|
||||
INTEGER*8,INTENT(OUT):: nelem !< number of elements in the attrib array
|
||||
END FUNCTION h5_getfileattribinfo
|
||||
|
||||
! __ _ _ _ _ _ _ _
|
||||
! / _(_) | ___ __ _| |_| |_ _ __(_) |__ _ _| |_ ___ ___
|
||||
! | |_| | |/ _ \ / _` | __| __| '__| | '_ \| | | | __/ _ \/ __|
|
||||
! | _| | | __/ | (_| | |_| |_| | | | |_) | |_| | || __/\__ \
|
||||
! |_| |_|_|\___| \__,_|\__|\__|_| |_|_.__/ \__,_|\__\___||___/
|
||||
! _ __ _ _
|
||||
! (_) / /__ ___| |_ _ __(_)_ __ __ _
|
||||
! | | / / _ \ / __| __| '__| | '_ \ / _` |
|
||||
! | |/ / (_) | \__ \ |_| | | | | | | (_| |
|
||||
! |_/_/ \___/ |___/\__|_| |_|_| |_|\__, |
|
||||
! |___/
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5GetFileAttribInfoByName
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_getfileattribinfo_by_name (fhandle, name, type, nelem)
|
||||
INTEGER*8,INTENT(IN) :: fhandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN):: name !< name of attribute
|
||||
INTEGER*8,INTENT(OUT):: type !< type of attribute
|
||||
INTEGER*8,INTENT(OUT):: nelem !< number of elements in the attrib array
|
||||
END FUNCTION h5_getfileattribinfo_by_name
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5WriteFileAttribString
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_writefileattrib_string (filehandle, attrib_name, attrib_value)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to write
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_value!< attribute data to be written
|
||||
END FUNCTION
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_readfileattrib_string (filehandle, attrib_name, attrib_value)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of the attribute to read
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_value!< attribute data will be read into this array
|
||||
END FUNCTION
|
||||
! __ _ _ _ _ _ _ _
|
||||
! / _(_) | ___ __ _| |_| |_ _ __(_) |__ _ _| |_ ___ ___
|
||||
! | |_| | |/ _ \ / _` | __| __| '__| | '_ \| | | | __/ _ \/ __|
|
||||
! | _| | | __/ | (_| | |_| |_| | | | |_) | |_| | || __/\__ \
|
||||
! |_| |_|_|\___| \__,_|\__|\__|_| |_|_.__/ \__,_|\__\___||___/
|
||||
! _ __ _ _
|
||||
! (_) / /__ ___| |_ _ __(_)_ __ __ _
|
||||
! | | / / _ \ / __| __| '__| | '_ \ / _` |
|
||||
! | |/ / (_) | \__ \ |_| | | | | | | (_| |
|
||||
! |_/_/ \___/ |___/\__|_| |_|_| |_|\__, |
|
||||
! |___/
|
||||
|
||||
! __ _ _ _ _ _ _ _
|
||||
! / _(_) | ___ __ _| |_| |_ _ __(_) |__ _ _| |_ ___ ___
|
||||
! | |_| | |/ _ \ / _` | __| __| '__| | '_ \| | | | __/ _ \/ __|
|
||||
! | _| | | __/ | (_| | |_| |_| | | | |_) | |_| | || __/\__ \
|
||||
! |_| |_|_|\___| \__,_|\__|\__|_| |_|_.__/ \__,_|\__\___||___/
|
||||
! _ __ _
|
||||
! (_) / /__ _ __ ___ __ _| |
|
||||
! | | / / _ \ | '__/ _ \/ _` | |
|
||||
! | |/ / (_) | | | | __/ (_| | |
|
||||
! |_/_/ \___/ |_| \___|\__,_|_|
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5WriteFileAttribString
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_writefileattrib_string (filehandle, attrib_name, attrib_value)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to write
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_value!< attribute data to be written
|
||||
END FUNCTION h5_writefileattrib_string
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5WriteFileAttribFloat64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_writefileattrib_r8 (filehandle, attrib_name, attrib_value, attrib_nelem)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to read
|
||||
REAL*8, INTENT(OUT):: attrib_value(*) !< attribute data to be written
|
||||
INTEGER*8, INTENT(IN) :: attrib_nelem !< number of elements in data array
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_readfileattrib_string (filehandle, attrib_name, attrib_value)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of the attribute to read
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_value!< attribute data will be read into this array
|
||||
END FUNCTION h5_readfileattrib_string
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5ReadFileAttribFloat64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_readfileattrib_r8 (filehandle, attrib_name, attrib_value)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to read
|
||||
REAL*8, INTENT(OUT):: attrib_value(*) !< attribute data will be read into this array
|
||||
END FUNCTION
|
||||
! __ _ _ _ _ _ _ _
|
||||
! / _(_) | ___ __ _| |_| |_ _ __(_) |__ _ _| |_ ___ ___
|
||||
! | |_| | |/ _ \ / _` | __| __| '__| | '_ \| | | | __/ _ \/ __|
|
||||
! | _| | | __/ | (_| | |_| |_| | | | |_) | |_| | || __/\__ \
|
||||
! |_| |_|_|\___| \__,_|\__|\__|_| |_|_.__/ \__,_|\__\___||___/
|
||||
! _ __ _
|
||||
! (_) / /__ _ __ ___ __ _| |
|
||||
! | | / / _ \ | '__/ _ \/ _` | |
|
||||
! | |/ / (_) | | | | __/ (_| | |
|
||||
! |_/_/ \___/ |_| \___|\__,_|_|
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5WriteFileAttribFloat32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_writefileattrib_r4 (filehandle, attrib_name, attrib_value, attrib_nelem)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to read
|
||||
REAL*4, INTENT(OUT):: attrib_value(*) !< attribute data to be written
|
||||
INTEGER*8, INTENT(IN) :: attrib_nelem !< number of elements in data array
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5WriteFileAttribFloat64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_writefileattrib_r8 (filehandle, attrib_name, attrib_value, attrib_nelem)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to read
|
||||
REAL*8, INTENT(IN):: attrib_value(*) !< attribute data to be written
|
||||
INTEGER*8, INTENT(IN) :: attrib_nelem !< number of elements in data array
|
||||
END FUNCTION h5_writefileattrib_r8
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5ReadFileAttribFloat32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_readfileattrib_r4 ( filehandle, attrib_name, attrib_value )
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to read
|
||||
REAL*4, INTENT(OUT):: attrib_value(*) !< attribute data will be read into this array
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5ReadFileAttribFloat64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_readfileattrib_r8 (filehandle, attrib_name, attrib_value)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to read
|
||||
REAL*8, INTENT(OUT):: attrib_value(*) !< attribute data will be read into this array
|
||||
END FUNCTION h5_readfileattrib_r8
|
||||
|
||||
! __ _ _ _ _ _ _ _
|
||||
! / _(_) | ___ __ _| |_| |_ _ __(_) |__ _ _| |_ ___ ___
|
||||
! | |_| | |/ _ \ / _` | __| __| '__| | '_ \| | | | __/ _ \/ __|
|
||||
! | _| | | __/ | (_| | |_| |_| | | | |_) | |_| | || __/\__ \
|
||||
! |_| |_|_|\___| \__,_|\__|\__|_| |_|_.__/ \__,_|\__\___||___/
|
||||
! _ __ _ _
|
||||
! (_) / /__ (_)_ __ | |_ ___ __ _ ___ _ __
|
||||
! | | / / _ \ | | '_ \| __/ _ \/ _` |/ _ \ '__|
|
||||
! | |/ / (_) | | | | | | || __/ (_| | __/ |
|
||||
! |_/_/ \___/ |_|_| |_|\__\___|\__, |\___|_|
|
||||
! |___/
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5WriteFileAttribFloat32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_writefileattrib_r4 (filehandle, attrib_name, attrib_value, attrib_nelem)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to read
|
||||
REAL*4, INTENT(IN):: attrib_value(*) !< attribute data to be written
|
||||
INTEGER*8, INTENT(IN) :: attrib_nelem !< number of elements in data array
|
||||
END FUNCTION h5_writefileattrib_r4
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5WriteFileAttribInt64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_writefileattrib_i8 (filehandle, attrib_name, attrib_value, attrib_nelem)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to write
|
||||
INTEGER*8,INTENT(OUT):: attrib_value(*) !< attribute data to be written
|
||||
INTEGER*8, INTENT(IN) :: attrib_nelem !< number of elements in data array
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5ReadFileAttribFloat32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_readfileattrib_r4 ( filehandle, attrib_name, attrib_value )
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to read
|
||||
REAL*4, INTENT(OUT):: attrib_value(*) !< attribute data will be read into this array
|
||||
END FUNCTION h5_readfileattrib_r4
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5ReadFileAttribInt64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_readfileattrib_i8 (filehandle, attrib_name, attrib_value)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to read
|
||||
INTEGER*8,INTENT(OUT):: attrib_value(*) !< attribute data will be read into this array
|
||||
END FUNCTION
|
||||
! __ _ _ _ _ _ _ _
|
||||
! / _(_) | ___ __ _| |_| |_ _ __(_) |__ _ _| |_ ___ ___
|
||||
! | |_| | |/ _ \ / _` | __| __| '__| | '_ \| | | | __/ _ \/ __|
|
||||
! | _| | | __/ | (_| | |_| |_| | | | |_) | |_| | || __/\__ \
|
||||
! |_| |_|_|\___| \__,_|\__|\__|_| |_|_.__/ \__,_|\__\___||___/
|
||||
! _ __ _ _
|
||||
! (_) / /__ (_)_ __ | |_ ___ __ _ ___ _ __
|
||||
! | | / / _ \ | | '_ \| __/ _ \/ _` |/ _ \ '__|
|
||||
! | |/ / (_) | | | | | | || __/ (_| | __/ |
|
||||
! |_/_/ \___/ |_|_| |_|\__\___|\__, |\___|_|
|
||||
! |___/
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5WriteFileAttribInt32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_writefileattrib_i4 (filehandle, attrib_name, attrib_value, attrib_nelem)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to write
|
||||
INTEGER*8,INTENT(OUT):: attrib_type !< type of attribute
|
||||
INTEGER*4,INTENT(OUT):: attrib_value(*) !< attribute data to be written
|
||||
INTEGER*8, INTENT(IN) :: attrib_nelem !< number of elements in data array
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5WriteFileAttribInt64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_writefileattrib_i8 (filehandle, attrib_name, attrib_value, attrib_nelem)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER (LEN=*), INTENT(IN) :: attrib_name!< name of attribute to write
|
||||
INTEGER*8, INTENT(IN):: attrib_value(*) !< attribute data to be written
|
||||
INTEGER*8, INTENT(IN) :: attrib_nelem !< number of elements in data array
|
||||
END FUNCTION h5_writefileattrib_i8
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5ReadFileAttribInt32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_readfileattrib_i4 (filehandle, attrib_name, attrib_value)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to read
|
||||
INTEGER*4,INTENT(OUT):: attrib_value(*) !< attribute data will be read into this array
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5ReadFileAttribInt64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_readfileattrib_i8 (filehandle, attrib_name, attrib_value)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to read
|
||||
INTEGER*8,INTENT(OUT):: attrib_value(*) !< attribute data will be read into this array
|
||||
END FUNCTION h5_readfileattrib_i8
|
||||
|
||||
! _ _ _ _ _ _
|
||||
! ___| |_ ___ _ __ __ _| |_| |_ _ __(_) |__ _ _| |_ ___ ___
|
||||
! / __| __/ _ \ '_ \ / _` | __| __| '__| | '_ \| | | | __/ _ \/ __|
|
||||
! \__ \ || __/ |_) | | (_| | |_| |_| | | | |_) | |_| | || __/\__ \
|
||||
! |___/\__\___| .__/ \__,_|\__|\__|_| |_|_.__/ \__,_|\__\___||___/
|
||||
! |_|
|
||||
! __ _ _ _ ___ _ __ _ _
|
||||
! / _` | | | |/ _ \ '__| | | |
|
||||
! | (_| | |_| | __/ | | |_| |
|
||||
! \__, |\__,_|\___|_| \__, |
|
||||
! |_| |___/
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5WriteFileAttribInt32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_writefileattrib_i4 (filehandle, attrib_name, attrib_value, attrib_nelem)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER (LEN=*), INTENT(IN) :: attrib_name !< name of attribute to write
|
||||
INTEGER*4, INTENT(IN) :: attrib_value(*) !< attribute data to be written
|
||||
INTEGER*8, INTENT(IN) :: attrib_nelem !< number of elements in data array
|
||||
END FUNCTION h5_writefileattrib_i4
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5GetNumFileAttribs
|
||||
!! \return number of attributes or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_getnstepattribs (filehandle)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< file handle
|
||||
END FUNCTION
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5GetFileAttribInfo
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_getstepattribinfo (filehandle, idx, attrib_name, attrib_nelem)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
INTEGER*8,INTENT(IN) :: idx !< index of attribute being queried
|
||||
CHARACTER(LEN=*), INTENT(OUT):: attrib_name !< name of attribute
|
||||
INTEGER*8,INTENT(OUT):: attrib_nelem !< number of elements in the attrib array
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5ReadFileAttribInt32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_readfileattrib_i4 (filehandle, attrib_name, attrib_value)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to read
|
||||
INTEGER*4,INTENT(OUT):: attrib_value(*) !< attribute data will be read into this array
|
||||
END FUNCTION h5_readfileattrib_i4
|
||||
|
||||
! _ _ _ _ _ _
|
||||
! ___| |_ ___ _ __ __ _| |_| |_ _ __(_) |__ _ _| |_ ___ ___
|
||||
! / __| __/ _ \ '_ \ / _` | __| __| '__| | '_ \| | | | __/ _ \/ __|
|
||||
! \__ \ || __/ |_) | | (_| | |_| |_| | | | |_) | |_| | || __/\__ \
|
||||
! |___/\__\___| .__/ \__,_|\__|\__|_| |_|_.__/ \__,_|\__\___||___/
|
||||
! |_|
|
||||
! _ __ _ _
|
||||
! (_) / /__ ___| |_ _ __(_)_ __ __ _
|
||||
! | | / / _ \ / __| __| '__| | '_ \ / _` |
|
||||
! | |/ / (_) | \__ \ |_| | | | | | | (_| |
|
||||
! |_/_/ \___/ |___/\__|_| |_|_| |_|\__, |
|
||||
! |___/
|
||||
! _ _ _ _ _ _
|
||||
! ___| |_ ___ _ __ __ _| |_| |_ _ __(_) |__ _ _| |_ ___ ___
|
||||
! / __| __/ _ \ '_ \ / _` | __| __| '__| | '_ \| | | | __/ _ \/ __|
|
||||
! \__ \ || __/ |_) | | (_| | |_| |_| | | | |_) | |_| | || __/\__ \
|
||||
! |___/\__\___| .__/ \__,_|\__|\__|_| |_|_.__/ \__,_|\__\___||___/
|
||||
! |_|
|
||||
! __ _ _ _ ___ _ __ _ _
|
||||
! / _` | | | |/ _ \ '__| | | |
|
||||
! | (_| | |_| | __/ | | |_| |
|
||||
! \__, |\__,_|\___|_| \__, |
|
||||
! |_| |___/
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5WriteStepAttribString
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_writestepattrib_string (filehandle, attrib_name, attrib_value)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to write
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_value!< attribute data to be written
|
||||
END FUNCTION
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5ReadStepAttribString
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_readstepattrib_string (filehandle, attrib_name, attrib_value)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of the attribute to read
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_value!< attribute data will be read into this array
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5GetNumFileAttribs
|
||||
!! \return number of attributes or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_getnstepattribs (filehandle)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< file handle
|
||||
END FUNCTION h5_getnstepattribs
|
||||
|
||||
! _ _ _ _ _ _
|
||||
! ___| |_ ___ _ __ __ _| |_| |_ _ __(_) |__ _ _| |_ ___ ___
|
||||
! / __| __/ _ \ '_ \ / _` | __| __| '__| | '_ \| | | | __/ _ \/ __|
|
||||
! \__ \ || __/ |_) | | (_| | |_| |_| | | | |_) | |_| | || __/\__ \
|
||||
! |___/\__\___| .__/ \__,_|\__|\__|_| |_|_.__/ \__,_|\__\___||___/
|
||||
! |_|
|
||||
! _ __ _
|
||||
! (_) / /__ _ __ ___ __ _| |
|
||||
! | | / / _ \ | '__/ _ \/ _` | |
|
||||
! | |/ / (_) | | | | __/ (_| | |
|
||||
! |_/_/ \___/ |_| \___|\__,_|_|
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5GetFileAttribInfo
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_getstepattribinfo (filehandle, idx, name, type, nelem)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
INTEGER*8,INTENT(IN) :: idx !< index of attribute being queried
|
||||
CHARACTER(LEN=*), INTENT(OUT):: name !< name of attribute
|
||||
INTEGER*8,INTENT(OUT):: type !< type of attribute
|
||||
INTEGER*8,INTENT(OUT):: nelem !< number of elements in the attrib array
|
||||
END FUNCTION h5_getstepattribinfo
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5WriteStepAttribFloat64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_writestepattrib_r8 (filehandle, attrib_name, attrib_value, attrib_nelem)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to read
|
||||
REAL*8, INTENT(OUT):: attrib_value(*) !< attribute data to be written
|
||||
INTEGER*8, INTENT(IN) :: attrib_nelem !< number of elements in data array
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5GetStepAttribInfoByName
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_getstepattribinfo_by_name (fhandle, name, type, nelem)
|
||||
INTEGER*8,INTENT(IN) :: fhandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN):: name !< name of attribute
|
||||
INTEGER*8,INTENT(OUT):: type !< type of attribute
|
||||
INTEGER*8,INTENT(OUT):: nelem !< number of elements in the attrib array
|
||||
END FUNCTION h5_getstepattribinfo_by_name
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5ReadStepAttribFloat64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_readstepattrib_r8 (filehandle, attrib_name, attrib_value)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to read
|
||||
REAL*8, INTENT(OUT):: attrib_value(*) !< attribute data will be read into this array
|
||||
END FUNCTION
|
||||
! _ _ _ _ _ _
|
||||
! ___| |_ ___ _ __ __ _| |_| |_ _ __(_) |__ _ _| |_ ___ ___
|
||||
! / __| __/ _ \ '_ \ / _` | __| __| '__| | '_ \| | | | __/ _ \/ __|
|
||||
! \__ \ || __/ |_) | | (_| | |_| |_| | | | |_) | |_| | || __/\__ \
|
||||
! |___/\__\___| .__/ \__,_|\__|\__|_| |_|_.__/ \__,_|\__\___||___/
|
||||
! |_|
|
||||
! _ __ _ _
|
||||
! (_) / /__ ___| |_ _ __(_)_ __ __ _
|
||||
! | | / / _ \ / __| __| '__| | '_ \ / _` |
|
||||
! | |/ / (_) | \__ \ |_| | | | | | | (_| |
|
||||
! |_/_/ \___/ |___/\__|_| |_|_| |_|\__, |
|
||||
! |___/
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5WriteStepAttribFloat32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_writestepattrib_r4 (filehandle, attrib_name, attrib_value, attrib_nelem)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to read
|
||||
REAL*4, INTENT(OUT):: attrib_value(*) !< attribute data to be written
|
||||
INTEGER*8, INTENT(IN) :: attrib_nelem !< number of elements in data array
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5WriteStepAttribString
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_writestepattrib_string (filehandle, attrib_name, attrib_value)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to write
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_value!< attribute data to be written
|
||||
END FUNCTION h5_writestepattrib_string
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5ReadStepAttribFloat32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_readstepattrib_r4 ( filehandle, attrib_name, attrib_value )
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to read
|
||||
REAL*4, INTENT(OUT):: attrib_value(*) !< attribute data will be read into this array
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5ReadStepAttribString
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_readstepattrib_string (filehandle, attrib_name, attrib_value)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of the attribute to read
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_value!< attribute data will be read into this array
|
||||
END FUNCTION h5_readstepattrib_string
|
||||
|
||||
! _ _ _ _ _ _
|
||||
! ___| |_ ___ _ __ __ _| |_| |_ _ __(_) |__ _ _| |_ ___ ___
|
||||
! / __| __/ _ \ '_ \ / _` | __| __| '__| | '_ \| | | | __/ _ \/ __|
|
||||
! \__ \ || __/ |_) | | (_| | |_| |_| | | | |_) | |_| | || __/\__ \
|
||||
! |___/\__\___| .__/ \__,_|\__|\__|_| |_|_.__/ \__,_|\__\___||___/
|
||||
! |_|
|
||||
! _ __ _ _
|
||||
! (_) / /__ (_)_ __ | |_ ___ __ _ ___ _ __
|
||||
! | | / / _ \ | | '_ \| __/ _ \/ _` |/ _ \ '__|
|
||||
! | |/ / (_) | | | | | | || __/ (_| | __/ |
|
||||
! |_/_/ \___/ |_|_| |_|\__\___|\__, |\___|_|
|
||||
! |___/
|
||||
! _ _ _ _ _ _
|
||||
! ___| |_ ___ _ __ __ _| |_| |_ _ __(_) |__ _ _| |_ ___ ___
|
||||
! / __| __/ _ \ '_ \ / _` | __| __| '__| | '_ \| | | | __/ _ \/ __|
|
||||
! \__ \ || __/ |_) | | (_| | |_| |_| | | | |_) | |_| | || __/\__ \
|
||||
! |___/\__\___| .__/ \__,_|\__|\__|_| |_|_.__/ \__,_|\__\___||___/
|
||||
! |_|
|
||||
! _ __ _
|
||||
! (_) / /__ _ __ ___ __ _| |
|
||||
! | | / / _ \ | '__/ _ \/ _` | |
|
||||
! | |/ / (_) | | | | __/ (_| | |
|
||||
! |_/_/ \___/ |_| \___|\__,_|_|
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5WriteStepAttribInt64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_writestepattrib_i8 (filehandle, attrib_name, attrib_value, attrib_nelem)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to write
|
||||
INTEGER*8,INTENT(OUT):: attrib_value(*) !< attribute data to be written
|
||||
INTEGER*8, INTENT(IN) :: attrib_nelem !< number of elements in data array
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5WriteStepAttribFloat64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_writestepattrib_r8 (filehandle, attrib_name, attrib_value, attrib_nelem)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to read
|
||||
REAL*8, INTENT(IN):: attrib_value(*) !< attribute data to be written
|
||||
INTEGER*8, INTENT(IN) :: attrib_nelem !< number of elements in data array
|
||||
END FUNCTION h5_writestepattrib_r8
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5ReadStepAttribInt64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_readstepattrib_i8 (filehandle, attrib_name, attrib_value)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to read
|
||||
INTEGER*8,INTENT(OUT):: attrib_value(*) !< attribute data will be read into this array
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5ReadStepAttribFloat64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_readstepattrib_r8 (filehandle, attrib_name, attrib_value)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to read
|
||||
REAL*8, INTENT(OUT):: attrib_value(*) !< attribute data will be read into this array
|
||||
END FUNCTION h5_readstepattrib_r8
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5WriteStepAttribInt32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_writestepattrib_i4 (filehandle, attrib_name, attrib_value, attrib_nelem)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to write
|
||||
INTEGER*4,INTENT(OUT):: attrib_value(*) !< attribute data to be written
|
||||
INTEGER*8, INTENT(IN) :: attrib_nelem !< number of elements in data array
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5WriteStepAttribFloat32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_writestepattrib_r4 (filehandle, attrib_name, attrib_value, attrib_nelem)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to read
|
||||
REAL*4, INTENT(IN):: attrib_value(*) !< attribute data to be written
|
||||
INTEGER*8, INTENT(IN) :: attrib_nelem !< number of elements in data array
|
||||
END FUNCTION h5_writestepattrib_r4
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5ReadStepAttribInt32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_readstepattrib_i4 (filehandle, attrib_name, attrib_value)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to read
|
||||
INTEGER*4,INTENT(OUT):: attrib_value(*) !< attribute data will be read into this array
|
||||
END FUNCTION
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5ReadStepAttribFloat32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_readstepattrib_r4 ( filehandle, attrib_name, attrib_value )
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to read
|
||||
REAL*4, INTENT(OUT):: attrib_value(*) !< attribute data will be read into this array
|
||||
END FUNCTION h5_readstepattrib_r4
|
||||
|
||||
! _ _ _ _ _ _
|
||||
! ___| |_ ___ _ __ __ _| |_| |_ _ __(_) |__ _ _| |_ ___ ___
|
||||
! / __| __/ _ \ '_ \ / _` | __| __| '__| | '_ \| | | | __/ _ \/ __|
|
||||
! \__ \ || __/ |_) | | (_| | |_| |_| | | | |_) | |_| | || __/\__ \
|
||||
! |___/\__\___| .__/ \__,_|\__|\__|_| |_|_.__/ \__,_|\__\___||___/
|
||||
! |_|
|
||||
! _ __ _ _
|
||||
! (_) / /__ (_)_ __ | |_ ___ __ _ ___ _ __
|
||||
! | | / / _ \ | | '_ \| __/ _ \/ _` |/ _ \ '__|
|
||||
! | |/ / (_) | | | | | | || __/ (_| | __/ |
|
||||
! |_/_/ \___/ |_|_| |_|\__\___|\__, |\___|_|
|
||||
! |___/
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5WriteStepAttribInt64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_writestepattrib_i8 (filehandle, attrib_name, attrib_value, attrib_nelem)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to write
|
||||
INTEGER*8,INTENT(IN):: attrib_value(*) !< attribute data to be written
|
||||
INTEGER*8, INTENT(IN) :: attrib_nelem !< number of elements in data array
|
||||
END FUNCTION h5_writestepattrib_i8
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5ReadStepAttribInt64
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_readstepattrib_i8 (filehandle, attrib_name, attrib_value)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to read
|
||||
INTEGER*8,INTENT(OUT):: attrib_value(*) !< attribute data will be read into this array
|
||||
END FUNCTION h5_readstepattrib_i8
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5WriteStepAttribInt32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_writestepattrib_i4 (filehandle, attrib_name, attrib_value, attrib_nelem)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to write
|
||||
INTEGER*4,INTENT(IN):: attrib_value(*) !< attribute data to be written
|
||||
INTEGER*8, INTENT(IN) :: attrib_nelem !< number of elements in data array
|
||||
END FUNCTION h5_writestepattrib_i4
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_attrib_f
|
||||
!! See \ref H5ReadStepAttribInt32
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_readstepattrib_i4 (filehandle, attrib_name, attrib_value)
|
||||
INTEGER*8,INTENT(IN) :: filehandle !< file handle
|
||||
CHARACTER(LEN=*), INTENT(IN) :: attrib_name !< name of attribute to read
|
||||
INTEGER*4,INTENT(OUT):: attrib_value(*) !< attribute data will be read into this array
|
||||
END FUNCTION h5_readstepattrib_i4
|
||||
|
||||
END INTERFACE
|
||||
|
||||
+43
-55
@@ -1,61 +1,49 @@
|
||||
!
|
||||
! Copyright (c) 2006-2013, The Regents of the University of California,
|
||||
! through Lawrence Berkeley National Laboratory (subject to receipt of any
|
||||
! required approvals from the U.S. Dept. of Energy) and the Paul Scherrer
|
||||
! Institut (Switzerland). All rights reserved.!
|
||||
!
|
||||
! License: see file COPYING in top level of source distribution.
|
||||
!
|
||||
INTEGER*8, PARAMETER :: H5_O_RDWR = Z'00000001'
|
||||
INTEGER*8, PARAMETER :: H5_O_RDONLY = Z'00000002'
|
||||
INTEGER*8, PARAMETER :: H5_O_WRONLY = Z'00000004'
|
||||
INTEGER*8, PARAMETER :: H5_O_APPEND = Z'00000008'
|
||||
|
||||
INTEGER*8 :: H5_STRING_T
|
||||
INTEGER*8 :: H5_INT16_T
|
||||
INTEGER*8 :: H5_INT32_T
|
||||
INTEGER*8 :: H5_INT64_t
|
||||
INTEGER*8 :: H5_FLOAT32_T
|
||||
INTEGER*8 :: H5_FLOAT64_T
|
||||
INTEGER*8, PARAMETER :: H5_VFD_MPIPOSIX = Z'00000010'
|
||||
INTEGER*8, PARAMETER :: H5_VFD_MPIIO_IND = Z'00000020'
|
||||
INTEGER*8, PARAMETER :: H5_VFD_CORE = Z'00000040'
|
||||
|
||||
PARAMETER (H5_STRING_T = 1)
|
||||
PARAMETER (H5_INT16_T = 2)
|
||||
PARAMETER (H5_INT32_T = 3)
|
||||
PARAMETER (H5_INT64_T = 4)
|
||||
PARAMETER (H5_FLOAT32_T = 5)
|
||||
PARAMETER (H5_FLOAT64_T = 6)
|
||||
INTEGER*8, PARAMETER :: H5_PROP_DEFAULT = 0
|
||||
|
||||
INTEGER*8 :: H5_MAX_NAME_LEN
|
||||
PARAMETER (H5_MAX_NAME_LEN = 64)
|
||||
INTEGER*8, PARAMETER :: H5_STRING_T = 1
|
||||
INTEGER*8, PARAMETER :: H5_INT16_T = 2
|
||||
INTEGER*8, PARAMETER :: H5_INT32_T = 3
|
||||
INTEGER*8, PARAMETER :: H5_INT64_T = 4
|
||||
INTEGER*8, PARAMETER :: H5_FLOAT32_T = 5
|
||||
INTEGER*8, PARAMETER :: H5_FLOAT64_T = 6
|
||||
|
||||
INTEGER*8 :: H5_SUCCESS
|
||||
INTEGER*8 :: H5_OK
|
||||
INTEGER*8 :: H5_NOK
|
||||
INTEGER*8 :: H5_FAILURE
|
||||
INTEGER*8 :: H5_ERR_BADF
|
||||
INTEGER*8 :: H5_ERR_NOMEM
|
||||
INTEGER*8 :: H5_ERR_INVAL
|
||||
INTEGER*8 :: H5_ERR_BADFD
|
||||
INTEGER*8, PARAMETER :: H5_MAX_NAME_LEN = 64
|
||||
|
||||
INTEGER*8 :: H5_ERR_LAYOUT
|
||||
INTEGER*8 :: H5_ERR_NOENTRY
|
||||
INTEGER*8, PARAMETER :: H5_SUCCESS = 0
|
||||
INTEGER*8, PARAMETER :: H5_OK = H5_SUCCESS
|
||||
INTEGER*8, PARAMETER :: H5_NOK = -1
|
||||
INTEGER*8, PARAMETER :: H5_FAILURE = -2
|
||||
INTEGER*8, PARAMETER :: H5_ERR_BADF = -9
|
||||
INTEGER*8, PARAMETER :: H5_ERR_NOMEM = -12
|
||||
INTEGER*8, PARAMETER :: H5_ERR_INVAL = -22
|
||||
INTEGER*8, PARAMETER :: H5_ERR_BADFD = -77
|
||||
|
||||
INTEGER*8, PARAMETER :: H5_ERR_LAYOUT = -100
|
||||
INTEGER*8, PARAMETER :: H5_ERR_NOENTRY = -101
|
||||
|
||||
INTEGER*8 :: H5_ERR_MPI
|
||||
INTEGER*8 :: H5_ERR_HDF5
|
||||
INTEGER*8 :: H5_ERR_H5
|
||||
INTEGER*8 :: H5_ERR_H5PART
|
||||
INTEGER*8 :: H5_ERR_H5BLOCK
|
||||
INTEGER*8 :: H5_ERR_H5FED
|
||||
|
||||
INTEGER*8 :: H5_ERR_INTERNAL
|
||||
INTEGER*8 :: H5_ERR_NOT_IMPLEMENTED
|
||||
|
||||
PARAMETER (H5_SUCCESS = 0)
|
||||
PARAMETER (H5_OK = H5_SUCCESS)
|
||||
PARAMETER (H5_NOK = -1)
|
||||
PARAMETER (H5_FAILURE = -2)
|
||||
PARAMETER (H5_ERR_BADF = -9)
|
||||
PARAMETER (H5_ERR_NOMEM = -12)
|
||||
PARAMETER (H5_ERR_INVAL = -22)
|
||||
PARAMETER (H5_ERR_BADFD = -77)
|
||||
|
||||
PARAMETER (H5_ERR_LAYOUT = -100)
|
||||
PARAMETER (H5_ERR_NOENTRY = -101)
|
||||
|
||||
PARAMETER (H5_ERR_MPI = -201)
|
||||
PARAMETER (H5_ERR_HDF5 = -202)
|
||||
PARAMETER (H5_ERR_H5 = -203)
|
||||
PARAMETER (H5_ERR_H5PART = -204)
|
||||
PARAMETER (H5_ERR_H5BLOCK = -205)
|
||||
PARAMETER (H5_ERR_H5FED = -206)
|
||||
|
||||
PARAMETER (H5_ERR_INTERNAL = -253)
|
||||
PARAMETER (H5_ERR_NOT_IMPLEMENTED = -254)
|
||||
INTEGER*8, PARAMETER :: H5_ERR_MPI = -201
|
||||
INTEGER*8, PARAMETER :: H5_ERR_HDF5 = -202
|
||||
INTEGER*8, PARAMETER :: H5_ERR_H5 = -203
|
||||
INTEGER*8, PARAMETER :: H5_ERR_H5PART = -204
|
||||
INTEGER*8, PARAMETER :: H5_ERR_H5BLOCK = -205
|
||||
INTEGER*8, PARAMETER :: H5_ERR_H5FED = -206
|
||||
|
||||
INTEGER*8, PARAMETER :: H5_ERR_INTERNAL = -253
|
||||
INTEGER*8, PARAMETER :: H5_ERR_NOT_IMPLEMENTED = -254
|
||||
|
||||
@@ -0,0 +1,39 @@
|
||||
INTERFACE
|
||||
!>
|
||||
!! \ingroup h5hut_model_f
|
||||
!! See \ref H5HasStep
|
||||
!! \return 0 on success or H5_FAILURE
|
||||
!<
|
||||
LOGICAL FUNCTION h5_hasstep (filehandle,step)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
INTEGER*8, INTENT(IN) :: step !< a timestep value >= 1
|
||||
END FUNCTION h5_hasstep
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_model_f
|
||||
!! See \ref H5SetStep
|
||||
!! \return 0 on success or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_setstep (filehandle,step)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
INTEGER*8, INTENT(IN) :: step !< a timestep value >= 1
|
||||
END FUNCTION h5_setstep
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_model_f
|
||||
!! See \ref H5GetStep
|
||||
!! \return the the current step or \c H5_FAILURE
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_getstep (filehandle)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
END FUNCTION h5_getstep
|
||||
|
||||
!>
|
||||
!! \ingroup h5hut_model_f
|
||||
!! See \ref H5GetNumSteps
|
||||
!! \return the number of steps or error code
|
||||
!<
|
||||
INTEGER*8 FUNCTION h5_getnsteps (filehandle)
|
||||
INTEGER*8, INTENT(IN) :: filehandle !< the handle returned during file open
|
||||
END FUNCTION h5_getnsteps
|
||||
END INTERFACE
|
||||
@@ -0,0 +1,22 @@
|
||||
!
|
||||
! Copyright (c) 2006-2013, The Regents of the University of California,
|
||||
! through Lawrence Berkeley National Laboratory (subject to receipt of any
|
||||
! required approvals from the U.S. Dept. of Energy) and the Paul Scherrer
|
||||
! Institut (Switzerland). All rights reserved.!
|
||||
!
|
||||
! License: see file COPYING in top level of source distribution.
|
||||
!
|
||||
MODULE H5hut
|
||||
include 'H5_const.f90'
|
||||
|
||||
include 'H5.f90'
|
||||
include 'H5_attribs.f90'
|
||||
include 'H5_model.f90'
|
||||
|
||||
include 'H5Part.f90'
|
||||
include 'H5Part_io.f90'
|
||||
|
||||
include 'H5Block.f90'
|
||||
include 'H5Block_attribs.f90'
|
||||
include 'H5Block_io.f90'
|
||||
END MODULE H5hut
|
||||
Reference in New Issue
Block a user