diff --git a/src/C/H5.c b/src/C/H5.c index b29d862..1e6d32b 100644 --- a/src/C/H5.c +++ b/src/C/H5.c @@ -50,7 +50,9 @@ H5OpenFile ( h5_int32_t flags, /*!< file open flags */ MPI_Comm comm /*!< MPI communicator */ ) { - H5_API_ENTER (h5_file_p); + H5_API_ENTER2 (h5_file_p, + "filename=\"%s\", flags=%d, ...", + filename, flags); H5_API_RETURN (h5_open_file (filename, flags, comm)); } @@ -65,7 +67,7 @@ h5_err_t H5CloseFile ( h5_file_t* const f /*!< file handle */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER1 (h5_err_t, "f=0x%p", f); H5_API_RETURN (h5_close_file (f)); } @@ -80,7 +82,7 @@ h5_err_t H5CheckFile ( h5_file_t* const f /*!< file handle */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER1 (h5_err_t, "f=0x%p", f); H5_API_RETURN (h5_check_filehandle (f)); } @@ -100,7 +102,9 @@ H5SetStepNameFormat ( const char* name, /*!< Prefix */ const h5_int64_t width /*!< Width of the number */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER3 (h5_err_t, + "f=0x%p, name=\"%s\", width=%lld", + f, name, width); H5_API_RETURN (h5_set_stepname_fmt (f, name, width)); } @@ -119,7 +123,9 @@ H5GetStepNameFormat ( const h5_size_t l_name, /*!< length of buffer name */ int* width /*!< OUT: Width of the number */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER4 (h5_err_t, + "f=0x%p, name=0x%p, l_name=%llu, width=0x%p", + f, name, l_name, width); H5_API_RETURN (h5_get_stepname_fmt (f, name, l_name, width)); } @@ -135,8 +141,7 @@ H5SetStep ( h5_file_t* const f, /*!< [in] Handle to open file */ const h5_id_t step /*!< [in] Step to set. */ ) { - - H5_API_ENTER (h5_err_t); + H5_API_ENTER2 (h5_err_t, "f=0x%p, step=%llu", f, step); H5_API_RETURN (h5_set_step (f, step)); } @@ -151,7 +156,7 @@ h5_id_t H5GetStep ( h5_file_t* const f /*!< Handle to open file */ ) { - H5_API_ENTER (h5_id_t); + H5_API_ENTER1 (h5_err_t, "f=0x%p", f); H5_API_RETURN (h5_get_step (f)); } @@ -169,7 +174,7 @@ int H5GetNumProcs ( h5_file_t* const f ) { - H5_API_ENTER (int); + H5_API_ENTER1 (h5_err_t, "f=0x%p", f); H5_API_RETURN (h5_get_num_procs(f)); } @@ -190,7 +195,7 @@ h5_ssize_t H5GetNumSteps ( h5_file_t* const f ) { - H5_API_ENTER (h5_ssize_t); + H5_API_ENTER1 (h5_err_t, "f=0x%p", f); H5_API_RETURN (h5_get_num_steps(f)); } @@ -209,7 +214,10 @@ H5HasStep ( h5_file_t* const f, h5_id_t stepno ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER2 (h5_err_t, + "f=0x%p, stepno=%lld", + f, + (long long)stepno); H5_API_RETURN (h5_has_step (f, stepno)); } @@ -224,7 +232,7 @@ h5_err_t H5StartTraverseSteps ( h5_file_t* const f /*!< Handle to open file */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER1 (h5_err_t, "f=0x%p", f); H5_API_RETURN (h5_start_traverse_steps (f)); } @@ -239,7 +247,7 @@ h5_err_t H5TraverseSteps ( h5_file_t* const f /*!< Handle to open file */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER1 (h5_err_t, "f=0x%p", f); H5_API_RETURN (h5_traverse_steps (f)); } @@ -265,7 +273,7 @@ H5SetThrottle ( h5_file_t* f, int factor ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER2 (h5_err_t, "f=0x%p, factor=%d", f, factor); H5_API_RETURN (h5_set_throttle(f, factor)); } #endif // PARALLEL_IO @@ -281,7 +289,7 @@ h5_err_t H5SetVerbosityLevel ( const h5_id_t level ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER1 (h5_err_t, "level=%lld", (long long) level); H5_API_RETURN (h5_set_debuglevel (level)); } @@ -296,7 +304,7 @@ h5_err_t H5SetErrorHandler ( h5_errorhandler_t handler ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER1 (h5_err_t, "handler=0x%p", handler); H5_API_RETURN (h5_set_errorhandler (handler)); } @@ -311,7 +319,7 @@ h5_errorhandler_t H5GetErrorHandler ( void ) { - H5_API_ENTER (h5_errorhandler_t); + H5_API_ENTER0 (h5_errorhandler_t); H5_API_RETURN (h5_get_errorhandler()); } diff --git a/src/C/H5Block.c b/src/C/H5Block.c index efd2950..98fa0d4 100644 --- a/src/C/H5Block.c +++ b/src/C/H5Block.c @@ -72,7 +72,7 @@ h5_int64_t H5Block3dHasView ( h5_file_t *const f /*!< IN: File handle */ ) { - H5_API_ENTER (h5_int64_t); + H5_API_ENTER1 (h5_int64_t, "f=0x%p", f); H5_API_RETURN (h5b_3d_has_view (f)); } @@ -99,7 +99,15 @@ H5Block3dSetView ( const h5_int64_t k_start, /*!< IN: start index of \c k */ const h5_int64_t k_end /*!< IN: end index of \c k */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER7 (h5_err_t, + "f=0X%p, " + "i_start=%llu, i_end=%llu, " + "j_start=%llu, j_end=%llu, " + "k_start=%llu, k_end=%llu", + f, + i_start, i_end, + j_start, j_end, + k_start, k_end); H5_API_RETURN (h5b_3d_set_view(f, i_start, i_end, j_start, j_end, k_start, k_end)); } @@ -120,7 +128,15 @@ H5Block3dGetView ( h5_size_t *k_start, /*!< OUT: start index of \c k */ h5_size_t *k_end /*!< OUT: end index of \c k */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER7 (h5_err_t, + "f=0X%p, " + "i_start=0x%p, i_end=0x%p, " + "j_start=0x%p, j_end=0x%p, " + "k_start=0x%p, k_end=0x%p", + f, + i_start, i_end, + j_start, j_end, + k_start, k_end); H5_API_RETURN (h5b_3d_get_view (f, i_start, i_end, j_start, j_end, k_start, k_end)); } @@ -141,7 +157,15 @@ H5Block3dGetReducedView ( h5_size_t *const k_start, /*!< OUT: start index of \c j */ h5_size_t *const k_end /*!< OUT: end index of \c j */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER7 (h5_err_t, + "f=0X%p, " + "i_start=0x%p, i_end=0x%p, " + "j_start=0x%p, j_end=0x%p, " + "k_start=0x%p, k_end=0x%p", + f, + i_start, i_end, + j_start, j_end, + k_start, k_end); H5_API_RETURN (h5b_3d_get_reduced_view(f, i_start, i_end, j_start, j_end, k_start, k_end)); } @@ -160,7 +184,9 @@ H5Block3dSetChunk ( const h5_size_t j, /*!< IN: size of \c j */ const h5_size_t k /*!< IN: size of \c k */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER4 (h5_err_t, + "f=0x%p, i=%llu, j=%llu, k=%llu", + f, i, j, k); H5_API_RETURN (h5b_3d_set_chunk(f, i, j, k)); } @@ -179,7 +205,9 @@ H5Block3dGetChunk ( h5_size_t *const j, /*!< OUT: size of \c j */ h5_size_t *const k /*!< OUT: size of \c k */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER4 (h5_err_t, + "f=0x%p, i=0x%p, j=0x%p, k=0x%p", + f, i, j, k); H5_API_RETURN (h5b_3d_get_chunk(f, field_name, i, j, k)); } @@ -205,7 +233,9 @@ H5Block3dSetGrid ( const h5_size_t j, /*!< IN: dimension in \c j */ const h5_size_t k /*!< IN: dimension in \c k */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER4 (h5_err_t, + "f=0x%p, i=%llu, j=%llu, k=%llu", + f, i, j, k); H5_API_RETURN (h5b_3d_set_grid(f, i, j, k)); } @@ -225,7 +255,9 @@ H5Block3dGetGridCoords ( h5_int64_t *j, /*!< OUT: index in \c j */ h5_int64_t *k /*!< OUT: index in \c k */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER5 (h5_err_t, + "f=0x%p, proc=%d, i=0x%p, j=0x%p, k=0x%p", + f, proc, i, j, k); H5_API_RETURN (h5b_3d_get_grid_coords(f, proc, i, j, k)); } @@ -247,7 +279,9 @@ H5Block3dSetDims ( const h5_size_t j, /*!< IN: dimension in \c j */ const h5_size_t k /*!< IN: dimension in \c k */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER4 (h5_err_t, + "f=0x%p, i=%llu, j=%llu, k=%llu", + f, i, j, k); H5_API_RETURN (h5b_3d_set_dims(f, i, j, k)); } #endif @@ -271,7 +305,9 @@ H5Block3dSetHalo ( const h5_size_t j, /*!< IN: radius in \c j */ const h5_size_t k /*!< IN: radius in \c k */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER4 (h5_err_t, + "f=0x%p, i=%llu, j=%llu, k=%llu", + f, i, j, k); H5_API_RETURN (h5b_3d_set_halo(f, i, j, k)); } @@ -282,11 +318,11 @@ H5Block3dSetHalo ( \return \c H5_SUCCESS or error code */ -h5_size_t +h5_ssize_t H5BlockGetNumFields ( h5_file_t *const f /*!< IN: file handle */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER1 (h5_ssize_t, "f=0x%p", f); H5_API_RETURN (h5b_get_num_fields(f)); } @@ -318,7 +354,13 @@ H5BlockGetFieldInfo ( h5_size_t *elem_rank, /*!< OUT: element rank */ h5_int64_t *type /*!< OUT: datatype */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER8 (h5_err_t, + "f=0x%p, idx=%llu, " + "name=0x%p, len_name=%llu, " + "field_rank=0x%p, field_dims=0x%p, elem_rank=0x%p, type=0x%p", + f, idx, + name, len_name, + field_rank, field_dims, elem_rank, type); H5_API_RETURN ( h5b_get_field_info ( f, @@ -348,7 +390,10 @@ H5BlockGetFieldInfoByName ( h5_size_t *elem_rank, /*!< OUT: element rank */ h5_int64_t *type /*!< OUT: datatype */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER6 (h5_err_t, + "f=0x%p, name=\"%s\", " + "field_rank=0x%p, field_dims=0x%p, elem_rank=0x%p, type=0x%p", + f, name, field_rank, field_dims, elem_rank, type); H5_API_RETURN ( h5b_get_field_info_by_name ( f, @@ -374,17 +419,25 @@ H5BlockWriteFieldAttribString ( h5_file_t *const f, /*!< IN: file handle */ const char *field_name, /*!< IN: field name */ const char *attrib_name, /*!< IN: attribute name */ - const char *value /*!< IN: attribute value */ + const char *buffer /*!< IN: attribute value */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER4 (h5_err_t, + "f=%p, " + "field_name=\"%s\"" + "attrib_name=\"%s\"" + "buffer=\"%s\"", + f, + field_name, + attrib_name, + buffer); H5_API_RETURN ( h5_write_field_attrib ( f, field_name, attrib_name, H5T_NATIVE_CHAR, - value, - strlen(value) + 1)); + buffer, + strlen(buffer) + 1)); } /*! @@ -402,7 +455,15 @@ H5BlockReadFieldAttribString ( const char *attrib_name, /*!< IN: attribute name */ char *buffer /*!< OUT: attribute value */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER4 (h5_err_t, + "f=%p, " + "field_name=\"%s\"" + "attrib_name=\"%s\"" + "buffer=0x%p", + f, + field_name, + attrib_name, + buffer); H5_API_RETURN ( h5_read_field_attrib ( f, @@ -424,7 +485,9 @@ H5BlockGetNumFieldAttribs ( h5_file_t *const f, /*myproc); H5_API_RETURN (h5t_get_num_elems (f, -1)); @@ -147,11 +147,12 @@ H5FedGetNumElements ( h5_ssize_t H5FedGetNumElementsCnode ( h5_file_t* const f, - const h5_id_t cnode + const int cnode ) { - H5_API_ENTER (h5_ssize_t); + H5_API_ENTER2 (h5_ssize_t, "f=0x%p, cnode=%d", f, cnode); H5_API_RETURN (h5t_get_num_elems (f, cnode)); } + /*! Returns the number of elements present in the mesh at current level over all compute nodes. @@ -164,6 +165,6 @@ h5_ssize_t H5FedGetNumElementsTotal ( h5_file_t* const f ) { - H5_API_ENTER (h5_ssize_t); + H5_API_ENTER1 (h5_ssize_t, "f=0x%p", f); H5_API_RETURN (h5t_get_num_elems (f, -1)); } diff --git a/src/C/H5Fed_retrieve.c b/src/C/H5Fed_retrieve.c index bf01121..a379938 100644 --- a/src/C/H5Fed_retrieve.c +++ b/src/C/H5Fed_retrieve.c @@ -36,7 +36,7 @@ H5FedBeginTraverseEntities ( h5_file_t* const f, const int codim ) { - H5_API_ENTER (h5t_iterator_p); + H5_API_ENTER2 (h5t_iterator_p, "f=0x%p, codim=%d", f, codim); h5t_iterator_p iter; TRY2 (iter = h5_calloc (1, sizeof (*iter))); TRY2 (h5t_init_leaf_iterator (f, iter, codim)); @@ -48,7 +48,7 @@ H5FedBeginTraverseBoundaryFaces ( h5_file_t* const f, const int codim ) { - H5_API_ENTER (h5t_iterator_p); + H5_API_ENTER2 (h5t_iterator_p, "f=0x%p, codim=%d", f, codim); h5t_iterator_p iter; TRY2 (iter = h5_calloc (1, sizeof (*iter))); TRY2 (h5t_init_boundary_face_iterator (f, iter, codim)); @@ -70,7 +70,7 @@ H5FedTraverseEntities ( h5_file_t* const f, h5t_iterator_t* iter ) { - H5_API_ENTER (h5_loc_id_t); + H5_API_ENTER2 (h5_loc_id_t, "f=0x%p, iter=0x%p", f, iter); H5_API_RETURN (h5t_iterate_entities (f, iter)); } @@ -87,7 +87,7 @@ H5FedEndTraverseEntities ( h5_file_t* const f, h5t_iterator_t* iter ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER2 (h5_err_t, "f=0x%p, iter=0x%p", f, iter); H5_API_RETURN (h5t_release_entity_iterator (f, iter)); } @@ -107,7 +107,9 @@ H5FedGetVertexCoordsByIndex ( h5_loc_idx_t vertex_index, h5_float64_t P[3] ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER3 (h5_err_t, + "f=0x%p, vertex_index=%lld, P=0x%p", + f, (long long)vertex_index, P); H5_API_RETURN (h5t_get_vertex_coords_by_index (f, vertex_index, P)); } @@ -117,7 +119,9 @@ H5FedGetVertexCoordsByID ( h5_loc_id_t vertex_id, h5_float64_t P[3] ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER3 (h5_err_t, + "f=0x%p, vertex_id=%lld, P=0x%p", + f, (long long)vertex_id, P); H5_API_RETURN (h5t_get_vertex_coords_by_id (f, vertex_id, P)); } @@ -127,7 +131,9 @@ H5FedGetVertexIndicesOfEdge ( h5_loc_id_t entity_id, h5_loc_idx_t* vertex_indices ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER3 (h5_err_t, + "f=0x%p, entity_id=%lld, vertex_indices=0x%p", + f, (long long)entity_id, vertex_indices); H5_API_RETURN (h5t_get_vertex_indices_of_edge (f, entity_id, vertex_indices)); } @@ -137,7 +143,9 @@ H5FedGetVertexIndicesOfTriangle ( h5_loc_id_t entity_id, h5_loc_idx_t* vertex_indices ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER3 (h5_err_t, + "f=0x%p, entity_id=%lld, vertex_indices=0x%p", + f, (long long)entity_id, vertex_indices); H5_API_RETURN (h5t_get_vertex_indices_of_triangle (f, entity_id, vertex_indices)); } @@ -147,7 +155,9 @@ H5FedGetVertexIndicesOfTet ( h5_loc_id_t entity_id, h5_loc_idx_t* vertex_indices ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER3 (h5_err_t, + "f=0x%p, entity_id=%lld, vertex_indices=0x%p", + f, (long long)entity_id, vertex_indices); H5_API_RETURN (h5t_get_vertex_indices_of_tet (f, entity_id, vertex_indices)); } @@ -157,7 +167,9 @@ H5FedGetVertexIndicesOfEntity ( h5_loc_id_t entity_id, h5_loc_idx_t* vertex_indices ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER3 (h5_err_t, + "f=0x%p, entity_id=%lld, vertex_indices=0x%p", + f, (long long)entity_id, vertex_indices); H5_API_RETURN (h5t_get_vertex_indices_of_entity (f, entity_id, vertex_indices)); } diff --git a/src/C/H5Fed_store.c b/src/C/H5Fed_store.c index 57547aa..ffd8b8a 100644 --- a/src/C/H5Fed_store.c +++ b/src/C/H5Fed_store.c @@ -22,7 +22,7 @@ H5FedAddMesh ( h5_file_t* const f, const h5_oid_t mesh_type_id ) { - H5_API_ENTER (h5_id_t); + H5_API_ENTER2 (h5_id_t, "f=0x%p, mesh_type_id=%u", f, mesh_type_id); H5_API_RETURN (h5t_add_mesh (f, mesh_type_id)); } @@ -50,7 +50,7 @@ h5t_lvl_idx_t H5FedAddLevel ( h5_file_t* const f ) { - H5_API_ENTER (h5t_lvl_idx_t); + H5_API_ENTER1 (h5t_lvl_idx_t, "f=0x%p", f); H5_API_RETURN (h5t_add_level (f)); } @@ -59,7 +59,9 @@ H5FedBeginStoreVertices ( h5_file_t* const f, const h5_size_t num ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER2 (h5_err_t, + "f=0x%p, num=%llu", + f, (long long unsigned)num); H5_API_RETURN (h5t_begin_store_vertices (f, num)); } @@ -78,7 +80,9 @@ H5FedStoreVertex ( const h5_glb_id_t vertex_id, /*!< id from mesher or -1 */ const h5_float64_t P[3] /*!< coordinates */ ) { - H5_API_ENTER (h5_loc_idx_t); + H5_API_ENTER3 (h5_loc_idx_t, + "f=0x%p, vertex_id=%lld, P=0x%p", + f, (long long)vertex_id, P); if (h5t_get_level (f) != 0) { H5_API_LEAVE ( h5_error ( @@ -92,7 +96,7 @@ h5_err_t H5FedEndStoreVertices ( h5_file_t* const f ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER1 (h5_err_t, "f=0x%p", f); H5_API_RETURN (h5t_end_store_vertices (f)); } @@ -101,7 +105,9 @@ H5FedBeginStoreElements ( h5_file_t* const f, const h5_size_t num ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER2 (h5_err_t, + "f=0x%p, num=%llu", + f, (long long unsigned)num); H5_API_RETURN (h5t_begin_store_elems (f, num)); } @@ -124,7 +130,7 @@ H5FedStoreElement ( h5_file_t* const f, /*!< file handle */ const h5_loc_idx_t local_vids[] /*!< tuple with vertex id's */ ) { - H5_API_ENTER (h5_loc_idx_t); + H5_API_ENTER2 (h5_loc_idx_t, "f=0x%p, local_vids=0x%p", f, local_vids); if (h5t_get_level (f) != 0) { H5_API_LEAVE ( h5_error ( @@ -138,7 +144,7 @@ h5_err_t H5FedEndStoreElements ( h5_file_t* const f ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER1 (h5_err_t, "f=0x%p", f); H5_API_RETURN (h5t_end_store_elems (f)); } @@ -146,7 +152,7 @@ h5_err_t H5FedBeginRefineElements ( h5_file_t* const f ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER1 (h5_err_t, "f=0x%p", f); H5_API_RETURN (h5t_begin_refine_elems (f)); } @@ -155,7 +161,9 @@ H5FedRefineElement ( h5_file_t* const f, /*!< file handle */ const h5_loc_id_t local_eid /*!< local element id */ ) { - H5_API_ENTER (h5_loc_idx_t); + H5_API_ENTER2 (h5_loc_idx_t, + "f=0x%p, local_eid=%lld", + f, (long long)local_eid); H5_API_RETURN (h5t_mark_entity (f, local_eid)); } @@ -163,6 +171,6 @@ h5_err_t H5FedEndRefineElements ( h5_file_t* const f ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER1 (h5_err_t, "f=0x%p", f); H5_API_RETURN (h5t_end_refine_elems (f)); } diff --git a/src/C/H5Fed_tags.c b/src/C/H5Fed_tags.c index 636df2d..17b5524 100644 --- a/src/C/H5Fed_tags.c +++ b/src/C/H5Fed_tags.c @@ -29,7 +29,8 @@ H5FedAddMTagset ( char* name, h5_id_t type ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER3 (h5_err_t, "f=0x%p, name=\"%s\", type=%lld", + f, name, (long long)type); H5_API_RETURN (h5t_add_mtagset (f, name, type)); } @@ -46,7 +47,7 @@ H5FedRemoveMTagset ( h5_file_t* const f, char name[] ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER2 (h5_err_t, "f=0x%p, name=\"%s\"", f, name); H5_API_RETURN (h5t_remove_mtagset (f, name)); } @@ -63,7 +64,7 @@ H5FedGetMTagsets ( h5_file_t* const f, char** names[] ) { - H5_API_ENTER (h5_ssize_t); + H5_API_ENTER2 (h5_ssize_t, "f=0x%p, names=0x%p", f, names); H5_API_RETURN (h5t_get_mtagsets (f, names)); } @@ -80,7 +81,7 @@ H5FedGetTypeOfMTagset ( h5_file_t* const f, char name[] ) { - H5_API_ENTER (h5_id_t); + H5_API_ENTER2 (h5_err_t, "f=0x%p, name=\"%s\"", f, name); H5_API_RETURN (h5t_get_mtagset_type_by_name (f, name)); } @@ -100,11 +101,13 @@ H5FedSetMTag ( h5_file_t* const f, char name[], h5_loc_id_t id, - const size_t dims, - void* val + const size_t dim, + void* buffer ) { - H5_API_ENTER (h5_err_t); - H5_API_RETURN (h5t_set_mtag_by_name (f, name, id, dims, val)); + H5_API_ENTER5 (h5_err_t, + "f=0x%p, name=\"%s\", id=%lld, dim=%lld, val=0x%p", + f, name, (long long)id, (long long)dim, buffer); + H5_API_RETURN (h5t_set_mtag_by_name (f, name, id, dim, buffer)); } /*! @@ -124,10 +127,12 @@ H5FedGetMTag ( const char name[], const h5_loc_id_t id, size_t* dim, - void* vals + void* buffer ) { - H5_API_ENTER (h5_err_t); - H5_API_RETURN (h5t_get_mtag_by_name (f, name, id, dim, vals)); + H5_API_ENTER5 (h5_err_t, + "f=0x%p, name=\"%s\", id=%lld, dim=0x%p, val=0x%p", + f, name, (long long)id, dim, buffer); + H5_API_RETURN (h5t_get_mtag_by_name (f, name, id, dim, buffer)); } /*! @@ -143,6 +148,7 @@ H5FedRemoveMTag ( const char name[], const h5_loc_id_t id ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER3 (h5_err_t, "f=0x%p, name=\"%s\", id=%lld", + f, name, (long long)id); H5_API_RETURN (h5t_remove_mtag_by_name (f, name, id)); } diff --git a/src/C/H5Part.c b/src/C/H5Part.c index 76f6e87..4ad6ebe 100644 --- a/src/C/H5Part.c +++ b/src/C/H5Part.c @@ -49,7 +49,9 @@ H5PartSetNumParticles ( h5_file_t *f, /*!< [in] Handle to open file */ h5_size_t nparticles /*!< [in] Number of particles */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER2 (h5_err_t, + "f=0x%p, nparticles=%llu", + f, (long long unsigned)nparticles); h5_size_t stride = 1; H5_API_RETURN (h5u_set_num_particles(f, nparticles, stride)); } @@ -87,7 +89,10 @@ H5PartSetNumParticlesStrided ( h5_size_t nparticles, /*!< [in] Number of particles */ h5_size_t stride /*!< [in] Stride value (e.g. number of fields in the particle array) */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER3 (h5_err_t, + "f=0x%p, nparticles=%llu, stride=%llu", + f, (long long unsigned)nparticles, + (long long unsigned)stride); H5_API_RETURN (h5u_set_num_particles (f, nparticles, stride)); } @@ -109,7 +114,9 @@ H5PartSetChunk ( h5_file_t *f, h5_size_t size ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER2 (h5_err_t, + "f=0x%p, size=%llu", + f, (long long unsigned)size); H5_API_RETURN (h5u_set_chunk (f, size)); } @@ -145,7 +152,7 @@ H5PartWriteDataFloat64 ( const char *name, /*!< [in] Name to associate array with */ const h5_float64_t *data /*!< [in] Array to commit to disk */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER3 (h5_err_t, "f=0x%p, name=\"%s\", date=0x%p", f,name,data); H5_API_RETURN (h5u_write_data (f, name, (void*)data, H5T_NATIVE_DOUBLE)); } @@ -181,7 +188,7 @@ H5PartWriteDataFloat32 ( const char *name, /*!< [in] Name to associate array with */ const h5_float32_t *data /*!< [in] Array to commit to disk */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER3 (h5_err_t, "f=0x%p, name=\"%s\", date=0x%p", f,name,data); h5_err_t h5err = h5u_write_data( f, name, (void*)data, H5T_NATIVE_FLOAT ); H5_API_RETURN (h5err); } @@ -218,7 +225,7 @@ H5PartWriteDataInt64 ( const char *name, /*!< [in] Name to associate array with */ const h5_int64_t *data /*!< [in] Array to commit to disk */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER3 (h5_err_t, "f=0x%p, name=\"%s\", date=0x%p", f,name,data); H5_API_RETURN (h5u_write_data (f, name, (void*)data, H5T_NATIVE_INT64)); } @@ -254,7 +261,7 @@ H5PartWriteDataInt32 ( const char *name, /*!< [in] Name to associate array with */ const h5_int32_t *data /*!< [in] Array to commit to disk */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER3 (h5_err_t, "f=0x%p, name=\"%s\", date=0x%p", f,name,data); H5_API_RETURN (h5u_write_data (f, name, (void*)data, H5T_NATIVE_INT32)); } @@ -276,7 +283,7 @@ H5PartReadDataFloat64 ( const char *name, /*!< [in] Name to associate dataset with */ h5_float64_t *data /*!< [out] Array of data */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER3 (h5_err_t, "f=0x%p, name=\"%s\", date=0x%p", f,name,data); H5_API_RETURN (h5u_read_data (f, name, data, H5T_NATIVE_DOUBLE)); } @@ -298,7 +305,7 @@ H5PartReadDataFloat32 ( const char *name, /*!< [in] Name to associate dataset with */ h5_float32_t *data /*!< [out] Array of data */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER3 (h5_err_t, "f=0x%p, name=\"%s\", date=0x%p", f,name,data); H5_API_RETURN (h5u_read_data (f, name, data, H5T_NATIVE_FLOAT)); } @@ -320,7 +327,7 @@ H5PartReadDataInt64 ( const char *name, /*!< [in] Name to associate dataset with */ h5_int64_t *data /*!< [out] Array of data */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER3 (h5_err_t, "f=0x%p, name=\"%s\", date=0x%p", f,name,data); H5_API_RETURN (h5u_read_data (f, name, data, H5T_NATIVE_INT64)); } @@ -342,7 +349,7 @@ H5PartReadDataInt32 ( const char *name, /*!< [in] Name to associate dataset with */ h5_int32_t *data /*!< [out] Array of data */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER3 (h5_err_t, "f=0x%p, name=\"%s\", date=0x%p", f,name,data); H5_API_RETURN (h5u_read_data (f, name, data, H5T_NATIVE_INT32)); } @@ -358,7 +365,7 @@ h5_ssize_t H5PartGetNumDatasets ( h5_file_t *f /*!< [in] Handle to open file */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER1 (h5_err_t, "f=0x%p", f); H5_API_RETURN (h5u_get_num_datasets(f)); } @@ -379,7 +386,13 @@ H5PartGetDatasetName ( char *name, /*!< [out] Name of dataset */ const h5_size_t len /*!< [in] Size of buffer \c name */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER4 (h5_err_t, + "f=0x%p, " + "idx=%llu, " + "name=\"%s\", len=%llu, ", + f, + idx, + name, len); H5_API_RETURN (h5u_get_dataset_info(f, idx, name, len, NULL, NULL)); } @@ -408,7 +421,15 @@ H5PartGetDatasetInfo ( h5_int64_t *type, /*!< [out] Type of data in dataset */ h5_size_t *nelem /*!< [out] Number of elements. */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER6 (h5_int64_t, + "f=0x%p, " + "idx=%llu, " + "dataset_name=\"%s\", len_dataset_name=%llu, " + "type=0x%p, nelem=0x%p", + f, + idx, + dataset_name, len_dataset_name, + type, nelem); H5_API_RETURN (h5u_get_dataset_info(f, idx, dataset_name, len_dataset_name, type, nelem)); } @@ -437,7 +458,7 @@ h5_ssize_t H5PartGetNumParticles ( h5_file_t *f /*!< [in] Handle to open file */ ) { - H5_API_ENTER (h5_ssize_t); + H5_API_ENTER1 (h5_ssize_t, "f=0x%p", f); CHECK_FILEHANDLE( f ); H5_API_RETURN (h5u_get_num_particles (f)); } @@ -453,7 +474,7 @@ h5_err_t H5PartResetView ( h5_file_t *f /*!< [in] Handle to open file */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER1 (h5_ssize_t, "f=0x%p", f); H5_API_RETURN (h5u_reset_view (f)); } @@ -470,7 +491,7 @@ h5_err_t H5PartHasView ( h5_file_t *f /*!< [in] Handle to open file */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER1 (h5_ssize_t, "f=0x%p", f); H5_API_RETURN (h5u_has_view (f)); } @@ -501,7 +522,9 @@ H5PartSetView ( h5_int64_t start, /*!< [in] Start particle */ h5_int64_t end /*!< [in] End particle */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER3 (h5_err_t, + "f=0x%p, start=%lld, end=%lld", + f, start, end); H5_API_RETURN (h5u_set_view (f, start, end)); } @@ -529,7 +552,9 @@ H5PartSetViewIndices ( const h5_id_t *indices, /*!< [in] List of indices */ h5_size_t nelems /*!< [in] Size of list */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER3 (h5_err_t, + "f=0x%p, indices=0x%p, nelems=%llu", + f, indices, nelems); H5_API_RETURN (h5u_set_view_indices (f, indices, nelems)); } @@ -549,7 +574,9 @@ H5PartGetView ( h5_int64_t *start, /*!< [out] Start particle */ h5_int64_t *end /*!< [out] End particle */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER3 (h5_err_t, + "f=0x%p, start=0x%p, end=0x%p", + f, start, end); H5_API_RETURN (h5u_get_view (f, start, end)); } @@ -567,7 +594,7 @@ h5_err_t H5PartSetCanonicalView ( h5_file_t *f /*!< [in] Handle to open file */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER1 (h5_err_t, "f=0x%p", f); H5_API_RETURN (h5u_set_canonical_view (f)); } diff --git a/src/C/H5_attachments.c b/src/C/H5_attachments.c index 2215a0a..e1bfdc1 100644 --- a/src/C/H5_attachments.c +++ b/src/C/H5_attachments.c @@ -5,7 +5,7 @@ h5_ssize_t H5GetNumAttachments ( h5_file_t* const f /*!< [in] Handle to open file */ ) { - H5_API_ENTER (h5_ssize_t); + H5_API_ENTER1 (h5_ssize_t, "f=0x%p", f); H5_API_RETURN (h5_get_num_attachments (f)); } diff --git a/src/C/H5_attribs.c b/src/C/H5_attribs.c index fca426c..c11042f 100644 --- a/src/C/H5_attribs.c +++ b/src/C/H5_attribs.c @@ -20,7 +20,13 @@ H5WriteFileAttribString ( const char *name, /*!< [in] Name of attribute to create */ const char *value /*!< [in] Value of attribute */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER3 (h5_err_t, + "f=%p, " + "name=\"%s\"" + "value=\"%s\"", + f, + name, + value); H5_API_RETURN (h5_write_attrib ( f, H5_ATTRIB_FILE, @@ -44,7 +50,13 @@ H5WriteStepAttribString ( const char *name, /*!< [in] Name of attribute to create */ const char *value /*!< [in] Value of attribute */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER3 (h5_err_t, + "f=%p, " + "name=\"%s\"" + "value=\"%s\"", + f, + name, + value); H5_API_RETURN (h5_write_attrib ( f, H5_ATTRIB_STEP, @@ -69,7 +81,15 @@ H5WriteFileAttribFloat32 ( const h5_float32_t *values, /*!< [in] Values of attribute */ const h5_size_t nelems /*!< [in] Number of values */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER4 (h5_err_t, + "f=%p, " + "name=\"%s\"" + "values=0x%p, " + "nelems=%llu", + f, + name, + values, + (long long unsigned)nelems); H5_API_RETURN (h5_write_attrib ( f, H5_ATTRIB_FILE, @@ -94,7 +114,15 @@ H5WriteStepAttribFloat32 ( const h5_float32_t *values, /*!< [in] Values of attribute */ const h5_size_t nelems /*!< [in] Number of values */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER4 (h5_err_t, + "f=%p, " + "name=\"%s\"" + "values=0x%p, " + "nelems=%llu", + f, + name, + values, + (long long unsigned)nelems); H5_API_RETURN (h5_write_attrib ( f, H5_ATTRIB_STEP, @@ -119,7 +147,15 @@ H5WriteFileAttribFloat64 ( const h5_float64_t *values, /*!< [in] Values of attribute */ const h5_size_t nelems /*!< [in] Number of values */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER4 (h5_err_t, + "f=%p, " + "name=\"%s\"" + "values=0x%p, " + "nelems=%llu", + f, + name, + values, + (long long unsigned)nelems); H5_API_RETURN (h5_write_attrib ( f, H5_ATTRIB_FILE, @@ -144,7 +180,15 @@ H5WriteStepAttribFloat64 ( const h5_float64_t *values, /*!< [in] Values of attribute */ const h5_size_t nelems /*!< [in] Number of values */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER4 (h5_err_t, + "f=%p, " + "name=\"%s\"" + "values=0x%p, " + "nelems=%llu", + f, + name, + values, + (long long unsigned)nelems); H5_API_RETURN (h5_write_attrib ( f, H5_ATTRIB_STEP, @@ -169,7 +213,15 @@ H5WriteFileAttribInt32 ( const h5_int32_t *values, /*!< [in] Values of attribute */ const h5_size_t nelems /*!< [in] Number of values */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER4 (h5_err_t, + "f=%p, " + "name=\"%s\"" + "values=0x%p, " + "nelems=%llu", + f, + name, + values, + (long long unsigned)nelems); H5_API_RETURN (h5_write_attrib ( f, H5_ATTRIB_FILE, @@ -194,7 +246,15 @@ H5WriteStepAttribInt32 ( const h5_int32_t *values, /*!< [in] Values of attribute */ const h5_size_t nelems /*!< [in] Number of values */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER4 (h5_err_t, + "f=%p, " + "name=\"%s\"" + "values=0x%p, " + "nelems=%llu", + f, + name, + values, + (long long unsigned)nelems); H5_API_RETURN (h5_write_attrib ( f, H5_ATTRIB_STEP, @@ -219,7 +279,15 @@ H5WriteFileAttribInt64 ( const h5_int64_t *values, /*!< [in] Values of attribute */ const h5_size_t nelems /*!< [in] Number of values */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER4 (h5_err_t, + "f=%p, " + "name=\"%s\"" + "values=0x%p, " + "nelems=%llu", + f, + name, + values, + (long long unsigned)nelems); H5_API_RETURN (h5_write_attrib ( f, H5_ATTRIB_FILE, @@ -244,7 +312,15 @@ H5WriteStepAttribInt64 ( const h5_int64_t *values, /*!< [in] Values of attribute */ const h5_size_t nelems /*!< [in] Number of values */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER4 (h5_err_t, + "f=%p, " + "name=\"%s\"" + "values=0x%p, " + "nelems=%llu", + f, + name, + values, + (long long unsigned)nelems); H5_API_RETURN (h5_write_attrib ( f, H5_ATTRIB_STEP, @@ -270,7 +346,13 @@ H5ReadFileAttribString ( const char *name, /*!< [in] Name of attribute to create */ char *buffer /*!< [out] Value of attribute */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER3 (h5_err_t, + "f=%p, " + "name=\"%s\"" + "value=\"%s\"", + f, + name, + buffer); H5_API_RETURN (h5_read_attrib ( f, H5_ATTRIB_FILE, @@ -293,7 +375,13 @@ H5ReadStepAttribString ( const char *name, /*!< [in] Name of attribute to create */ char *buffer /*!< [out] Value of attribute */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER3 (h5_err_t, + "f=%p, " + "name=\"%s\"" + "value=\"%s\"", + f, + name, + buffer); H5_API_RETURN (h5_read_attrib ( f, H5_ATTRIB_STEP, @@ -316,7 +404,13 @@ H5ReadFileAttribInt32 ( const char *name, /*!< [in] Name of attribute to create */ h5_int32_t *buffer /*!< [out] Values of attribute */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER3 (h5_err_t, + "f=%p, " + "name=\"%s\"" + "buffer=0x%p", + f, + name, + buffer); H5_API_RETURN (h5_read_attrib ( f, H5_ATTRIB_FILE, @@ -339,7 +433,13 @@ H5ReadStepAttribInt32 ( const char *name, /*!< [in] Name of attribute to create */ h5_int32_t *buffer /*!< [out] Values of attribute */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER3 (h5_err_t, + "f=%p, " + "name=\"%s\"" + "buffer=0x%p", + f, + name, + buffer); H5_API_RETURN (h5_read_attrib ( f, H5_ATTRIB_STEP, @@ -362,7 +462,13 @@ H5ReadFileAttribInt64 ( const char *name, /*!< [in] Name of attribute to create */ h5_int64_t *buffer /*!< [out] Values of attribute */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER3 (h5_err_t, + "f=%p, " + "name=\"%s\"" + "buffer=0x%p", + f, + name, + buffer); H5_API_RETURN (h5_read_attrib ( f, H5_ATTRIB_FILE, @@ -385,7 +491,13 @@ H5ReadStepAttribInt64 ( const char *name, /*!< [in] Name of attribute to create */ h5_int64_t *buffer /*!< [out] Values of attribute */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER3 (h5_err_t, + "f=%p, " + "name=\"%s\"" + "buffer=0x%p", + f, + name, + buffer); h5_err_t h5err = h5_read_attrib ( f, H5_ATTRIB_STEP, @@ -409,7 +521,13 @@ H5ReadFileAttribFloat32 ( const char *name, /*!< [in] Name of attribute to create */ h5_float32_t *buffer /*!< [out] Values of attribute */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER3 (h5_err_t, + "f=%p, " + "name=\"%s\"" + "buffer=0x%p", + f, + name, + buffer); H5_API_RETURN (h5_read_attrib ( f, H5_ATTRIB_FILE, @@ -432,7 +550,13 @@ H5ReadStepAttribFloat32 ( const char *name, /*!< [in] Name of attribute to create */ h5_float32_t *buffer /*!< [out] Values of attribute */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER3 (h5_err_t, + "f=%p, " + "name=\"%s\"" + "buffer=0x%p", + f, + name, + buffer); H5_API_RETURN (h5_read_attrib ( f, H5_ATTRIB_STEP, @@ -455,7 +579,13 @@ H5ReadFileAttribFloat64 ( const char *name, /*!< [in] Name of attribute to create */ h5_float64_t *buffer /*!< [out] Values of attribute */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER3 (h5_err_t, + "f=%p, " + "name=\"%s\"" + "buffer=0x%p", + f, + name, + buffer); H5_API_RETURN (h5_read_attrib ( f, H5_ATTRIB_FILE, @@ -478,7 +608,13 @@ H5ReadStepAttribFloat64 ( const char *name, /*!< [in] Name of attribute to create */ h5_float64_t *buffer /*!< [out] Values of attribute */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER3 (h5_err_t, + "f=%p, " + "name=\"%s\"" + "buffer=0x%p", + f, + name, + buffer); H5_API_RETURN (h5_read_attrib ( f, H5_ATTRIB_STEP, @@ -500,7 +636,7 @@ h5_int64_t H5GetNumFileAttribs ( h5_file_t *const f /*!< [in] Handle to open file */ ) { - H5_API_ENTER (h5_int64_t); + H5_API_ENTER1 (h5_int64_t, "f=0x%p", f); H5_API_RETURN (h5_get_num_attribs (f, H5_ATTRIB_FILE)); } @@ -515,7 +651,7 @@ h5_int64_t H5GetNumStepAttribs ( h5_file_t *const f /*!< [in] Handle to open file */ ) { - H5_API_ENTER (h5_int64_t); + H5_API_ENTER1 (h5_int64_t, "f=0x%p", f); H5_API_RETURN (h5_get_num_attribs (f, H5_ATTRIB_STEP)); } @@ -545,7 +681,16 @@ H5GetFileAttribInfo ( h5_int64_t *attrib_type, /*!< [out] Type of value. */ h5_size_t *attrib_nelem /*!< [out] Number of elements */ ) { - H5_API_ENTER (h5_int64_t); + H5_API_ENTER6 (h5_err_t, + "f=%p, " + "attrib_idx=%llu, attrib_name=%p, len_attrib_name=%llu, " + "attrib_type=%p, attrib_nelem=%p", + f, + attrib_idx, + attrib_name, + len_of_attrib_name, + attrib_type, + attrib_nelem); H5_API_RETURN (h5_get_attrib_info ( f, H5_ATTRIB_FILE, @@ -580,7 +725,16 @@ H5GetStepAttribInfo ( h5_int64_t *attrib_type, /*!< [out] Type of value. */ h5_size_t *attrib_nelem /*!< [out] Number of elements */ ) { - H5_API_ENTER (h5_err_t); + H5_API_ENTER6 (h5_err_t, + "f=%p, " + "attrib_idx=%llu, attrib_name=%p, len_attrib_name=%llu, " + "attrib_type=%p, attrib_nelem=%p", + f, + attrib_idx, + attrib_name, + len_of_attrib_name, + attrib_type, + attrib_nelem); H5_API_RETURN (h5_get_attrib_info ( f, H5_ATTRIB_STEP, diff --git a/src/h5core/h5_attach.c b/src/h5core/h5_attach.c index b4df1de..a77c7fa 100644 --- a/src/h5core/h5_attach.c +++ b/src/h5core/h5_attach.c @@ -141,7 +141,7 @@ h5_get_num_attachments ( if (group_id < 0) { H5_CORE_API_LEAVE (0); } - TRY (num = hdf5_get_num_datasets (f->file)); + TRY (num = hdf5_get_num_datasets (group_id)); TRY (hdf5_close_group (group_id)); H5_CORE_API_RETURN (num); } @@ -204,8 +204,96 @@ h5_get_attachment ( const char* const fname ) { H5_CORE_API_ENTER1 (h5_err_t, "fname=\"%s\"", fname); - UNUSED_ARGUMENT (f); - UNUSED_ARGUMENT (fname); + // allowed modes: O_RDWR, O_RDONLY; O_APPEND + // forbidden modes: O_WRONLY + if (f->mode == H5_O_WRONLY) { + H5_PRIV_FUNC_LEAVE ( + h5priv_handle_file_mode_error (f->mode)); + } + + hid_t loc_id; + TRY (loc_id = h5priv_open_group (f, f->file, H5_ATTACHMENT)); + h5_err_t exists; + TRY (exists = hdf5_link_exists (loc_id, fname)); + if (f->mode == H5_O_WRONLY) { + H5_PRIV_FUNC_LEAVE ( + h5priv_handle_file_mode_error (f->mode)); + } else if (!exists) { + H5_PRIV_FUNC_LEAVE ( + h5_error ( + H5_ERR_H5, + "Attachment \"%s\" doesn't exist", fname)); + } + + // read dataset + hid_t dataset_id, diskspace_id; + h5_ssize_t fsize; + TRY (dataset_id = hdf5_open_dataset (loc_id, fname)); + TRY (diskspace_id = hdf5_get_dataset_space (dataset_id)); + TRY (fsize = hdf5_get_npoints_of_dataspace (diskspace_id)); + + hsize_t read_length; + char* buf = NULL; + if (f->myproc == 0) { + buf = malloc (fsize); + read_length = fsize; + + } else { + buf = malloc (1); + read_length = 0; + } + + hsize_t start = 0; + TRY (hdf5_select_hyperslab_of_dataspace ( + diskspace_id, + H5S_SELECT_SET, + &start, + NULL, + &read_length, + NULL)); + + hid_t memspace_id; + hsize_t max = H5S_UNLIMITED; + TRY (memspace_id = hdf5_create_dataspace (1, &read_length, &max)); + TRY (hdf5_read_dataset (dataset_id, + H5T_NATIVE_CHAR, + memspace_id, + diskspace_id, + f->xfer_prop, + buf)); + + TRY (hdf5_close_dataspace (diskspace_id)); + TRY (hdf5_close_dataspace (memspace_id)); + TRY (hdf5_close_dataset (dataset_id)); + TRY (hdf5_close_group (loc_id)); + + // write file + if (f->myproc == 0) { + int fd; + if ((fd = open (fname, O_WRONLY|O_CREAT|O_TRUNC)) < 0) { + H5_CORE_API_LEAVE ( + h5_error ( + H5_ERR_H5, + "Error opening file \"%s\": %s", + fname, strerror(errno))); + } + if (write (fd, buf, fsize) != fsize) { + H5_CORE_API_LEAVE ( + h5_error ( + H5_ERR_H5, + "Error writing to file \"%s\": %s", + fname, strerror(errno))); + } + if (close (fd) < 0) { + H5_CORE_API_LEAVE ( + h5_error ( + H5_ERR_H5, + "Error closing file \"%s\": %s", + fname, strerror(errno))); + } + } + TRY (h5_free (buf)); + H5_CORE_API_RETURN (H5_SUCCESS); } diff --git a/src/h5core/h5_attribs.c b/src/h5core/h5_attribs.c index 7ee5555..62d7600 100644 --- a/src/h5core/h5_attribs.c +++ b/src/h5core/h5_attribs.c @@ -21,7 +21,12 @@ h5priv_read_attrib ( const hid_t attrib_type, /*!< HDF5 type of attribute */ void* const attrib_value /*!< OUT: attribute value */ ) { - H5_PRIV_API_ENTER (h5_err_t); + H5_PRIV_API_ENTER4 (h5_err_t, + "id=%d, attrib_name=\"%s\", attrib_type=%d, attrib_value=%p", + id, + attrib_name, + attrib_type, + attrib_value); hid_t attrib_id; hid_t type_id; hid_t space_id; @@ -64,7 +69,16 @@ h5_read_attrib ( const hid_t attrib_type, /*!< HDF5 type of attribute */ void* const attrib_value /*!< OUT: attribute value */ ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER5 (h5_err_t, + "f=%p mode=%d, " + "attrib_name=\"%s\", attrib_type=%d, " + "attrib_value=%p", + f, + mode, + attrib_name, + attrib_type, + attrib_value); + if (mode != H5_ATTRIB_FILE) CHECK_TIMEGROUP( f ); hid_t id; @@ -81,7 +95,14 @@ h5priv_write_attrib ( const void* attrib_value, /*!< value of attribute */ const hsize_t attrib_nelem /*!< number of elements (dimension) */ ) { - H5_PRIV_API_ENTER (h5_err_t); + H5_PRIV_API_ENTER5 (h5_err_t, + "id=%d, attrib_name=\"%s\", attrib_type=%d, " + "attrib_value=%p, attrib_nelem=%llu", + id, + attrib_name, + attrib_type, + attrib_value, + attrib_nelem); hid_t space_id; hid_t attrib_id; hid_t type_id; @@ -126,7 +147,17 @@ h5_write_attrib ( const void* attrib_value, /*!< value of attribute */ const hsize_t attrib_nelem /*!< number of elements (dimension) */ ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER6 (h5_err_t, + "f=%p mode=%d, " + "attrib_name=\"%s\", attrib_type=%d, " + "attrib_value=%p, attrib_nelem=%llu", + f, + mode, + attrib_name, + attrib_type, + attrib_value, + attrib_nelem); + if (mode != H5_ATTRIB_FILE) CHECK_TIMEGROUP( f ); CHECK_WRITABLE_MODE( f ); @@ -146,7 +177,17 @@ h5priv_get_attrib_info ( h5_int64_t* attrib_type, /*!< OUT: H5 type of attribute */ h5_size_t* attrib_nelem /*!< OUT: number of elements */ ) { - H5_PRIV_API_ENTER (h5_err_t); + H5_PRIV_API_ENTER6 (h5_err_t, + "id=%d, " + "attrib_idx=%llu, " + "attrib_name=%p, len_attrib_name=%llu, " + "attrib_type=%p, attrib_nelem=%p", + id, + attrib_idx, + attrib_name, + len_attrib_name, + attrib_type, + attrib_nelem); hid_t attrib_id; hid_t mytype; hid_t space_id; @@ -191,7 +232,17 @@ h5_get_attrib_info ( h5_int64_t* attrib_type, /*!< OUT: H5 type of attribute */ h5_size_t* attrib_nelem /*!< OUT: number of elements */ ) { - H5_CORE_API_ENTER (h5_err_t); + H5_PRIV_API_ENTER7 (h5_err_t, + "f=0x%p, mode=%d, " + "attrib_idx=%llu, attrib_name=%p, len_attrib_name=%llu, " + "attrib_type=%p, attrib_nelem=%p", + f, mode, + attrib_idx, + attrib_name, + len_attrib_name, + attrib_type, + attrib_nelem); + if (mode != H5_ATTRIB_FILE) CHECK_TIMEGROUP( f ); hid_t id; @@ -213,7 +264,8 @@ h5_get_num_attribs ( h5_file_t *const f, /*!< handle to open file */ const char mode /*!< FILE or STEP flag */ ) { - H5_CORE_API_ENTER (h5_ssize_t); + H5_CORE_API_ENTER2 (h5_ssize_t, + "f=%p, mode=%d", f, mode); if (mode != H5_ATTRIB_FILE) CHECK_TIMEGROUP( f ); hid_t id; TRY (get_hdf5_obj_id(f, mode, &id)); diff --git a/src/h5core/h5_core_private.h b/src/h5core/h5_core_private.h index dab74e9..4a334e6 100644 --- a/src/h5core/h5_core_private.h +++ b/src/h5core/h5_core_private.h @@ -1,7 +1,6 @@ #ifndef __H5_CORE_PRIVATE_H #define __H5_CORE_PRIVATE_H -#define H5_CORE_API_ENTER(type) __FUNC_ENTER(type) #define H5_CORE_API_ENTER0(type) __FUNC_ENTER(type) #define H5_CORE_API_ENTER1(type, fmt, a1) \ __FUNC_ENTER1(type, fmt, a1, H5_DEBUG_CORE_API) @@ -11,6 +10,14 @@ __FUNC_ENTER3(type, fmt, a1, a2, a3, H5_DEBUG_CORE_API) #define H5_CORE_API_ENTER4(type, fmt, a1, a2, a3, a4) \ __FUNC_ENTER4(type, fmt, a1, a2, a3, a4, H5_DEBUG_CORE_API) +#define H5_CORE_API_ENTER5(type, fmt, a1, a2, a3, a4, a5) \ + __FUNC_ENTER5(type, fmt, a1, a2, a3, a4, a5, H5_DEBUG_CORE_API) +#define H5_CORE_API_ENTER6(type, fmt, a1, a2, a3, a4, a5, a6) \ + __FUNC_ENTER6(type, fmt, a1, a2, a3, a4, a5, a6, H5_DEBUG_CORE_API) +#define H5_CORE_API_ENTER7(type, fmt, a1, a2, a3, a4, a5, a6, a7) \ + __FUNC_ENTER7(type, fmt, a1, a2, a3, a4, a5, a6, a7, H5_DEBUG_CORE_API) +#define H5_CORE_API_ENTER8(type, fmt, a1, a2, a3, a4, a5, a6, a7, a8) \ + __FUNC_ENTER8(type, fmt, a1, a2, a3, a4, a5, a6, a7, a8, H5_DEBUG_CORE_API) #define H5_CORE_API_LEAVE(value) __FUNC_LEAVE(value) #define H5_CORE_API_RETURN(value) __FUNC_RETURN(value, H5_DEBUG_CORE_API) @@ -21,6 +28,15 @@ __FUNC_ENTER2(type, fmt, a1, a2, H5_DEBUG_PRIV_API) #define H5_PRIV_API_ENTER3(type, fmt, a1, a2, a3) \ __FUNC_ENTER3(type, fmt, a1, a2, a3, H5_DEBUG_PRIV_API) +#define H5_PRIV_API_ENTER4(type, fmt, a1, a2, a3, a4) \ + __FUNC_ENTER4(type, fmt, a1, a2, a3, a4, H5_DEBUG_PRIV_API) +#define H5_PRIV_API_ENTER5(type, fmt, a1, a2, a3, a4, a5) \ + __FUNC_ENTER5(type, fmt, a1, a2, a3, a4, a5, H5_DEBUG_PRIV_API) +#define H5_PRIV_API_ENTER6(type, fmt, a1, a2, a3, a4, a5, a6) \ + __FUNC_ENTER6(type, fmt, a1, a2, a3, a4, a5, a6, H5_DEBUG_PRIV_API) +#define H5_PRIV_API_ENTER7(type, fmt, a1, a2, a3, a4, a5, a6, a7) \ + __FUNC_ENTER7(type, fmt, a1, a2, a3, a4, a5, a6, a7, H5_DEBUG_PRIV_API) + #define H5_PRIV_API_LEAVE(value) __FUNC_LEAVE(value) #define H5_PRIV_API_RETURN(value) __FUNC_RETURN(value, H5_DEBUG_PRIV_API) @@ -33,6 +49,9 @@ __FUNC_ENTER3(type, fmt,a1, a2, a3, H5_DEBUG_PRIV_FUNC) #define H5_PRIV_FUNC_ENTER4(type, fmt, a1, a2, a3, a4) \ __FUNC_ENTER4(type, fmt,a1, a2, a3, a4, H5_DEBUG_PRIV_FUNC) +#define H5_PRIV_FUNC_ENTER5(type, fmt, a1, a2, a3, a4, a5) \ + __FUNC_ENTER5(type, fmt,a1, a2, a3, a4, a5, H5_DEBUG_PRIV_FUNC) + #define H5_PRIV_FUNC_LEAVE(value) __FUNC_LEAVE(value) #define H5_PRIV_FUNC_RETURN(value) __FUNC_RETURN(value, H5_DEBUG_PRIV_FUNC) diff --git a/src/h5core/h5_hdf5.c b/src/h5core/h5_hdf5.c index c9bdd86..0cfa6be 100644 --- a/src/h5core/h5_hdf5.c +++ b/src/h5core/h5_hdf5.c @@ -1039,7 +1039,7 @@ hdf5_set_errorhandler ( if (H5Eset_auto (estack_id, func, client_data) < 0) HDF5_WRAPPER_LEAVE ( h5_error ( - H5_ERR_INIT, + H5_ERR_HDF5, "Cannot initialize H5.")); HDF5_WRAPPER_RETURN (H5_SUCCESS); } @@ -1606,13 +1606,16 @@ hdf5_get_objname ( ) { static char objname[256]; - memset ( objname, 0, sizeof(objname) ); - ssize_t size = H5Iget_name ( id, objname, sizeof(objname) ); - if ( size < 0 ) { - strcpy ( objname, "[error getting object name]" ); - } else if ( size == 0 ) { - strcpy ( objname, "[no name associated with identifier]" ); + // memset ( objname, 0, sizeof(objname) ); + if (id == -1) { + strcpy ( objname, "[none]" ); + } else { + ssize_t size = H5Iget_name ( id, objname, sizeof(objname) ); + if ( size < 0 ) { + strcpy ( objname, "[error getting object name]" ); + } else if ( size == 0 ) { + strcpy ( objname, "[no name associated with identifier]" ); + } } - return objname; } diff --git a/src/h5core/h5_maps.c b/src/h5core/h5_maps.c index 1e8e4a4..3b5b278 100644 --- a/src/h5core/h5_maps.c +++ b/src/h5core/h5_maps.c @@ -18,7 +18,9 @@ h5priv_alloc_idlist ( h5_loc_idlist_t** list, const h5_size_t size ) { - H5_PRIV_API_ENTER (h5_err_t); + H5_PRIV_API_ENTER2 (h5_err_t, + "list=0x%p, size=%llu", + list, size); TRY (*list = h5_calloc ( 1, sizeof (**list)+size*sizeof ((*list)->items[0]))); (*list)->size = size; @@ -29,7 +31,7 @@ h5_err_t h5priv_free_idlist ( h5_loc_idlist_t** list ) { - H5_PRIV_API_ENTER (h5_err_t); + H5_PRIV_API_ENTER1 (h5_err_t, "list=0x%p", list); if (*list == NULL) return H5_SUCCESS; TRY (h5_free (*list)); *list = NULL; @@ -41,7 +43,9 @@ grow_idlist ( h5_loc_idlist_t** list, size_t new_size ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_API_ENTER2 (h5_err_t, + "list=0x%p, new_size=%llu", + list, (long long unsigned)new_size); size_t num_bytes = sizeof (**list) + (new_size-1)*sizeof((*list)->items[0]); TRY (*list = h5_alloc (*list, num_bytes)); (*list)->size = new_size; @@ -57,7 +61,11 @@ h5priv_insert_idlist ( h5_loc_id_t id, h5_loc_idx_t idx ) { - H5_PRIV_API_ENTER (h5_loc_idx_t); + H5_PRIV_API_ENTER3 (h5_err_t, + "list=0x%p, id=%llu, idx=%llu", + list, + (long long unsigned)id, + (long long unsigned)idx); if (*list == NULL) { TRY (h5priv_alloc_idlist (list, 2)); } else if ((*list)->num_items == (*list)->size) { @@ -91,7 +99,9 @@ h5priv_find_idlist ( h5_loc_idlist_t* list, const h5_loc_id_t item ) { - H5_PRIV_API_ENTER (h5_loc_id_t); + H5_PRIV_API_ENTER2 (h5_err_t, + "list=0x%p, item=%llu", + list, (long long unsigned)item); if (!list) { H5_PRIV_API_LEAVE (-1); } @@ -127,7 +137,9 @@ h5priv_search_idlist ( h5_loc_idlist_t** list, h5_loc_id_t item ) { - H5_PRIV_API_ENTER (h5_loc_idx_t); + H5_PRIV_API_ENTER2 (h5_err_t, + "list=0x%p, item=%llu", + list, (long long unsigned)item); h5_loc_idx_t idx = h5priv_find_idlist (*list, item); if (idx < 0) { idx = -(idx+1); @@ -142,7 +154,9 @@ h5priv_alloc_idxmap ( h5_idxmap_t* map, const h5_size_t size ) { - H5_PRIV_API_ENTER (h5_err_t); + H5_PRIV_API_ENTER2 (h5_err_t, + "map=0x%p, size=%llu", + map, size); int new = (map->items == NULL); size_t size_in_bytes = size * sizeof (map->items[0]); TRY (map->items = h5_alloc (map->items, size_in_bytes)); @@ -157,7 +171,11 @@ h5priv_insert_idxmap ( h5_glb_idx_t glb_idx, h5_loc_idx_t loc_idx ) { - H5_PRIV_API_ENTER (h5_err_t); + H5_PRIV_API_ENTER3 (h5_err_t, + "map=0x%p, glb_idx=%llu, loc_idx=%llu", + map, + (long long unsigned)glb_idx, + (long long unsigned)loc_idx); if (map->num_items == map->size) H5_PRIV_API_LEAVE ( HANDLE_H5_OVERFLOW_ERR ( @@ -195,6 +213,9 @@ h5priv_search_idxmap ( h5_idxmap_t* map, h5_glb_idx_t value ) { + H5_PRIV_API_ENTER2 (h5_err_t, + "map=0x%p, value=%llu", + map, value); register h5_loc_idx_t low = 0; register h5_loc_idx_t high = map->num_items - 1; while (low <= high) { @@ -205,9 +226,9 @@ h5priv_search_idxmap ( else if ( diff < 0 ) low = mid + 1; else - return mid; // found + H5_PRIV_API_LEAVE (mid); // found } - return (-(low+1)); // not found + H5_PRIV_API_RETURN (-(low+1)); // not found } static int @@ -228,7 +249,8 @@ h5_err_t h5priv_sort_idxmap ( h5_idxmap_t* map ) { + H5_PRIV_API_ENTER1 (h5_err_t, "map=0x%p", map); qsort ( map->items, map->num_items, sizeof (map->items[0]), cmp_idxmap_items); - return (H5_SUCCESS); + H5_PRIV_API_RETURN (H5_SUCCESS); } diff --git a/src/h5core/h5_openclose.c b/src/h5core/h5_openclose.c index c6628d9..d164607 100644 --- a/src/h5core/h5_openclose.c +++ b/src/h5core/h5_openclose.c @@ -24,11 +24,7 @@ h5_check_filehandle ( h5_file_t* const f /*!< filehandle to check validity of */ ) { - if (f == NULL || f->file < 0 || f->u == NULL || f->b == NULL -#ifndef PARALLEL_IO - || f->t == NULL -#endif - ) { + if (f == NULL || f->file < 0 || f->u == NULL || f->b == NULL || f->t == NULL) { return h5_error ( H5_ERR_BADFD, "Called with bad filehandle."); @@ -66,7 +62,7 @@ static h5_err_t h5upriv_open_file ( h5_file_t* const f /*!< IN: file handle */ ) { - H5_PRIV_API_ENTER (h5_err_t); + H5_PRIV_API_ENTER1 (h5_err_t, "f=0x%p", f); TRY (f->u = (h5u_fdata_t*)h5_alloc (NULL, sizeof (*f->u))); h5u_fdata_t *u = f->u; @@ -97,7 +93,7 @@ static h5_err_t h5bpriv_open_file ( h5_file_t * const f /*!< IN: file handle */ ) { - H5_PRIV_API_ENTER (h5_err_t); + H5_PRIV_API_ENTER1 (h5_err_t, "f=0x%p", f); h5b_fdata_t* b; if (f->b) @@ -142,7 +138,9 @@ h5_open_file ( h5_int32_t flags, /*!< The access mode for the file. */ MPI_Comm comm /*!< MPI communicator */ ) { - H5_CORE_API_ENTER (h5_file_p); + H5_CORE_API_ENTER2 (h5_file_p, + "filename=\"%s\", flags=%d, ...", + filename, flags); h5_info ("Opening file %s.", filename); h5_file_p f = NULL; TRY2 (f = h5_calloc (1, sizeof (h5_file_t))); @@ -233,9 +231,7 @@ h5_open_file ( TRY2 (h5upriv_open_file (f)); TRY2 (h5bpriv_open_file (f)); -#ifndef PARALLEL_IO TRY2 (h5tpriv_open_file (f)); -#endif H5_CORE_API_RETURN (f); } @@ -253,7 +249,7 @@ static h5_err_t h5upriv_close_file ( h5_file_t* const f /*!< file handle */ ) { - H5_PRIV_API_ENTER (h5_err_t); + H5_PRIV_API_ENTER1 (h5_err_t, "f=0x%p", f); struct h5u_fdata* u = f->u; h5_errno = H5_SUCCESS; @@ -281,7 +277,7 @@ static h5_err_t h5bpriv_close_file ( h5_file_t* const f /*!< IN: file handle */ ) { - H5_PRIV_API_ENTER (h5_err_t); + H5_PRIV_API_ENTER1 (h5_err_t, "f=0x%p", f); struct h5b_fdata* b = f->b; TRY (hdf5_close_group (b->block_gid)); TRY (hdf5_close_group (b->field_gid)); @@ -311,7 +307,7 @@ h5_err_t h5_close_file ( h5_file_t* const f /*!< file handle */ ) { - H5_PRIV_API_ENTER (h5_err_t); + H5_CORE_API_ENTER1 (h5_err_t, "f=0x%p", f); h5_errno = H5_SUCCESS; CHECK_FILEHANDLE (f); @@ -319,16 +315,14 @@ h5_close_file ( TRY (h5priv_close_step (f)); TRY (h5upriv_close_file (f)); TRY (h5bpriv_close_file (f)); -#ifndef PARALLEL_IO TRY (h5tpriv_close_file (f)); -#endif TRY (hdf5_close_property (f->xfer_prop)); TRY (hdf5_close_property (f->access_prop)); TRY (hdf5_close_property (f->create_prop)); TRY (hdf5_close_group (f->root_gid)); TRY (hdf5_close_file (f->file)); h5_free (f); - H5_PRIV_API_RETURN (H5_SUCCESS); + H5_CORE_API_RETURN (H5_SUCCESS); } /*! @@ -347,7 +341,8 @@ h5_set_stepname_fmt ( const char* name, int width ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER3 (h5_err_t, + "f=0x%p, name=\"%s\", width=%d", f, name, width); if (width < 0) width = 0; else if (width > H5_STEPNAME_LEN - 1) width = H5_STEPNAME_LEN - 1; strncpy ( @@ -406,7 +401,7 @@ int h5_get_num_procs ( h5_file_t* const f /*!< file handle */ ) { - H5_CORE_API_ENTER (int); + H5_CORE_API_ENTER1 (int, "f=0x%p", f); H5_CORE_API_RETURN (f->nprocs); } @@ -421,7 +416,7 @@ hid_t h5_get_hdf5_file( h5_file_t* const f /*!< file handle */ ) { - H5_CORE_API_ENTER (hid_t); + H5_CORE_API_ENTER1 (hid_t, "f=0x%p", f); H5_CORE_API_RETURN (f->file); } diff --git a/src/h5core/h5_readwrite.c b/src/h5core/h5_readwrite.c index 7053e3d..9513bad 100644 --- a/src/h5core/h5_readwrite.c +++ b/src/h5core/h5_readwrite.c @@ -21,7 +21,12 @@ h5priv_write_dataset_by_name ( hid_t (*set_diskspace)(h5_file_t*,hid_t), const void* const data ) { - H5_PRIV_API_ENTER (h5_err_t); + H5_PRIV_API_ENTER7 (h5_err_t, + "f=0x%p, loc_id=%d (%s), dsinfo=0x%p, set_memspace=0x%p, " + "set_diskspace=0x%p, data=0x%p", + f, loc_id, hdf5_get_objname(loc_id), + dsinfo, + set_memspace, set_diskspace, data); h5_info ("Writing dataset %s/%s.", hdf5_get_objname (loc_id), dsinfo->name); @@ -92,7 +97,13 @@ h5priv_read_dataset ( hid_t (*set_dspace)(h5_file_t*,hid_t), void* const data ) { - H5_PRIV_API_ENTER (h5_err_t); + H5_PRIV_API_ENTER7 (h5_err_t, + "f=0x%p, dset_id=%d (%s), dsinfo=0x%p, set_mspace=0x%p, " + "set_dspace=0x%p, data=0x%p", + f, dset_id, hdf5_get_objname(dset_id), + dsinfo, + set_mspace, set_dspace, data); + hid_t mspace_id; hid_t dspace_id; @@ -126,7 +137,12 @@ h5priv_read_dataset_by_name ( hid_t (*set_dspace)(h5_file_t*,hid_t), void* const data ) { - H5_PRIV_API_ENTER (h5_err_t); + H5_PRIV_API_ENTER7 (h5_err_t, + "f=0x%p, loc_id=%d (%s), dsinfo=0x%p, " + "set_mpace=0x%p, set_dspace=0x%p, data=0x%p", + f, loc_id, hdf5_get_objname(loc_id), + dsinfo, + set_mspace, set_dspace, data); hid_t dset_id; TRY (dset_id = hdf5_open_dataset (loc_id, dsinfo->name)); TRY (h5priv_read_dataset (f, dset_id, dsinfo, set_mspace, set_dspace, data)); @@ -139,7 +155,7 @@ h5_err_t h5priv_close_step ( h5_file_t* const f ) { - H5_PRIV_API_ENTER (h5_err_t); + H5_PRIV_API_ENTER1 (h5_err_t, "f=0x%p", f); if (f->step_gid <= 0) H5_PRIV_API_LEAVE (H5_SUCCESS); TRY (h5tpriv_close_step (f)); @@ -155,7 +171,7 @@ h5_set_step ( h5_file_t* const f, /*!< [in] Handle to open file */ const h5_id_t step_idx /*!< [in] Step to set. */ ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER2 (h5_err_t, "f=0x%p, step_idx=%llu", f, step_idx); TRY (h5priv_close_step (f)); f->step_idx = step_idx; @@ -181,7 +197,7 @@ h5_int64_t h5_normalize_h5_type ( hid_t type ) { - H5_CORE_API_ENTER (h5_int64_t); + H5_CORE_API_ENTER1 (h5_int64_t, "type=%d", type); H5T_class_t tclass; int size; TRY (tclass = H5Tget_class (type)); @@ -217,7 +233,9 @@ h5_get_dataset_type( const hid_t group_id, const char* dset_name ) { - H5_CORE_API_ENTER (h5_int64_t); + H5_CORE_API_ENTER2 (h5_int64_t, + "group_id=%d, dset_name=\"%s\"", + group_id, dset_name); hid_t dset_id; hid_t hdf5_type; h5_int64_t type; @@ -233,13 +251,13 @@ h5_get_dataset_type( h5_err_t h5_has_step ( h5_file_t* const f, /*!< [in] Handle to open file */ - const h5_id_t step /*!< [in] Step number to query */ + const h5_id_t step_idx /*!< [in] Step number to query */ ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER2 (h5_err_t, "f=0x%p, step_idx=%llu", f, step_idx); char name[2*H5_STEPNAME_LEN]; sprintf (name, "%s#%0*lld", - f->prefix_step_name, f->width_step_idx, (long long)step); + f->prefix_step_name, f->width_step_idx, (long long)step_idx); H5_CORE_API_RETURN (hdf5_link_exists(f->file, name)); } @@ -248,7 +266,9 @@ h5_normalize_dataset_name ( const char *name, char *name2 ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER2 (h5_err_t, + "name=\"%s\", name2=\"%s\"", + name, name2); if ( strlen(name) > H5_DATANAME_LEN ) { strncpy ( name2, name, H5_DATANAME_LEN-1 ); name2[H5_DATANAME_LEN-1] = '\0'; @@ -274,7 +294,7 @@ h5_set_throttle ( h5_file_t* const f, const int factor ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER2 (h5_err_t, "f=0x%p, factor=%d", f, factor); if ( (f->mode & H5_VFD_INDEPENDENT) || (f->mode & H5_VFD_MPIPOSIX) ) { f->throttle = factor; h5_info ("Throttling enabled with factor = %d", f->throttle ); @@ -290,7 +310,7 @@ h5_err_t h5_start_throttle ( h5_file_t* const f ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER1 (h5_err_t, "f=0x%p", f); if (f->throttle > 0) { int token = 1; h5_info ("Throttling with factor = %d", f->throttle); @@ -314,7 +334,7 @@ h5_err_t h5_end_throttle ( h5_file_t* const f ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER1 (h5_err_t, "f=0x%p", f); if (f->throttle > 0) { int token; if (f->myproc + f->throttle < f->nprocs) { diff --git a/src/h5core/h5b_attribs.c b/src/h5core/h5b_attribs.c index 9354c23..7889919 100644 --- a/src/h5core/h5b_attribs.c +++ b/src/h5core/h5b_attribs.c @@ -10,7 +10,17 @@ h5_write_field_attrib ( const void *attrib_value, /*!< IN: attribute value */ const h5_int64_t attrib_nelem /*!< IN: number of elements */ ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER5 (h5_err_t, + "f=%p, field_name=\"%s\", " + "attrib_name=\"%s\", attrib_type=%d, " + "attrib_value=%p, attrib_nelem=%lld", + f, + field_name, + attrib_name, + attrib_type, + attrib_value, + (long long)attrib_nelem); + , TRY( h5bpriv_create_field_group(f, field_name) ); TRY( h5_write_attrib ( @@ -32,7 +42,16 @@ h5_read_field_attrib ( const h5_int64_t attrib_type, /*!< IN: attribute type */ void *buffer /*!< OUT: attribute value */ ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER5 (h5_err_t, + "f=%p, field_name=\"%s\", " + "attrib_name=\"%s\", attrib_type=%lld, " + "attrib_value=%p", + f, + field_name, + attrib_name, + attrib_type, + buffer); + TRY( h5bpriv_open_field_group(f, field_name) ); TRY( h5_read_attrib ( @@ -50,7 +69,10 @@ h5b_get_num_field_attribs ( h5_file_t *const f, /*b->shape > 0) { TRY (hdf5_close_dataspace (f->b->shape)); f->b->shape = -1; @@ -413,31 +413,31 @@ h5bpriv_release_hyperslab ( TRY (hdf5_close_dataspace(f->b->memshape)); f->b->memshape = -1; } - H5_CORE_API_RETURN (H5_SUCCESS); + H5_PRIV_API_RETURN (H5_SUCCESS); } h5_err_t h5bpriv_open_block_group ( h5_file_t *const f /*!< IN: file handle */ ) { - H5_CORE_API_ENTER (h5_err_t); + H5_PRIV_API_ENTER1 (h5_err_t, "f=0x%p", f); h5b_fdata_t *b = f->b; TRY (hdf5_close_group (b->block_gid)); b->block_gid = hdf5_open_group (f->step_gid, H5_BLOCKNAME); if (f->b->block_gid < 0) - return h5_error( + H5_PRIV_API_LEAVE (h5_error( H5_ERR_INVAL, - "Time step does not contain H5Block data!"); + "Time step does not contain H5Block data!")); - H5_CORE_API_RETURN (H5_SUCCESS); + H5_PRIV_API_RETURN (H5_SUCCESS); } static h5_err_t _create_block_group ( h5_file_t *const f /*!< IN: file handle */ ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER1 (h5_err_t, "f=0x%p", f); h5_err_t exists; TRY (exists = hdf5_link_exists (f->step_gid, H5_BLOCKNAME)); @@ -456,12 +456,12 @@ h5bpriv_have_field_group ( h5_file_t *const f, /*!< IN: file handle */ const char *name ) { - H5_CORE_API_ENTER (h5_err_t); + H5_PRIV_API_ENTER2 (h5_err_t, "f=0x%p, name=\"%s\"", f, name); char name2[H5_DATANAME_LEN]; h5_normalize_dataset_name (name, name2); TRY( h5bpriv_open_block_group(f) ); - H5_CORE_API_RETURN (hdf5_link_exists(f->b->block_gid, name2)); + H5_PRIV_API_RETURN (hdf5_link_exists(f->b->block_gid, name2)); } h5_err_t @@ -469,7 +469,7 @@ h5bpriv_open_field_group ( h5_file_t *const f, /*!< IN: file handle */ const char *name ) { - H5_CORE_API_ENTER (h5_err_t); + H5_PRIV_API_ENTER2 (h5_err_t, "f=0x%p, name=\"%s\"", f, name); char name2[H5_DATANAME_LEN]; h5_normalize_dataset_name (name, name2); @@ -481,7 +481,7 @@ h5bpriv_open_field_group ( H5_ERR_INVAL, "Field '%s' does not exist!", name2); - H5_CORE_API_RETURN (H5_SUCCESS); + H5_PRIV_API_RETURN (H5_SUCCESS); } h5_err_t @@ -489,7 +489,7 @@ h5bpriv_create_field_group ( h5_file_t *const f, /*!< IN: file handle */ const char *name /*!< IN: name of field group to create */ ) { - H5_CORE_API_ENTER (h5_err_t); + H5_PRIV_API_ENTER2 (h5_err_t, "f=0x%p, name=\"%s\"", f, name); h5b_fdata_t *b = f->b; TRY( _create_block_group(f) ); @@ -527,7 +527,15 @@ h5b_3d_set_view ( const h5_size_t k_start, /*!< IN: start index of \c k */ const h5_size_t k_end /*!< IN: end index of \c k */ ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER7 (h5_err_t, + "f=0X%p, " + "i_start=%llu, i_end=%llu, " + "j_start=%llu, j_end=%llu, " + "k_start=%llu, k_end=%llu", + f, + i_start, i_end, + j_start, j_end, + k_start, k_end); h5b_partition_t *p = f->b->user_layout; p->i_start = i_start; p->i_end = i_end; @@ -594,7 +602,15 @@ h5b_3d_get_view ( h5_size_t *const k_start, /*!< OUT: start index of \c k */ h5_size_t *const k_end /*!< OUT: end index of \c k */ ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER7 (h5_err_t, + "f=0X%p, " + "i_start=0x%p, i_end=0x%p, " + "j_start=0x%p, j_end=0x%p, " + "k_start=0x%p, k_end=0x%p", + f, + i_start, i_end, + j_start, j_end, + k_start, k_end); h5b_partition_t *p = f->b->user_layout; *i_start = p->i_start; @@ -617,7 +633,15 @@ h5b_3d_get_reduced_view ( h5_size_t *const k_start, /*!< OUT: start index of \c k */ h5_size_t *const k_end /*!< OUT: end index of \c k */ ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER7 (h5_err_t, + "f=0X%p, " + "i_start=0x%p, i_end=0x%p, " + "j_start=0x%p, j_end=0x%p, " + "k_start=0x%p, k_end=0x%p", + f, + i_start, i_end, + j_start, j_end, + k_start, k_end); h5b_partition_t *p = f->b->write_layout; *i_start = p->i_start; @@ -637,7 +661,9 @@ h5b_3d_set_chunk ( const h5_size_t j, /*!< IN: size of \c j */ const h5_size_t k /*!< IN: size of \c k */ ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER4 (h5_err_t, + "f=0x%p, i=%llu, j=%llu, k=%llu", + f, i, j, k); if ( i == 0 || j == 0 || k == 0 ) { h5_info ("Disabling chunking" ); @@ -661,7 +687,9 @@ h5b_3d_get_chunk ( h5_size_t *const j, /*!< OUT: size of \c j */ h5_size_t *const k /*!< OUT: size of \c k */ ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER4 (h5_err_t, + "f=0x%p, i=0x%p, j=0x%p, k=0x%p", + f, i, j, k); CHECK_TIMEGROUP ( f ); h5b_fdata_t *b = f->b; @@ -698,7 +726,9 @@ h5b_3d_set_grid ( const h5_size_t j, /*!< IN: dimension in \c j */ const h5_size_t k /*!< IN: dimension in \c k */ ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER4 (h5_err_t, + "f=0x%p, i=%llu, j=%llu, k=%llu", + f, i, j, k); if (i*j*k != f->nprocs) { H5_CORE_API_LEAVE ( h5_error(H5_ERR_INVAL, @@ -732,7 +762,9 @@ h5b_3d_get_grid_coords ( h5_int64_t *j, /*!< OUT: index in \c j */ h5_int64_t *k /*!< OUT: index in \c k */ ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER5 (h5_err_t, + "f=0x%p, proc=%d, i=0x%p, j=0x%p, k=0x%p", + f, proc, i, j, k); if ( ! f->b->have_grid ) H5_CORE_API_LEAVE ( h5_error(H5_ERR_INVAL, @@ -753,7 +785,9 @@ h5b_3d_set_dims ( const h5_size_t j, /*!< IN: dimension in \c j */ const h5_size_t k /*!< IN: dimension in \c k */ ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER4 (h5_err_t, + "f=0x%p, i=%llu, j=%llu, k=%llu", + f, i, j, k); if ( ! f->b->have_grid ) H5_CORE_API_LEAVE ( h5_error(H5_ERR_INVAL, @@ -813,7 +847,9 @@ h5b_3d_set_halo ( const h5_size_t j, /*!< IN: radius in \c j */ const h5_size_t k /*!< IN: radius in \c k */ ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER4 (h5_err_t, + "f=0x%p, i=%llu, j=%llu, k=%llu", + f, i, j, k); if ( ! f->b->have_grid ) { H5_CORE_API_LEAVE ( h5_error(H5_ERR_INVAL, @@ -839,7 +875,7 @@ h5_ssize_t h5b_get_num_fields ( h5_file_t *const f /*!< IN: File handle */ ) { - H5_CORE_API_ENTER (h5_ssize_t); + H5_CORE_API_ENTER1 (h5_ssize_t, "f=0x%p", f); CHECK_TIMEGROUP( f ); TRY (h5bpriv_open_block_group(f)); @@ -855,7 +891,10 @@ h5b_get_field_info_by_name ( h5_size_t *elem_rank, /*!< OUT: element rank */ h5_int64_t *type /*!< OUT: datatype */ ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER6 (h5_err_t, + "f=0x%p, name=\"%s\", " + "field_rank=0x%p, field_dims=0x%p, elem_rank=0x%p, type=0x%p", + f, name, field_rank, field_dims, elem_rank, type); CHECK_TIMEGROUP( f ); hsize_t dims[16]; /* give it plenty of space even though we don't expect rank > 3 */ @@ -904,7 +943,13 @@ h5b_get_field_info ( h5_size_t *elem_rank, /*!< OUT: element rank */ h5_int64_t *type /*!< OUT: datatype */ ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER8 (h5_err_t, + "f=0x%p, idx=%llu, " + "name=0x%p, len_name=%llu, " + "field_rank=0x%p, field_dims=0x%p, elem_rank=0x%p, type=0x%p", + f, idx, + name, len_name, + field_rank, field_dims, elem_rank, type); CHECK_TIMEGROUP( f ); TRY (h5bpriv_open_block_group(f)); diff --git a/src/h5core/h5b_readwrite.c b/src/h5core/h5b_readwrite.c index b20a885..9253248 100644 --- a/src/h5core/h5b_readwrite.c +++ b/src/h5core/h5b_readwrite.c @@ -159,7 +159,9 @@ h5b_write_scalar_data ( const void *data, /*!< IN: data to write */ const hid_t type /*!< IN: data type */ ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER4 (h5_err_t, + "f=0x%p, field_name=\"%s\", data=0x%p, type=%d", + f, field_name, data, type); CHECK_TIMEGROUP( f ); CHECK_WRITABLE_MODE( f ); CHECK_LAYOUT( f ); @@ -178,7 +180,13 @@ h5b_write_vector3d_data ( const void *zdata, /*!< IN: z data to write */ const hid_t type /*!< IN: data type */ ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER6 (h5_err_t, + "f=0x%p, field_name=\"%s\", " + "xdata=0x%p, " + "ydata=0x%p, " + "zdata=0x%p, " + "type=%d", + f, field_name, xdata, ydata, zdata, type); CHECK_TIMEGROUP( f ); CHECK_WRITABLE_MODE( f ); CHECK_LAYOUT( f ); @@ -306,7 +314,9 @@ h5b_read_scalar_data ( void *data, /*!< OUT: read bufer */ const hid_t type /*!< IN: data type */ ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER4 (h5_err_t, + "f=0x%p, field_name=\"%s\", data=0x%p, type=%d", + f, field_name, data, type); CHECK_TIMEGROUP( f ); CHECK_LAYOUT( f ); TRY( h5bpriv_open_field_group(f, field_name) ); @@ -323,7 +333,13 @@ h5b_read_vector3d_data ( void *zdata, /*!< IN: z data to write */ const hid_t type /*!< IN: data type */ ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER6 (h5_err_t, + "f=0x%p, field_name=\"%s\", " + "xdata=0x%p, " + "ydata=0x%p, " + "zdata=0x%p, " + "type=%d", + f, field_name, xdata, ydata, zdata, type); CHECK_TIMEGROUP( f ); CHECK_LAYOUT( f ); TRY( h5bpriv_open_field_group(f, field_name) ); diff --git a/src/h5core/h5t_adjacencies.c b/src/h5core/h5t_adjacencies.c index ed38146..e5c41cc 100644 --- a/src/h5core/h5t_adjacencies.c +++ b/src/h5core/h5t_adjacencies.c @@ -23,7 +23,9 @@ h5t_get_adjacencies ( const h5_int32_t dim, h5_loc_idlist_t** list ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER4 (h5_err_t, + "f=0x%p, entity_id=%llu, dim=%d, list=0x%p", + f, (long long unsigned)entity_id, dim, list); H5_CORE_API_RETURN (h5tpriv_get_adjacencies (f, entity_id, dim, list)); } @@ -32,8 +34,10 @@ h5t_release_list_of_adjacencies ( h5_file_t* const f, h5_loc_idlist_t** list ) { + H5_CORE_API_ENTER2 (h5_err_t, + "f=0x%p, list=0x%p", + f, list); UNUSED_ARGUMENT (f); - H5_CORE_API_ENTER (h5_err_t); H5_CORE_API_RETURN (h5priv_free_idlist (list)); } @@ -44,6 +48,11 @@ h5t_find_te2 ( h5_loc_idx_t elem_idx, h5_loc_idlist_t** retval ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER4 (h5_err_t, + "f=0x%p, face_idx=%lld, elem_idx=%lld, retval=0x%p", + f, + (long long unsigned)face_idx, + (long long unsigned)elem_idx, + retval); H5_CORE_API_RETURN (h5tpriv_find_te2 (f,face_idx,elem_idx,retval)); } diff --git a/src/h5core/h5t_adjacencies_tetm.c b/src/h5core/h5t_adjacencies_tetm.c index d49898e..d8a7c90 100644 --- a/src/h5core/h5t_adjacencies_tetm.c +++ b/src/h5core/h5t_adjacencies_tetm.c @@ -26,7 +26,9 @@ alloc_tv ( h5_file_t* const f, const h5t_lvl_idx_t from_lvl ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER2 (h5_err_t, + "f=0x%p, from_lvl=%u", + f, (unsigned)from_lvl); h5t_fdata_t* t = f->t; h5_loc_idx_t num_vertices = t->num_vertices[t->num_leaf_levels-1]; @@ -47,7 +49,7 @@ static inline h5_err_t release_tv ( h5_file_t* const f ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER1 (h5_err_t, "f=0x%p", f); h5t_fdata_t* t = f->t; h5t_adjacencies_t* adj = &t->adjacencies; if (adj->tv.v == NULL) @@ -71,7 +73,9 @@ compute_elems_of_vertices ( h5_file_t* const f, const h5t_lvl_idx_t from_lvl ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER2 (h5_err_t, + "f=0x%p, from_lvl=%u", + f, (unsigned)from_lvl); /* expand structure */ TRY( alloc_tv (f, from_lvl) ); @@ -97,7 +101,9 @@ compute_elems_of_edges ( h5_file_t* const f, const h5t_lvl_idx_t from_lvl ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER2 (h5_err_t, + "f=0x%p, from_lvl=%u", + f, (unsigned)from_lvl); h5t_fdata_t* t = f->t; h5_loc_idx_t elem_idx = (from_lvl <= 0) ? 0 : t->num_elems[from_lvl-1]; h5_loc_idx_t num_elems = t->num_elems[t->num_leaf_levels-1]; @@ -120,7 +126,9 @@ compute_elems_of_triangles ( h5_file_t* const f, const h5t_lvl_idx_t from_lvl ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER2 (h5_err_t, + "f=0x%p, from_lvl=%u", + f, (unsigned)from_lvl); h5t_fdata_t* t = f->t; h5_loc_idx_t elem_idx = (from_lvl <= 0) ? 0 : t->num_elems[from_lvl-1]; h5_loc_idx_t num_elems = t->num_elems[t->num_leaf_levels-1]; @@ -144,7 +152,11 @@ compute_children_of_edge ( h5_loc_id_t entity_id, h5_loc_idlist_t** children ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER3 (h5_err_t, + "f=0x%p, entity_id=%llu, children=0x%p", + f, + (long long unsigned)entity_id, + children); h5_loc_idlist_t* te; TRY( h5tpriv_find_te (f, entity_id, &te ) ); h5_loc_id_t* edge_idp = te->items; @@ -178,7 +190,11 @@ compute_sections_of_edge ( h5_loc_id_t entity_id, h5_loc_idlist_t** children ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER3 (h5_err_t, + "f=0x%p, entity_id=%llu, children=0x%p", + f, + (long long unsigned)entity_id, + children); h5_loc_idlist_t* te; TRY( h5tpriv_find_te (f, entity_id, &te) ); h5_loc_id_t* edge_idp = te->items; @@ -244,7 +260,13 @@ compute_direct_children_of_triangle ( h5_loc_idx_t elem_idx, // in h5_loc_id_t* children // out ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER4 (h5_err_t, + "f=0x%p, face_idx=%llu, elem_idx=%llu, children=0x%p", + f, + (long long unsigned)face_idx, + (long long unsigned)elem_idx, + children); + h5_loc_idx_t map[4][4][2] = { {{0,0},{0,1},{0,2},{0,5}}, {{1,0},{1,1},{1,3},{2,4}}, @@ -272,7 +294,11 @@ compute_children_of_triangle ( h5_loc_id_t entity_id, h5_loc_idlist_t** children ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER3 (h5_err_t, + "f=0x%p, entity_id=%llu, children=0x%p", + f, + (long long unsigned)entity_id, + children); h5_loc_idlist_t* td; TRY( h5tpriv_find_td (f, entity_id, &td) ); h5_loc_id_t* triangle_idp = td->items; @@ -305,7 +331,11 @@ compute_sections_of_triangle ( h5_loc_id_t entity_id, h5_loc_idlist_t** children ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER3 (h5_err_t, + "f=0x%p, entity_id=%llu, children=0x%p", + f, + (long long unsigned)entity_id, + children); h5_loc_idlist_t* td; TRY( h5tpriv_find_td (f, entity_id, &td) ); h5_loc_id_t* triangle_idp = td->items; @@ -345,7 +375,11 @@ add_vertex2 ( h5_loc_idx_t face_idx, // in h5_loc_idx_t elem_idx // in ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER4 (h5_err_t, + "f=0x%p, list=0x%p, face_idx=%llu, elem_idx=%llu", + f, list, + (long long unsigned)face_idx, + (long long unsigned)elem_idx); h5_loc_idlist_t* tv; TRY( h5tpriv_find_tv2 (f, face_idx, elem_idx, &tv) ); TRY( h5priv_search_idlist (list, tv->items[0]) ); @@ -361,7 +395,10 @@ add_edge ( h5_loc_idlist_t** list, // out h5_loc_id_t entity_id // in ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER3 (h5_err_t, + "f=0x%p, list=0x%p, entity_id=%llu", + f, list, + (long long unsigned)entity_id); h5_loc_idlist_t* te; TRY( h5tpriv_find_te (f, entity_id, &te) ); TRY( h5priv_search_idlist (list, te->items[0]) ); @@ -375,7 +412,11 @@ add_edge2 ( h5_loc_idx_t face_idx, // in h5_loc_idx_t elem_idx // in ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER4 (h5_err_t, + "f=0x%p, list=0x%p, face_idx=%llu, elem_idx=%llu", + f, list, + (long long unsigned)face_idx, + (long long unsigned)elem_idx); h5_loc_idlist_t* te; TRY( h5tpriv_find_te2 (f, face_idx, elem_idx, &te) ); TRY( h5priv_search_idlist (list, te->items[0]) ); @@ -391,7 +432,10 @@ add_triangle ( h5_loc_idlist_t** list, // out h5_loc_idx_t entity_id // in ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER3 (h5_err_t, + "f=0x%p, list=0x%p, entity_id=%llu", + f, list, + (long long unsigned)entity_id); h5_loc_idlist_t* td; TRY( h5tpriv_find_td (f, entity_id, &td) ); TRY( h5priv_search_idlist (list, td->items[0]) ); @@ -406,7 +450,11 @@ add_triangle2 ( h5_loc_idx_t face_idx, // in h5_loc_idx_t elem_idx // in ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER4 (h5_err_t, + "f=0x%p, list=0x%p, face_idx=%llu, elem_idx=%llu", + f, list, + (long long unsigned)face_idx, + (long long unsigned)elem_idx); h5_loc_idlist_t* td; TRY( h5tpriv_find_td2 (f, face_idx, elem_idx, &td) ); TRY( h5priv_search_idlist (list, td->items[0]) ); @@ -419,7 +467,10 @@ add_elem2 ( h5_loc_idlist_t** list, // out h5_loc_idx_t elem_idx // in ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER2 (h5_err_t, + "list=0x%p, elem_idx=%llu", + list, + (long long unsigned)elem_idx); h5_loc_id_t elem_id = h5tpriv_build_tet_id (0, elem_idx); TRY( h5priv_search_idlist (list, elem_id) ); @@ -435,7 +486,9 @@ get_edges_uadj_to_vertex ( const h5_loc_id_t entity_id, h5_loc_idlist_t** list ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER3 (h5_err_t, + "f=0x%p, entity_id=%llu, list=0x%p", + f, (long long unsigned)entity_id, list); h5_loc_idx_t vertex_idx; TRY( h5t_get_vertex_index_of_vertex (f, entity_id, &vertex_idx) ); h5_loc_idlist_t* tv = f->t->adjacencies.tv.v[vertex_idx]; @@ -473,7 +526,9 @@ get_triangles_uadj_to_vertex ( const h5_loc_id_t entity_id, h5_loc_idlist_t** list ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER3 (h5_err_t, + "f=0x%p, entity_id=%llu, list=0x%p", + f, (long long unsigned)entity_id, list); /* get list of all tetrahedra connected to given vertex Note: this list may include tetrahedra which are not in the (current) leaf grid */ @@ -514,7 +569,9 @@ get_tets_uadj_to_vertex ( const h5_loc_id_t entity_id, h5_loc_idlist_t** list ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER3 (h5_err_t, + "f=0x%p, entity_id=%llu, list=0x%p", + f, (long long unsigned)entity_id, list); h5_loc_idx_t vertex_idx; TRY( h5t_get_vertex_index_of_vertex (f, entity_id, &vertex_idx) ); h5_loc_idlist_t* tv = f->t->adjacencies.tv.v[vertex_idx]; @@ -539,7 +596,9 @@ get_triangles_uadj_to_edge ( const h5_loc_id_t entity_id, h5_loc_idlist_t** list ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER3 (h5_err_t, + "f=0x%p, entity_id=%llu, list=0x%p", + f, (long long unsigned)entity_id, list); h5_loc_idlist_t* children; TRY( h5priv_alloc_idlist (&children, 8) ); TRY( compute_children_of_edge (f, entity_id, &children) ); @@ -569,7 +628,9 @@ get_tets_uadj_to_edge ( const h5_loc_id_t entity_id, h5_loc_idlist_t** list ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER3 (h5_err_t, + "f=0x%p, entity_id=%llu, list=0x%p", + f, (long long unsigned)entity_id, list); h5_loc_idlist_t* children; TRY( h5priv_alloc_idlist (&children, 8) ); TRY( compute_children_of_edge (f, entity_id, &children) ); @@ -589,7 +650,9 @@ get_tets_uadj_to_triangle ( const h5_loc_id_t entity_id, h5_loc_idlist_t** list ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER3 (h5_err_t, + "f=0x%p, entity_id=%llu, list=0x%p", + f, (long long unsigned)entity_id, list); h5_loc_idlist_t* children; TRY( h5priv_alloc_idlist (&children, 8) ); TRY( compute_children_of_triangle (f, entity_id, &children) ); @@ -609,7 +672,9 @@ get_vertices_dadj_to_edge ( const h5_loc_id_t entity_id, h5_loc_idlist_t** list ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER3 (h5_err_t, + "f=0x%p, entity_id=%llu, list=0x%p", + f, (long long unsigned)entity_id, list); h5_loc_idlist_t* children; TRY( h5priv_alloc_idlist (&children, 8) ); TRY( compute_sections_of_edge (f, entity_id, &children) ); @@ -643,7 +708,9 @@ get_vertices_dadj_to_triangle ( const h5_loc_id_t entity_id, h5_loc_idlist_t** list ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER3 (h5_err_t, + "f=0x%p, entity_id=%llu, list=0x%p", + f, (long long unsigned)entity_id, list); h5_loc_idlist_t* children; TRY( h5priv_alloc_idlist (&children, 8) ); h5_loc_idx_t elem_idx = h5tpriv_get_elem_idx (entity_id); @@ -688,7 +755,9 @@ get_vertices_dadj_to_tet ( const h5_loc_id_t entity_id, h5_loc_idlist_t** list ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER3 (h5_err_t, + "f=0x%p, entity_id=%llu, list=0x%p", + f, (long long unsigned)entity_id, list); h5_loc_idlist_t* children; h5_loc_idx_t elem_idx = h5tpriv_get_elem_idx (entity_id); TRY( h5priv_alloc_idlist (&children, 8) ); @@ -727,7 +796,9 @@ get_edges_dadj_to_triangle ( const h5_loc_id_t entity_id, h5_loc_idlist_t** list ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER3 (h5_err_t, + "f=0x%p, entity_id=%llu, list=0x%p", + f, (long long unsigned)entity_id, list); h5_loc_idlist_t* children; TRY( h5priv_alloc_idlist (&children, 8) ); h5_loc_idx_t face_idx = h5tpriv_get_face_idx (entity_id); @@ -760,7 +831,9 @@ get_edges_dadj_to_tet ( const h5_loc_id_t elem_id, h5_loc_idlist_t** list ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER3 (h5_err_t, + "f=0x%p, elem_id=%llu, list=0x%p", + f, (long long unsigned)elem_id, list); h5_loc_idlist_t* children; TRY( h5priv_alloc_idlist (&children, 8) ); h5_loc_idx_t elem_idx = h5tpriv_get_elem_idx (elem_id); @@ -790,7 +863,9 @@ get_triangles_dadj_to_tet ( const h5_loc_id_t entity_id, h5_loc_idlist_t** list ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER3 (h5_err_t, + "f=0x%p, entity_id=%llu, list=0x%p", + f, (long long unsigned)entity_id, list); h5_loc_idlist_t* children; TRY( h5priv_alloc_idlist (&children, 8) ); h5_loc_idx_t elem_idx = h5tpriv_get_elem_idx (entity_id); @@ -926,7 +1001,9 @@ update_internal_structs ( h5_file_t* const f, const h5t_lvl_idx_t from_lvl ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER2 (h5_err_t, + "f=0x%p, from_lvl=%u", + f, (unsigned)from_lvl); clock_t t1 = clock(); TRY( compute_elems_of_vertices (f, from_lvl) ); clock_t t2 = clock(); @@ -950,7 +1027,7 @@ static h5_err_t release_internal_structs ( h5_file_t * const f ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER1 (h5_err_t, "f=0x%p", f); h5t_fdata_t* t = f->t; TRY( release_tv (f) ); TRY( h5priv_hdestroy (&t->adjacencies.te_hash) ); diff --git a/src/h5core/h5t_adjacencies_trim.c b/src/h5core/h5t_adjacencies_trim.c index 9fc8dba..1ddca97 100644 --- a/src/h5core/h5t_adjacencies_trim.c +++ b/src/h5core/h5t_adjacencies_trim.c @@ -22,7 +22,9 @@ alloc_tv ( h5_file_t* const f, const h5t_lvl_idx_t from_lvl ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER2 (h5_err_t, + "f=0x%p, from_lvl=%u", + f, (unsigned)from_lvl); h5t_fdata_t* t = f->t; h5_loc_idx_t num_vertices = t->num_vertices[t->num_leaf_levels-1]; @@ -40,7 +42,7 @@ static inline h5_err_t release_tv ( h5_file_t* const f ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER1 (h5_err_t, "f=0x%p", f); h5t_fdata_t* t = f->t; h5t_adjacencies_t* adj = &t->adjacencies; if (adj->tv.v == NULL) @@ -64,7 +66,10 @@ compute_elems_of_vertices ( h5_file_t* const f, const h5t_lvl_idx_t from_lvl ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER2 (h5_err_t, + "f=0x%p, from_lvl=%u", + f, (unsigned)from_lvl); + /* expand structure */ TRY( alloc_tv (f, from_lvl) ); @@ -90,7 +95,9 @@ compute_elems_of_edges ( h5_file_t* const f, const h5t_lvl_idx_t from_lvl ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER2 (h5_err_t, + "f=0x%p, from_lvl=%u", + f, (unsigned)from_lvl); h5t_fdata_t *t = f->t; h5_loc_idx_t elem_idx = (from_lvl <= 0) ? 0 : t->num_elems[from_lvl-1]; h5_loc_idx_t num_elems = t->num_elems[t->num_leaf_levels-1]; @@ -114,7 +121,11 @@ compute_children_of_edge ( h5_loc_id_t entity_id, h5_loc_idlist_t** children ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER3 (h5_err_t, + "f=0x%p, entity_id=%llu, children=0x%p", + f, + (long long unsigned)entity_id, + children); h5_loc_idlist_t* te; TRY( h5tpriv_find_te (f, entity_id, &te ) ); h5_loc_id_t* edge_idp = te->items; @@ -149,7 +160,11 @@ compute_sections_of_edge ( h5_loc_id_t entity_id, h5_loc_idlist_t** children ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER3 (h5_err_t, + "f=0x%p, entity_id=%llu, children=0x%p", + f, + (long long unsigned)entity_id, + children); h5_loc_idlist_t* te; TRY( h5tpriv_find_te (f, entity_id, &te) ); h5_loc_id_t* edge_idp = te->items; @@ -187,7 +202,11 @@ add_vertex2 ( h5_loc_idx_t face_idx, // in h5_loc_idx_t elem_idx // in ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER4 (h5_err_t, + "f=0x%p, list=0x%p, face_idx=%llu, elem_idx=%llu", + f, list, + (long long unsigned)face_idx, + (long long unsigned)elem_idx); h5_loc_idlist_t* tv; TRY( h5tpriv_find_tv2 (f, face_idx, elem_idx, &tv) ); TRY( h5priv_search_idlist (list, tv->items[0]) ); @@ -203,7 +222,10 @@ add_edge ( h5_loc_idlist_t** list, // out h5_loc_id_t entity_id // in ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER3 (h5_err_t, + "f=0x%p, list=0x%p, entity_id=%llu", + f, list, + (long long unsigned)entity_id); h5_loc_idlist_t* te; TRY( h5tpriv_find_te (f, entity_id, &te) ); TRY( h5priv_search_idlist (list, te->items[0]) ); @@ -217,7 +239,11 @@ add_edge2 ( h5_loc_idx_t face_idx, h5_loc_idx_t elem_idx ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER4 (h5_err_t, + "f=0x%p, list=0x%p, face_idx=%llu, elem_idx=%llu", + f, list, + (long long unsigned)face_idx, + (long long unsigned)elem_idx); h5_loc_idlist_t *te; TRY( h5tpriv_find_te2 (f, face_idx, elem_idx, &te) ); TRY( h5priv_search_idlist (list, te->items[0]) ); @@ -229,7 +255,10 @@ add_elem2 ( h5_loc_idlist_t** list, // out h5_loc_idx_t elem_idx // in ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER2 (h5_err_t, + "list=0x%p, elem_idx=%llu", + list, + (long long unsigned)elem_idx); h5_loc_id_t elem_id = h5tpriv_build_triangle_id (0, elem_idx); TRY( h5priv_search_idlist (list, elem_id) ); @@ -245,7 +274,9 @@ get_edges_uadj_to_vertex ( const h5_loc_id_t entity_id, h5_loc_idlist_t** list ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER3 (h5_err_t, + "f=0x%p, entity_id=%llu, list=0x%p", + f, (long long unsigned)entity_id, list); h5_loc_idx_t vertex_idx; TRY( h5t_get_vertex_index_of_vertex (f, entity_id, &vertex_idx) ); h5_loc_idlist_t* tv = f->t->adjacencies.tv.v[vertex_idx]; @@ -279,7 +310,9 @@ get_triangles_uadj_to_vertex ( const h5_loc_id_t entity_id, h5_loc_idlist_t** list ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER3 (h5_err_t, + "f=0x%p, entity_id=%llu, list=0x%p", + f, (long long unsigned)entity_id, list); h5_loc_idx_t vertex_idx; TRY( h5t_get_vertex_index_of_vertex (f, entity_id, &vertex_idx) ); h5_loc_idlist_t* tv = f->t->adjacencies.tv.v[vertex_idx]; @@ -305,7 +338,9 @@ get_triangles_uadj_to_edge ( const h5_loc_id_t entity_id, h5_loc_idlist_t** list ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER3 (h5_err_t, + "f=0x%p, entity_id=%llu, list=0x%p", + f, (long long unsigned)entity_id, list); h5_loc_idlist_t* children; TRY( h5priv_alloc_idlist (&children, 8) ); TRY( compute_children_of_edge (f, entity_id, &children) ); @@ -327,7 +362,10 @@ get_edges_adj_to_edge ( const h5_loc_id_t entity_id, h5_loc_idlist_t** list ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER3 (h5_err_t, + "f=0x%p, entity_id=%llu, list=0x%p", + f, (long long unsigned)entity_id, list); + TRY( h5priv_alloc_idlist (list, 8) ); h5_loc_idlist_t* children; TRY( h5priv_alloc_idlist (&children, 8) ); @@ -348,7 +386,9 @@ get_vertices_dadj_to_edge ( const h5_loc_id_t entity_id, h5_loc_idlist_t** list ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER3 (h5_err_t, + "f=0x%p, entity_id=%llu, list=0x%p", + f, (long long unsigned)entity_id, list); h5_loc_idlist_t* children; TRY( h5priv_alloc_idlist (&children, 8) ); TRY( compute_sections_of_edge (f, entity_id, &children) ); @@ -381,7 +421,9 @@ get_vertices_dadj_to_triangle ( const h5_loc_id_t entity_id, h5_loc_idlist_t** list ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER3 (h5_err_t, + "f=0x%p, entity_id=%llu, list=0x%p", + f, (long long unsigned)entity_id, list); h5_loc_idlist_t* children; TRY (h5priv_alloc_idlist (&children, 8)); @@ -421,7 +463,9 @@ get_edges_dadj_to_triangle ( const h5_loc_id_t entity_id, h5_loc_idlist_t** list ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER3 (h5_err_t, + "f=0x%p, entity_id=%llu, list=0x%p", + f, (long long unsigned)entity_id, list); h5_loc_idlist_t* children; TRY (h5priv_alloc_idlist (&children, 8)); h5_loc_idx_t elem_idx = h5tpriv_get_elem_idx (entity_id); @@ -531,7 +575,9 @@ update_internal_structs ( h5_file_t* const f, const h5t_lvl_idx_t from_lvl ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER2 (h5_err_t, + "f=0x%p, from_lvl=%u", + f, (unsigned)from_lvl); h5_debug ("%s (%lld)", __func__, (long long)from_lvl); clock_t t1 = clock(); TRY( compute_elems_of_vertices (f, from_lvl) ); @@ -551,7 +597,7 @@ static inline h5_err_t release_internal_structs ( h5_file_t* const f ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER1 (h5_err_t, "f=0x%p", f); h5t_fdata_t *t = f->t; TRY( release_tv (f) ); TRY( h5priv_hdestroy (&t->adjacencies.te_hash) ); diff --git a/src/h5core/h5t_inquiry.c b/src/h5core/h5t_inquiry.c index 26ef759..5a527c1 100644 --- a/src/h5core/h5t_inquiry.c +++ b/src/h5core/h5t_inquiry.c @@ -14,18 +14,19 @@ h5t_get_num_meshes ( h5_file_t* const f, const h5_oid_t type_id ) { - H5_CORE_API_ENTER (h5_ssize_t); + H5_CORE_API_ENTER2 (h5_ssize_t, + "f=0x%p, type_id=%d", f, type_id); hid_t topo_gid = -1; hid_t meshes_gid = -1; h5_err_t exists; TRY (exists = hdf5_link_exists (f->root_gid, H5T_CONTAINER_GRPNAME)); - if (!exists) return 0; + if (!exists) H5_CORE_API_LEAVE (0); TRY (topo_gid = hdf5_open_group (f->root_gid, H5T_CONTAINER_GRPNAME)); TRY (exists = hdf5_link_exists (topo_gid, h5tpriv_meshes_grpnames[type_id])); - if (!exists) return 0; + if (!exists) H5_CORE_API_LEAVE (0); TRY (meshes_gid = hdf5_open_group (topo_gid, h5tpriv_meshes_grpnames[type_id])); h5_ssize_t num_meshes; @@ -47,7 +48,7 @@ h5_ssize_t h5t_get_num_leaf_levels ( h5_file_t* const f ) { - H5_CORE_API_ENTER (h5_ssize_t); + H5_CORE_API_ENTER1 (h5_ssize_t, "f=0x%p", f); if (f->t->cur_mesh < 0) { H5_CORE_API_LEAVE (h5tpriv_error_undef_mesh ()); } @@ -65,7 +66,7 @@ h5t_lvl_idx_t h5t_get_level ( h5_file_t* const f ) { - H5_CORE_API_ENTER (h5t_lvl_idx_t); + H5_CORE_API_ENTER1 (h5t_lvl_idx_t, "f=0x%p", f); H5_CORE_API_RETURN (f->t->leaf_level); } @@ -87,7 +88,9 @@ h5t_get_num_elems ( h5_file_t* const f, const h5_id_t cnode ) { - H5_CORE_API_ENTER (h5_ssize_t); + H5_CORE_API_ENTER2 (h5_ssize_t, + "f=0x%p, cnode=%llu", + f, (long long unsigned)cnode); UNUSED_ARGUMENT (cnode); if (f->t->cur_mesh < 0) { @@ -117,7 +120,9 @@ h5t_get_num_vertices ( h5_file_t* const f, h5_id_t cnode ) { - H5_CORE_API_ENTER (h5_ssize_t); + H5_CORE_API_ENTER2 (h5_ssize_t, + "f=0x%p, cnode=%llu", + f, (long long unsigned)cnode); UNUSED_ARGUMENT (cnode); if (f->t->cur_mesh < 0) { diff --git a/src/h5core/h5t_map.c b/src/h5core/h5t_map.c index c87a26e..413552e 100644 --- a/src/h5core/h5t_map.c +++ b/src/h5core/h5t_map.c @@ -64,7 +64,9 @@ h5t_map_global_vertex_idx2local ( h5_file_t* const f, const h5_glb_idx_t glb_idx ) { - H5_CORE_API_ENTER (h5_loc_idx_t); + H5_CORE_API_ENTER2 (h5_loc_idx_t, + "f=0x%p, glb_idx=%llu", + f, glb_idx); if (glb_idx < 0) return -1; h5_loc_idx_t loc_idx = h5priv_search_idxmap (&f->t->map_vertex_g2l, glb_idx); @@ -81,7 +83,9 @@ h5t_map_global_vertex_indices2local ( const h5_size_t size, h5_loc_idx_t* const loc_indices ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER4 (h5_err_t, + "f=0x%p, glb_indices=0x%p, size=%llu, loc_indices=0x%p", + f, glb_indices, size, loc_indices); h5_size_t i; for (i = 0; i < size; i++) { TRY (loc_indices[i] = @@ -103,7 +107,9 @@ h5t_map_glb_elem_idx2loc ( h5_file_t* const f, const h5_glb_idx_t glb_idx ) { - H5_CORE_API_ENTER (h5_loc_idx_t); + H5_CORE_API_ENTER2 (h5_loc_idx_t, + "f=0x%p, glb_idx=%llu", + f, glb_idx); if (glb_idx < 0) H5_CORE_API_LEAVE (-1); h5_loc_idx_t loc_idx = h5priv_search_idxmap (&f->t->map_elem_g2l, glb_idx); @@ -119,7 +125,9 @@ h5t_map_glb_elem_indices2loc ( const h5_size_t size, h5_loc_idx_t* loc_indices ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER4 (h5_err_t, + "f=0x%p, glb_indices=0x%p, size=%llu, loc_indices=0x%p", + f, glb_indices, size, loc_indices); const h5_glb_idx_t* end = glb_indices+size; while (glb_indices < end) { @@ -139,7 +147,7 @@ h5_err_t h5tpriv_rebuild_vertex_indices_mapping ( h5_file_t* const f ) { - H5_PRIV_API_ENTER (h5_err_t); + H5_CORE_API_ENTER1 (h5_loc_idx_t, "f=0x%p", f); h5t_fdata_t* t = f->t; if (t->num_leaf_levels <= 0) H5_PRIV_API_LEAVE (H5_SUCCESS); @@ -163,7 +171,7 @@ h5_err_t h5tpriv_rebuild_elem_indices_mapping ( h5_file_t* const f ) { - H5_PRIV_API_ENTER (h5_err_t); + H5_CORE_API_ENTER1 (h5_loc_idx_t, "f=0x%p", f); h5t_fdata_t* t = f->t; if (t->num_leaf_levels <= 0) H5_PRIV_API_LEAVE (H5_SUCCESS); @@ -189,7 +197,11 @@ h5t_get_vertex_indices_of_entity ( const h5_loc_id_t entity_id, // in h5_loc_idx_t* vertex_indices // out ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER3 (h5_loc_idx_t, + "f=0x%p, entity_id=%llu, vertex_indices=0x%p", + f, + (long long unsigned)entity_id, + vertex_indices); h5_loc_idx_t type = h5tpriv_get_entity_type (entity_id); h5_loc_idx_t face_idx = h5tpriv_get_face_idx (entity_id); h5_loc_idx_t elem_idx = h5tpriv_get_elem_idx (entity_id); @@ -216,7 +228,12 @@ h5t_get_vertex_indices_of_entity2 ( const h5_loc_idx_t elem_idx, // [in] local element index h5_loc_idx_t* vertex_indices // [out] ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER5 (h5_err_t, + "f=0x%p, dim=%d, face_idx=%llu, elem_idx=%llu, vertex_indices=0x%p", + f, dim, + (long long unsigned)face_idx, + (long long unsigned)elem_idx, + vertex_indices); h5_loc_idx_t* indices = h5tpriv_get_loc_elem_vertex_indices (f, elem_idx); const h5t_ref_elem_t* ref_elem = f->t->ref_elem; int num_vertices = ref_elem->num_vertices_of_face[dim][face_idx]; @@ -234,7 +251,11 @@ h5t_get_vertex_index_of_vertex ( const h5_loc_id_t entity_id, h5_loc_idx_t* vertex_index ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER3 (h5_loc_idx_t, + "f=0x%p, entity_id=%llu, vertex_index=%llu", + f, + (long long unsigned)entity_id, + (long long unsigned)*vertex_index); h5_loc_idx_t face_idx = h5tpriv_get_face_idx (entity_id); h5_loc_idx_t elem_idx = h5tpriv_get_elem_idx (entity_id); H5_CORE_API_RETURN (h5t_get_vertex_index_of_vertex2 ( @@ -248,7 +269,12 @@ h5t_get_vertex_index_of_vertex2 ( const h5_loc_idx_t elem_idx, // local element index h5_loc_idx_t* vertex_indices // OUT: vertex ID's ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER4 (h5_err_t, + "f=0x%p, face_idx=%llu, elem_idx=%llu, vertex_indices=0x%p", + f, + (long long unsigned)face_idx, + (long long unsigned)elem_idx, + vertex_indices); vertex_indices[0] = h5tpriv_get_loc_elem_vertex_idx (f, elem_idx, face_idx); H5_CORE_API_RETURN (H5_SUCCESS); } @@ -262,7 +288,11 @@ h5t_get_vertex_indices_of_edge ( const h5_loc_id_t entity_id, h5_loc_idx_t* vertex_indices ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER3 (h5_loc_idx_t, + "f=0x%p, entity_id=%llu, vertex_indices=0x%p", + f, + (long long unsigned)entity_id, + vertex_indices); h5_loc_idx_t face_idx = h5tpriv_get_face_idx (entity_id); h5_loc_idx_t elem_idx = h5tpriv_get_elem_idx (entity_id); H5_CORE_API_RETURN (h5t_get_vertex_indices_of_edge2 ( @@ -283,7 +313,12 @@ h5t_get_vertex_indices_of_edge2 ( const h5_loc_idx_t elem_idx, // local element index h5_loc_idx_t* vertex_indices // OUT: vertex indices ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER4 (h5_err_t, + "f=0x%p, face_idx=%llu, elem_idx=%llu, vertex_indices=0x%p", + f, + (long long unsigned)face_idx, + (long long unsigned)elem_idx, + vertex_indices); const h5_loc_idx_t* indices = h5tpriv_get_loc_elem_vertex_indices (f, elem_idx); h5_loc_idx_t idx; @@ -300,7 +335,11 @@ h5t_get_vertex_indices_of_triangle ( const h5_loc_id_t entity_id, h5_loc_idx_t* vertex_indices ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER3 (h5_loc_idx_t, + "f=0x%p, entity_id=%llu, vertex_indices=0x%p", + f, + (long long unsigned)entity_id, + vertex_indices); h5_loc_idx_t face_idx = h5tpriv_get_face_idx (entity_id); h5_loc_idx_t elem_idx = h5tpriv_get_elem_idx (entity_id); H5_CORE_API_RETURN (h5t_get_vertex_indices_of_triangle2 ( @@ -314,7 +353,12 @@ h5t_get_vertex_indices_of_triangle2 ( const h5_loc_idx_t elem_idx, h5_loc_idx_t* vertex_indices ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER4 (h5_err_t, + "f=0x%p, face_idx=%llu, elem_idx=%llu, vertex_indices=0x%p", + f, + (long long unsigned)face_idx, + (long long unsigned)elem_idx, + vertex_indices); const h5_loc_idx_t* indices = h5tpriv_get_loc_elem_vertex_indices (f, elem_idx); h5_loc_idx_t idx; @@ -333,7 +377,12 @@ h5t_get_vertex_indices_of_tet ( const h5_loc_id_t entity_id, h5_loc_idx_t* vertex_indices ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER3 (h5_loc_idx_t, + "f=0x%p, entity_id=%llu, vertex_indices=0x%p", + f, + (long long unsigned)entity_id, + vertex_indices); + const h5_loc_idx_t elem_idx = h5tpriv_get_elem_idx (entity_id); const h5_loc_idx_t* indices = h5tpriv_get_loc_elem_vertex_indices ( f, elem_idx); diff --git a/src/h5core/h5t_openclose.c b/src/h5core/h5t_openclose.c index 0e4311b..ca1faf6 100644 --- a/src/h5core/h5t_openclose.c +++ b/src/h5core/h5t_openclose.c @@ -430,7 +430,9 @@ h5t_open_mesh ( h5_id_t id, const h5_oid_t type_id ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER3 (h5_err_t, + "f=0x%p, id=%lld, type_id=%u", + f, (long long)id, type_id); h5t_fdata_t* t = f->t; TRY (h5t_close_mesh (f)); @@ -479,7 +481,7 @@ static h5_err_t release_elems ( h5_file_t* const f ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER1 (h5_err_t, "f=0x%p", f); h5t_fdata_t* t = f->t; TRY( h5_free (t->loc_elems.data) ); t->loc_elems.data = NULL; @@ -497,7 +499,7 @@ static h5_err_t release_vertices ( h5_file_t* const f ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER1 (h5_err_t, "f=0x%p", f); h5t_fdata_t* t = f->t; TRY( h5_free (t->vertices) ); t->vertices = NULL; @@ -513,7 +515,7 @@ static h5_err_t release_memory ( h5_file_t* const f ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER1 (h5_err_t, "f=0x%p", f); TRY( h5tpriv_release_tags (f) ); TRY( h5tpriv_release_adjacency_structs (f) ); TRY( release_elems (f) ); @@ -525,7 +527,7 @@ h5_err_t h5t_close_mesh ( h5_file_t* const f ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER1 (h5_err_t, "f=0x%p", f); if (!(f->mode & H5_O_RDONLY)) { TRY (h5tpriv_write_mesh (f)); } @@ -543,7 +545,7 @@ h5t_set_level ( h5_file_t* const f, const h5t_lvl_idx_t level_id ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER2 (h5_err_t, "f=0x%p, level_id=%d", f, level_id); h5t_fdata_t* t = f->t; if ((level_id < 0) || (level_id >= t->num_leaf_levels)) @@ -566,12 +568,15 @@ h5tpriv_alloc_num_vertices ( h5_file_t* const f, const h5_size_t num ) { - H5_PRIV_API_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER2 (h5_err_t, + "f=0x%p, num=%llu", + f, + (long long unsigned)num); h5t_fdata_t* t = f->t; ssize_t size = num * sizeof (t->vertices[0]); TRY (t->vertices = h5_alloc (t->vertices, size)); TRY (h5priv_alloc_idxmap (&t->map_vertex_g2l, num)); - H5_CORE_API_RETURN (H5_SUCCESS); + H5_PRIV_API_RETURN (H5_SUCCESS); } /*! @@ -588,8 +593,8 @@ h5_err_t h5tpriv_close_file ( h5_file_t* const f /*!< IN: file handle */ ) { - H5_PRIV_API_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER1 (h5_err_t, "f=0x%p", f); TRY (h5t_close_mesh (f)); TRY (hdf5_close_group (f->t->meshes_gid)); - H5_CORE_API_RETURN (H5_SUCCESS); + H5_PRIV_API_RETURN (H5_SUCCESS); } diff --git a/src/h5core/h5t_retrieve.c b/src/h5core/h5t_retrieve.c index 7b24210..e12dcda 100644 --- a/src/h5core/h5t_retrieve.c +++ b/src/h5core/h5t_retrieve.c @@ -199,7 +199,9 @@ h5t_init_leaf_iterator ( h5t_iterator_t* iter, int codim ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER3 (h5_err_t, + "f=0x%p, iter=0x%p, codim=%d", + f, iter, codim); h5t_leaf_iterator_t* it = (h5t_leaf_iterator_t*)&iter->leaf; it->face_idx = 999; it->elem_idx = -1; @@ -222,7 +224,9 @@ h5t_init_boundary_face_iterator ( h5t_iterator_t* iter, int codim ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER3 (h5_err_t, + "f=0x%p, iter=0x%p, codim=%d", + f, iter, codim); h5t_leaf_iterator_t* it = (h5t_leaf_iterator_t*)iter; it->face_idx = 999; // something > max number of faces it->elem_idx = -1; @@ -247,7 +251,9 @@ h5t_init_mtag_iterator ( h5t_iterator_t* iter, const char* name ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER3 (h5_err_t, + "f=0x%p, iter=0x%p, name=\"%s\"", + f, iter, name); h5t_tag_iterator_t* it = (h5t_tag_iterator_t*)iter; TRY (h5t_open_mtagset (f, name, &it->tagset)); it->elem_idx = -1; @@ -263,7 +269,7 @@ h5t_release_entity_iterator ( h5t_iterator_t* iter ) { UNUSED_ARGUMENT (f); - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER1 (h5_err_t, "f=0x%p", f); H5_CORE_API_RETURN (h5_free (iter)); } @@ -272,7 +278,7 @@ h5t_iterate_entities ( h5_file_t* const f, h5t_iterator_t* iter ) { - H5_CORE_API_ENTER (h5_loc_id_t); + H5_CORE_API_ENTER2 (h5_err_t, "f=0x%p, iter=0x%p", f, iter); h5t_generic_iterator_t* it = (h5t_generic_iterator_t*)iter; H5_CORE_API_RETURN (it->iter (f, iter)); } @@ -283,7 +289,7 @@ h5t_end_iterate_entities ( h5t_iterator_t* iter ) { UNUSED_ARGUMENT (f); - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER2 (h5_err_t, "f=0x%p, iter=0x%p", f, iter); memset (iter, 0, sizeof(*iter)); h5t_leaf_iterator_t* it = (h5t_leaf_iterator_t*)iter; it->face_idx = -1; @@ -298,7 +304,11 @@ h5t_get_vertex_coords_by_index ( h5_loc_idx_t vertex_index, h5_float64_t P[3] ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER3 (h5_err_t, + "f=0x%p, vertex_index=%llu, P=0x%p", + f, + (long long unsigned)vertex_index, + P); h5_loc_vertex_t *vertex = &f->t->vertices[vertex_index]; memcpy ( P, &vertex->P, sizeof ( vertex->P ) ); H5_CORE_API_RETURN (H5_SUCCESS); @@ -310,7 +320,11 @@ h5t_get_vertex_coords_by_id ( h5_loc_id_t vertex_id, h5_float64_t P[3] ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER3 (h5_err_t, + "f=0x%p, vertex_id=%llu, P=0x%p", + f, + (long long unsigned)vertex_id, + P); h5_loc_idx_t vertex_index; TRY (h5t_get_vertex_index_of_vertex (f, vertex_id, &vertex_index)); TRY (h5t_get_vertex_coords_by_index (f, vertex_index, P)); diff --git a/src/h5core/h5t_store.c b/src/h5core/h5t_store.c index 40d486d..5ebea93 100644 --- a/src/h5core/h5t_store.c +++ b/src/h5core/h5t_store.c @@ -13,7 +13,8 @@ h5t_add_mesh ( h5_file_t* const f, const h5_oid_t mesh_type ) { - H5_CORE_API_ENTER (h5_id_t); + H5_CORE_API_ENTER2 (h5_id_t, + "f=0x%p, mesh_type=%d", f, mesh_type); h5_id_t mesh_id = 0; TRY (mesh_id = h5t_open_mesh (f, -1, mesh_type)); TRY (h5t_add_level (f)); @@ -76,7 +77,7 @@ h5t_lvl_idx_t h5t_add_level ( h5_file_t* const f ) { - H5_CORE_API_ENTER (h5t_lvl_idx_t); + H5_CORE_API_ENTER1 (h5t_lvl_idx_t, "f=0x%p", f); h5t_fdata_t* const t = f->t; if (f->mode == H5_O_RDONLY) { @@ -120,7 +121,9 @@ h5t_begin_store_vertices ( h5_file_t* const f, const h5_size_t num ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER2 (h5_err_t, + "f=0x%p, num=%llu", + f, (long long unsigned)num); h5t_fdata_t* const t = f->t; if (t->leaf_level < 0) { @@ -139,7 +142,11 @@ h5t_store_vertex ( const h5_glb_idx_t glb_id, /*!< global vertex id from mesher or -1 */ const h5_float64_t P[3] /*!< coordinates */ ) { - H5_CORE_API_ENTER (h5_loc_idx_t); + H5_CORE_API_ENTER3 (h5_loc_idx_t, + "f=0x%p, glb=id=%lld, P=0x%p", + f, + (long long unsigned)glb_id, + P); h5t_fdata_t* const t = f->t; /* @@ -166,7 +173,7 @@ h5_err_t h5t_end_store_vertices ( h5_file_t* const f ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER1 (h5_err_t, "f=0x%p", f); h5t_fdata_t* const t = f->t; t->num_vertices[t->leaf_level] = t->last_stored_vid+1; @@ -186,7 +193,9 @@ h5t_begin_store_elems ( h5_file_t* const f, const h5_size_t num ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER2 (h5_err_t, + "f=0x%p, num=%llu", + f, (long long unsigned)num); h5t_fdata_t* const t = f->t; size_t cur = t->leaf_level > 0 ? t->num_elems[t->leaf_level-1] : 0; @@ -221,7 +230,11 @@ h5t_store_elem ( const h5_loc_idx_t parent_idx, const h5_loc_idx_t* vertex_indices ) { - H5_CORE_API_ENTER (h5_loc_idx_t); + H5_CORE_API_ENTER3 (h5_loc_idx_t, + "f=0x%p, parent_idx=%lld, vertex_indices=0x%p", + f, + (long long)parent_idx, + vertex_indices); h5t_fdata_t* t = f->t; /* level set? */ @@ -275,7 +288,7 @@ h5_err_t h5t_end_store_elems ( h5_file_t* const f ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER1 (h5_err_t, "f=0x%p", f); h5t_fdata_t* const t = f->t; t->num_elems[t->leaf_level] = t->last_stored_eid+1; @@ -300,7 +313,8 @@ h5t_mark_entity ( h5_file_t* const f, const h5_loc_id_t entity_id ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER2 (h5_err_t, "f=0x%p, entity_id=%llu", + f, (long long unsigned)entity_id); h5t_fdata_t* const t = f->t; H5_CORE_API_RETURN (h5priv_insert_idlist (&t->marked_entities, entity_id, -1)); } @@ -330,7 +344,7 @@ h5_err_t h5t_pre_refine ( h5_file_t* const f ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER1 (h5_err_t, "f=0x%p", f); h5t_fdata_t* const t = f->t; unsigned int num_elems_to_refine = t->marked_entities->num_items; unsigned int num_elems_to_add = 0; @@ -361,7 +375,7 @@ h5_err_t h5t_refine_marked_elems ( h5_file_t* const f ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER1 (h5_err_t, "f=0x%p", f); h5t_fdata_t* const t = f->t; int i; for (i = 0; i < t->marked_entities->num_items; i++) { @@ -374,7 +388,7 @@ h5_err_t h5t_post_refine ( h5_file_t* const f ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER1 (h5_err_t, "f=0x%p", f); h5t_fdata_t* const t = f->t; TRY (h5t_end_store_vertices (f)); TRY (h5t_end_store_elems (f)); @@ -386,7 +400,7 @@ h5_err_t h5t_begin_refine_elems ( h5_file_t* const f ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER1 (h5_err_t, "f=0x%p", f); h5t_fdata_t* const t = f->t; /* @@ -402,7 +416,7 @@ h5_err_t h5t_end_refine_elems ( h5_file_t* const f ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER1 (h5_err_t, "f=0x%p", f); TRY (h5t_pre_refine (f)); TRY (h5t_refine_marked_elems (f)); TRY (h5t_post_refine (f)); @@ -413,7 +427,7 @@ h5_err_t h5t_create_index_set ( h5_file_t* const f ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER1 (h5_err_t, "f=0x%p", f); int codim; int dim = h5tpriv_ref_elem_get_dim (f->t); // todo: check tagset already exist diff --git a/src/h5core/h5t_tags.c b/src/h5core/h5t_tags.c index a14c128..08a02f4 100644 --- a/src/h5core/h5t_tags.c +++ b/src/h5core/h5t_tags.c @@ -105,7 +105,9 @@ h5t_mtagset_exists ( h5t_tagcontainer_t* ctn, char* name ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER3 (h5_err_t, + "f=0x%p, ctn=0x%p, name=\"%s\"", + f, ctn, name); H5_CORE_API_RETURN (tagset_exists (&f->t->mtags, name)); } @@ -127,7 +129,11 @@ add_tagset ( h5_id_t type, h5t_tagset_t** rtagset ) { - H5_PRIV_FUNC_ENTER (h5_err_t); + H5_PRIV_FUNC_ENTER5 (h5_err_t, + "f=0x%p, ctn=0x%p, name=\"%s\", type=%llu, rtagset=0x%p", + f, ctn, name, + (long long unsigned)type, + rtagset); h5t_fdata_t* t = f->t; // Initialize data structure for m-tagsets, if not already done. @@ -187,7 +193,10 @@ h5t_add_mtagset ( char* name, h5_id_t type ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER3 (h5_err_t, + "f=0x%p, name=\"%s\", type=%llu", + f, name, + (long long unsigned)type); h5t_fdata_t* t = f->t; H5_CORE_API_RETURN (add_tagset (f, &t->mtags, name, type, NULL)); } @@ -242,7 +251,9 @@ h5t_remove_mtagset ( h5_file_t* const f, const char name[] ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER2 (h5_err_t, + "f=0x%p, name=\"%s\"", + f, name); h5t_fdata_t* t = f->t; TRY (t->mtags.group_id = h5priv_open_group (f, t->mesh_gid, "Tags")); TRY (remove_tagset (f, &t->mtags, name)); @@ -254,7 +265,7 @@ h5_ssize_t h5t_get_num_mtagsets ( h5_file_t* const f ) { - H5_CORE_API_ENTER (h5_ssize_t); + H5_CORE_API_ENTER1 (h5_ssize_t, "f=0x%p", f); h5t_fdata_t* t = f->t; H5_CORE_API_RETURN (t->mtags.num_sets); } @@ -272,7 +283,7 @@ h5t_get_mtagsets ( h5_file_t* const f, char** names[] ) { - H5_CORE_API_ENTER (h5_ssize_t); + H5_CORE_API_ENTER2 (h5_ssize_t, "f=0x%p, names=0x%p", f, names); h5t_fdata_t* t = f->t; *names = t->mtags.names; H5_CORE_API_RETURN (t->mtags.num_sets); @@ -284,7 +295,9 @@ h5t_open_mtagset ( const char* name, h5t_tagset_t** retval ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER3 (h5_ssize_t, + "f=0x%p, name=\"%s\", retval=0x%p", + f, name, retval); h5t_fdata_t* t = f->t; void* __retval = NULL; TRY (h5priv_hsearch (&name, H5_FIND, &__retval, &t->mtags.sets)); @@ -305,7 +318,9 @@ h5t_get_mtagset_type_by_name ( h5_file_t* const f, char* name ) { - H5_CORE_API_ENTER (h5_id_t); + H5_CORE_API_ENTER2 (h5_ssize_t, + "f=0x%p, name=\"%s\"", + f, name); h5t_tagset_t* tagset; TRY (h5t_open_mtagset (f, name, &tagset)); H5_CORE_API_RETURN (tagset->type); @@ -326,7 +341,9 @@ h5t_get_mtagset_info ( char** name, h5_id_t* type ) { - H5_CORE_API_ENTER (h5_ssize_t); + H5_CORE_API_ENTER4 (h5_ssize_t, + "f=0x%p, idx=%lld, name=0x%p, type=0x%p", + f, idx, name, type); h5t_fdata_t* t = f->t; *name = t->mtags.names[idx]; void* __retval = NULL; @@ -655,7 +672,13 @@ h5t_set_mtag_by_name ( const size_t dim, void* val ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER5 (h5_err_t, + "f=0x%p, name=\"%s\", entity_id=%lld, dim=%llu, val=0x%p", + f, + name, + (long long)entity_id, + (long long unsigned)dim, + val); h5t_tagset_t* tagset; TRY (h5t_open_mtagset (f, name, &tagset)); h5_loc_idx_t face_id = h5tpriv_get_face_id (entity_id); @@ -681,7 +704,13 @@ h5t_get_tag ( size_t* const dim, void* const vals ) { - H5_CORE_API_ENTER (h5_ssize_t); + H5_CORE_API_ENTER5 (h5_err_t, + "f=0x%p, tagset=0x%p, entity_id=%lld, dim=0x%p, val=0x%p", + f, + tagset, + (long long)entity_id, + dim, + vals); h5_loc_idx_t face_id = h5tpriv_get_face_id (entity_id); h5_loc_idx_t elem_idx = h5tpriv_get_elem_idx (entity_id); H5_CORE_API_RETURN (get_tag (f, tagset, face_id, elem_idx, dim, vals)); @@ -706,7 +735,13 @@ h5t_get_mtag_by_name ( size_t* dim, void* vals ) { - H5_CORE_API_ENTER (h5_ssize_t); + H5_CORE_API_ENTER5 (h5_err_t, + "f=0x%p, name=\"%s\", entity_id=%lld, dim=0x%p, val=0x%p", + f, + name, + (long long)entity_id, + dim, + vals); h5t_tagset_t* tagset; TRY (h5t_open_mtagset (f, name, &tagset)); h5_loc_idx_t face_id = h5tpriv_get_face_id (entity_id); @@ -728,7 +763,11 @@ h5t_remove_mtag ( const h5_loc_id_t entity_id ) { UNUSED_ARGUMENT (f); - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER3 (h5_err_t, + "f=0x%p, tagset=0x%p, entity_id=%lld", + f, + tagset, + (long long)entity_id); h5_loc_idx_t face_id = h5tpriv_get_face_id (entity_id); h5_loc_idx_t elem_idx = h5tpriv_get_elem_idx (entity_id); H5_CORE_API_RETURN (remove_tag (tagset, face_id, elem_idx)); @@ -747,7 +786,11 @@ h5t_remove_mtag_by_name ( const char name[], const h5_loc_id_t entity_id ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER3 (h5_err_t, + "f=0x%p, name=\"%s\", entity_id=%lld", + f, + name, + (long long)entity_id); h5t_tagset_t* tagset; TRY (h5t_open_mtagset (f, name, &tagset)); h5_loc_idx_t face_id = h5tpriv_get_face_id (entity_id); @@ -1118,7 +1161,12 @@ h5t_get_mtagset_names_of_entity ( char* names[], const h5_size_t dim ) { - H5_CORE_API_ENTER (h5_ssize_t); + H5_CORE_API_ENTER4 (h5_err_t, + "f=0x%p, entity_id=%lld, names=0x%p, dim=%llu", + f, + (long long)entity_id, + names, + (long long unsigned)dim); H5_CORE_API_RETURN ( get_tagset_names_of_entity (&f->t->mtags, entity_id, names, dim)); } diff --git a/src/h5core/h5u_model.c b/src/h5core/h5u_model.c index 4d4e4c1..1c48300 100644 --- a/src/h5core/h5u_model.c +++ b/src/h5core/h5u_model.c @@ -5,7 +5,7 @@ h5_ssize_t h5u_get_num_particles ( h5_file_t *const f /*!< [in] Handle to open file */ ) { - H5_CORE_API_ENTER (h5_ssize_t); + H5_CORE_API_ENTER1 (h5_ssize_t, "f=0x%p", f); h5_int64_t nparticles; /* if a view exists, use its size as the number of particles */ @@ -58,9 +58,10 @@ h5u_set_num_particles ( const h5_size_t nparticles, /*!< [in] Number of particles */ const h5_size_t stride /*!< [in] Stride of particles in memory */ ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER3 (h5_ssize_t, + "f=0x%p, nparticles=%llu, stride=%llu", + f, nparticles, stride); struct h5u_fdata *u = f->u; - hsize_t hstride; hsize_t count; hsize_t start; @@ -170,15 +171,15 @@ h5_err_t h5u_has_view ( const h5_file_t *const f ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER1 (h5_ssize_t, "f=0x%p", f); H5_CORE_API_RETURN (f->u->viewindexed || (f->u->viewstart >= 0 && f->u->viewend >= 0)); } h5_err_t h5u_reset_view ( h5_file_t *const f - ) { - H5_CORE_API_ENTER (h5_err_t); + ) { + H5_CORE_API_ENTER1 (h5_ssize_t, "f=0x%p", f); struct h5u_fdata *u = f->u; u->viewstart = -1; @@ -198,7 +199,9 @@ h5u_set_view ( h5_int64_t start, /*!< [in] Start particle */ h5_int64_t end /*!< [in] End particle */ ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER3 (h5_ssize_t, + "f=0x%p, start=%lld, end=%lld", + f, start, end); hsize_t total; hsize_t stride = 1; hsize_t hstart; @@ -275,7 +278,9 @@ h5u_set_view_indices ( const h5_id_t *const indices, /*!< [in] List of indices */ const h5_size_t nelems /*!< [in] Size of list */ ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER3 (h5_err_t, + "f=0x%p, indices=0x%p, nelems=%llu", + f, indices, nelems); hsize_t total; hsize_t dmax = H5S_UNLIMITED; struct h5u_fdata *u = f->u; @@ -329,7 +334,9 @@ h5u_get_view ( h5_int64_t *start, h5_int64_t *end ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER3 (h5_err_t, + "f=0x%p, start=0x%p, end=0x%p", + f, start, end); struct h5u_fdata *u = f->u; if ( u->viewindexed ) { @@ -363,7 +370,7 @@ h5_int64_t h5u_set_canonical_view ( h5_file_t *const f ) { - H5_CORE_API_ENTER (h5_int64_t); + H5_CORE_API_ENTER1 (h5_int64_t, "f=0x%p", f); TRY( h5u_reset_view ( f ) ); h5_int64_t start = 0; @@ -402,7 +409,7 @@ h5_ssize_t h5u_get_num_datasets ( h5_file_t *const f /*!< [in] Handle to open file */ ) { - H5_CORE_API_ENTER (h5_ssize_t); + H5_CORE_API_ENTER1 (h5_int64_t, "f=0x%p", f); H5_CORE_API_RETURN (hdf5_get_num_datasets (f->step_gid)); } @@ -419,7 +426,15 @@ h5u_get_dataset_info ( h5_int64_t *type, /*!< [out] Type of data in dataset */ h5_size_t *nelem /*!< [out] Number of elements. */ ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER6 (h5_int64_t, + "f=0x%p, " + "idx=%llu, " + "dataset_name=\"%s\", len_dataset_name=%llu, " + "type=0x%p, nelem=0x%p", + f, + idx, + dataset_name, len_dataset_name, + type, nelem); TRY (hdf5_get_name_of_dataset_by_idx ( f->step_gid, idx, @@ -447,7 +462,7 @@ h5u_set_chunk ( h5_file_t *const f, const h5_size_t size ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER2 (h5_int64_t, "f=0x%p, size=%llu", f, size); if ( size == 0 ) { h5_info ("Disabling chunking" ); @@ -468,7 +483,9 @@ h5u_get_chunk ( const char *name, /*!< IN: name of dataset */ h5_size_t *size /*!< OUT: chunk size in particles */ ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER3 (h5_int64_t, + "f=0x%p, name=\"%s\", size=0x%p", + f, name, size); hid_t dataset_id; hid_t plist_id; hsize_t hsize; diff --git a/src/h5core/h5u_readwrite.c b/src/h5core/h5u_readwrite.c index c5c736d..46d6c51 100644 --- a/src/h5core/h5u_readwrite.c +++ b/src/h5core/h5u_readwrite.c @@ -8,7 +8,9 @@ h5u_read_data ( void *data, /*!< [out] Array of data */ const hid_t type ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER4 (h5_err_t, + "f=0x%p, name=\"%s\", data=0x%p, type=%d", + f, name, data, type); CHECK_TIMEGROUP (f); struct h5u_fdata *u = f->u; @@ -106,7 +108,9 @@ h5u_write_data ( const void *data, /*!< IN: Array to commit to disk */ const hid_t type /*!< IN: Type of data */ ) { - H5_CORE_API_ENTER (h5_err_t); + H5_CORE_API_ENTER4 (h5_err_t, + "f=0x%p, name=\"%s\", data=0x%p, type=%d", + f, name, data, type); CHECK_TIMEGROUP( f ); CHECK_WRITABLE_MODE( f ); diff --git a/src/include/H5Block.h b/src/include/H5Block.h index 02df32e..a275875 100644 --- a/src/include/H5Block.h +++ b/src/include/H5Block.h @@ -95,7 +95,7 @@ H5Block3dSetHalo ( const h5_size_t k /*!< IN: radius in \c k */ ); -h5_size_t +h5_ssize_t H5BlockGetNumFields ( h5_file_t *const f /*!< IN: file handle */ ); diff --git a/src/include/H5Fed_inquiry.h b/src/include/H5Fed_inquiry.h index 4a7aa50..46b29df 100644 --- a/src/include/H5Fed_inquiry.h +++ b/src/include/H5Fed_inquiry.h @@ -26,10 +26,10 @@ h5_ssize_t H5FedGetNumMeshes ( h5_file_t * const f, const h5_oid_t type_id ); h5_ssize_t H5FedGetNumLevels ( h5_file_t * const f ); h5t_lvl_idx_t H5FedGetLevel ( h5_file_t * const f ); h5_ssize_t H5FedGetNumVertices ( h5_file_t * const f ); -h5_ssize_t H5FedGetNumVerticesCnode ( h5_file_t * const f, const h5_id_t cnode ); +h5_ssize_t H5FedGetNumVerticesCnode ( h5_file_t * const f, const int cnode ); h5_ssize_t H5FedGetNumVerticesTotal ( h5_file_t * const f ); h5_ssize_t H5FedGetNumElements ( h5_file_t * const f ); -h5_ssize_t H5FedGetNumElementsCnode ( h5_file_t * const f, const h5_id_t cnode ); +h5_ssize_t H5FedGetNumElementsCnode ( h5_file_t * const f, const int cnode ); h5_ssize_t H5FedGetNumElementsTotal ( h5_file_t * const f ); #ifdef __cplusplus diff --git a/src/include/h5core/h5_core.h b/src/include/h5core/h5_core.h index 8365ed6..cae1fa1 100644 --- a/src/include/h5core/h5_core.h +++ b/src/include/h5core/h5_core.h @@ -48,6 +48,21 @@ extern char* h5_rfmts[]; h5_debug ("(" fmt ")", a1, a2, a3, a4, a5); \ } +#define __FUNC_ARGS6(fmt, a1, a2, a3, a4, a5, a6, mask) \ + if (h5_debug_level & mask ) { \ + h5_debug ("(" fmt ")", a1, a2, a3, a4, a5, a6); \ + } + +#define __FUNC_ARGS7(fmt, a1, a2, a3, a4, a5, a6, a7, mask) \ + if (h5_debug_level & mask ) { \ + h5_debug ("(" fmt ")", a1, a2, a3, a4, a5, a6, a7); \ + } + +#define __FUNC_ARGS8(fmt, a1, a2, a3, a4, a5, a6, a7, a8, mask) \ + if (h5_debug_level & mask ) { \ + h5_debug ("(" fmt ")", a1, a2, a3, a4, a5, a6, a7, a8); \ + } + #define __FUNC_ENTER0(type, mask) \ __FUNC_ENTER(type); \ __FUNC_ARGS0(mask); @@ -72,6 +87,18 @@ extern char* h5_rfmts[]; __FUNC_ENTER(type); \ __FUNC_ARGS5(fmt, a1, a2, a3, a4, a5, mask); +#define __FUNC_ENTER6(type, fmt, a1, a2, a3, a4, a5, a6, mask) \ + __FUNC_ENTER(type); \ + __FUNC_ARGS6(fmt, a1, a2, a3, a4, a5, a6, mask); + +#define __FUNC_ENTER7(type, fmt, a1, a2, a3, a4, a5, a6, a7, mask) \ + __FUNC_ENTER(type); \ + __FUNC_ARGS7(fmt, a1, a2, a3, a4, a5, a6, a7, mask); + +#define __FUNC_ENTER8(type, fmt, a1, a2, a3, a4, a5, a6, a7, a8, mask) \ + __FUNC_ENTER(type); \ + __FUNC_ARGS8(fmt, a1, a2, a3, a4, a5, a6, a7, a8, mask); + #define __FUNC_LEAVE(expr) { \ ret_value = expr; \ goto done; \ @@ -91,32 +118,48 @@ done: \ return ret_value; -#define H5_API_ENTER(type) \ +#define H5_API_ENTER_(type) \ if (!h5_initialized) { \ h5_initialize(); \ } \ __FUNC_ENTER(type); +#define H5_API_ENTER0(type) \ + H5_API_ENTER_(type); \ + __FUNC_ARGS0(H5_DEBUG_API) + #define H5_API_ENTER1(type, fmt, a1) \ - H5_API_ENTER(type); \ + H5_API_ENTER_(type); \ __FUNC_ARGS1(fmt, a1, H5_DEBUG_API) #define H5_API_ENTER2(type, fmt, a1, a2) \ - H5_API_ENTER(type); \ + H5_API_ENTER_(type); \ __FUNC_ARGS2(fmt, a1,a2, H5_DEBUG_API) #define H5_API_ENTER3(type, fmt, a1, a2, a3) \ - H5_API_ENTER(type); \ + H5_API_ENTER_(type); \ __FUNC_ARGS3(fmt, a1,a2,a3, H5_DEBUG_API) #define H5_API_ENTER4(type, fmt, a1, a2, a3, a4) \ - H5_API_ENTER(type); \ + H5_API_ENTER_(type); \ __FUNC_ARGS4(fmt, a1,a2,a3, a4, H5_DEBUG_API) #define H5_API_ENTER5(type, fmt, a1, a2, a3, a4, a5) \ - H5_API_ENTER(type); \ + H5_API_ENTER_(type); \ __FUNC_ARGS5(fmt, a1,a2,a3, a4, a5, H5_DEBUG_API) +#define H5_API_ENTER6(type, fmt, a1, a2, a3, a4, a5, a6) \ + H5_API_ENTER_(type); \ + __FUNC_ARGS6(fmt, a1,a2,a3, a4, a5, a6, H5_DEBUG_API) + +#define H5_API_ENTER7(type, fmt, a1, a2, a3, a4, a5, a6, a7) \ + H5_API_ENTER_(type); \ + __FUNC_ARGS7(fmt, a1,a2,a3, a4, a5, a6, a7, H5_DEBUG_API) + +#define H5_API_ENTER8(type, fmt, a1, a2, a3, a4, a5, a6, a7, a8) \ + H5_API_ENTER_(type); \ + __FUNC_ARGS8(fmt, a1,a2,a3, a4, a5, a6, a7, a8, H5_DEBUG_API) + #define H5_API_LEAVE(expr) __FUNC_LEAVE(expr) #define H5_API_RETURN(expr) __FUNC_RETURN(expr, H5_DEBUG_API); diff --git a/src/include/h5core/h5_errno.h b/src/include/h5core/h5_errno.h index e535dd8..8ed74aa 100644 --- a/src/include/h5core/h5_errno.h +++ b/src/include/h5core/h5_errno.h @@ -11,13 +11,15 @@ #define H5_ERR_BADFD -77 #define H5_ERR_LAYOUT -100 -#define H5_ERR_NOENT -101 - -#define H5_ERR_INIT -200 -#define H5_ERR_NOENTRY -201 +#define H5_ERR_NOENTRY -101 #define H5_ERR_MPI -201 #define H5_ERR_HDF5 -202 +#define H5_ERR_H5 -203 +#define H5_ERR_H5PART -204 +#define H5_ERR_H5BLOCK -205 +#define H5_ERR_H5FED -206 + #define H5_ERR_INTERNAL -253 #define H5_ERR_NOT_IMPLEMENTED -254