/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * Copyright by The HDF Group. * * Copyright by the Board of Trustees of the University of Illinois. * * All rights reserved. * * * * This file is part of HDF5. The full HDF5 copyright notice, including * * terms governing use, modification, and redistribution, is contained in * * the COPYING file, which can be found at the root of the source code * * distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. * * If you do not have access to either file, you may request a copy from * * help@hdfgroup.org. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ #ifndef _H5LTf90proto_H #define _H5LTf90proto_H #include "H5public.h" #include "H5f90i.h" #include #include /* These definitions should match those in fortran/src/H5f90kit.c */ H5_FCDLL char* HD5f2cstring (_fcd fdesc, size_t len); H5_FCDLL void HD5packFstring (char *src, char *dest, size_t len); /* * Functions from H5DSfc.c */ HDF5_HL_F90CSTUBDLL int_f h5dsset_scale_c(hid_t_f *dsid, _fcd dimname, size_t_f *dimnamelen); HDF5_HL_F90CSTUBDLL int_f h5dsattach_scale_c( hid_t_f *did, hid_t_f *dsid, int_f *idx); HDF5_HL_F90CSTUBDLL int_f h5dsdetach_scale_c( hid_t_f *did, hid_t_f *dsid, int_f *idx); HDF5_HL_F90CSTUBDLL int_f h5dsis_attached_c( hid_t_f *did, hid_t_f *dsid, int_f *idx, int_f *c_is_attached); HDF5_HL_F90CSTUBDLL int_f h5dsis_scale_c(hid_t_f *did, int_f *is_scale); HDF5_HL_F90CSTUBDLL int_f h5dsset_label_c(hid_t_f *did, int_f *idx, _fcd label, size_t_f *labellen); HDF5_HL_F90CSTUBDLL int_f h5dsget_label_c(hid_t_f *did, int_f *idx, _fcd label, size_t_f *size); HDF5_HL_F90CSTUBDLL int_f h5dsget_scale_name_c(hid_t_f *did, _fcd label, size_t_f *size); HDF5_HL_F90CSTUBDLL int_f h5dsget_num_scales_c( hid_t_f *did, int_f *idx, int_f *num_scales); /* * Functions from H5LTfc.c */ HDF5_HL_F90CSTUBDLL int_f h5ltmake_dataset_c (hid_t_f *loc_id, size_t_f *namelen, _fcd name, int_f *rank, hsize_t_f *dims, hid_t_f *type_id, void *buf); HDF5_HL_F90CSTUBDLL int_f h5ltread_dataset_c (hid_t_f *loc_id, size_t_f *namelen, _fcd name, hid_t_f *type_id, void *buf); HDF5_HL_F90CSTUBDLL int_f h5ltset_attribute_c(hid_t_f *loc_id, size_t_f *namelen, _fcd dsetname, size_t_f *attrnamelen, _fcd attrname, size_t_f *size, void *buf, char *dtype, size_t_f *sizeof_val); HDF5_HL_F90CSTUBDLL int_f h5ltget_attribute_c(hid_t_f *loc_id, size_t_f *namelen, _fcd dsetname, size_t_f *attrnamelen, _fcd attrname, void *buf, char* dtype, size_t_f *sizeof_val); HDF5_HL_F90CSTUBDLL int_f h5ltget_attribute_string_c(hid_t_f *loc_id, size_t_f *namelen, _fcd dsetname, size_t_f *attrnamelen, _fcd attrname, _fcd buf, size_t_f *buf_size); HDF5_HL_F90CSTUBDLL int_f h5ltget_dataset_ndims_c(hid_t_f *loc_id, size_t_f *namelen, _fcd name, int_f *rank); HDF5_HL_F90CSTUBDLL int_f h5ltfind_dataset_c(hid_t_f *loc_id, size_t_f *namelen, _fcd name); HDF5_HL_F90CSTUBDLL int_f h5ltget_dataset_info_c(hid_t_f *loc_id, size_t_f *namelen, _fcd name, hsize_t_f *dims, int_f *type_class, size_t_f *type_size); HDF5_HL_F90CSTUBDLL int_f h5ltget_attribute_ndims_c(hid_t_f *loc_id, size_t_f *namelen, _fcd dsetname, size_t_f *attrnamelen, _fcd attrname, int_f *rank); HDF5_HL_F90CSTUBDLL int_f h5ltget_attribute_info_c(hid_t_f *loc_id, size_t_f *namelen, _fcd name, size_t_f *attrnamelen, _fcd attrname, hsize_t_f *dims, int_f *type_class, size_t_f *type_size); HDF5_HL_F90CSTUBDLL int_f h5ltmake_dataset_string_c (hid_t_f *loc_id, size_t_f *namelen, _fcd name, size_t_f *buflen, char *buf); HDF5_HL_F90CSTUBDLL int_f h5ltread_dataset_string_c (hid_t_f *loc_id, size_t_f *namelen, _fcd name, char *buf); HDF5_HL_F90CSTUBDLL int_f h5ltpath_valid_c(hid_t_f *loc_id, _fcd path, size_t_f *pathlen, int_f *check_object_valid_c); /*------------------------------------------------------------------------- * Image *------------------------------------------------------------------------- */ HDF5_HL_F90CSTUBDLL int_f h5immake_image_8bit_c (hid_t_f *loc_id, size_t_f *namelen, _fcd name, hsize_t_f *width, hsize_t_f *height, int_f *buf); HDF5_HL_F90CSTUBDLL int_f h5imread_image_c (hid_t_f *loc_id, size_t_f *namelen, _fcd name, int_f *buf); HDF5_HL_F90CSTUBDLL int_f h5immake_image_24bit_c (hid_t_f *loc_id, size_t_f *namelen, _fcd name, size_t_f *ilen, _fcd il, hsize_t_f *width, hsize_t_f *height, void *buf); HDF5_HL_F90CSTUBDLL int_f h5imget_image_info_c(hid_t_f *loc_id, size_t_f *namelen, _fcd name, hsize_t_f *width, hsize_t_f *height, hsize_t_f *planes, hsize_t_f *npals, size_t_f *ilen, _fcd interlace); HDF5_HL_F90CSTUBDLL int_f h5imis_image_c(hid_t_f *loc_id, size_t_f *namelen, _fcd name); HDF5_HL_F90CSTUBDLL int_f h5immake_palette_c (hid_t_f *loc_id, size_t_f *namelen, _fcd name, hsize_t_f *dims, void *buf); HDF5_HL_F90CSTUBDLL int_f h5imlink_palette_c (hid_t_f *loc_id, size_t_f *namelen, _fcd name, size_t_f *ilen, _fcd pal_name); HDF5_HL_F90CSTUBDLL int_f h5imunlink_palette_c (hid_t_f *loc_id, size_t_f *namelen, _fcd name, size_t_f *ilen, _fcd pal_name); HDF5_HL_F90CSTUBDLL int_f h5imget_npalettes_c(hid_t_f *loc_id, size_t_f *namelen, _fcd name, hsize_t_f *npals); HDF5_HL_F90CSTUBDLL int_f h5imget_palette_info_c(hid_t_f *loc_id, size_t_f *namelen, _fcd name, int_f *pal_number, hsize_t_f *dims); HDF5_HL_F90CSTUBDLL int_f h5imget_palette_c(hid_t_f *loc_id, size_t_f *namelen, _fcd name, int_f *pal_number, void *buf); HDF5_HL_F90CSTUBDLL int_f h5imis_palette_c(hid_t_f *loc_id, size_t_f *namelen, _fcd name); /*------------------------------------------------------------------------- * Table *------------------------------------------------------------------------- */ HDF5_HL_F90CSTUBDLL int_f h5tbmake_table_c(size_t_f *namelen1, _fcd name1, hid_t_f *loc_id, size_t_f *namelen, _fcd name, hsize_t_f *nfields, hsize_t_f *nrecords, size_t_f *type_size, size_t_f *field_offset, hid_t_f *field_types, hsize_t_f *chunk_size, int_f *compress, size_t_f *char_len_field_names, /* field_names lengths */ size_t_f *max_char_size_field_names, /* char len of fields */ _fcd buf); /* field_names */ HDF5_HL_F90CSTUBDLL int_f h5tbread_table_c(hid_t_f *loc_id, _fcd name, size_t_f *namelen, hsize_t_f *nfields, size_t_f *dst_size, size_t_f *dst_offset, size_t_f *dst_sizes, void *dst_buf); HDF5_HL_F90CSTUBDLL int_f h5tbmake_table_ptr_c(size_t_f *namelen1, _fcd name1, hid_t_f *loc_id, size_t_f *namelen, _fcd name, hsize_t_f *nfields, hsize_t_f *nrecords, size_t_f *type_size, size_t_f *field_offset, hid_t_f *field_types, hsize_t_f *chunk_size, void *fill_data, int_f *compress, size_t_f *char_len_field_names, /* field_names lengths */ size_t_f *max_char_size_field_names, /* char len of fields */ char *field_names, /* field_names */ void *data); HDF5_HL_F90CSTUBDLL int_f h5tbwrite_field_name_c(hid_t_f *loc_id, size_t_f *namelen, _fcd name, size_t_f *namelen1, _fcd field_name, hsize_t_f *start, hsize_t_f *nrecords, size_t_f *type_size, void *buf); HDF5_HL_F90CSTUBDLL int_f h5tbread_field_name_c(hid_t_f *loc_id, size_t_f *namelen, _fcd name, size_t_f *namelen1, _fcd field_name, hsize_t_f *start, hsize_t_f *nrecords, size_t_f *type_size, void *buf); HDF5_HL_F90CSTUBDLL int_f h5tbwrite_field_index_c(hid_t_f *loc_id, size_t_f *namelen, _fcd name, int_f *field_index, hsize_t_f *start, hsize_t_f *nrecords, size_t_f *type_size, void *buf); HDF5_HL_F90CSTUBDLL int_f h5tbread_field_index_c(hid_t_f *loc_id, size_t_f *namelen, _fcd name, int_f *field_index, hsize_t_f *start, hsize_t_f *nrecords, size_t_f *type_size, void *buf); HDF5_HL_F90CSTUBDLL int_f h5tbinsert_field_c(hid_t_f *loc_id, size_t_f *namelen, _fcd name, size_t_f *namelen1, _fcd field_name, hid_t_f *field_type, int_f *position, void *buf); HDF5_HL_F90CSTUBDLL int_f h5tbdelete_field_c(hid_t_f *loc_id, size_t_f *namelen, _fcd name, size_t_f *namelen1, _fcd field_name); HDF5_HL_F90CSTUBDLL int_f h5tbget_table_info_c(hid_t_f *loc_id, size_t_f *namelen, _fcd name, hsize_t_f *nfields, hsize_t_f *nrecords); HDF5_HL_F90CSTUBDLL int_f h5tbget_field_info_c(hid_t_f *loc_id, size_t_f *namelen, _fcd name, hsize_t_f *nfields, size_t_f *field_sizes, size_t_f *field_offsets, size_t_f *type_size, size_t_f *namelen2, size_t_f *lenmax, _fcd field_names, size_t_f *maxlen_out); #endif /* _H5LTf90proto_H */