added h5hutcc wrapper

updated documentation
finished merging the Fortran interface and refactoring H5Block
started an H5Block regression test
This commit is contained in:
Marc Howison
2010-07-20 18:23:48 +00:00
parent 7ea00c38f8
commit 5f6808947a
37 changed files with 1322 additions and 647 deletions
-2
View File
@@ -16,8 +16,6 @@
#ifndef __H5_H
#define __H5_H
#include "H5_attribs.h"
h5_file_t *
H5OpenFile (
const char * filename,
+48 -23
View File
@@ -1,8 +1,10 @@
#ifndef __H5BLOCK_H
#define __H5BLOCK_H
#include "H5.h"
#include "H5Block_readwrite.h"
h5_int64_t
H5Block3dHasView (
h5_file_t *const f /*!< IN: File handle */
);
h5_err_t
H5Block3dSetView (
@@ -18,7 +20,6 @@ H5Block3dSetView (
h5_err_t
H5Block3dGetView (
h5_file_t *const f, /*!< IN: File handle */
const int proc, /*!< IN: Processor to get partition from */
h5_size_t *i_start, /*!< OUT: start index of \c i */
h5_size_t *i_end, /*!< OUT: end index of \c i */
h5_size_t *j_start, /*!< OUT: start index of \c j */
@@ -27,6 +28,17 @@ H5Block3dGetView (
h5_size_t *k_end /*!< OUT: end index of \c k */
);
h5_err_t
H5Block3dGetReducedView (
h5_file_t *const f, /*!< IN: File handle */
h5_size_t *i_start, /*!< OUT: start index of \c i */
h5_size_t *i_end, /*!< OUT: end index of \c i */
h5_size_t *j_start, /*!< OUT: start index of \c j */
h5_size_t *j_end, /*!< OUT: end index of \c j */
h5_size_t *k_start, /*!< OUT: start index of \c j */
h5_size_t *k_end /*!< OUT: end index of \c j */
);
h5_err_t
H5Block3dSetChunk (
h5_file_t *const f, /*!< IN: File handle */
@@ -43,23 +55,36 @@ H5Block3dGetChunk (
);
h5_err_t
H5Block3dGetReducedView (
h5_file_t *const f, /*!< IN: File handle */
const int proc, /*!< IN: Processor to get partition from */
h5_size_t *i_start, /*!< OUT: start index of \c i */
h5_size_t *i_end, /*!< OUT: end index of \c i */
h5_size_t *j_start, /*!< OUT: start index of \c j */
h5_size_t *j_end, /*!< OUT: end index of \c j */
h5_size_t *k_start, /*!< OUT: start index of \c j */
h5_size_t *k_end /*!< OUT: end index of \c j */
H5Block3dSetGrid (
h5_file_t *const f, /*!< IN: File handle */
const h5_size_t i, /*!< IN: dimension in \c i */
const h5_size_t j, /*!< IN: dimension in \c j */
const h5_size_t k /*!< IN: dimension in \c k */
);
int
H5Block3dGetProc (
h5_err_t
H5Block3dGetGridCoords (
h5_file_t *const f, /*!< IN: File handle */
const h5_int64_t i, /*!< IN: \c i coordinate */
const h5_int64_t j, /*!< IN: \c j coordinate */
const h5_int64_t k /*!< IN: \c k coordinate */
const int proc, /*!< IN: MPI processor */
h5_int64_t *i, /*!< OUT: index in \c i */
h5_int64_t *j, /*!< OUT: index in \c j */
h5_int64_t *k /*!< OUT: index in \c k */
);
h5_err_t
H5Block3dSetDims (
h5_file_t *const f, /*!< IN: File handle */
const h5_size_t i, /*!< IN: dimension in \c i */
const h5_size_t j, /*!< IN: dimension in \c j */
const h5_size_t k /*!< IN: dimension in \c k */
);
h5_err_t
H5Block3dSetHalo (
h5_file_t *const f, /*!< IN: File handle */
const h5_size_t i, /*!< IN: radius in \c i */
const h5_size_t j, /*!< IN: radius in \c j */
const h5_size_t k /*!< IN: radius in \c k */
);
h5_size_t
@@ -113,15 +138,15 @@ H5BlockGetNumFieldAttribs (
h5_int64_t
H5BlockGetFieldAttribInfo (
h5_file_t *const f, /*!< [in] Handle to open file */
h5_file_t *const f, /*<! IN: Handle to open file */
const char *field_name, /*<! IN: field name */
const h5_size_t attrib_idx, /*!< [in] Index of attribute to
const h5_size_t attrib_idx, /*<! IN: Index of attribute to
get infos about */
char *attrib_name, /*!< [out] Name of attribute */
char *attrib_name, /*<! OUT: Name of attribute */
const h5_size_t len_of_attrib_name,
/*!< [in] length of buffer \c name */
h5_int64_t *attrib_type, /*!< [out] Type of value. */
h5_size_t *attrib_nelem /*!< [out] Number of elements */
/*<! IN: length of buffer \c name */
h5_int64_t *attrib_type, /*<! OUT: Type of value. */
h5_size_t *attrib_nelem /*<! OUT: Number of elements */
);
+2
View File
@@ -7,8 +7,10 @@ extern "C" {
#include "h5core/h5_core.h"
#include "H5.h"
#include "H5_attribs.h"
#include "H5Part.h"
#include "H5Block.h"
#include "H5Block_readwrite.h"
#include "H5Fed.h"
#ifdef __cplusplus
+89 -33
View File
@@ -1,15 +1,70 @@
#ifndef __H5B_MODEL_H
#define __H5B_MODEL_H
h5_err_t
h5bpriv_release_hyperslab (
h5_file_t *const f /*!< IN: file handle */
);
h5_err_t
h5bpriv_open_block_group (
h5_file_t *const f /*!< IN: file handle */
);
h5_err_t
h5bpriv_have_field_group (
h5_file_t *const f, /*!< IN: file handle */
const char *name
);
h5_err_t
h5bpriv_open_field_group (
h5_file_t *const f, /*!< IN: file handle */
const char *name
);
h5_err_t
h5bpriv_create_field_group (
h5_file_t *const f, /*!< IN: file handle */
const char *name /*!< IN: name of field group to create */
);
h5_int64_t
h5b_3d_has_view (
h5_file_t *const f /*!< IN: File handle */
);
h5_err_t
h5b_3d_set_view (
h5_file_t *const f, /*!< IN: File handle */
const h5_size_t i_start, /*!< IN: start index of \c i */
const h5_size_t i_end, /*!< IN: end index of \c i */
const h5_size_t j_start, /*!< IN: start index of \c j */
const h5_size_t j_end, /*!< IN: end index of \c j */
const h5_size_t j_end, /*!< IN: end index of \c j */
const h5_size_t k_start, /*!< IN: start index of \c k */
const h5_size_t k_end /*!< IN: end index of \c k */
const h5_size_t k_end /*!< IN: end index of \c k */
);
h5_err_t
h5b_3d_get_view (
h5_file_t *const f, /*!< IN: File handle */
h5_size_t *i_start, /*!< OUT: start index of \c i */
h5_size_t *i_end, /*!< OUT: end index of \c i */
h5_size_t *j_start, /*!< OUT: start index of \c j */
h5_size_t *j_end, /*!< OUT: end index of \c j */
h5_size_t *k_start, /*!< OUT: start index of \c k */
h5_size_t *k_end /*!< OUT: end index of \c k */
);
h5_err_t
h5b_3d_get_reduced_view (
h5_file_t *const f, /*!< IN: File handle */
h5_size_t *i_start, /*!< OUT: start index of \c i */
h5_size_t *i_end, /*!< OUT: end index of \c i */
h5_size_t *j_start, /*!< OUT: start index of \c j */
h5_size_t *j_end, /*!< OUT: end index of \c j */
h5_size_t *k_start, /*!< OUT: start index of \c k */
h5_size_t *k_end /*!< OUT: end index of \c k */
);
h5_err_t
@@ -24,45 +79,46 @@ h5_err_t
h5b_3d_get_chunk (
h5_file_t *const f, /*!< IN: File handle */
const char *field_name, /*!< IN: name of dataset */
h5_size_t *dims /*!< OUT: array containing the chunk dimensions */
h5_size_t *dims /*!< OUT: array containing the chunk dimensions */
);
h5_err_t
h5b_3d_get_view (
h5_file_t *const f, /*!< IN: File handle */
const int proc, /*!< IN: Processor to get partition from */
h5_size_t *i_start, /*!< OUT: start index of \c i */
h5_size_t *i_end, /*!< OUT: end index of \c i */
h5_size_t *j_start, /*!< OUT: start index of \c j */
h5_size_t *j_end, /*!< OUT: end index of \c j */
h5_size_t *k_start, /*!< OUT: start index of \c k */
h5_size_t *k_end /*!< OUT: end index of \c k */
);
h5_err_t
h5b_3d_get_reduced_view (
h5_file_t *const f, /*!< IN: File handle */
const int proc, /*!< IN: Processor to get partition from */
h5_size_t *i_start, /*!< OUT: start index of \c i */
h5_size_t *i_end, /*!< OUT: end index of \c i */
h5_size_t *j_start, /*!< OUT: start index of \c j */
h5_size_t *j_end, /*!< OUT: end index of \c j */
h5_size_t *k_start, /*!< OUT: start index of \c k */
h5_size_t *k_end /*!< OUT: end index of \c k */
);
int
h5b_3d_get_proc (
h5b_3d_set_grid (
h5_file_t *const f, /*!< IN: File handle */
const h5_int64_t i, /*!< IN: \c i coordinate */
const h5_int64_t j, /*!< IN: \c j coordinate */
const h5_int64_t k /*!< IN: \c k coordinate */
const h5_size_t i, /*!< IN: dimension in \c i */
const h5_size_t j, /*!< IN: dimension in \c j */
const h5_size_t k /*!< IN: dimension in \c k */
);
h5_err_t
h5b_3d_get_grid_coords (
h5_file_t *const f, /*!< IN: File handle */
const int proc, /*!< IN: MPI processor */
h5_int64_t *i, /*!< OUT: index in \c i */
h5_int64_t *j, /*!< OUT: index in \c j */
h5_int64_t *k /*!< OUT: index in \c k */
);
h5_err_t
h5b_3d_set_dims (
h5_file_t *const f, /*!< IN: File handle */
const h5_size_t i, /*!< IN: dimension in \c i */
const h5_size_t j, /*!< IN: dimension in \c j */
const h5_size_t k /*!< IN: dimension in \c k */
);
h5_err_t
h5b_3d_set_halo (
h5_file_t *const f, /*!< IN: File handle */
const h5_size_t i, /*!< IN: radius in \c i */
const h5_size_t j, /*!< IN: radius in \c j */
const h5_size_t k /*!< IN: radius in \c k */
);
h5_ssize_t
h5b_get_num_fields (
h5_file_t *const f /*!< IN: File handle */
);
);
h5_err_t
h5b_get_field_info_by_name (
@@ -86,5 +142,5 @@ h5b_get_field_info (
h5_int64_t *type /*!< OUT: datatype */
);
#endif
#endif