h)K'      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!""""""""""""""""""""""""""""""""""""""""""""""""#########$$$$$$$$$$%%%%%%%%%&&&&&&&&&&&&&&&&&&&&&&''''''''''((((((((((((((((((((((((((()))))))))))))))))))))))))*********+++++++++++++++,,,,,,,,,,,,,,,,,----------..........////////////0000000001111111111111111111111111111111122222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222223333333333333333333333333333333333333333333333333333333333333333333333333333333344444444444444444444444444444444445555555555555555555555555555555555666666666666666666666666666666666666666666666666666666666666666666666666666667777777777777777777777777777777777777777777888888888888888888888888888888888888888888888888888888888888888888888899999999999999999999999999999999:::::::::::::::::::;1.8.13< Safe-InferredK     Safe-InferredL !"#$%&'( !"#$%&'( Safe-InferredLc/00/ Safe-InferredP3hdf5;In-out parameter. Memory is allocated and freed by caller.5hdf5Out by-ref array; length is specified by caller, memory is allocated and freed by caller7hdf5=Out by-ref parameter; memory is allocated and freed by caller9hdf58In by-ref array; memory is allocated and freed by caller;hdf5BCDEFGHIJKLMNOPQRSTUV&=A@?>;<9:BCDE7856FGHIJKLMNOPQR3412STUVNonei vhdf5Storage info struct used by  H5O_info_t and  H5F_info_tzhdf5The types of indices on links in groups/attributes on objects. Primarily used for " by index" routines and for iterating over links in groups/attributes on objects.|hdf5Common iteration ordershdf5C signed size type. This is a semi-standard POSIX type that isn't in the Foreign.C.Types module. It is in System.Posix.Types, but I'm not sure whether that module is available on all platforms.hdf5Boolean type. Successful return values are zero (false) or positive (true). The typical true value is 1 but don't bet on it. Boolean functions cannot fail. Functions that return htri_t however return zero (false), positive (true), or negative (failure). The proper way to test for truth from a htri_t function is:  if ((retval = H5Tcommitted(type))>0) { printf("data type is committedn"); } else if (!retval) { printf("data type is not committedn"); } else { printf("error determining whether data type is committedn"); } hdf5Status return values. Failed integer functions in HDF5 result almost always in a negative value (unsigned failing functions sometimes return zero for failure) while successfull return is non-negative (often zero). The negative failure value is most commonly -1, but don't bet on it. The proper way to detect failure is something like: if((dset = H5Dopen2(file, name)) < 0) fprintf(stderr, "unable to open the requested datasetn"); hdf5Purpose: Verifies that the arguments match the version numbers compiled into the library. This function is intended to be called from user to verify that the versions of header files compiled into the application match the version of the hdf5 library.*Return: Success: 0, Failure: calls abort() herr_t H5check_version(unsigned majnum, unsigned minnum, unsigned relnum);hdf5Returns the library version numbers through arguments. MAJNUM will be the major revision number of the library, MINNUM the minor revision number, and RELNUM the release revision number.Note: When printing an HDF5 version number it should be printed as printf("%u.%u.%u", maj, min, rel) or printf("version %u.%u release %u", maj, min, rel)3Return: Non-negative on success/Negative on failure herr_t H5get_libversion(unsigned *majnum, unsigned *minnum, unsigned *relnum);hdf5Sets limits on the different kinds of free lists. Setting a value of -1 for a limit means no limit of that type. These limits are global for the entire library. Each "global" limit only applies to free lists of that type, so if an application sets a limit of 1 MB on each of the global lists, up to 3 MB of total storage might be allocated (1MB on each of regular, array and block type lists).The settings for block free lists are duplicated to factory free lists. Factory free list limits cannot be set independently currently. Parameters:  reg_global_lim :: CInt 0The limit on all "regular" free list memory used reg_list_lim :: CInt 4The limit on memory used in each "regular" free list arr_global_lim :: CInt .The limit on all "array" free list memory used arr_list_lim :: CInt 2The limit on memory used in each "array" free list blk_global_lim :: CInt .The limit on all "block" free list memory used blk_list_lim :: CInt 2The limit on memory used in each "block" free list4Return: non-negative on success, negative on failure herr_t H5set_free_list_limits (int reg_global_lim, int reg_list_lim, int arr_global_lim, int arr_list_lim, int blk_global_lim, int blk_list_lim);hdf5Walks through all the garbage collection routines for the library, which are supposed to free any unused memory they have allocated.These should probably be registered dynamicly in a linked list of functions to call, but there aren't that many right now, so we hard-wire them...4Return: non-negative on success, negative on failure herr_t H5garbage_collect(void);hdf5Indicates that the library is not to clean up after itself when the application exits by calling exit() or returning from main(). This function must be called before any other HDF5 function or constant is used or it will have no effect.If this function is used then certain memory buffers will not be de-allocated nor will open files be flushed automatically. The application may still call H5close() explicitly to accomplish these things.Return: non-negative on success, negative if this function is called more than once or if it is called too late. herr_t H5dont_atexit(void);hdf50Terminate the library and release all resources.3Return: Non-negative on success/Negative on failure herr_t H5close(void);hdf5Check that the HDF5 library that is linked with the current executable is the same version that these bindings were compiled against. Returns 0 on success, calls abort() on failure.hdf5"For major interface/format changeshdf5"For minor interface/format changeshdf5%For tweaks, bug-fixes, or developmenthdf5For pre-releases like snap0hdf5, et al., wrapped up as a hdf5Full version stringhdf5 Unknown orderhdf5Increasing orderhdf5Decreasing orderhdf5(No particular order, whatever is fastesthdf5Number of iteration ordershdf5Iteration callback return value indicating that iteration should stop and report an error.hdf5Iteration callback return value indicating that iteration should continue.hdf5Iteration callback return value indicating that iteration should stop without error.Actually, any postive value will cause the iterator to stop and pass back that positive value to the function that called the iteratorhdf5Unknown index typehdf5Index on nameshdf5Index on creation orderhdf5Number of indices definedhdf5Initialize the library. This is normally called automatically, but if you find that an HDF5 library function is failing inexplicably, then try calling this function first.3Return: Non-negative on success/Negative on failure herr_t H5open(void);vyxwz{|}~~|}z{vyxw Safe-Inferred'hdf5.Type of the function to compare objects & keyshdf5Function for freeing objects. This function will be called with an object ID type number and a pointer to the object. The function should free the object and return non-negative to indicate that the object can be removed from the ID type. If the function returns negative (failure) then the object will remain in the ID type.hdf5 Type of atoms to return to usershdf5Library type valueshdf5Check if the given id is valid. An id is valid if it is in use and has an application reference count of at least 1. htri_t H5Iis_valid(hid_t id);hdf5Check whether the given type is currently registered with the library. 'htri_t H5Itype_exists(H5I_type_t type);hdf5Returns the number of members in a type. The public interface throws an error if the supplied type does not exist. This is different than the private interface, which will just return 0.-Returns zero on success, negative on failure. :herr_t H5Inmembers(H5I_type_t type, hsize_t *num_members);hdf5Apply function func to each member of type 'type'5 and return a pointer to the first object for which func returns non-zero. The func- should take a pointer to the object and the key as arguments and return non-zero to terminate the search (zero to continue).Limitation: Currently there is no way to start searching from where a previous search left off./Returns the first object in the type for which func% returns non-zero. Returns NULL if func- returned zero for every object in the type. void *H5Isearch(H5I_type_t type, H5I_search_func_t func, void *key);hdf5Retrieves the number of references outstanding for a type. Returns a negative value on failure. %int H5Iget_type_ref(H5I_type_t type);hdf5Decrements the reference count on an entire type of IDs. If the type reference count becomes zero then the type is destroyed along with all atoms in that type regardless of their reference counts. Destroying IDs involves calling the free-func for each ID's object and then adding the ID struct to the ID free list.Returns the number of references to the type on success; a return value of 0 means that the type will have to be re-initialized before it can be used again (and should probably be set to H5I_UNINIT). %int H5Idec_type_ref(H5I_type_t type);hdf5?Increments the number of references outstanding for an ID type.On success, returns the new reference count. On failure, returns a negative value. %int H5Iinc_type_ref(H5I_type_t type);hdf5Destroys a type along with all atoms in that type regardless of their reference counts. Destroying IDs involves calling the free-func for each ID's object and then adding the ID struct to the ID free list.-Returns zero on success, negative on failure.(herr_t H5Idestroy_type(H5I_type_t type);hdf5Removes all objects from the type, calling the free function for each object regardless of the reference count.5Returns non-negative on success, negative on failure. 5herr_t H5Iclear_type(H5I_type_t type, hbool_t force);hdf5=Creates a new type of ID's to give out. A specific number (reserved) of type entries may be reserved to enable "constant" values to be handed out which are valid IDs in the type, but which do not map to any data structures and are not allocated dynamically later.  hash_size7 is the minimum hash table size to use for the type.  free_func is called with an object pointer when the object is removed from the type.On success, returns the type ID of the new type. On failure, returns . H5I_type_t H5Iregister_type(size_t hash_size, unsigned reserved, H5I_free_t free_func);hdf5Retrieves the number of references outstanding for an ID. Returns a negative value on failure. int H5Iget_ref(hid_t id);hdf5Decrements the number of references outstanding for an ID. If the reference count for an ID reaches zero, the object will be closed.On success, returns the new reference count. On failure, returns a negative value. int H5Idec_ref(hid_t id);hdf5:Increments the number of references outstanding for an ID.On success, returns the new reference count. On failure, returns a negative value. int H5Iinc_ref(hid_t id);hdf5%Gets a name of an object from its ID.If name is non-NULL then write up to size bytes into that buffer and always return the length of the entry name. Otherwise size is ignored and the function does not store the name, just returning the number of characters required to store the name. If an error occurs then the buffer pointed to by name (NULL or non-NULL) is unchanged and the function returns a negative value. If a zero is returned for the name's length, then there is no name associated with the ID. >ssize_t H5Iget_name(hid_t id, char *name/*out*/, size_t size);hdf5Obtains the file ID given an object ID. User has to close this ID. Returns a negative value on failure. hid_t H5Iget_file_id(hid_t id);hdf5Retrieves the number of references outstanding for a type. Returns negative on failure. !H5I_type_t H5Iget_type(hid_t id);hdf5Removes the specified ID from its type, first checking that the type of the ID and the type type are the same.On success, returns a pointer to the object that was removed, the same pointer which would have been found by calling  h5i_object. On failure, returns NULL. 5void *H5Iremove_verify(hid_t id, H5I_type_t id_type);hdf5Find an object pointer for the specified ID, verifying that it is in a particular type.On success, returns a non-null object pointer associated with the specified ID. On failure, returns NULL. 5void *H5Iobject_verify(hid_t id, H5I_type_t id_type);hdf5 Registers an object in a 'type' and returns an ID for it. This routine does _not_ check for unique-ness of the objects, if you register an object twice, you will get two different IDs for it. This routine does make certain that each ID in a type is unique. IDs are created by getting a unique number for the type the ID is in and incorporating the type into the ID which is returned to the user.4Return: Success: New object id. Failure: Negative 7hid_t H5Iregister(H5I_type_t type, const void *object);hdf5uninitialized typehdf5 invalid Typehdf5type ID for File objectshdf5type ID for Group objectshdf5type ID for Datatype objectshdf5type ID for Dataspace objectshdf5type ID for Dataset objectshdf5type ID for Attribute objectshdf5type ID for virtual file layerhdf5)type ID for generic property list classeshdf5"type ID for generic property listshdf5type ID for error classeshdf5type ID for error messageshdf5type ID for error stackshdf5number of library typeshdf5=An invalid object ID. This is also negative for error return.== Safe-Inferred+hdf5The filter table maps filter identification numbers to structs that contain a pointers to the filter function and timing statistics.(Version number of the H5Z_class_t structFilter ID number!Does this filter have an encoder? Does this filter have a decoder?Comment for debugging%The "can apply" callback for a filter%The "set local" callback for a filterThe actual filter functionhdf5Before a dataset gets created, the "can_apply" callbacks for any filters used in the dataset creation property list are called with the dataset's dataset creation property list, the dataset's datatype and a dataspace describing a chunk (for chunked dataset storage).The "can_apply" callback must determine if the combination of the dataset creation property list setting, the datatype and the dataspace represent a valid combination to apply this filter to. For example, some cases of invalid combinations may involve the filter not operating correctly on certain datatypes (or certain datatype sizes), or certain sizes of the chunk dataspace.The "can_apply" callback can be the NULL pointer, in which case, the library will assume that it can apply to any combination of dataset creation property list values, datatypes and dataspaces.The "can_apply" callback returns positive a valid combination, zero for an invalid combination and negative for an error. typedef htri_t (*H5Z_can_apply_func_t)(hid_t dcpl_id, hid_t type_id, hid_t space_id);hdf5#Filter callback function definition typedef H5Z_cb_return_t (*H5Z_filter_func_t)(H5Z_filter_t filter, void* buf, size_t buf_size, void* op_data);hdf5*Return values for filter callback functionhdf53Values to decide if EDC is enabled for reading datahdf5Filter identifiers. Values 0 through 255 are for filters defined by the HDF5 library. Values 256 through 511 are available for testing new filters. Subsequent values should be obtained from the HDF5 development team at  mailto:hdf5dev@ncsa.uiuc.edu. These values will never change because they appear in the HDF5 files.hdf5%This function registers a new filter.5Returns non-negative on success, negative on failure. $herr_t H5Zregister(const void *cls);hdf5A filter gets definition flags and invocation flags (defined above), the client data array and size defined when the filter was added to the pipeline, the size in bytes of the data on which to operate, and pointers to a buffer and its allocated size.The filter should store the result in the supplied buffer if possible, otherwise it can allocate a new buffer, freeing the original. The allocated size of the new buffer should be returned through the buf_size5 pointer and the new buffer through the BUF pointer.The return value from the filter is the number of bytes in the output buffer. If an error occurs then the function should return zero and leave all pointer arguments unchanged. typedef size_t (*H5Z_func_t)(unsigned int flags, size_t cd_nelmts, const unsigned int cd_values[], size_t nbytes, size_t *buf_size, void **buf);hdf5After the "can_apply" callbacks are checked for new datasets, the "set_local" callbacks for any filters used in the dataset creation property list are called. These callbacks receive the dataset's private copy of the dataset creation property list passed in to H5Dcreate (i.e. not the actual property list passed in to H5Dcreate) and the datatype ID passed in to H5Dcreate (which is not copied and should not be modified) and a dataspace describing the chunk (for chunked dataset storage) (which should also not be modified).The "set_local" callback must set any parameters that are specific to this dataset, based on the combination of the dataset creation property list values, the datatype and the dataspace. For example, some filters perform different actions based on different datatypes (or datatype sizes) or different number of dimensions or dataspace sizes.The "set_local" callback can be the NULL pointer, in which case, the library will assume that there are no dataset-specific settings for this filter.The "set_local" callback must return non-negative on success and negative for an error. typedef herr_t (*H5Z_set_local_func_t)(hid_t dcpl_id, hid_t type_id, hid_t space_id);hdf5 no filterhdf5reserved indefinitelyhdf5deflation like gziphdf5shuffle the datahdf5fletcher32 checksum of EDChdf5szip compressionhdf5nbit compressionhdf5scale+offset compressionhdf58filter ids below this value are reserved for library usehdf5maximum filter idhdf5 Symbol to remove all filters in h5p_remove_filterhdf5Maximum number of filters allowed in a pipeline (should probably be allowed to be an unlimited amount, but currently each filter uses a bit in a 32-bit field, so the format would have to be changed to accomodate that)hdf5definition flag maskhdf5filter is mandatoryhdf5filter is optionalhdf5invocation flag maskhdf5reverse direction; readhdf5skip EDC filters for readhdf5'Number of parameters that users can sethdf5%Total number of parameters for filterhdf5'Number of parameters that users can sethdf5%Total number of parameters for filterhdf5 "User" parameter for option maskhdf5%"User" parameter for pixels-per-blockhdf5$"Local" parameter for bits-per-pixelhdf5)"Local" parameter for pixels-per-scanlinehdf5'Number of parameters that users can sethdf5'Number of parameters that users can sethdf5)Current version of the H5Z_class_t structhdf5 I/O should fail if filter fails.hdf5I/O continues if filter fails.hdf5#This function unregisters a filter.5Returns non-negative on success, negative on failure. &herr_t H5Zunregister(H5Z_filter_t id);hdf5Check if a filter is available (htri_t H5Zfilter_avail(H5Z_filter_t id);hdf5Gets information about a pipeline data filter and stores it in filter_config_flags.5Returns non-negative on success, negative on failure. herr_t H5Zget_filter_info(H5Z_filter_t filter, unsigned int *filter_config_flags); Nonehdf5Exception handler. If an exception like overflow happens during conversion, this function is called if it's registered through h5p_set_type_conv_cb.hdf5Variable Length Datatype struct in memory (This is only used for VL sequences, not VL strings, which are stored in char *'s)&Length of VL data (in base type units)Pointer to VL datahdf53The return value from conversion callback function h5t_conv_except_func_thdf5?The exception type passed into the conversion callback functionhdf5,The order to retrieve atomic native datatypehdf5Conversion function persistencehdf5Type conversion client datahdf5'what should the conversion function do?hdf5 is the background buffer needed?hdf5recalculate private datahdf5 private datahdf5 How is the bkg( buffer used by the conversion function?hdf5%Commands sent to conversion functionshdf5,Type of padding to use in other atomic typeshdf5Type of padding to use in character strings. Do not change these values since they appear in HDF5 files!hdf5Character set to use for text strings. Do not change these values since they appear in HDF5 files!hdf5$Floating-point normalization schemeshdf5Types of integer sign schemeshdf5 Byte ordershdf5*These are the various classes of datatypesIf this goes over 16 types (0-15), the file format will need to change)hdf54Query the sizes of dimensions for an array datatype.Returns the number of dimensions of the array type on success, negative on failure. int H5Tget_array_dims1(hid_t type_id, hsize_t dims[], int perm[]);hdf53Create a new array datatype based on the specified  base_type. The type is an array with ndims. dimensionality and the size of the array is dims. The total member size should be relatively small. Array datatypes are currently limited to  h5s_MAX_RANK number of dimensions and must have the number of dimensions set greater than 0. (i.e.  0 > ndims <=  h5s_MAX_RANK5) All dimensions sizes must be greater than 0 also.Returns the ID of a new array datatype on success, negative on failure. hid_t H5Tarray_create1(hid_t base_id, int ndims, const hsize_t dim[/* ndims */], const int perm[/* ndims */]);hdf5Opens a named datatype.Deprecated in favor of . /hid_t H5Topen1(hid_t loc_id, const char *name);hdf5Save a transient datatype to a file and turn the type handle into a named, immutable type.Note: Deprecated in favor of  herr_t H5Tcommit1(hid_t loc_id, const char *name, hid_t type_id);hdf5Convert nelmts elements from type src_id to type dst_id&. The source elements are packed in buf2 and on return the destination will be packed in buf. That is, the conversion is performed in place. The optional background buffer is an array of nelmts values of destination type which are merged with the converted values to fill in cracks (for instance,  background' might be an array of structs with the a and b fields already initialized and the conversion of BUF supplies the c and d field values). The plist_id a dataset transfer property list which is passed to the conversion functions. (It's currently only used to pass along the VL datatype custom allocation information -QAK 7199) herr_t H5Tconvert(hid_t src_id, hid_t dst_id, size_t nelmts, void *buf, void *background, hid_t plist_id);hdf5?Finds out whether the library's conversion function from type src_id to type dst_id is a compiler (hard) conversion. A hard conversion uses compiler's casting; a soft conversion uses the library's own conversion function. 4htri_t H5Tcompiler_conv(hid_t src_id, hid_t dst_id);hdf5Finds a conversion function that can handle a conversion from type src_id to type dst_id. The pcdata argument is a pointer to a pointer to type conversion data which was created and initialized by the type conversion function of this path when the conversion function was installed on the path. H5T_convT H5Tfind(hid_t src_id, hid_t dst_id, H5T_cdata_t **pcdata);hdf5Removes conversion paths that match the specified criteria. All arguments are optional. Missing arguments are wild cards. The special no-op path cannot be removed.5Returns non-negative on success, negative on failure. herr_t H5Tunregister(H5T_pers_t pers, const char *name, hid_t src_id, hid_t dst_id, H5T_conv_t func);hdf5Register a hard or soft conversion function for a data type conversion path. The path is specified by the source and destination data types src_id and dst_id (for soft functions only the class of these types is important). If func is a hard function then it replaces any previous path; if it's a soft function then it replaces all existing paths to which it applies and is used for any new path to which it applies as long as that path doesn't have a hard function.5Returns non-negative on success, negative on failure. herr_t H5Tregister(H5T_pers_t pers, const char *name, hid_t src_id, hid_t dst_id, H5T_conv_t func);hdf5The method used to store character strings differs with the programming language: C usually null terminates strings while Fortran left-justifies and space-pads strings. This property defines the storage mechanism for the string.When converting from a long string to a short string if the short string is  or  then the string is simply truncated; otherwise if the short string is 9 it will be truncated and a null terminator is appended.When converting from a short string to a long string, the long string is padded on the end by appending nulls or spaces.5Returns non-negative on success, negative on failure. 6herr_t H5Tset_strpad(hid_t type_id, H5T_str_t strpad);hdf5HDF5 is able to distinguish between character sets of different nationalities and to convert between them to the extent possible.5Returns non-negative on success, negative on failure. 3herr_t H5Tset_cset(hid_t type_id, H5T_cset_t cset);hdf5If any internal bits of a floating point type are unused (that is, those significant bits which are not part of the sign, exponent, or mantissa) then they will be filled according to the value of this property.5Returns non-negative on success, negative on failure. 2herr_t H5Tset_inpad(hid_t type_id, H5T_pad_t pad);hdf5Sets the mantissa normalization method for a floating point datatype.5Returns non-negative on success, negative on failure. 3herr_t H5Tset_norm(hid_t type_id, H5T_norm_t norm);hdf50Sets the exponent bias of a floating-point type.5Returns non-negative on success, negative on failure. 1herr_t H5Tset_ebias(hid_t type_id, size_t ebias);hdf5Sets the locations and sizes of the various floating point bit fields. The field positions are bit positions in the significant region of the datatype. Bits are numbered with the least significant bit number zero.Fields are not allowed to extend beyond the number of bits of precision, nor are they allowed to overlap with one another.5Returns non-negative on success, negative on failure. herr_t H5Tset_fields(hid_t type_id, size_t spos, size_t epos, size_t esize, size_t mpos, size_t msize);hdf5&Sets the sign property for an integer.5Returns non-negative on success, negative on failure. 3herr_t H5Tset_sign(hid_t type_id, H5T_sign_t sign);hdf5Sets the LSB and MSB pad types.5Returns non-negative on success, negative on failure. ?herr_t H5Tset_pad(hid_t type_id, H5T_pad_t lsb, H5T_pad_t msb);hdf5Sets the bit offset of the first significant bit. The signficant bits of an atomic datum can be offset from the beginning of the memory for that datum by an amount of padding. The offset property specifies the number of bits of padding that appear to the "right of" the value. That is, if we have a 32-bit datum with 16-bits of precision having the value 0x1122 then it will be layed out in memory as (from small byte address toward larger byte addresses):  Big Big Little Little Endian Endian Endian Endian offset=0 offset=16 offset=0 offset=16 0: [ pad] [0x11] [0x22] [ pad] 1: [ pad] [0x22] [0x11] [ pad] 2: [0x11] [ pad] [ pad] [0x22] 3: [0x22] [ pad] [ pad] [0x11]If the offset is incremented then the total size is incremented also if necessary to prevent significant bits of the value from hanging over the edge of the data type.The offset of an % cannot be set to anything but zero.5Returns non-negative on success, negative on failure. 3herr_t H5Tset_offset(hid_t type_id, size_t offset);hdf5Sets the precision of a datatype. The precision is the number of significant bits which, unless padding is present, is 8 times larger than the value returned by .If the precision is increased then the offset is decreased and then the size is increased to insure that significant bits do not "hang over" the edge of the datatype./The precision property of strings is read-only.When decreasing the precision of a floating point type, set the locations and sizes of the sign, mantissa, and exponent fields first.5Returns non-negative on success, negative on failure. 4herr_t H5Tset_precision(hid_t type_id, size_t prec);hdf5#Sets the byte order for a datatype.6Notes: There are some restrictions on this operation: 0For enum type, members shouldn't be defined yet.7 only works for reference and fixed-length string.+For opaque type, the order will be ignored.For compound type, all restrictions above apply to the members.5Returns non-negative on success, negative on failure. 6herr_t H5Tset_order(hid_t type_id, H5T_order_t order);hdf5Sets the total size in bytes for a datatype (this operation is not permitted on reference datatypes). If the size is decreased so that the significant bits of the datatype extend beyond the edge of the new size, then the offset- property is decreased toward zero. If the offset becomes zero and the significant bits of the datatype still hang over the edge of the new size, then the number of significant bits is decreased.Adjusting the size of an & automatically sets the precision to 8*size.#All datatypes have a positive size.5Returns non-negative on success, negative on failure. /herr_t H5Tset_size(hid_t type_id, size_t size);hdf5High-level API to return the native type of a datatype. The native type is chosen by matching the size and class of querried datatype from the following native premitive datatypes:         H5T_NATIVE_FLOAT H5T_NATIVE_DOUBLE H5T_NATIVE_LDOUBLECompound, array, enum, and VL types all choose among these types for theire members. Time, Bifield, Opaque, Reference types are only copy out.?Returns the native data type if successful, negative otherwise. hid_t H5Tget_native_type(hid_t type_id, H5T_direction_t direction);hdf54Check whether a datatype is a variable-length string )htri_t H5Tis_variable_str(hid_t type_id);hdf5HDF5 is able to distinguish between character sets of different nationalities and to convert between them to the extent possible.;Returns the character set of a string type on success, or  (a negative value) on failure. &H5T_cset_t H5Tget_cset(hid_t type_id);hdf55Return the value for an enumeration data type member.5Returns non-negative on success, negative on failure. herr_t H5Tget_member_value(hid_t type_id, unsigned membno, void *value/*out*/);hdf5Returns a copy of the datatype of the specified member, or negative on failure. The caller should invoke 0 to release resources associated with the type. 9hid_t H5Tget_member_type(hid_t type_id, unsigned membno);hdf5>Returns the datatype class of a member of a compound datatype.5Returns non-negative on success, negative on failure. H5T_class_t H5Tget_member_class(hid_t type_id, unsigned membno);hdf5Returns the byte offset of the beginning of a member with respect to the beginning of the compound datatype datum.Returns the byte offset on success, or zero on failure. Zero is a valid offset, but this function will fail only if a call to h5t_get_member_dims fails with the same arguments.  ndims <=  h5s_MAX_RANK5) All dimensions sizes must be greater than 0 also.Returns the ID of a new array datatype on success, negative on failure. hid_t H5Tarray_create2(hid_t base_id, unsigned ndims, const hsize_t dim[/* ndims */]);hdf5=Create a new variable-length datatype based on the specified  base_type.Returns the ID of a new VL datatype on success, negative on failure. $hid_t H5Tvlen_create(hid_t base_id);hdf52Finds the value that corresponds to the specified name of an enumeration 'type'. The value7 argument should be at least as large as the value of  type in order to hold the result.5Returns non-negative on success, negative on failure. herr_t H5Tenum_valueof(hid_t type, const char *name, void *value/*out*/);hdf58Finds the symbol name that corresponds to the specified value of an enumeration data type 'type' . At most size4 characters of the symbol name are copied into the name buffer. If the entire symbol anem and null terminator do not fit in the name buffer then as many characters as possible are copied (not null terminated) and the function fails.Returns non-negative on success, negative on failure. On failure, the first character of name is set to null if size allows it.WARNING: the above 2 paragraphs contradict each other about what happens on failure. This is because the documentation in the source does. If I read the source correctly, this is because there are some failures which have one behavior and some which have the other. Therefore, I would probably not rely on either behavior. herr_t H5Tenum_nameof(hid_t type, const void *value, char *name/*out*/, size_t size);hdf5Insert a new enumeration data type member into an enumeration type. 'type' is the enumeration type, name% is the name of the new member, and value- points to the value of the new member. The name and value must both be unique within the 'type'. value points to data which is of the data type defined when the enumeration type was created.5Returns non-negative on success, negative on failure. herr_t H5Tenum_insert(hid_t type, const char *name, const void *value);hdf5;Create a new enumeration data type based on the specified 'type' , which must be an integer type.Returns the ID of a new enumeration data type on success, negative on failure. $hid_t H5Tenum_create(hid_t base_id);hdf5Recursively removes padding from within a compound datatype to make it more efficient (space-wise) to store that data.5Returns non-negative on success, negative on failure. herr_t H5Tpack(hid_t type_id);hdf5-Adds another member to the compound datatype  parent_id. The new member has a name9 which must be unique within the compound datatype. The offset argument defines the start of the member in an instance of the compound datatype, and  member_id is the type of the new member.5Returns non-negative on success, negative on failure. herr_t H5Tinsert(hid_t parent_id, const char *name, size_t offset, hid_t member_id);hdf5Decode a binary object description and return a new object handle, or negative on failure. !hid_t H5Tdecode(const void *buf);hdf5Given a datatype ID, converts the object description into binary in a buffer.5Returns non-negative on success, negative on failure. :herr_t H5Tencode(hid_t obj_id, void *buf, size_t *nalloc);hdf5-Determines if a datatype is committed or not. #htri_t H5Tcommitted(hid_t type_id);hdf5Returns a copy of the datatype creation property list, or negative on failure. The property list ID should be released by calling  h5p_close. )hid_t H5Tget_create_plist(hid_t type_id);hdf5Save a transient datatype to a file and turn the type handle into a "named", immutable type.6The resulting ID should be linked into the file with h5o_link# or it will be deleted when closed.Note: Datatype access property list is unused currently, but is checked for sanity anyway.5Returns non-negative on success, negative on failure. herr_t H5Tcommit_anon(hid_t loc_id, hid_t type_id, hid_t tcpl_id, hid_t tapl_id);hdf5Opens a named datatype using a Datatype Access Property List.Returns the object ID of the named datatype on success, negative on failure. >hid_t H5Topen2(hid_t loc_id, const char *name, hid_t tapl_id);hdf5Save a transient datatype to a file and turn the type handle into a "named", immutable type.5Returns non-negative on success, negative on failure. herr_t H5Tcommit2(hid_t loc_id, const char *name, hid_t type_id, hid_t lcpl_id, hid_t tcpl_id, hid_t tapl_id);hdf5Locks a type, making it read only and non-destructable. This is normally done by the library for predefined datatypes so the application doesn't inadvertently change or delete a predefined type.Once a datatype is locked it can never be unlocked unless the entire library is closed.It is illegal to lock a named datatype since we must allow named types to be closed (to release file resources) but locking a type prevents that.5Returns non-negative on success, negative on failure. herr_t H5Tlock(hid_t type_id);hdf5&Determines if two datatypes are equal. 0htri_t H5Tequal(hid_t type1_id, hid_t type2_id);hdf5+Frees a datatype and all associated memory.5Returns non-negative on success, negative on failure. herr_t H5Tclose(hid_t type_id);hdf5Copies a datatype. The resulting datatype is not locked. The datatype should be closed when no longer needed by calling .Returns the ID of a new datatype on success, negative on failure. hid_t H5Tcopy(hid_t type_id);hdf5Create a new type and initialize it to reasonable values. The type is a member of type class 'type' and is size bytes.On success, returns a new type identifier. On failure, returns a negative value. /hid_t H5Tcreate(H5T_class_t type, size_t size);hdf5errorhdf5 integer typeshdf5floating-point typeshdf5date and time typeshdf5character string typeshdf5bit field typeshdf5 opaque typeshdf5compound typeshdf5reference typeshdf5enumeration typeshdf5Variable-Length typeshdf5 Array typeshdf5The number of basic datatypeshdf5errorhdf5 little endianhdf5 bit endianhdf5VAX mixed endianhdf5&Compound type with mixed member ordershdf5&no particular order (strings, bits,..)hdf5errorhdf5this is an unsigned typehdf5two's complementhdf5-The number of recognized integer sign schemeshdf5errorhdf5&msb of mantissa isn't stored, always 1hdf5msb of mantissa is always 1hdf5not normalizedhdf5errorhdf5US ASCIIhdf5UTF-8 Unicode encodinghdf5reserved for later usehdf5reserved for later usehdf5reserved for later usehdf5reserved for later usehdf5reserved for later usehdf5reserved for later usehdf5reserved for later usehdf5reserved for later usehdf5reserved for later usehdf5reserved for later usehdf5reserved for later usehdf5reserved for later usehdf5reserved for later usehdf5reserved for later usehdf5)Number of character sets actually definedhdf5errorhdf5null terminate like in Chdf5pad with nullshdf5pad with spaces like in Fortranhdf5reserved for later usehdf5reserved for later usehdf5reserved for later usehdf5reserved for later usehdf5reserved for later usehdf5reserved for later usehdf5reserved for later usehdf5reserved for later usehdf5reserved for later usehdf5reserved for later usehdf5reserved for later usehdf5reserved for later usehdf5reserved for later usehdf5num  types actually definedhdf5errorhdf5always set to zerohdf5always set to onehdf5set to background valuehdf5Number of valid  values.hdf5$query and/or initialize private datahdf5)convert data from source to dest datatypehdf5#function is being removed from pathhdf5*background buffer is not needed, send NULLhdf5$bkg buffer used as temp storage onlyhdf5(init bkg buf with data before conversionhdf5 wild cardhdf5hard conversion functionhdf5soft conversion functionhdf5default direction is inscendenthdf5in inscendent orderhdf5in descendent orderhdf50source value is greater than destination's rangehdf5-source value is less than destination's rangehdf5+source value loses precision in destinationhdf5(source value is truncated in destinationhdf52source value is positive infinity(floating number)hdf52source value is negative infinity(floating number)hdf5$source value is NaN(floating number)hdf5abort conversionhdf50callback function failed to handle the exceptionhdf54callback function handled the exception successfullyhdf5Indicate that a string is variable length (null-terminated in C, instead of fixed length)hdf5 Maximum length of an opaque tag.  Safe-InferredL3hdf5)Enumerated type for the type of selectionhdf5&Different ways of combining selectionshdf5Different types of dataspaceshdf5Retrieves the bounding box containing the current selection and places it into the user's buffers. The start and end buffers must be large enough to hold the dataspace rank number of coordinates. The bounding box exactly contains the selection, ie. if a 2-D element selection is currently defined with the following points: (4,5), (6,8) (10,7), the bounding box with be (4, 5), (10, 8). Calling this function on a "none" selection returns fail.The bounding box calculations _does_ include the current offset of the selection within the dataspace extent. Parameters:  dsid ::  "Dataspace ID of selection to query start :: 5  #Starting coordinate of bounding box end :: 5  #Opposite coordinate of bounding box5Returns non-negative on success, negative on failure.Weird warning in source: This routine participates in the "Inlining C function pointers" pattern, don't call it directly, use the appropriate macro defined in H5Sprivate.h. herr_t H5Sget_select_bounds(hid_t spaceid, hsize_t start[], hsize_t end[]);hdf5Puts a list of the element points into the user's buffer. The points start with the  startpoint(th block in the list of points and put  numpoints number of points into the user's buffer (or until the end of the list of points, whichever happen first)The point coordinates have the same dimensionality (rank) as the dataspace they are located within. The list of points is formatted as follows:  coordinate followed by the next coordinate, etc. until all the point information in the selection have been put into the user's buffer.The points are returned in the order they will be interated through when a selection is read written fromto disk. Parameters:  dsid ::  "Dataspace ID of selection to query startpoint ::  Element point to start with numpoints ::  Number of element points to get buf ::  List of element points selected5Returns non-negative on success, negative on failure. herr_t H5Sget_select_elem_pointlist(hid_t spaceid, hsize_t startpoint, hsize_t numpoints, hsize_t buf[/*numpoints*/]);hdf5Puts a list of the hyperslab blocks into the user's buffer. The blocks start with the  startblock(th block in the list of blocks and put  numblocks number of blocks into the user's buffer (or until the end of the list of blocks, whichever happen first)The block coordinates have the same dimensionality (rank) as the dataspace they are located within. The list of blocks is formatted as follows: <"start" coordinate> immediately followed by <"opposite" corner coordinate>, followed by the next "start" and "opposite" coordinate, etc. until all the block information requested has been put into the user's buffer.3No guarantee of any order of the blocks is implied. Parameters:  dsid ::  "Dataspace ID of selection to query startblock :: HSsize_t Hyperslab block to start with numblocks :: HSsize_t !Number of hyperslab blocks to get buf :: 5 HSsize_t !List of hyperslab blocks selected5Returns non-negative on success, negative on failure. herr_t H5Sget_select_hyper_blocklist(hid_t spaceid, hsize_t startblock, hsize_t numblocks, hsize_t buf[/*numblocks*/]);hdf55Get the number of points in current element selectionReturns negative on failure 3hssize_t H5Sget_select_elem_npoints(hid_t spaceid);hdf5Get the number of hyperslab blocks in current hyperslab selectionReturns negative on failure 4hssize_t H5Sget_select_hyper_nblocks(hid_t spaceid);hdf5Check whether the selection fits within the extent, with the current offset defined.Determines if the current selection at the current offet fits within the extent for the dataspace. &htri_t H5Sselect_valid(hid_t spaceid);hdf5Changes the offset of a selection within a simple dataspace extent Parameters:  space_id ::  Dataspace object to reset offset :: 9 HSsize_t #Offset to position the selection at5Returns non-negative on success, negative on failure. herr_t H5Soffset_simple(hid_t space_id, const hssize_t *offset);hdf5;This function de-selects the entire extent for a dataspace.5Returns non-negative on success, negative on failure. %herr_t H5Sselect_none(hid_t spaceid);hdf58This function selects the entire extent for a dataspace.5Returns non-negative on success, negative on failure. $herr_t H5Sselect_all(hid_t spaceid);hdf5.Determines if two dataspace extents are equal. /htri_t H5Sextent_equal(hid_t sid1, hid_t sid2);hdf5 1herr_t H5Sextent_copy(hid_t dst_id,hid_t src_id);hdf5/Resets the extent of a dataspace back to "none"This function resets the type of a dataspace back to "none" with no extent information stored for the dataspace. *herr_t H5Sset_extent_none(hid_t space_id);hdf53Retrieves the type of extent for a dataspace object6Returns the class of the dataspace object on success,  n5s_NO_CLASS on failure. 6H5S_class_t H5Sget_simple_extent_type(hid_t space_id);hdf5This function selects array elements to be included in the selection for the dataspace. The coord3 array is a 2-D array of size by num_elem (ie. a list of coordinates in the dataspace). The order of the element coordinates in the coord array specifies the order that the array elements are iterated through when I/O is performed. Duplicate coordinates are not checked for. The selection operator, op, determines how the new selection is to be combined with the existing selection for the dataspace. Currently, only  is supported, which replaces the existing selection with the one defined in this call. When operators other than  are used to combine a new selection with an existing selection, the selection ordering is reset to C array ordering. Parameters:  dsid ::  #Dataspace ID of selection to modify op ::  )Operation to perform on current selection num_elem ::  "Number of elements in COORD array. coord :: 9  %The location of each element selected5Returns non-negative on success, negative on failure. herr_t H5Sselect_elements(hid_t space_id, H5S_seloper_t op, size_t num_elem, const hsize_t *coord);hdf5Combines a hyperslab selection with the current selection for a dataspace. If the current selection is not a hyperslab, it is freed and the hyperslab parameters passed in are combined with the  hyperslab (ie. a selection composing the entire current extent). If stride or block1 is NULL, they are assumed to be set to all '1'. Parameters:  dsid ::  #Dataspace ID of selection to modify op ::  )Operation to perform on current selection start :: 9  Offset of start of hyperslab stride :: 9  Hyperslab stride count :: 9  &Number of blocks included in hyperslab block :: 9  Size of block in hyperslab5Returns non-negative on success, negative on failure. herr_t H5Sselect_hyperslab(hid_t space_id, H5S_seloper_t op, const hsize_t start[], const hsize_t _stride[], const hsize_t count[], const hsize_t _block[]);hdf5Returns the number of elements in current selection for dataspace.Parameters: [ dsid ::  '] Dataspace ID of selection to query5Returns non-negative on success, negative on failure. .hssize_t H5Sget_select_npoints(hid_t spaceid);hdf5Check if a dataspace is simple Parameters:  space_id ::  ID of dataspace object to query $htri_t H5Sis_simple(hid_t space_id);hdf5Returns the size and maximum sizes in each dimension of a dataspace DS through the DIMS and MAXDIMS arguments.Returns the number of dimensions, the same value as returned by ", or a negative value on failure.. int H5Sget_simple_extent_dims(hid_t space_id, hsize_t dims[], hsize_t maxdims[]);hdf5-Determines the dimensionality of a dataspace.On success, returns the number of dimensions in the dataset. On failure, returns a negative value. /int H5Sget_simple_extent_ndims(hid_t space_id);hdf55Determines how many data points a dataset extent has.On success, returns the number of data points in the dataset. On failure, returns a negative value. 6hssize_t H5Sget_simple_extent_npoints(hid_t space_id);hdf5Decode a binary object description of dataspace and return a new object handle.On success, returns the ID of the new dataspace. Returns negative on failure. !hid_t H5Sdecode(const void *buf);hdf5Given a dataspace ID, converts the object description (including selection) into binary in a buffer.nalloc is the size of the buffer on input, the size of the encoded data on output. If the buffer is not big enough, no data is written to it (but nalloc is still updated with the size needed).5Returns non-negative on success, negative on failure.hdf5%Release access to a dataspace object.5Returns non-negative on success, negative on failure.  herr_t H5Sclose(hid_t space_id);hdf5Copies a dataspace.On success, returns the ID of the new dataspace. Returns negative on failure. hid_t H5Scopy(hid_t space_id);hdf5Determines if a simple dataspace's extent has been set (e.g., by ). Helps avoid write errors.Returns TRUE (C macro) if dataspace has extent set, FALSE (C macro) if dataspace's extent is uninitialized. herr_t H5Sset_extent_simple(hid_t space_id, int rank, const hsize_t dims[], const hsize_t max[]);hdf5Creates a new simple dataspace object and opens it for access. The dims5 argument is the size of the simple dataset and the maxdims; argument is the upper limit on the size of the dataset. maxdims may be the null pointer in which case the upper limit is the same as dims. If an element of maxdims is  then the corresponding dimension is unlimited, otherwise no element of maxdims6 should be smaller than the corresponding element of dims.On success, returns the ID for the new simple dataspace object. Returns negative on failure. hid_t H5Screate_simple(int rank, const hsize_t dims[], const hsize_t maxdims[]);hdf5Creates a new dataspace of a given type. The extent & selection are undefined Parameters:  type ::  H5S_type_t Dataspace type to create:Returns valid dataspace ID on success, negative on failure "hid_t H5Screate(H5S_class_t type);hdf5Maximum number of dimensionshdf5errorhdf5scalar variablehdf5simple data spacehdf5null data spacehdf5errorhdf5Select "set" operationhdf5Binary "or" operation for hyperslabs (add new selection to existing selection) Original region: AAAAAAAAAA New region: BBBBBBBBBB A or B: CCCCCCCCCCCCCCCChdf5Binary "and" operation for hyperslabs (only leave overlapped regions in selection) Original region: AAAAAAAAAA New region: BBBBBBBBBB A and B: CCCChdf5Binary "xor" operation for hyperslabs (only leave non-overlapped regions in selection) Original region: AAAAAAAAAA New region: BBBBBBBBBB A xor B: CCCCCC CCCCCChdf5Binary "not" operation for hyperslabs (only leave non-overlapped regions in original selection) Original region: AAAAAAAAAA New region: BBBBBBBBBB A not B: CCCCCChdf5Binary "not" operation for hyperslabs (only leave non-overlapped regions in new selection) Original region: AAAAAAAAAA New region: BBBBBBBBBB B not A: CCCCCChdf5)Append elements to end of point selectionhdf50Prepend elements to beginning of point selectionhdf5+Invalid upper bound on selection operationshdf5Errorhdf5Nothing selectedhdf5Sequence of points selectedhdf5'"New-style" hyperslab selection definedhdf5Entire extent selectedhdf5Number of selection types  Safe-Inferred8hdf5A struct that's part of the  h5g_stat_t routine (deprecated)#Total size of object header in fileFree space within object header Number of object header messagesNumber of object header chunkshdf5Prototype for  /  operatorhdf5$Typedef for message creation indexeshdf5(Basic object type (group, dataset, etc.)Reference count of object Access timeModification time Change time Birth time"# of attributes attached to objectObject header informationv1v2 B-tree & local4fractal heap for groups, B-tree for chunked datasetsv2 B-tree & heap for attributeshdf54Information struct for object header metadata (for    )'Version number of header format in file Number of object header messagesNumber of object header chunksObject header status flags-Total space for storing object header in file:Space within header for object header metadata information2Space within header for actual message informationFree space within object header4Flags to indicate presence of message type in header2Flags to indicate message type is shared in headerhdf5Types of objects in filehdf5Close an open file object.This is the companion to . It is used to close any open object in an HDF5 file (but not IDs are that not file objects, such as property lists and dataspaces). It has the same effect as calling  h5g_close,  h5d_close, or  h5t_close.5Returns non-negative on success, negative on failure. !herr_t H5Oclose(hid_t object_id);hdf5Recursively visit an object and all the objects reachable from it. If the starting object is a group, all the objects linked to from that group will be visited. Links within each group are visited according to the order within the specified index (unless the specified index does not exist for a particular group, then the "name" index is used).NOTE: Soft links and user-defined links are ignored during this operation.NOTE: Each _object_ reachable from the initial group will only be visited once. If multiple hard links point to the same object, the first link to the object's path (according to the iteration index and iteration order given) will be used to in the callback about the object.On success, returns the return value of the first operator that returns non-zero, or zero if all members were processed with no operator returning non-zero.Returns negative if something goes wrong within the library, or the negative value returned by one of the operators. herr_t H5Ovisit_by_name(hid_t loc_id, const char *obj_name, H5_index_t idx_type, H5_iter_order_t order, H5O_iterate_t op, void *op_data, hid_t lapl_id);hdf5Recursively visit an object and all the objects reachable from it. If the starting object is a group, all the objects linked to from that group will be visited. Links within each group are visited according to the order within the specified index (unless the specified index does not exist for a particular group, then the "name" index is used).NOTE: Soft links and user-defined links are ignored during this operation.NOTE: Each _object_ reachable from the initial group will only be visited once. If multiple hard links point to the same object, the first link to the object's path (according to the iteration index and iteration order given) will be used to in the callback about the object.On success, returns the return value of the first operator that returns non-zero, or zero if all members were processed with no operator returning non-zero.Returns negative if something goes wrong within the library, or the negative value returned by one of the operators. herr_t H5Ovisit(hid_t obj_id, H5_index_t idx_type, H5_iter_order_t order, H5O_iterate_t op, void *op_data);hdf5Retrieve comment for an object.On success, returns the number of bytes in the comment including the null terminator, or zero if the object has no comment. On failure returns a negative value. ssize_t H5Oget_comment_by_name(hid_t loc_id, const char *name, char *comment, size_t bufsize, hid_t lapl_id);hdf5Retrieve comment for an object.On success, returns the number of bytes in the comment including the null terminator, or zero if the object has no comment. On failure returns a negative value. ssize_t H5Oget_comment(hid_t obj_id, char *comment, size_t bufsize);hdf5+Gives the specified object a comment. The comment string should be a null terminated string. An object can have only one comment at a time. Passing NULL for the comment< argument will remove the comment property from the object.:Note: Deprecated in favor of using attributes on objects.5Returns non-negative on success, negative on failure. herr_t H5Oset_comment_by_name(hid_t loc_id, const char *name, const char *comment, hid_t lapl_id);hdf5+Gives the specified object a comment. The comment string should be a null terminated string. An object can have only one comment at a time. Passing NULL for the comment< argument will remove the comment property from the object.5Returns non-negative on success, negative on failure. 9herr_t H5Oset_comment(hid_t obj_id, const char *comment);hdf5Copy an object (group or dataset) to destination location within a file or cross files. plist_id is a property list which is used to pass user options and properties to the copy. The name, dst_name, must not already be taken by some other object in the destination group. will fail if the name of the destination object exists in the destination group. For example, H5Ocopy(fid_src, "dset", fid_dst, " dset", ...)9 will fail if "/dset" exists in the destination file#OPTIONS THAT HAVE BEEN IMPLEMENTED: If this flag is specified, only immediate members of the group are copied. Otherwise (default), it will recursively copy all objects below the groupIf this flag is specified, it will copy the objects pointed by the soft links. Otherwise (default), it will copy the soft link as they areIf this flag is specified, it will copy object without copying attributes. Otherwise (default), it will copy object along with all its attributes1. Copy object between two different files: When this flag is specified, it will copy objects that are pointed by the references and update the values of references in the destination file. Otherwise (default) the values of references in the destination will set to zero The current implementation does not handle references inside of other datatype structure. For example, if a member of compound datatype is reference, H5Ocopy() will copy that field as it is. It will not set the value to zero as default is used nor copy the object pointed by that field the flag is set 2. Copy object within the same file: This flag does not have any effect to the . Datasets or attributes of references are copied as they are, i.e. values of references of the destination object are the same as the values of the source object-OPTIONS THAT MAY APPLY TO COPY IN THE FUTURE: If this flag is specified, it will expand the external links into new objects, Otherwise (default), it will keep external links as they are (default),PROPERTIES THAT MAY APPLY TO COPY IN FUTURE:%Change data layout such as chunk size$Add filter such as data compression.Add an attribute to the copied object(s) that say the date/time for the copy or other information about the source file.The intermediate group creation property should be passed in using the lcpl instead of the ocpypl. Parameters:  src_loc_id :: HId_t  Source file or group identifier. src_name :: CString &Name of the source object to be copied dst_loc_id :: HId_t $Destination file or group identifier dst_name :: CString Name of the destination object ocpypl_id :: HId_t "Properties which apply to the copy lcpl_id :: HId_t +Properties which apply to the new hard link5Returns non-negative on success, negative on failure. herr_t H5Ocopy(hid_t src_loc_id, const char *src_name, hid_t dst_loc_id, const char *dst_name, hid_t ocpypl_id, hid_t lcpl_id);hdf5Warning! This function is EXTREMELY DANGEROUS! Improper use can lead to FILE CORRUPTION, INACCESSIBLE DATA, and other VERY BAD THINGS!This function decrements the "hard link" reference count for an object. It should be used when user-defined links that reference an object by address are deleted, and only after  has already been used.5Returns non-negative on success, negative on failure. )herr_t H5Odecr_refcount(hid_t object_id);hdf5Warning! This function is EXTREMELY DANGEROUS! Improper use can lead to FILE CORRUPTION, INACCESSIBLE DATA, and other VERY BAD THINGS!This function increments the "hard link" reference count for an object. It should be used when a user-defined link that references an object by address is created. When the link is deleted,  should be used.5Returns non-negative on success, negative on failure. )herr_t H5Oincr_refcount(hid_t object_id);hdf5Creates a hard link from new_name to the object specified by obj_id> using properties defined in the Link Creation Property List lcpl.This function should be used to link objects that have just been created.new_name is interpreted relative to  new_loc_id+, which is either a file ID or a group ID.5Returns non-negative on success, negative on failure. herr_t H5Olink(hid_t obj_id, hid_t new_loc_id, const char *new_name, hid_t lcpl_id, hid_t lapl_id);hdf5Retrieve information about an object, according to the order of an index.5Returns non-negative on success, negative on failure. herr_t H5Oget_info_by_idx(hid_t loc_id, const char *group_name, H5_index_t idx_type, H5_iter_order_t order, hsize_t n, H5O_info_t *oinfo, hid_t lapl_id);hdf5%Retrieve information about an object.5Returns non-negative on success, negative on failure. herr_t H5Oget_info_by_name(hid_t loc_id, const char *name, H5O_info_t *oinfo, hid_t lapl_id);hdf5%Retrieve information about an object.5Returns non-negative on success, negative on failure. 4herr_t H5Oget_info(hid_t loc_id, H5O_info_t *oinfo);hdf5&Determine if a linked-to object exists htri_t H5Oexists_by_name(hid_t loc_id, const char *name, hid_t lapl_id);hdf5Opens an object within an HDF5 file, according to the offset within an index.3This function opens an object in the same way that h5g_open, h5t_open, and h5d_open do. However,  doesn't require the type of object to be known beforehand. This can be useful in user-defined links, for instance, when only a path is known..The opened object should be closed again with  or  h5g_close,  h5t_close, or  h5d_close.On success, returns an open object identifier On failure, returns a negative value. hid_t H5Oopen_by_idx(hid_t loc_id, const char *group_name, H5_index_t idx_type, H5_iter_order_t order, hsize_t n, hid_t lapl_id);hdf5.Warning! This function is EXTREMELY DANGEROUS!Improper use can lead to FILE CORRUPTION, INACCESSIBLE DATA, and other VERY BAD THINGS!This function opens an object using its address within the HDF5 file, similar to an HDF5 hard link. The open object is identical to an object opened with  and should be closed with / or a type-specific closing function (such as  h5g_close).This function is very dangerous if called on an invalid address. For this reason,  should be used to prevent HDF5 from deleting any object that is referenced by address (e.g. by a user-defined link).  should be used when the object is no longer being referenced by address (e.g. when the UD link is deleted).7The address of the HDF5 file on disk has no effect on , nor does the use of any unusual file drivers. The "address" is really the offset within the HDF5 file, and HDF5's file drivers will transparently map this to an address on disk for the filesystem.On success, returns an open object identifier On failure, returns a negative value. 2hid_t H5Oopen_by_addr(hid_t loc_id, haddr_t addr);hdf5Copy only immediate membershdf5"Expand soft links into new objectshdf5&Expand external links into new objectshdf5+Copy objects that are pointed by referenceshdf5&Copy object without copying attributeshdf5 Copy NULL messages (empty space)hdf5&Merge committed datatypes in dest filehdf50All object copying flags (for internal checking)hdf5No shared messageshdf5Simple Dataspace Messagehdf5Datatype Messagehdf5Fill Value Messagehdf5Filter pipeline messagehdf5Attribute Messagehdf52-bit field indicating # of bytes to store the size of chunk 0's datahdf5#Attribute creation order is trackedhdf5"Attribute creation order has indexhdf58Non-default attribute storage phase change values storedhdf5;Store access, modification, change & birth times for objecthdf5Unknown object typehdf5Object is a grouphdf5Object is a datasethdf5Object is a named data typehdf5 Number of different object typeshdf5$Information struct for object (for    )hdf5%File number that object is located inhdf5Object address in filehdf5Token representing the objecthdf5 Abort H5Ocopyhdf5Continue the global search of all committed datatypes in the destination filehdf5Callback to invoke when completing the search for a matching committed datatype from the committed dtype list typedef H5O_mcdt_search_ret_t (*H5O_mcdt_search_cb_t)(void *op_data);hdf5$Opens an object within an HDF5 file.3This function opens an object in the same way that  h5g_open2,  h5t_open2, and  h5d_open2 do. However,  doesn't require the type of object to be known beforehand. This can be useful in user-defined links, for instance, when only a path is known..The opened object should be closed again with  or  h5g_close,  h5t_close, or  h5d_close.On success, returns an open object identifier On failure, returns a negative value. =hid_t H5Oopen(hid_t loc_id, const char *name, hid_t lapl_id);hdf5Stop the search, but continue copying. The committed datatype will be copied but not merged.  Safe-Inferreda)hdf5$Callback for external link traversal typedef herr_t (*H5L_elink_traverse_t)(const char *parent_file_name, const char *parent_group_name, const char *child_file_name, const char *child_object_name, unsigned *acc_flags, hid_t fapl_id, void *op_data);hdf5User-defined link typesVersion number of this struct Link type IDComment for debuggingCallback during link creationCallback after moving linkCallback after copying linkCallback during link traversalCallback for link deletionCallback for querieshdf5Callback for querying the link%Returns the size of the buffer needed typedef ssize_t (*H5L_query_func_t)(const char *link_name, const void *lnkdata, size_t lnkdata_size, void *buf /*out*/, size_t buf_size);hdf5%Callback for when the link is deleted typedef herr_t (*H5L_delete_func_t)(const char *link_name, hid_t file, const void *lnkdata, size_t lnkdata_size);hdf5Callback during link traversal typedef herr_t (*H5L_traverse_func_t)(const char *link_name, hid_t cur_group, const void *lnkdata, size_t lnkdata_size, hid_t lapl_id);hdf5$Callback for when the link is copied typedef herr_t (*H5L_copy_func_t)(const char *new_name, hid_t new_loc, const void *lnkdata, size_t lnkdata_size);hdf5#Callback for when the link is moved typedef herr_t (*H5L_move_func_t)(const char *new_name, hid_t new_loc, const void *lnkdata, size_t lnkdata_size);hdf5Link creation callback typedef herr_t (*H5L_create_func_t)(const char *link_name, hid_t loc_group, const void *lnkdata, size_t lnkdata_size, hid_t lcpl_id);hdf5!Information struct for link (for   /  )hdf5Link class types.Values less than 64 are reserved for the HDF5 library's internal use. Values 64 to 255 are for "user-defined" link class types; these types are defined by HDF5 but their behavior can be overridden by users. Users who want to create new classes of links should contact the HDF5 development team at  mailto:hdfhelp@ncsa.uiuc.edu.These values can never change because they appear in HDF5 files.hdf5Creates an external link from  link_name to obj_name.External links are links to objects in other HDF5 files. They are allowed to "dangle" like soft links internal to a file.  file_name is the name of the file that obj_name is is contained within. If obj_name is given as a relative path name, the path will be relative to the root group of  file_name.  link_name is interpreted relative to  link_loc_id+, which is either a file ID or a group ID.5Returns non-negative on success, negative on failure. herr_t H5Lcreate_external(const char *file_name, const char *obj_name, hid_t link_loc_id, const char *link_name, hid_t lcpl_id, hid_t lapl_id); hdf5Given a buffer holding the "link value" from an external link, gets pointers to the information within the link value buffer.External link link values contain some flags and two NULL-terminated strings, one after the other.The flags value will be filled in and filename and obj_path will be set to pointers within  ext_linkval' (unless any of these values is NULL).:Using this function on strings that aren't external link udata+ buffers can result in segmentation faults.5Returns non-negative on success, negative on failure. herr_t H5Lunpack_elink_val(const void *ext_linkval/*in*/, size_t link_size, unsigned *flags, const char **filename/*out*/, const char **obj_path /*out*/); hdf5Tests whether a user-defined link class has been registered or not. 'htri_t H5Lis_registered(H5L_type_t id); hdf5Unregisters a class of user-defined links, preventing them from being traversed, queried, moved, etc.(A link class can be re-registered using  .5Returns non-negative on success, negative on failure. $herr_t H5Lunregister(H5L_type_t id); hdf5Registers a class of user-defined links, or changes the behavior of an existing class.The link class passed in will override any existing link class for the specified link class ID. It must at least include a  version (which should be  .), a link class ID, and a traversal function.5Returns non-negative on success, negative on failure. +herr_t H5Lregister(const H5L_class_t *cls); hdf5$Creates a user-defined link of type  link_type named  link_name with user-specified data udata.,The format of the information pointed to by udata is defined by the user.  udata_size holds the size of this buffer. link_name is interpreted relative to  link_loc_id.The property list specified by lcpl_id+ holds properties used to create the link.The link class of the new link must already be registered with the library.5Returns non-negative on success, negative on failure. herr_t H5Lcreate_ud(hid_t link_loc_id, const char *link_name, H5L_type_t link_type, const void *udata, size_t udata_size, hid_t lcpl_id, hid_t lapl_id); hdf5=Gets name for a link, according to the order within an index.Same pattern of behavior as .On success, returns non-negative length of name, with information in name- buffer On failure,returns a negative value. ssize_t H5Lget_name_by_idx(hid_t loc_id, const char *group_name, H5_index_t idx_type, H5_iter_order_t order, hsize_t n, char *name /*out*/, size_t size, hid_t lapl_id); hdf52Checks if a link of a given name exists in a group htri_t H5Lexists(hid_t loc_id, const char *name, hid_t lapl_id); hdf5Returns the link value of a link, according to the order of an index. For symbolic links, this is the path to which the link points, including the null terminator. For user-defined links, it is the link buffer.At most size bytes are copied to the buf result buffer.5Returns non-negative on success, negative on failure. herr_t H5Lget_val_by_idx(hid_t loc_id, const char *group_name, H5_index_t idx_type, H5_iter_order_t order, hsize_t n, void *buf/*out*/, size_t size, hid_t lapl_id); hdf5/Returns the link value of a link whose name is name. For symbolic links, this is the path to which the link points, including the null terminator. For user-defined links, it is the link buffer.At most size bytes are copied to the buf result buffer.5Returns non-negative on success, negative on failure. herr_t H5Lget_val(hid_t loc_id, const char *name, void *buf/*out*/, size_t size, hid_t lapl_id); hdf5Removes the specified link from the group graph and decrements the link count for the object to which it points, according to the order within an index.If the link count reaches zero then all file-space associated with the object will be reclaimed (but if the object is open, then the reclamation of the file space is delayed until all handles to the object are closed).5Returns non-negative on success, negative on failure. herr_t H5Ldelete_by_idx(hid_t loc_id, const char *group_name, H5_index_t idx_type, H5_iter_order_t order, hsize_t n, hid_t lapl_id); hdf5Removes the specified name from the group graph and decrements the link count for the object to which name points. If the link count reaches zero then all file-space associated with the object will be reclaimed (but if the object is open, then the reclamation of the file space is delayed until all handles to the object are closed).5Returns non-negative on success, negative on failure. herr_t H5Ldelete(hid_t loc_id, const char *name, hid_t lapl_id); hdf5Creates a soft link from  link_name to  link_target. link_target can be anything and is interpreted at lookup time relative to the group which contains the final component of  link_name. For instance, if  link_target is "./foo" and  link_name is ".xy!bar" and a request is made for ".xy,bar" then the actual object looked up is ".xy.foo".5Returns non-negative on success, negative on failure. herr_t H5Lcreate_soft(const char *link_target, hid_t link_loc_id, const char *link_name, hid_t lcpl_id, hid_t lapl_id); hdf5Creates a hard link from new_name to cur_name.cur_name must name an existing object. cur_name and new_name are interpreted relative to  cur_loc_id and  new_loc_id), which are either file IDs or group IDs.4Returns non-negative on success, negative on failure herr_t H5Lcreate_hard(hid_t cur_loc, const char *cur_name, hid_t dst_loc, const char *dst_name, hid_t lcpl_id, hid_t lapl_id); hdf5Recursively visit all the links in a group and all the groups that are linked to from that group. Links within each group are visited according to the order within the specified index (unless the specified index does not exist for a particular group, then the "name" index is used).NOTE: Each _link_ reachable from the initial group will only be visited once. However, because an object may be reached from more than one link, the visitation may call the application's callback with more than one link that points to a particular _object_.Returns the return value of the first operator that returns non-zero, or zero if all members were processed with no operator returning non-zero.Returns negative if something goes wrong within the library, or the negative value returned by one of the operators. herr_t H5Lvisit_by_name(hid_t loc_id, const char *group_name, H5_index_t idx_type, H5_iter_order_t order, H5L_iterate_t op, void *op_data, hid_t lapl_id); hdf5Recursively visit all the links in a group and all the groups that are linked to from that group. Links within each group are visited according to the order within the specified index (unless the specified index does not exist for a particular group, then the "name" index is used).NOTE: Each _link_ reachable from the initial group will only be visited once. However, because an object may be reached from more than one link, the visitation may call the application's callback with more than one link that points to a particular _object_.Returns the return value of the first operator that returns non-zero, or zero if all members were processed with no operator returning non-zero.Returns negative if something goes wrong within the library, or the negative value returned by one of the operators. herr_t H5Lvisit(hid_t grp_id, H5_index_t idx_type, H5_iter_order_t order, H5L_iterate_t op, void *op_data); hdf5Maximum length of a link's name (encoded in a 32-bit unsigned integer) hdf53Macro to indicate operation occurs on same location hdf5)Current version of the H5L_class_t struct hdf5Invalid link type id hdf5 Hard link id hdf5 Soft link id hdf5External link id hdf5Maximum link type id hdf52Maximum value link value for "built-in" link types hdf5>Link ids at or above this value are "user-defined" link types. hdf5Prototype for   /   operator typedef herr_t (*H5L_iterate_t)(hid_t group, const char *name, const H5L_info_t *info, void *op_data); hdf5Iterates over links in a group, with user callback routine, according to the order within an index.Same pattern of behavior as  h5g_iterate.Returns the return value of the first operator that returns non-zero, or zero if all members were processed with no operator returning non-zero.Returns negative if something goes wrong within the library, or the negative value returned by one of the operators. herr_t H5Literate(hid_t grp_id, H5_index_t idx_type, H5_iter_order_t order, hsize_t *idx, H5L_iterate_t op, void *op_data); hdf5Iterates over links in a group, with user callback routine, according to the order within an index.Same pattern of behavior as  h5g_iterate.Returns the return value of the first operator that returns non-zero, or zero if all members were processed with no operator returning non-zero.Returns negative if something goes wrong within the library, or the negative value returned by one of the operators. herr_t H5Literate_by_name(hid_t loc_id, const char *group_name, H5_index_t idx_type, H5_iter_order_t order, hsize_t *idx, H5L_iterate_t op, void *op_data, hid_t lapl_id); hdf5Renames an object within an HDF5 file and moves it to a new group. The original name src is unlinked from the group graph and then inserted with the new name dst (which can specify a new path for the object) as an atomic operation. The names are interpreted relative to  src_loc_id and  dst_loc_id(, which are either file IDs or group ID.5Returns non-negative on success, negative on failure. herr_t H5Lmove(hid_t src_loc, const char *src_name, hid_t dst_loc, const char *dst_name, hid_t lcpl_id, hid_t lapl_id); hdf5Creates an identical copy of a link with the same creation time and target. The new link can have a different name and be in a different location than the original.5Returns non-negative on success, negative on failure. herr_t H5Lcopy(hid_t src_loc, const char *src_name, hid_t dst_loc, const char *dst_name, hid_t lcpl_id, hid_t lapl_id);       Safe-Inferred   Safe-Inferredg hdf5>HId types which can also serve as containers for other objects hdf5"Types which can be converted from 7 (i.e., those which can be returned by HDF5 functions) hdf5 Types which can be converted to 5 (i.e., those which can be passed to HDF5 functions)  None) hdf5Information about an object file number object numbernumber of hard links to objectbasic object typemodification timesymbolic link value lengthObject header information hdf5Type of   operator typedef herr_t (*H5G_iterate_t)(hid_t group, const char *name, void *op_data); hdf5An object has a certain type. The first few numbers are reserved for use internally by HDF5. Users may add their own types with higher values. The values are never stored in the file - they only exist while an application is running. An object may satisfy the isa! function for more than one type. hdf5"Information struct for group (for        )"Type of storage for links in groupNumber of links in group+Current max. creation order value for group&Whether group has a file mounted on it hdf5 Types of link storage for groups hdf59Returns the type of objects in the group by giving index.Note: Deprecated in favor of   / Returns  ,  , or   on success, or   on failure. ;H5G_obj_t H5Gget_objtype_by_idx(hid_t loc_id, hsize_t idx); hdf5>Returns the name of objects in the group by giving index. If name is non-NULL then write up to size bytes into that buffer and always return the length of the entry name. Otherwise size is ignored and the function does not store the name, just returning the number of characters required to store the name. If an error occurs then the buffer pointed to by name (NULL or non-NULL) is unchanged and the function returns a negative value. If a zero is returned for the name's length, then there is no name associated with the ID.Note: Deprecated in favor of  5Returns non-negative on success, negative on failure. ssize_t H5Gget_objname_by_idx(hid_t loc_id, hsize_t idx, char* name, size_t size); hdf5)Returns information about an object. If  follow_link is non-zero then all symbolic links are followed; otherwise all links except the last component of the name are followed.Note: Deprecated in favor of   / 4Returns non-negative on success, with the fields of statbuf1 (if non-null) initialized. Negative on failure. herr_t H5Gget_objinfo(hid_t loc_id, const char *name, hbool_t follow_link, H5G_stat_t *statbuf/*out*/); hdf5Returns the number of objects in the group. It iterates all B-tree leaves and sum up total number of group members.Note: Deprecated in favor of  4Returns non-negative on success, negative on failure 8herr_t H5Gget_num_objs(hid_t loc_id, hsize_t *num_objs); hdf5+Iterates over the entries of a group. The loc_id and name/ identify the group over which to iterate and idx indicates where to start iterating (zero means at the beginning). The operator is called for each member and the iteration continues until the operator returns non-zero or all members are processed. The operator is passed a group ID for the group being iterated, a member name, and op_data for each member.Note: Deprecated in favor of  Returns the return value of the first operator that returns non-zero, or zero if all members were processed with no operator returning non-zero.Returns negative if something goes wrong within the library, or the negative value returned by one of the operators. herr_t H5Giterate(hid_t loc_id, const char *name, int *idx, H5G_iterate_t op, void *op_data); hdf5Return at most bufsize: characters of the comment for the specified object. If bufsize is large enough to hold the entire comment then the comment string will be null terminated, otherwise it will not. If the object does not have a comment value then no bytes are copied to the BUF buffer.Note: Deprecated in favor of  / On success, returns the number of characters in the comment counting the null terminator. The value returned may be larger than the bufsize argument. int H5Gget_comment(hid_t loc_id, const char *name, size_t bufsize, char *buf); hdf5+Gives the specified object a comment. The comment string should be a null terminated string. An object can have only one comment at a time. Passing  for the comment< argument will remove the comment property from the object.Note: Deprecated in favor of  / 5Returns non-negative on success / negative on failure herr_t H5Gset_comment(hid_t loc_id, const char *name, const char *comment); hdf5/Retrieve's a soft link's data. The new API is   /  . herr_t H5Gget_linkval(hid_t loc_id, const char *name, size_t size, char *buf/*out*/); hdf5 Removes a link. The new API is   /  . 1herr_t H5Gunlink(hid_t loc_id, const char *name); hdf55Moves and renames a link. The new API to do this is  . herr_t H5Gmove2(hid_t src_loc_id, const char *src_name, hid_t dst_loc_id, const char *dst_name); hdf55Moves and renames a link. The new API to do this is  . herr_t H5Gmove(hid_t src_loc_id, const char *src_name, const char *dst_name); hdf5Creates a link between two existing objects. The new APIs to do this are   and  .herr_t H5Glink2(hid_t cur_loc_id, const char *cur_name, H5G_link_t type, hid_t new_loc_id, const char *new_name); hdf5Creates a link between two existing objects. The new APIs to do this are   and  . herr_t H5Glink(hid_t cur_loc_id, H5G_link_t type, const char *cur_name, const char *new_name); hdf5Closes the specified group. The group ID will no longer be valid for accessing the group.5Returns non-negative on success, negative on failure.  herr_t H5Gclose(hid_t group_id); hdf5Retrieve information about a group, according to the order of an index.5Returns non-negative on success, negative on failure. herr_t H5Gget_info_by_idx(hid_t loc_id, const char *group_name, H5_index_t idx_type, H5_iter_order_t order, hsize_t n, H5G_info_t *ginfo, hid_t lapl_id); hdf5#Retrieve information about a group.5Returns non-negative on success, negative on failure. herr_t H5Gget_info_by_name(hid_t loc_id, const char *name, H5G_info_t *ginfo, hid_t lapl_id); hdf5#Retrieve information about a group.5Returns non-negative on success, negative on failure. 4herr_t H5Gget_info(hid_t loc_id, H5G_info_t *ginfo); hdf53Returns a copy of the group creation property list.On success, returns the ID for a copy of the group creation property list. The property list ID should be released by calling  h5p_close. *hid_t H5Gget_create_plist(hid_t group_id); hdf5Opens an existing group for modification. When finished, call  # to close it and release resources.This function allows the user the pass in a Group Access Property List, which   does not.On success, returns the object ID of the group. On failure, returns a negative value. >hid_t H5Gopen2(hid_t loc_id, const char *name, hid_t gapl_id); hdf5 Creates a new group relative to loc_id2, giving it the specified creation property list gcpl_id and access property list gapl_id.6The resulting ID should be linked into the file with # or it will be deleted when closed.Given the default setting,   followed by  will have the same function as  . Parameters:  loc_id ::  File or group identifier name ::  *Absolute or relative name of the new group gcpl_id ::   Property list for group creation gapl_id ::  Property list for group accessExample: To create missing groups "A" and "B01" along the given path "A&B01/grp" (TODO: translate to Haskell): hid_t create_id = H5Pcreate(H5P_GROUP_CREATE); int status = H5Pset_create_intermediate_group(create_id, TRUE); hid_t gid = H5Gcreate_anon(file_id, "/A/B01/grp", create_id, H5P_DEFAULT);On success, returns the object ID of a new, empty group open for writing. Call   when finished with the group. On failure, returns a negative value. hid_t H5Gcreate_anon(hid_t loc_id, hid_t gcpl_id, hid_t gapl_id); hdf5Unknown link storage type hdf5Links in group are stored with a "symbol table" (this is sometimes called "old-style" groups) hdf5!Links are stored in object header hdf59Links are stored in fractal heap & indexed with v2 B-tree hdf5 Creates a new group relative to loc_id2, giving it the specified creation property list gcpl_id and access property list gapl_id2. The link to the new group is created with the lcpl_id. Parameters:  loc_id ::  File or group identifier name ::  *Absolute or relative name of the new group lcpl_id ::  Property list for link creation gcpl_id ::   Property list for group creation gapl_id ::  Property list for group accessOn success, returns the object ID of a new, empty group open for writing. Call   when finished with the group. Returns a negative value on failure. hid_t H5Gcreate2(hid_t loc_id, const char *name, hid_t lcpl_id, hid_t gcpl_id, hid_t gapl_id); hdf5Unknown object type hdf5Object is a group hdf5Object is a dataset hdf5Object is a named data type hdf5Object is a symbolic link hdf5Object is a user-defined link hdf5Reserved for future use hdf5Reserved for future use hdf5Reserved for future use hdf5 Creates a new group relative to loc_id and gives it the specified name. The group is opened for write access and it's object ID is returned. The optional  size_hint specifies how much file space to reserve to store the names that will appear in this group. If a non-positive value is supplied for the  size_hint then a default size is chosen.Note: Deprecated in favor of  On success, returns the object ID of a new, empty group open for writing. Call   when finished with the group. On failure, returns a negative value. hid_t H5Gcreate1(hid_t loc_id, const char *name, size_t size_hint); hdf5Opens an existing group for modification. When finished, call  # to close it and release resources.Note: Deprecated in favor of  On success, returns the Object ID of the group. On failure, returns a negative value. /hid_t H5Gopen1(hid_t loc_id, const char *name);  Safe-Inferred hdf5!Buffer to store heap ID and index typedef unsigned char hdset_reg_ref_t[H5R_DSET_REG_REF_BUF_SIZE]; hdf5Reference types allowed hdf5Retrieves the type of object that an object reference points to Given a reference to some object, this function returns the type of object pointed to. Parameters:  id ::  Dataset reference object is in or location ID of object that the dataset is located within. ref_type ::   Type of reference to query ref :: ; a Reference to query..On success, returns an object type defined in Bindings.HDF5.Raw.H5G On failure, returns  H5G_obj_t H5Rget_obj_type1(hid_t id, H5R_type_t ref_type, const void *_ref); hdf5Given a reference to some object, determine a path to the object referenced in the file.4Note: This may not be the only path to that object. Parameters:  loc_id ::  Dataset reference object is in or location ID of object that the dataset is located within. ref_type ::   Type of reference ref :: ; a Reference to query. name :: 7  )Buffer to place name of object referenced size ::  Size of name bufferReturns non-negative length of the path on success, Negative on failure ssize_t H5Rget_name(hid_t loc_id, H5R_type_t ref_type, const void *ref, char *name/*out*/, size_t size); hdf5Given a reference to some object, this function retrieves the type of object pointed to. Parameters:  id ::  Dataset reference object is in or location ID of object that the dataset is located within. ref_type ::   Type of reference to query ref :: ; a Reference to query. obj_type :: 7  "Type of object reference points to5Returns non-negative on success, negative on failure. herr_t H5Rget_obj_type2(hid_t id, H5R_type_t ref_type, const void *_ref, H5O_type_t *obj_type); hdf5Retrieves a dataspace with the region pointed to selected. Given a reference to some object, creates a copy of the dataset pointed to's dataspace and defines a selection in the copy which is the region pointed to. Parameters:  id ::  Dataset reference object is in or location ID of object that the dataset is located within. ref_type ::   "Type of reference to get region of ref :: ; a Reference to open.3Returns a valid ID on success, negative on failure. hid_t H5Rget_region(hid_t dataset, H5R_type_t ref_type, const void *ref); hdf5Opens the HDF5 object referenced. Given a reference to some object, open that object and return an ID for that object. Parameters:  id ::  Dataset reference object is in or location ID of object that the dataset is located within. ref_type ::   Type of reference to create ref :: ; a Reference to open.2Returns a valid ID on success, negative on failure hid_t H5Rdereference(hid_t dataset, H5R_type_t ref_type, const void *ref); hdf56Creates a particular type of reference specified with ref_type, in the space pointed to by ref. The loc_id and name3 are used to locate the object pointed to and the space_id is used to choose the region pointed to (for Dataset Region references). Parameters:  ref :: 7 a Reference created loc_id ::  ,Location ID used to locate object pointed to name ::  6Name of object at location LOC_ID of object pointed to ref_type ::   Type of reference to create space_id ::  Dataspace ID with selection, used for Dataset Region references.5Returns non-negative on success, negative on failure. herr_t H5Rcreate(void *ref, hid_t loc_id, const char *name, H5R_type_t ref_type, hid_t space_id); hdf5invalid Reference Type hdf5Object reference hdf5Dataset Region Reference hdf5Number of reference types   Safe-Inferredn hdf5Modify the file access property list to use the H5FD_STDIO driver. There are no driver-specific properties.(herr_t H5Pset_fapl_stdio(hid_t fapl_id); hdf5Initialize this driver by registering the driver with the library. hid_t H5FD_stdio_init(void);   Safe-Inferred hdf5Modify the file access property list to use the H5FD_SEC2 driver. There are no driver-specific properties. 'herr_t H5Pset_fapl_sec2(hid_t fapl_id); hdf5Initialize this driver by registering the driver with the library. hid_t H5FD_sec2_init(void);   Safe-Inferred> hdf5Modify the file access property list to use the H5FD_LOG driver. There are no driver-specific properties. herr_t H5Pset_fapl_log(hid_t fapl_id, const char *logfile, unsigned flags, size_t buf_size); hdf5Initialize this driver by registering the driver with the library. hid_t H5FD_log_init(void);   Safe-Inferred hdf5Returns information about the family file access property list though the function arguments. herr_t H5Pget_fapl_family(hid_t fapl_id, hsize_t *memb_size/*out*/, hid_t *memb_fapl_id/*out*/); hdf5#Sets the file access property list fapl_id to use the family driver. The  memb_size is the size in bytes of each file member (used only when creating a new file) and the  memb_fapl_id is a file access property list to be used for each family member. herr_t H5Pset_fapl_family(hid_t fapl_id, hsize_t memb_size, hid_t memb_fapl_id); hdf5Initialize this driver by registering the driver with the library. hid_t H5FD_family_init(void);   Safe-Inferred  hdf5:Queries properties set by the H5Pset_fapl_core() function. herr_t H5Pget_fapl_core(hid_t fapl_id, size_t *increment/*out*/, hbool_t *backing_store/*out*/); hdf5Modify the file access property list to use the H5FD_CORE driver. The  increment? specifies how much to grow the memory each time we need more. herr_t H5Pset_fapl_core(hid_t fapl_id, size_t increment, hbool_t backing_store); hdf5Initialize this driver by registering the driver with the library. hid_t H5FD_core_init(void);x  None4; hdf5Callback type for  typedef herr_t (*H5E_walk1_t)(int n, H5E_error1_t *err_desc, void *client_data); hdf51Information about an error element of error stackmajor error numberminor error number function in which error occurredfile in which error occurredline in file where error occursoptional supplied description hdf5Callback type for  ?typedef herr_t (*H5E_auto2_t)(hid_t estack, void *client_data); hdf5Callback type for  typedef herr_t (*H5E_walk2_t)(unsigned n, const H5E_error2_t *err_desc, void *client_data); hdf5Error stack traversal direction hdf52Information about an error; element of error stackclass IDmajor error IDminor error numberline in file where error occurs function in which error occurredfile in which error occurredoptional supplied description hdf5$Different kinds of error information hdf5 Retrieves a minor error message.4Returns message if succeeds, otherwise returns NULL. $char *H5Eget_minor(H5E_minor_t min); hdf5 Retrieves a major error message.4Returns message if succeeds, otherwise returns NULL. $char *H5Eget_major(H5E_major_t maj); hdf5This function is for backward compatbility. Walks the error stack for the current thread and calls some function for each error along the way.5Returns non-negative on success / negative on failure herr_t H5Ewalk1(H5E_direction_t direction, H5E_walk1_t func, void *client_data); hdf5This function is for backward compatbility. Turns on or off automatic printing of errors for certain error stack. When turned on (non-null func pointer) any API function which returns an error indication will first call func passing it  client_data as an argument.7The default values before this function is called are  4 with client data being the standard error stream, stderr.+Automatic stack traversal is always in the   direction.5Returns non-negative on success / negative on failure 9herr_t H5Eset_auto1(H5E_auto1_t func, void *client_data); hdf5This function is for backward compatbility. Prints the error stack in some default way. This is just a convenience function for   with a function that prints error messages. Users are encouraged to write there own more specific error handlers.5Returns non-negative on success / negative on failure herr_t H5Eprint1(FILE *stream);'NB: The first parameter is declared as 3 to match  9, but I'm quite sure it never modifies the passed value. hdf5This function definition is for backward compatibility only. It doesn't have error stack and error class as parameters. The old definition of major and minor is casted as HID_T in H5Epublic.h5Returns non-negative on success / negative on failure herr_t H5Epush1(const char *file, const char *func, unsigned line, H5E_major_t maj, H5E_minor_t min, const char *str); hdf5This function is for backward compatbility. Returns the current settings for the automatic error stack traversal function and its data for specific error stack. Either (or both) arguments may be null in which case the value is not returned.5Returns non-negative on success / negative on failure ;herr_t H5Eget_auto1(H5E_auto1_t *func, void **client_data);NB: the a type here should be existentially quantified, not universally, but Haskell doesn't have a convenient way to say so in a foreign import. hdf5&Retrieves the number of error message.;Returns non-negative value on success / negative on failure )ssize_t H5Eget_num(hid_t error_stack_id); hdf5Retrieves an error message.Returns non-negative for message length if succeeds(zero means no message); otherwise returns negative value. ssize_t H5Eget_msg(hid_t msg_id, H5E_type_t *type, char *msg, size_t size); hdf5Determines if the error auto reporting function for an error stack conforms to the H5E_auto_stack_t typedef or the  H5E_auto_t typedef. The is_stack parameter is set to 1 for the first case and 0 for the latter case.5Returns non-negative on success / negative on failure :herr_t H5Eauto_is_v2(hid_t err_stack, unsigned *is_stack); hdf55Clears the error stack for the specified error stack.;Returns non-negative value on success / negative on failure "herr_t H5Eclear2(hid_t err_stack); hdf5Turns on or off automatic printing of errors for certain error stack. When turned on (non-null func pointer) any API function which returns an error indication will first call func passing it  client_data as an argument.7The default values before this function is called are  4 with client data being the standard error stream, stderr.+Automatic stack traversal is always in the   direction. herr_t H5Eset_auto2(hid_t estack_id, H5E_auto2_t func, void *client_data); hdf5Returns the current settings for the automatic error stack traversal function and its data for specific error stack. Either (or both) arguments may be null in which case the value is not returned.5Returns non-negative on success / negative on failure herr_t H5Eget_auto2(hid_t estack_id, H5E_auto2_t *func, void **client_data);NB: the a type here should be existentially quantified, not universally, but Haskell doesn't have a convenient way to say so in a foreign import. hdf5Walks the error stack for the current thread and calls some function for each error along the way.5Returns non-negative on success / negative on failure herr_t H5Ewalk2(hid_t err_stack, H5E_direction_t direction, H5E_walk2_t func, void *client_data); hdf5Prints the error stack in some default way. This is just a convenience function for h5e_walk with a function that prints error messages. Users are encouraged to write their own more specific error handlers.5Returns non-negative on success / negative on failure 0herr_t H5Eprint2(hid_t err_stack, FILE *stream); hdf58Deletes some error messages from the top of error stack.;Returns non-negative value on success / negative on failure -herr_t H5Epop(hid_t err_stack, size_t count); hdf5Replaces current stack with specified stack. This closes the stack ID also.;Returns non-negative value on success / negative on failure 0herr_t H5Eset_current_stack(hid_t err_stack_id); hdf5Retrieves error class name.Returns non-negative for name length if succeeds(zero means no name); otherwise returns negative value.On successful return, name will always be zero-terminated.NB: The return value is the length of the name, not the length copied to the buffer. ssize_t H5Eget_class_name(hid_t class_id, char *name, size_t size); hdf5Closes an error stack.;Returns non-negative value on success / negative on failure &herr_t H5Eclose_stack(hid_t stack_id); hdf5Registers current error stack, returns object handle for it, clears it.Returns non-negative value as stack ID on success / negative on failure "hid_t H5Eget_current_stack(void); hdf5"Creates a new, empty, error stack.Returns non-negative value as stack ID on success / negative on failure hid_t H5Ecreate_stack(void); hdf5.Creates a major or minor error, returns an ID.;Returns non-negative value on success / negative on failure hid_t H5Ecreate_msg(hid_t cls, H5E_type_t msg_type, const char *msg); hdf5Closes a major or minor error.;Returns non-negative value on success / negative on failure "herr_t H5Eclose_msg(hid_t err_id); hdf5Closes an error class.;Returns non-negative value on success / negative on failure +herr_t H5Eunregister_class(hid_t class_id); hdf5Registers an error class.Returns non-negative value as class ID on success / negative on failure hid_t H5Eregister_class(const char *cls_name, const char *lib_name, const char *version); hdf5Object is already open hdf5Unable to compute size hdf5Unable to garbage collect hdf5Unable to unlock object hdf5Unable to lock object hdf5Object already exists hdf5Unable to free object hdf5Unable to copy object hdf5Can't allocate space hdf5!No space available for allocation hdf5File control (fcntl) failed hdf5Address overflowed hdf5 Close failed hdf5 Write failed hdf5 Read failed hdf5 Seek failed hdf5 Object cache hdf5Free Space Manager hdf5 Data filters hdf5 Error API hdf5Invalid arguments to routine hdf5Ternary Search Trees hdf5External file list hdf5 Skip Lists hdf5 Low-level I/O hdf5No error hdf5 Object atom Attribute hdf5 Object header hdf5Heap hdf5Reference Counted Strings hdf5Datatype hdf5Links hdf5Property lists hdf5Resource unavailable hdf5 Dataspace hdf5 References hdf5 B-Tree node hdf53Internal error (too specific to document in detail) hdf5Virtual File Layer hdf5%Plugin for dynamically loaded library hdf5Dataset hdf5HDF5 error class hdf5!Value for the default error stack hdf5Function entry/exit hdf5 Data storage hdf5File accessibility hdf5Shared Object Header Messages hdf5 Symbol table hdf5This is not a standard HDF5 function or macro, but rather a wrapper to the paired macros H5E_BEGIN_TRY and H5E_END_TRY, wrapping a simple action. hdf5begin deep, end at API function hdf5begin at API function, end deep hdf5Pushes a new error record onto error stack for the current thread. The error has major and minor IDs maj_id and min_id, the name of a function where the error was detected, the name of the file where the error was detected, the line within that file, and an error description string. The function name, file name, and error description strings must be statically allocated.4Returns non-negative on success/Negative on failure. herr_t H5Epush2(hid_t err_stack, const char *file, const char *func, unsigned line, hid_t cls_id, hid_t maj_id, hid_t min_id, const char *msg, ...);(msg is a printf format string, the varargs are the format parameters) hdf5Callback type for  1typedef herr_t (*H5E_auto1_t)(void *client_data); hdf5This function is for backward compatbility. Clears the error stack for the specified error stack.5Returns non-negative on success / negative on failure herr_t H5Eclear1(void);   Safe-Inferred6KR hdf5 Read failed hdf5 Write failed hdf5 Close failed hdf5Address overflowed hdf5File control (fcntl) failed hdf5!No space available for allocation hdf5Can't allocate space hdf5Unable to copy object hdf5Unable to free object hdf5Object already exists hdf5Unable to lock object hdf5Unable to unlock object hdf5Unable to garbage collect hdf5Unable to compute size hdf5Object is already open hdf5Can't restore condition hdf5Can't compute value hdf5Can't extend heap's space hdf5Can't attach object hdf5Can't update object hdf5Can't operate on object hdf5Unable to initialize object hdf5Object already initialized hdf5Unable to release object hdf5Can't get value hdf5Can't set value hdf5$Duplicate class name in parent class hdf5Can't merge objects hdf5Can't revive object hdf5Can't shrink container hdf5Bad object header link count hdf5Wrong version number hdf5Alignment error hdf5Unrecognized message hdf5Can't delete message hdf5Iteration failed hdf5Can't pack messages hdf5Can't reset object hdf5Unable to rename object hdf5System error message hdf5!Requested filter is not available hdf5Callback failed hdf5&Error from filter 'can apply' callback hdf5&Error from filter 'set local' callback hdf5$Filter present but encoding disabled hdf5Filter operation failed hdf5Can't open object hdf5Can't close object hdf5Name component is too long hdf5Problem with path to object hdf5File already exists hdf5File already open hdf5Unable to create file hdf5Unable to open file hdf5Unable to close file hdf5Not an HDF5 file hdf5Bad file ID accessed hdf5File has been truncated hdf5File mount error hdf51Unable to find atom information (already closed?) hdf5#Unable to find ID group information hdf5Unable to register new atom hdf5#Unable to increment reference count hdf5#Unable to decrement reference count hdf5Out of IDs for group hdf5Unable to flush data from cache hdf5#Unable to serialize data from cache hdf5"Unable to load metadata into cache hdf5Protected metadata error hdf5Metadata not currently cached hdf5Internal error detected hdf5$Unable to insert metadata into cache hdf5Unable to protect metadata hdf5Unable to unprotect metadata hdf5Unable to pin cache entry hdf5Unable to un-pin cache entry hdf5&Unable to mark a pinned entry as dirty hdf5 Unable to mark metadata as dirty hdf5(Unable to expunge a metadata cache entry hdf5'Unable to resize a metadata cache entry hdf5Link traversal failure hdf5Too many soft links in path hdf5Link class not registered hdf5Can't move object hdf5Can't sort objects hdf5Some MPI function failedhdf5MPI Error Stringhdf5Can't receive datahdf5Can't clip hyperslab regionhdf5Can't count elementshdf5Can't select hyperslabhdf5$Can't move to next iterator locationhdf5Invalid selectionhdf5Can't compare objectshdf5Information is uinitializedhdf5Feature is unsupportedhdf5Inappropriate typehdf5 Out of rangehdf5 Bad valuehdf5Object not foundhdf5Object already existshdf5Unable to encode valuehdf5Unable to decode valuehdf5Unable to split nodehdf5Unable to redistribute recordshdf5Unable to swap recordshdf5Unable to insert objecthdf5Unable to list nodehdf5Unable to modify recordhdf5Unable to remove objecthdf5Can't convert datatypeshdf5Bad size for objecthdf5Unrecognized minor error codehdf5Datasethdf5Function entry/exithdf5 Data storagehdf5File accessabilityhdf5Shared Object Header Messageshdf5 Symbol tablehdf5Virtual File Layerhdf53Internal error (too specific to document in detail)hdf5 B-Tree nodehdf5 Referenceshdf5 Dataspacehdf5Resource unavailablehdf5Property listshdf5Linkshdf5Datatypehdf5Reference Counted Stringshdf5Heaphdf5 Object headerhdf5 Object atomhdf5 Attributehdf5 Low-level I/Ohdf5 Skip Listshdf5External file listhdf5Ternary Search Treeshdf5Invalid arguments to routinehdf5 Error APIhdf5 Data filtershdf5Free Space Managerhdf5 Object cachehdf5Unrecognized major error code   Safe-Inferredt.hdf5Operator function type for  Parameters:  elem :: 3 a >Pointer to the element in memory containing the current point. type_id ::  ,Datatype ID for the elements stored in ELEM. ndim ::  $Number of dimensions for POINT array point :: 9  Array containing the location of the element within the original dataspace. operator_data :: 3 b ?Pointer to any user-defined data associated with the operation.Return Values:Zero causes the iterator to continue, returning zero when all elements have been processed.Positive causes the iterator to immediately return that positive value, indicating short-circuit success. The iterator can be restarted at the next element.Negative causes the iterator to immediately return that value, indicating failure. The iterator can be restarted at the next element. typedef herr_t (*H5D_operator_t)(void *elem, hid_t type_id, unsigned ndim, const hsize_t *point, void *operator_data);hdf5Callback for H5Pset_append_flush() in a dataset access property list > typedef herr_t (*H5D_append_cb_t)(hid_t dataset_id, hsize_t *cur_dims, void *op_data)hdf5Values for VDS bounds optionhdf5Values for fill value statushdf5.Values for time of writing fill value propertyhdf5)Values for the status of space allocationhdf5-Values for the space allocation time propertyhdf5$Types of chunk index data structureshdf5"Values for the H5D_LAYOUT propertyhdf5?This function makes sure that the dataset is at least of size size. The dimensionality of size= is the same as the data space of the dataset being changed.Note: Deprecated in favor of 5Returns non-negative on success / negative on failure 6herr_t H5Dextend(hid_t dset_id, const hsize_t size[]);hdf5Finds a dataset named name at loc_id, opens it, and returns its ID. The dataset should be closed when the caller is no longer interested in it.On success returns a new dataset ID. On failure, returns a negative value.Note: Deprecated in favor of  0hid_t H5Dopen1(hid_t file_id, const char *name);hdf5Creates a new dataset named name at loc_id, opens the dataset for access, and associates with that dataset constant and initial persistent properties including the type of each datapoint as stored in the file (type_id), the size of the dataset (space_id0), and other initial miscellaneous properties (dcpl_id).All arguments are copied into the dataset, so the caller is allowed to derive new types, data spaces, and creation parameters from the old ones and reuse them in calls to create other datasets.On success, returns the object ID of the new dataset. At this point, the dataset is ready to receive its raw data. Attempting to read raw data from the dataset will probably return the fill value. The dataset should be closed when the caller is no longer interested in it.%On failure, returns a negative value.Note: Deprecated in favor of  hid_t H5Dcreate1(hid_t file_id, const char *name, hid_t type_id, hid_t space_id, hid_t dcpl_id);hdf5Internal API routines > H5_DLL herr_t H5Dformat_convert(hid_t dset_id);hdf5Prints various information about a dataset. This function is not to be documented in the API at this time.4Returns non-negative on success, negative on failure herr_t H5Ddebug(hid_t dset_id);hdf5Gathers data provided from the source buffer src_buf to contiguous buffer dst_buf, then calls the callback op. The dimensions of src_buf and the selection to be gathered are specified by the dataspace src_space_id. The type of the data to be gathered is specified by type_id.4Returns non-negative on success, negative on failure herr_t H5Dgather(hid_t src_space_id, const void *src_buf, hid_t type_id, size_t dst_buf_size, void *dst_buf, H5D_gather_func_t op, void *op_data);hdf5Scatters data provided by the callback op to the destination buffer dst_buf, where the dimensions of dst_buf and the selection to be scattered to are specified by the dataspace dst_space_id. The type of the data to be scattered is specified by type_id.4Returns non-negative on success, negative on failure herr_t H5Dscatter(H5D_scatter_func_t op, void *op_data, hid_t type_id, hid_t dst_space_id, void *dst_buf);hdf5Modifies the dimensions of a dataset. Can change to a smaller dimension.4Returns non-negative on success, negative on failure :herr_t H5Dset_extent(hid_t dset_id, const hsize_t size[]);hdf5Fill a selection in memory with a value. Use the selection in the dataspace to fill elements in a memory buffer. If "fill" parameter is NULL, uses all zeros as fill value Parameters:  fill :: ; a Pointer to fill value to use fill_type_id ::  Datatype of the fill value buf :: 3 b &Memory buffer to fill selection within buf_type_id ::  "Datatype of the elements in buffer space_id ::  Dataspace describing memory buffer & containing selection to use.6Returns non-negative on success / negative on failure. herr_t H5Dfill(const void *fill, hid_t fill_type, void *buf, hid_t buf_type, hid_t space);hdf5This routine checks the number of bytes required to store the VL data from the dataset, using the space_id3 for the selection in the dataset on disk and the type_id for the memory representation of the VL data, in memory. The size value is modified according to how many bytes are required to store the VL data in memory.This routine actually performs the read with a custom memory manager which basically just counts the bytes requested and uses a temporary memory buffer (through the H5FL API) to make certain enough space is available to perform the read. Then the temporary buffer is released and the number of bytes allocated is returned. Kinda kludgy, but easier than the other method of trying to figure out the sizes without actually reading the data in... - QAK4Returns non-negative on success, negative on failure herr_t H5Dvlen_get_buf_size(hid_t dataset_id, hid_t type_id, hid_t space_id, hsize_t *size);hdf5Frees the buffers allocated for storing variable-length data in memory. Only frees the VL data in the selection defined in the dataspace. The dataset transfer property list is required to find the correct allocation/free methods for the VL data in the buffer.4Returns non-negative on success, negative on failure herr_t H5Dvlen_reclaim(hid_t type_id, hid_t space_id, hid_t plist_id, void *buf);hdf5This routine iterates over all the elements selected in a memory buffer. The callback function is called once for each element selected in the dataspace. The selection in the dataspace is modified so that any elements already iterated over are removed from the selection if the iteration is interrupted (by the  function returning non-zero) in the "middle" of the iteration and may be re-started by the user where it left off.NOTE: Until "subtracting" elements from a selection is implemented, the selection is not modified. Parameters:  buf :: 3 a Pointer to the buffer in memory containing the elements to iterate over. type_id ::  'Datatype ID for the elements stored in buf. space_id ::  Dataspace ID for buf., also contains the selection to iterate over. op ::  a b Function pointer to the routine to be called for each element in buf iterated over. operator_data :: 3 b ?Pointer to any user-defined data associated with the operation.Returns the return value of the last operator if it was non-zero, or zero if all elements were processed. Otherwise returns a negative value. herr_t H5Diterate(void *buf, hid_t type_id, hid_t space_id, H5D_operator_t op, void *operator_data);hdf54Writes (part of) a data set from application memory buf to the file. The part of the dataset to write is defined with the  mem_space_id and  file_space_id arguments. The data points are converted from their current type ( mem_type_id) to their file datatype. Additional miscellaneous data transfer properties can be passed to this function with the plist_id argument.The  file_space_id can be the constant h5s_ALL which indicates that the entire file data space is to be referenced.The  mem_space_id can be the constant h5s_ALL in which case the memory data space is the same as the file data space defined when the dataset was created.The number of elements in the memory data space must match the number of elements in the file data space.The plist_id can be the constant  h5p_DEFAULT> in which case the default data transfer properties are used.6Returns non-negative on success / negative on failure. herr_t H5Dwrite(hid_t dset_id, hid_t mem_type_id, hid_t mem_space_id, hid_t file_space_id, hid_t plist_id, const void *buf);hdf5Reads (part of) a data set from the file into application memory buf3. The part of the dataset to read is defined with  mem_space_id and  file_space_id=. The data points are converted from their file type to the  mem_type_id specified. Additional miscellaneous data transfer properties can be passed to this function with the plist_id argument.The  file_space_id can be the constant h5s_ALL which indicates that the entire file data space is to be referenced.The  mem_space_id can be the constant h5s_ALL in which case the memory data space is the same as the file data space defined when the dataset was created.The number of elements in the memory data space must match the number of elements in the file data space.The plist_id can be the constant  h5p_DEFAULT> in which case the default data transfer properties are used.6Returns non-negative on success / negative on failure. herr_t H5Dread(hid_t dset_id, hid_t mem_type_id, hid_t mem_space_id, hid_t file_space_id, hid_t plist_id, void *buf/*out*/);hdf5+Returns the address of dataset in file, or  on failure. %haddr_t H5Dget_offset(hid_t dset_id);hdf5Returns the amount of storage that is required for the dataset. For chunked datasets this is the number of allocated chunks times the chunk size.On success, returns the amount of storage space allocated for the dataset, not counting meta data. The return value may be zero if no data has been stored.On failure, returns zero. +hsize_t H5Dget_storage_size(hid_t dset_id);hdf5Returns a copy of the dataset creation property list of the specified dataset.The chunk cache parameters in the returned property lists will be those used by the dataset. If the properties in the file access property list were used to determine the dataset's chunk cache configuration, then those properties will be present in the returned dataset access property list. If the dataset does not use a chunked layout, then the chunk cache properties will be set to the default. The chunk cache properties in the returned list are considered to be "set", and any use of this list will override the corresponding properties in the file's file access property list.All link access properties in the returned list will be set to the default values.On success, returns the ID for a copy of the dataset access property list. The template should be released by calling  h5p_close(. On failure, returns a negative value. )hid_t H5Dget_access_plist(hid_t dset_id);hdf52Gets a copy of the dataset creation property list.On success, returns the ID for a copy of the dataset creation property list. The template should be released by calling  h5p_close. )hid_t H5Dget_create_plist(hid_t dset_id);hdf5/Gets a copy of the file datatype for a dataset.On success, returns the ID for a copy of the datatype. The data type should be released by calling  h5t_close(. On failure, returns a negative value. !hid_t H5Dget_type(hid_t dset_id);hdf5)Gets the status of data space allocation.5Returns non-negative on success / negative on failure herr_t H5Dget_space_status(hid_t dset_id, H5D_space_status_t *allocation);hdf54Returns a copy of the file data space for a dataset.On success, returns a new ID for a copy of the data space. The data space should be released by calling  h5s_close. "hid_t H5Dget_space(hid_t dset_id);hdf5Closes access to a dataset (dset_id) and releases resources used by it. It is illegal to subsequently use that same dataset ID in calls to other dataset functions.5Returns non-negative on success / negative on failure herr_t H5Dclose(hid_t dset_id);hdf5Finds a dataset named name at loc_id, opens it, and returns its ID. The dataset should be close when the caller is no longer interested in it.$Takes a dataset access property listOn success, returns a new dataset ID. On failure, returns a negative value. ?hid_t H5Dopen2(hid_t file_id, const char *name, hid_t dapl_id);hdf5Creates a new dataset named name at loc_id, opens the dataset for access, and associates with that dataset constant and initial persistent properties including the type of each datapoint as stored in the file (type_id), the size of the dataset (space_id0), and other initial miscellaneous properties (dcpl_id).All arguments are copied into the dataset, so the caller is allowed to derive new types, data spaces, and creation parameters from the old ones and reuse them in calls to create other datasets.6The resulting ID should be linked into the file with h5o_link# or it will be deleted when closed.On success returns the object ID of the new dataset. At this point, the dataset is ready to receive its raw data. Attempting to read raw data from the dataset will probably return the fill value. The dataset should be linked into the group hierarchy before being closed or it will be deleted. The dataset should be closed when the caller is no longer interested in it.%On failure, returns a negative value. hid_t H5Dcreate_anon(hid_t file_id, hid_t type_id, hid_t space_id, hid_t plist_id, hid_t dapl_id);hdf5Creates a new dataset named name at loc_id, opens the dataset for access, and associates with that dataset constant and initial persistent properties including the type of each datapoint as stored in the file (type_id), the size of the dataset (space_id0), and other initial miscellaneous properties (dcpl_id).All arguments are copied into the dataset, so the caller is allowed to derive new types, data spaces, and creation parameters from the old ones and reuse them in calls to create other datasets.On success, returns the object ID of the new dataset. At this point, the dataset is ready to receive its raw data. Attempting to read raw data from the dataset will probably return the fill value. The dataset should be closed when the caller is no longer interested in it.%On failure, returns a negative value. hid_t H5Dcreate2(hid_t loc_id, const char *name, hid_t type_id, hid_t space_id, hid_t lcpl_id, hid_t dcpl_id, hid_t dapl_id);hdf5=Bit flags for the H5Pset_chunk_opts() and H5Pget_chunk_opts()hdf5*Property names for H5LTDdirect_chunk_writehdf5raw data is very smallhdf5 the defaulthdf5slow and fancyhdf5'actual data is stored in other datasetshdf5v1 B-tree indexhdf5v1 B-tree index (default)hdf5Single Chunk index (cur dims[]=max dims[]=chunk dims[]; filtered & non-filtered)hdf5"Fixed array (for 0 unlimited dims)Implicit: No Index (H5D_ALLOC_TIME_EARLY, non-filtered, fixed dims)hdf5&Extensible array (for 1 unlimited dim)hdf5'v2 B-tree index (for >1 unlimited dims) Safe-Inferredhdf5 is a public structure intended for use in public APIs. At least in its initial incarnation, it is basicaly a copy of struct H5C_auto_size_ctl_t , minus the  report_fcn field, and plus the dirty_bytes_threshold field.The  report_fcn= field is omitted, as including it would require us to make H5C_t structure public.The dirty_bytes_threshold field does not appear in H5C_auto_size_ctl_t, as synchronization between caches on different processes is handled at the H5AC level, not at the level of H5C. Note however that there is considerable interaction between this value and the other fields in this structure.Similarly, the open_trace_file, close_trace_file, and trace_file_name fields do not appear in H5C_auto_size_ctl_t, as most trace file issues are handled at the H5AC level. The one exception is storage of the pointer to the trace file, which is handled by H5C.The structure is in H5ACpublic.h as we may wish to allow different configuration options for metadata and raw data caches.=The fields of the structure are discussed individually below.Integer field containing the version number of this version of the H5AC_cache_config_t structure. Any instance of H5AC_cache_config_t passed to the cache must have a known version number, or an error will be flagged.Boolean field used to enable and disable the default reporting function. This function is invoked every time the automatic cache resize code is run, and reports on its activities.This is a debugging function, and should normally be turned off.Boolean field indicating whether the trace_file_name field should be used to open a trace file for the cache.The trace file is a debuging feature that allow the capture of top level metadata cache requests for purposes of debugging and/or optimization. This field should normally be set to FALSE, as trace file collection imposes considerable overhead.This field should only be set to TRUE when the trace_file_name contains the full path of the desired trace file, and either there is no open trace file on the cache, or the close_trace_file field is also TRUE.Boolean field indicating whether the current trace file (if any) should be closed.See the above comments on the open_trace_file field. This field should be set to FALSE unless there is an open trace file on the cache that you wish to close.0Full path of the trace file to be opened if the open_trace_file field is TRUE.In the parallel case, an ascii representation of the mpi rank of the process will be appended to the file name to yield a unique trace file name for each process.'The length of the path must not exceed  characters.Boolean field used to either report the current evictions enabled status of the cache, or to set the cache's evictions enabled status.In general, the metadata cache should always be allowed to evict entries. However, in some cases it is advantageous to disable evictions briefly, and thereby postpone metadata writes. However, this must be done with care, as the cache can grow quickly. If you do this, re-enable evictions as soon as possible and monitor cache size.At present, evictions can only be disabled if automatic cache resizing is also disabled (that is, (  incr_mode ==   ) && (  decr_mode ==   )). There is no logical reason why this should be so, but it simplifies implementation and testing, and I can't think of any reason why it would be desireable. If you can think of one, I'll revisit the issue.Boolean flag indicating whether the size of the initial size of the cache is to be set to the value given in the initial_size field. If set_initial_size is FALSE, the  initial_size field is ignored.If enabled, this field contain the size the cache is to be set to upon receipt of this structure. Needless to say,  initial_size! must lie in the closed interval [min_size .. max_size].double in the range 0 to 1 indicating the fraction of the cache that is to be kept clean. This field is only used in parallel mode. Typical values are 0.1 to 0.5.Maximum size to which the cache can be adjusted. The supplied value must fall in the closed interval [MIN_MAX_CACHE_SIZE .. MAX_MAX_CACHE_SIZE] . Also, max_size# must be greater than or equal to min_size.Minimum size to which the cache can be adjusted. The supplied value must fall in the closed interval [H5C__MIN_MAX_CACHE_SIZE .. H5C__MAX_MAX_CACHE_SIZE] . Also, min_size must be less than or equal to max_size.Number of accesses on the cache over which to collect hit rate stats before running the automatic cache resize code, if it is enabled.At the end of an epoch, we discard prior hit rate data and start collecting afresh. The epoch_length must lie in the closed interval [H5C__MIN_AR_EPOCH_LENGTH .. H5C__MAX_AR_EPOCH_LENGTH].Instance of the  enumerated type whose value indicates how we determine whether the cache size should be increased. At present there are two possible values: : Don't attempt to increase the size of the cache automatically. When this increment mode is selected, the remaining fields in the cache size increase section ar ignored. : Attempt to increase the size of the cache whenever the average hit rate over the last epoch drops below the value supplied in the lower_hr_threshold field. Note that this attempt will fail if the cache is already at its maximum size, or if the cache is not already using all available space.Note that you must set  decr_mode to  0 if you disable metadata cache entry evictions.3Lower hit rate threshold. If the increment mode ( incr_mode) is   and the hit rate drops below the value supplied in this field in an epoch, increment the cache size by size_increment6. Note that cache size may not be incremented above max_size;, and that the increment may be further restricted by the  max_increment field if it is enabled.When enabled, this field must contain a value in the range [0.0, 1.0]. Depending on the  incr_mode- selected, it may also have to be less than upper_hr_threshold.Double containing the multiplier used to derive the new cache size from the old if a cache size increment is triggered. The increment must be greater than 1.0, and should not exceed 2.0.The new cache size is obtained my multiplying the current max cache size by the increment, and then clamping to max_size and to stay within the max_increment as necessary.Boolean flag indicating whether the max_increment field should be used to limit the maximum cache size increment.If enabled by the apply_max_increment field described above, this field contains the maximum number of bytes by which the cache size can be increased in a single re-size.Instance of the  enumerated type whose value indicates whether and by which algorithm we should make flash increases in the size of the cache to accomodate insertion of large entries and large increases in the size of a single entry.The addition of the flash increment mode was occasioned by performance problems that appear when a local heap is increased to a size in excess of the current cache size. While the existing re-size code dealt with this eventually, performance was very bad for the remainder of the epoch.2At present, there are two possible values for the flash_incr_mode: : Don't perform flash increases in the size of the cache. : Let x be either the size of a newly newly inserted entry, or the number of bytes by which the size of an existing entry has been increased. If ,x > flash_threshold * current max cache size6, increase the current maximum cache size by x * flash_multiple less any free space in the cache, and start a new epoch. For now at least, pay no attention to the maximum increment.In both of the above cases, the flash increment pays no attention to the maximum increment (at least in this first incarnation), but DOES stay within max_size.With a little thought, it should be obvious that the above flash cache size increase algorithm is not sufficient for all circumstances. For example, suppose the user round robins through (1/flash_threshold) + 1 groups, adding one data set to each on each pass. Then all will increase in size at about the same time, requiring the max cache size to at least double to maintain acceptable performance, however the above flash increment algorithm will not be triggered.Hopefully, the add space algorithms detailed above will be sufficient for the performance problems encountered to date. However, we should expect to revisit the issue.7Double containing the multiple described above in the  # section of the discussion of the flash_incr_mode( section. This field is ignored unless flash_incr_mode is  .Double containing the factor by which current max cache size is multiplied to obtain the size threshold for the  add_space: flash increment algorithm. The field is ignored unless flash_incr_mode is  .Instance of the  enumerated type whose value indicates how we determine whether the cache size should be decreased. At present there are four possibilities. : Don't attempt to decrease the size of the cache automatically. When this increment mode is selected, the remaining fields in the cache size decrease section are ignored.: Attempt to decrease the size of the cache whenever the average hit rate over the last epoch rises above the value supplied in the upper_hr_threshold field.: At the end of each epoch, search the cache for entries that have not been accessed for at least the number of epochs specified in the epochs_before_eviction field, and evict these entries. Conceptually, the maximum cache size is then decreased to match the new actual cache size. However, this reduction may be modified by the min_size, the  max_decrement , and/or the  empty_reserve. : Same as age_out, but we only attempt to reduce the cache size when the hit rate observed over the last epoch exceeds the value provided in the upper_hr_threshold field.Note that you must set  decr_mode to  0 if you disable metadata cache entry evictions.Upper hit rate threshold. The use of this field varies according to the current  decr_mode:  or /: The value of this field is ignored.: If the hit rate exceeds this threshold in any epoch, attempt to decrement the cache size by size_decrement.2Note that cache size may not be decremented below min_size.Note also that if the upper_threshold2 is 1.0, the cache size will never be reduced.: If the hit rate exceeds this threshold in any epoch, attempt to reduce the cache size by evicting entries that have not been accessed for more than the specified number of epochs..This field is only used when the decr_mode is .The field is a double containing the multiplier used to derive the new cache size from the old if a cache size decrement is triggered. The decrement must be in the range 0.0 (in which case the cache will try to contract to its minimum size) to 1.0 (in which case the cache will never shrink).Boolean flag used to determine whether decrements in cache size are to be limited by the  max_decrement field.Maximum number of bytes by which the cache size can be decreased in a single re-size. Note that decrements may also be restricted by the min_size of the cache, and (in age out modes) by the  empty_reserve field.-Integer field used in H5C_decr__age_out and  decrement modes.This field contains the number of epochs an entry must remain unaccessed before it is evicted in an attempt to reduce the cache size. If applicable, this field must lie in the range [1 .. H5C__MAX_EPOCH_MARKERS].&Boolean field controlling whether the  empty_reserve field is to be used in computing the new cache size when the  decr_mode is  or .To avoid a constant racheting down of cache size by small amounts in the  and  modes, this field allows one to require that any cache size reductions leave the specified fraction of unused space in the cache.The value of this field must be in the range [0.0, 1.0]. I would expect typical values to be in the range of 0.01 to 0.1.Threshold of dirty byte creation used to synchronize updates between caches. (See above for outline and motivation.)This value MUST be consistant across all processes accessing the file. This field is ignored unless HDF5 has been compiled for parallel.Integer field containing a code indicating the desired metadata write strategy. The valid values of this field are enumerated and discussed below:hdf5In the distributed metadata write strategy, process zero still makes the decisions as to what entries should be flushed, but the actual flushes are distributed across the processes in the computation to the extent possible.In this strategy, when a sync point is triggered (either by dirty metadata creation or manual flush), all processes enter a barrier.On the other side of the barrier, process 0 constructs an ordered list of the entries to be flushed, and then broadcasts this list to the caches in all the processes.All processes then scan the list of entries to be flushed, flushing some, and marking the rest as clean. The algorithm for this purpose ensures that each entry in the list is flushed exactly once, and all are marked clean in each cache.Note that in the case of a flush of the cache, no message passing is necessary, as all processes have the same list of dirty entries, and all of these entries must be flushed. Thus in this case it is sufficient for each process to sort its list of dirty entries after leaving the initial barrier, and use this list as if it had been received from process zero.To avoid possible messages from the past/future, all caches must wait until all caches are done before leaving the sync point.hdf5When metadata_write_strategy is set to this value, only process zero is allowed to write dirty metadata to disk. All other processes must retain dirty metadata until they are informed at a sync point that the dirty metadata in question has been written to disk.When the sync point is reached (or when there is a user generated flush), process zero flushes sufficient entries to bring it into complience with its min clean size (or flushes all dirty entries in the case of a user generated flush), broad casts the list of entries just cleaned to all the other processes, and then exits the sync point.Upon receipt of the broadcast, the other processes mark the indicated entries as clean, and leave the sync point as well. Safe-Inferredhdf5(Shared object header message header size.Shared object header message index & heap sizehdf5Current "global" information about file (just size info currently)Superblock extension size(Shared object header message header size.Shared object header message index & heap sizehdf5File space handling strategyhdf5Free space section informationAddress of free space sectionSize of free space sectionhdf55Types of allocation requests. The values larger than  should not change other than adding new types to the end. These numbers might appear in files.hdf5How does file close behave?hdf5?The difference between a single file and a set of mounted fileshdf5Returns the atomicity modeReturns non-negative on success, negative on failure > herr_t H5Fget_mpi_atomicity(hid_t file_id, hbool_t *flag);hdf5Sets the atomicity modeReturns non-negative on success, negative on failure > herr_t H5Fset_mpi_atomicity(hid_t file_id, hbool_t flag);hdf5Releases the external file cache associated with the provided file, potentially closing any cached files unless they are held open from somewhere else.4Returns non-negative on success, negative on failure 0herr_t H5Fclear_elink_file_cache(hid_t file_id);hdf5<#. Get storage size for superblock extension if there is one#. Get the amount of btree and heap storage for entries in the SOHM table if there is one.#. Consider success when there is no superblock extension and/or SOHM table4Returns non-negative on success, negative on failurehdf5>Gets the name of the file to which object OBJ_ID belongs. If name is non-NULL then write up to size bytes into that buffer and always return the length of the entry name. Otherwise size is ignored and the function does not store the name, just returning the number of characters required to store the name. If an error occurs then the buffer pointed to by name (NULL or non-NULL) is unchanged and the function returns a negative value.Note: This routine returns the name that was used to open the file, not the actual name after resolving symlinks, etc.Returns the length of the file name (_not_ the length of the data copied into the output buffer) on success, or a negative value on failure. ;ssize_t H5Fget_name(hid_t obj_id, char *name, size_t size);hdf5Reset the hit rate statistic whose current value can be obtained via the  call. Note that this statistic will also be reset once per epoch by the automatic cache resize code if it is enabled.It is probably a bad idea to call this function unless you are controlling cache size from your program instead of using our cache size control code.4Returns non-negative on success, negative on failure 2herr_t H5Freset_mdc_hit_rate_stats(hid_t file_id);hdf5Retrieves the maximum size, minimum clean size, current size, and current number of entries from the metadata cache associated with the specified file. If any of the ptr parameters are NULL, the associated datum is not returned.4Returns non-negative on success, negative on failure herr_t H5Fget_mdc_size(hid_t file_id, size_t * max_size_ptr, size_t * min_clean_size_ptr, size_t * cur_size_ptr, int * cur_num_entries_ptr);hdf5Retrieves the current hit rate from the metadata cache. This rate is the overall hit rate since the last time the hit rate statistics were reset either manually or automatically.4Returns non-negative on success, negative on failure herr_t H5Fget_mdc_hit_rate(hid_t file_id, double * hit_rate_ptr);hdf5Sets the current metadata cache automatic resize configuration, using the contents of the instance of  pointed to by  config_ptr.4Returns non-negative on success, negative on failure herr_t H5Fset_mdc_config(hid_t file_id, H5AC_cache_config_t * config_ptr);hdf5Retrieves the current automatic cache resize configuration from the metadata cache, and return it in  config_ptr.Note that the version field of  config_ptr must be correctly filled in by the caller. This allows us to adapt for obsolete versions of the structure.4Returns non-negative on success, negative on failure herr_t H5Fget_mdc_config(hid_t file_id, H5AC_cache_config_t * config_ptr);hdf5If a buffer is provided (via the buf_ptr argument) and is big enough (size in buf_len argument), load *buf_ptr with an image of the open file whose ID is provided in the file_id parameter, and return the number of bytes copied to the buffer.If the buffer exists, but is too small to contain an image of the indicated file, return a negative number.Finally, if no buffer is provided, return the size of the buffer needed. This value is simply the eoa of the target file.$Note that any user block is skipped.Also note that the function may not be used on files opened with either the split/multi file driver or the family file driver.In the former case, the sparse address space makes the get file image operation impractical, due to the size of the image typically required.In the case of the family file driver, the problem is the driver message in the super block, which will prevent the image being opened with any driver other than the family file driver -- which negates the purpose of the operation. This can be fixed, but no resources for this now.Return: Success: Bytes copied / number of bytes needed. Failure: negative value ssize_t H5Fget_file_image(hid_t file_id, void * buf_ptr, size_t buf_len);hdf5Retrieves the file size of the HDF5 file. This function is called after an existing file is opened in order to learn the true size of the underlying file.4Returns non-negative on success, negative on failure 5herr_t H5Fget_filesize(hid_t file_id, hsize_t *size);hdf5Retrieves the amount of free space in the file. Returns a negative value on failure.)hssize_t H5Fget_freespace(hid_t file_id);hdf5Given a mount point, dissassociate the mount point's file from the file mounted there. Do not close either file.The mount point can either be the group in the parent or the root group of the mounted file (both groups have the same name). If the mount point was opened before the mount then it's the group in the parent, but if it was opened after the mount then it's the root group of the child.4Returns non-negative on success, negative on failure /herr_t H5Funmount(hid_t loc, const char *name);hdf5 Mount file child_id onto the group specified by loc_id and name using mount properties plist_id.4Returns non-negative on success, negative on failure herr_t H5Fmount(hid_t loc, const char *name, hid_t child, hid_t plist);hdf5Returns a pointer to the file handle of the low-level file driver.4Returns non-negative on success, negative on failure herr_t H5Fget_vfd_handle(hid_t file_id, hid_t fapl, void **file_handle);hdf5$Returns a list of opened object IDs.4Returns non-negative on success, negative on failure ssize_t H5Fget_obj_ids(hid_t file_id, unsigned types, size_t max_objs, hid_t *obj_id_list);hdf5Returns the number of opened object IDs (files, datasets, groups and datatypes) in the same file.5Returns non-negative on success, negative on failure. 8ssize_t H5Fget_obj_count(hid_t file_id, unsigned types);hdf5"Public API to retrieve the file's intent flags passed during .5Returns non-negative on success / negative on failure 7herr_t H5Fget_intent(hid_t file_id, unsigned * intent);hdf5Returns a copy of the file access property list of the specified file.NOTE: If you are going to overwrite information in the copied property list that was previously opened and assigned to the property list, then you must close it before overwriting the values.On success, returns an Object ID for a copy of the file access property list. On failure, returns a negative value. *hid_t H5Fget_access_plist(hid_t file_id);hdf5Get an atom for a copy of the file-creation property list for this file. This function returns an atom with a copy of the properties used to create a file.On success, returns a template ID. On failure, returns a negative value. *hid_t H5Fget_create_plist(hid_t file_id);hdf5+This function closes the file specified by file_id by flushing all data to storage, and terminating access to the file through file_id. If objects (e.g., datasets, groups, etc.) are open in the file then the underlying storage is not closed until those objects are closed; however, all data for the file and the open objects is flushed.5Returns non-negative on success / negative on failure herr_t H5Fclose(hid_t file_id);hdf5Flushes all outstanding buffers of a file to disk but does not remove them from the cache. The  object_id? can be a file, dataset, group, attribute, or named data type.5Returns non-negative on success / negative on failure 4herr_t H5Fflush(hid_t object_id, H5F_scope_t scope);hdf5Reopen a file. The new file handle which is returned points to the same file as the specified file handle. Both handles share caches and other information. The only difference between the handles is that the new handle is not mounted anywhere and no files are mounted on it.On success, returns a file ID. On failure, returns a negative value.  hid_t H5Freopen(hid_t file_id);hdf5This is the primary function for accessing existing HDF5 files. The flags argument determines whether writing to an existing file will be allowed or not. All flags may be combined with the bit-wise OR operator ( .|.  from  Data.Bits) to change the behavior of the file open call. The more complex behaviors of a file's access are controlled through the file-access property list. See Also: Bindings.HDF5.Raw.H5F# for a list of possible values for flags.On success, returns a file ID. On failure, returns a negative value. hid_t H5Fopen(const char *filename, unsigned flags, hid_t access_plist);hdf5;This is the primary function for creating HDF5 files. The flags parameter determines whether an existing file will be overwritten or not. All newly created files are opened for both reading and writing. All flags may be combined with the bit-wise OR operator ( .|.  from  Data.Bits2) to change the behavior of the file create call.The more complex behaviors of a file's creation and access are controlled through the file-creation and file-access property lists. The value of  h5p_DEFAULT for a template value indicates that the library should use the default values for the appropriate template. See also: Bindings.HDF5.Raw.H5F# for the list of supported flags. Bindings.HDF5.Raw.H5P; for the list of file creation and file access properties.On success, returns a file ID. On failure, returns a negative value. hid_t H5Fcreate(const char *filename, unsigned flags, hid_t create_plist, hid_t access_plist);hdf50Check the file signature to detect an HDF5 file. Bugs:This function is not robust: it only uses the default file driver when attempting to open the file when in fact it should use all known file drivers. (htri_t H5Fis_hdf5(const char *filename);hdf5absence of rdwr => rd-onlyhdf5open for read and writehdf5overwrite existing fileshdf5fail if file already existshdf5print debug infohdf5create non-existing fileshdf5indicate that this file is open for writing in a single-writer/multi-reader (SWMR) scenario. Note that the process(es) opening the file for reading must open the file with RDONLY access, and use the special  SWMR_READ access flag.hdf5indicate that this file is open for reading in a single-writer/multi-reader (SWMR) scenario. Note that the process(es) opening the file for SWMR reading must also open the file with the RDONLY flag. */hdf5Value passed to h5p_set_elink_acc_flags2 to cause flags to be taken from the parent file.hdf5 File objectshdf5Dataset objectshdf5 Group objectshdf5Named datatype objectshdf5Attribute objectshdf59Restrict search to objects opened through current file IDhdf54Use this constant string as the MPI_Info key to set h5f_mpio debug flags. To turn on h5f_mpio debug flags, set the MPI_Info value with this key to have the value of a string consisting of the characters that turn on the desired flags.hdf5specified file handle onlyhdf5entire virtual filehdf5Unlimited file size for h5p_set_externalhdf5-Use the degree pre-defined by underlining VFLhdf54file closes only after all opened objects are closedhdf5if no opened objects, file is close; otherwise, file close failshdf5>if there are opened objects, close them first, then close filehdf5;Data should not appear in the free list. Must be negative.hdf5Superblock dataValue not yet set. Can also be the datatype set in a larger allocation that will be suballocated by the library. Must be zero.hdf5 B-tree datahdf5Global heap data$Raw data (content of datasets, etc.)hdf5Local heap datahdf5Object header datahdf5Sentinel value - must be lasthdf5Library's file format versionshdf54Use the earliest possible format for storing objectshdf5 typedef herr_t (*H5F_flush_cb_t)(hid_t object_id, void *udata);hdf5Current "global" information about file (just size info currently)hdf5Superblock extension size Safe-InferredE2hdf5:A free list is a singly-linked list of address/size pairs.hdf5&Class information for each file driverhdf5"Types of allocation requests: see Bindings.HDF5.Raw.H5Fhdf5>Notify driver to truncate the file back to the allocated size.5Returns non-negative on success, negative on failure. herr_t H5FDtruncate(H5FD_t *file, hid_t dxpl_id, hbool_t closing);hdf5Notify driver to flush all cached data. If the driver has no flush method then nothing happens.5Returns non-negative on success, negative on failure. herr_t H5FDflush(H5FD_t *file, hid_t dxpl_id, unsigned closing);hdf5Writes size bytes to file beginning at address addr/ according to the data transfer property list dxpl_id (which may be the constant  h5p_DEFAULT1). The bytes to be written come from the buffer buf.5Returns non-negative on success, negative on failure. herr_t H5FDwrite(H5FD_t *file, H5FD_mem_t type, hid_t dxpl_id, haddr_t addr, size_t size, const void *buf);hdf5Reads size bytes from file beginning at address addr/ according to the data transfer property list dxpl_id (which may be the constant  h5p_DEFAULT*). The result is written into the buffer buf.Returns non-negative on success. The read result is written into the buf0 buffer which should be allocated by the caller.9On failure, returns a negative value and the contents of buf is undefined. herr_t H5FDread(H5FD_t *file, H5FD_mem_t type, hid_t dxpl_id, haddr_t addr, size_t size, void *buf/*out*/);hdf5Returns a pointer to the file handle of low-level virtual file driver.4returns non-negative on success, negative otherwise. herr_t H5FDget_vfd_handle(H5FD_t *file, hid_t fapl, void**file_handle);hdf5Returns the end-of-file address, which is the greater of the end-of-format address and the actual EOF marker. This function is called after an existing file is opened in order for the library to learn the true size of the underlying file and to determine whether the hdf5 data has been truncated.It is also used when a file is first opened to learn whether the file is empty or not.It is permissible for the driver to return the maximum address for the file size if the file is not empty.On failure, returns hdf50Set the end-of-address marker for the file. The addr is the address of the first byte past the last allocated byte of the file. This function is called from two places: It is called after an existing file is opened in order to "allocate" enough space to read the superblock and then to "allocate" the entire hdf5 file based on the contents of the superblock.It is called during file memory allocation if the allocation request cannot be satisfied from the free list and the driver didn't supply an allocation callback.Returns non-negative on success, or negative on failure. If the operation fails, it will do so with no side-effects. ?herr_t H5FDset_eoa(H5FD_t *file, H5FD_mem_t type, haddr_t eoa);hdf5Returns the address of the first byte after the last allocated memory in the file, or  on failure. 3haddr_t H5FDget_eoa(H5FD_t *file, H5FD_mem_t type);hdf5%Frees format addresses starting with addr and continuing for size bytes in the file file1. The type of space being freed is specified by 'type'7, which is mapped to a free list as described for the  function above. If the request doesn't map to a free list then either the application free; callback is invoked (if defined) or the memory is leaked.5Returns non-negative on success, negative on failure. herr_t H5FDfree(H5FD_t *file, H5FD_mem_t type, hid_t dxpl_id, haddr_t addr, hsize_t size);hdf5 Allocates size bytes of memory from the file=. The memory will be used according to the allocation class 'type'. First we try to satisfy the request from one of the free lists, according to the free list map provided by the driver. The free list array has one entry for each request type and the value of that array element can be one of four possibilities:It can be the constant  (or zero) which indicates that the identity mapping is used. In other words, the request type maps to its own free list.It can be the request type itself, which has the same effect as the  value above.It can be the ID for another request type, which indicates that the free list for the specified type should be used instead.It can be the constant  which means that no free list should be used for this type of request.If the request cannot be satisfied from a free list then either the driver's alloc callback is invoked (if one was supplied) or the end-of-address marker is extended. The alloc; callback is always called with the same arguments as the .Returns the format address of the new file memory, or the undefined address  on failure. haddr_t H5FDalloc(H5FD_t *file, H5FD_mem_t type, hid_t dxpl_id, hsize_t size);hdf56Query a VFL driver for its feature flags. (listed in Bindings.HDF5.Raw.H5FD)5Returns non-negative on success, negative on failure. 5int H5FDquery(const H5FD_t *f, unsigned long *flags);hdf5Compare the keys of two files using the file driver callback if the files belong to the same driver, otherwise sort the files by driver class pointer value.Returns an integer greater than, less than, or equal to zero, indicating the corresponding ordering.Must never fail. If both file handles are invalid then they compare equal. If one file handle is invalid then it compares less than the other. If both files belong to the same driver and the driver doesn't provide a comparison callback then the file pointers themselves are compared. 0int H5FDcmp(const H5FD_t *f1, const H5FD_t *f2);hdf5&Closes the file by calling the driver close callback, which should free all driver-private data and free the file struct. Note that the public part of the file struct (the  part) will be all zero during the driver close callback like during the open callback.5Returns non-negative on success, negative on failure. herr_t H5FDclose(H5FD_t *file);hdf5Opens a file named name8 for the type(s) of access described by the bit vector flags+ according to a file access property list fapl_id (which may be the constant  h5p_DEFAULT). The file should expect to handle format addresses in the range [0, maxaddr] (if maxaddr is 8 then the caller doesn't care about the address range).Possible values for the flags bits are: Open the file for read and write access. If this bit is not set then open the file for read only access. It is permissible to open a file for read and write access when only read access is requested by the library (the library will never attempt to write to a file which it opened with only read access).herr_t H5Pset_copy_object(hid_t plist_id, unsigned crt_intmd);hdf5Gets the file access flags to be used when traversing an external link.5Returns non-negative on success, negative on failure. herr_t H5Pget_elink_cb(hid_t lapl_id, H5L_elink_traverse_t *func, void **op_data);hdf5Sets the file access flags to be used when traversing an external link. This should be either  or .5Returns non-negative on success, negative on failure. herr_t H5Pset_elink_cb(hid_t lapl_id, H5L_elink_traverse_t func, void *op_data);hdf5Gets the file access flags to be used when traversing an external link.5Returns non-negative on success, negative on failure. >herr_t H5Pget_elink_acc_flags(hid_t lapl_id, unsigned *flags);hdf5Sets the file access flags to be used when traversing an external link. This should be either  or , or  to unset the value.5Returns non-negative on success, negative on failure. =herr_t H5Pset_elink_acc_flags(hid_t lapl_id, unsigned flags);hdf52Sets the file access property list for link access5Returns non-negative on success, negative on failure. 7herr_t H5Pset_elink_fapl(hid_t lapl_id, hid_t fapl_id);hdf5Gets the file access property list identifier that is set for link access property.5Returns non-negative on success, negative on failure. 'hid_t H5Pget_elink_fapl(hid_t lapl_id);hdf5Gets the prefix to be applied to any external link traversals made using this property list.If the pointer is not NULL, it points to a user-allocated buffer.5Returns non-negative on success, negative on failure. ssize_t H5Pget_elink_prefix(hid_t plist_id, char *prefix, size_t size);hdf5Set a prefix to be applied to the path of any external links traversed. The prefix is appended to the filename stored in the external link.5Returns non-negative on success, negative on failure. ?herr_t H5Pset_elink_prefix(hid_t plist_id, const char *prefix);hdf5Gets the number of soft or user-defined links that can be traversed before a failure occurs.Retrieves the current setting for the nlinks property on the given property list.5Returns non-negative on success, negative on failure. 5herr_t H5Pget_nlinks(hid_t plist_id, size_t *nlinks);hdf5Set the number of soft or UD link traversals allowed before the library assumes it has found a cycle and aborts the traversal.The limit on soft or UD link traversals is designed to terminate link traversal if one or more links form a cycle. However, users may have a file with a legitimate path formed of a large number of soft or user-defined links. This property can be used to allow traversal of as many links as desired.5Returns non-negative on success, negative on failure. 4herr_t H5Pset_nlinks(hid_t plist_id, size_t nlinks);hdf5*Gets the character encoding of the string.5Returns non-negative on success, negative on failure. herr_t H5Pget_char_encoding(hid_t plist_id, H5T_cset_t *encoding /*out*/);hdf5*Sets the character encoding of the string.5Returns non-negative on success, negative on failure. herr_t H5Pset_char_encoding(hid_t plist_id, H5T_cset_t encoding);hdf5Returns the flag indicating that creation order is tracked for links in a group.5Returns non-negative on success, negative on failure. herr_t H5Pget_link_creation_order(hid_t plist_id, unsigned *crt_order_flags /* out */);hdf54Set the flags for creation order of links in a group5Returns non-negative on success, negative on failure. herr_t H5Pset_link_creation_order(hid_t plist_id, unsigned crt_order_flags);hdf5Returns the est. # of links in a group & the est. length of the name of each link.5Returns non-negative on success, negative on failure. herr_t H5Pget_est_link_info(hid_t plist_id, unsigned *est_num_entries /* out */, unsigned *est_name_len /* out */);hdf5Set the estimates for the number of entries and length of each entry name in a group.9Currently both of these must be updated at the same time.est_num_entries; applies only when the number of entries is less than the  max_compact # of entries (from ).5Returns non-negative on success, negative on failure. herr_t H5Pset_est_link_info(hid_t plist_id, unsigned est_num_entries, unsigned est_name_len);hdf5Returns the max. # of compact links & the min. # of dense links, which are used for storing groups5Returns non-negative on success, negative on failure. herr_t H5Pget_link_phase_change(hid_t plist_id, unsigned *max_compact /*out*/, unsigned *min_dense /*out*/);hdf5Set the maximum # of links to store "compactly" and the minimum # of links to store "densely". (These should overlap).9Currently both of these must be updated at the same time.5Returns non-negative on success, negative on failure. herr_t H5Pset_link_phase_change(hid_t plist_id, unsigned max_compact, unsigned min_dense);hdf5Returns the local heap size hint, which is used for creating groups5Returns non-negative on success, negative on failure. herr_t H5Pget_local_heap_size_hint(hid_t plist_id, size_t *size_hint /*out*/);hdf59Set the "size hint" for creating local heaps for a group.5Returns non-negative on success, negative on failure. herr_t H5Pset_local_heap_size_hint(hid_t plist_id, size_t size_hint);hdf5 Returns the crt_intmd_group0, which is set to create missing groups during , etc.5Returns non-negative on success, negative on failure. herr_t H5Pget_create_intermediate_group(hid_t plist_id, unsigned *crt_intmd /*out*/);hdf5Set crt_intmd_group so that 'h5l_create_*', ?, etc. will create missing groups along the given path "name".5Returns non-negative on success, negative on failure. herr_t H5Pset_create_intermediate_group(hid_t plist_id, unsigned crt_intmd);hdf5Gets callback function for dataset transfer property list. This callback function defines what user wants to do if there's exception during datatype conversion.5Returns non-negative on success, negative on failure. herr_t H5Pget_type_conv_cb(hid_t dxpl_id, H5T_conv_except_func_t *op, void** operate_data);hdf5Sets user's callback function for dataset transfer property list. This callback function defines what user wants to do if there's exception during datatype conversion.5Returns non-negative on success, negative on failure. herr_t H5Pset_type_conv_cb(hid_t dxpl_id, H5T_conv_except_func_t op, void* operate_data);hdf5!Reads values previously set with .5Returns non-negative on success, negative on failure. herr_t H5Pget_hyper_vector_size(hid_t fapl_id, size_t *size/*out*/);hdf5Given a dataset transfer property list, set the number of "I/O vectors" (offset and length pairs) which are to be accumulated in memory before being issued to the lower levels of the library for reading or writing the actual data. Increasing the number should give better performance, but use more memory during hyperslab I/O. The vector size must be greater than 1.The default is to use 1024 vectors for I/O during hyperslab reading/writing.5Returns non-negative on success, negative on failure. Set the fill value for a dataset creation property list. The value" is interpretted as being of type 'type', which need not be the same type as the dataset but the library must be able to convert value7 to the dataset type when the dataset is created. If value; is NULL, it will be interpreted as undefining fill value.5Returns non-negative on success, negative on failure. herr_t H5Pset_fill_value(hid_t plist_id, hid_t type_id, const void *value);hdf5Sets scaleoffset filter for a dataset creation property list and user-supplied parameters Parameters:  scale_factor ::  For integer datatypes, this parameter will be minimum-bits, if this value is set to 0, scaleoffset filter will calculate the minimum-bits. For floating-point datatype, For variable-minimum-bits method, this will be the decimal precision of the filter, For fixed-minimum-bits method, this will be the minimum-bit of the filter. scale_type ::  0 for floating-point variable-minimum-bits, 1 for floating-point fixed-minimum-bits, other values, for integer datatype5Returns non-negative on success, negative on failure. herr_t H5Pset_scaleoffset(hid_t plist_id, H5Z_SO_scale_type_t scale_type, int scale_factor);hdf55Sets nbit filter for a dataset creation property list5Returns non-negative on success, negative on failure. #herr_t H5Pset_nbit(hid_t plist_id);hdf55Sets the shuffling method for a permanent filter to 7 and bytes of the datatype of the array to be shuffled5Returns non-negative on success, negative on failure. &herr_t H5Pset_shuffle(hid_t plist_id);hdf5Sets the compression method for a permanent or transient filter pipeline (depending on whether plist_id6 is a dataset creation or transfer property list) to . Szip is a special compression package that is said to be good for scientific data.5Returns non-negative on success, negative on failure. herr_t H5Pset_szip(hid_t plist_id, unsigned options_mask, unsigned pixels_per_block);hdf5Returns information about an external file. External files are numbered from zero to N-1 where N is the value returned by  . At most  name_size! characters are copied into the name3 array. If the external file name is longer than  name_size with the null terminator, then the return value is not null terminated (similar to strncpy()).If  name_size is zero or name is the null pointer then the external file name is not returned. If offset or size are null pointers then the corresponding information is not returned. See Also: 5Returns non-negative on success, negative on failure. herr_t H5Pget_external(hid_t plist_id, unsigned idx, size_t name_size, char *name/*out*/, off_t *offset/*out*/, hsize_t *size/*out*/);hdf5Returns the number of external files for this dataset, or negative on failure. *int H5Pget_external_count(hid_t plist_id);hdf55Adds an external file to the list of external files. plist_id should be an object ID for a dataset creation property list. name" is the name of an external file, offset: is the location where the data starts in that file, and size; is the number of bytes reserved in the file for the data.If a dataset is split across multiple files then the files should be defined in order. The total size of the dataset is the sum of the size arguments for all the external files. If the total size is larger than the size of a dataset then the dataset can be extended (provided the dataspace also allows the extending). herr_t H5Pset_external(hid_t plist_id, const char *name, off_t offset, hsize_t size);hdf5Retrieves the chunk size of chunked layout. The chunk dimensionality is returned and the chunk size in each dimension is returned through the DIM argument. At most  max_ndims elements of dim will be initialized.$Returns a negative value on failure. int H5Pget_chunk(hid_t plist_id, int max_ndims, hsize_t dim[]/*out*/);hdf5Sets the number of dimensions and the size of each chunk to the values specified. The dimensionality of the chunk should match the dimensionality of the dataspace.3As a side effect, the layout method is changed to .5Returns non-negative on success, negative on failure. herr_t H5Pset_chunk(hid_t plist_id, int ndims, const hsize_t dim[/*ndims*/]);hdf5:Retrieves layout type of a dataset creation property list.8Returns the layout type on success, negative on failure. +H5D_layout_t H5Pget_layout(hid_t plist_id);hdf5(Sets the layout of raw data in the file.5Returns non-negative on success, negative on failure. :herr_t H5Pset_layout(hid_t plist_id, H5D_layout_t layout);hdf5Sets the callbacks for file images. Some file drivers allow the use of user-defined callbacks for allocating, freeing and copying the drivers internal buffer, potentially allowing a clever user to do optimizations such as avoiding large mallocs4Returns non-negative on success, negative on failure herr_t H5Pget_file_image_callbacks(hid_t fapl_id, H5FD_file_image_callbacks_t *callbacks_ptr);hdf5Sets the callbacks for file images. Some file drivers allow the use of user-defined callbacks for allocating, freeing and copying the drivers internal buffer, potentially allowing a clever user to do optimizations such as avoiding large mallocs and memcpys or to perform detailed logging.4Returns non-negative on success, negative on failure herr_t H5Pset_file_image_callbacks(hid_t fapl_id, H5FD_file_image_callbacks_t *callbacks_ptr);hdf5If the file image exists and buf_ptr_ptr is not NULL, allocate a buffer of the correct size, copy the image into the new buffer, and return the buffer to the caller in *buf_ptr_ptr. Do this using the file image callbacks if defined.NB: It is the responsibility of the caller to free the buffer whose address is returned in *buf_ptr_ptr. Do this using free if the file image callbacks are not defined, or with whatever method is appropriate if the callbacks are defined.If buf_ptr_ptr is not NULL, and no image exists, set *buf_ptr_ptr to NULL.If buf_len_ptr is not NULL, set *buf_len_ptr equal to the length of the file image if it exists, and to 0 if it does not.4Returns non-negative on success, negative on failure herr_t H5Pget_file_image(hid_t fapl_id, void **buf_ptr_ptr, size_t *buf_len_ptr);hdf5Sets the initial file image. Some file drivers can initialize the starting data in a file from a buffer.4Returns non-negative on success, negative on failure herr_t H5Pset_file_image(hid_t fapl_id, void *buf_ptr, size_t buf_len);hdf5Gets the number of files opened through external links from the file associated with this fapl to be held open in that file's external file cache. When the maximum number of files is reached, the least recently used file is closed (unless it is opened from somewhere else).5Returns non-negative on success, negative on failure. herr_t H5Pget_elink_file_cache_size(hid_t plist_id, unsigned *efc_size);hdf5Sets the number of files opened through external links from the file associated with this fapl to be held open in that file's external file cache. When the maximum number of files is reached, the least recently used file is closed (unless it is opened from somewhere else).5Returns non-negative on success, negative on failure. herr_t H5Pset_elink_file_cache_size(hid_t plist_id, unsigned efc_size);hdf5Returns the current settings for the library version format bounds from a file access property list.5Returns non-negative on success, negative on failure. herr_t H5Pget_libver_bounds(hid_t plist_id, H5F_libver_t *low, H5F_libver_t *high);hdf5Indicates which versions of the file format the library should use when creating objects. low is the earliest version of the HDF5 library that is guaranteed to be able to access the objects created (the format of some objects in an HDF5 file may not have changed between versions of the HDF5 library, possibly allowing earlier versions of the HDF5 library to access those objects) and high is the latest version of the library required to access the objects created (later versions of the HDF5 library will also be able to access those objects).low> is used to require that objects use a more modern format and high> is used to restrict objects from using a more modern format.The special values of h5f_FORMAT_EARLIEST and h5f_FORMAT_LATEST0 can be used in the following manner: Setting low and high to h5f_FORMAT_LATEST will produce files whose objects use the latest version of the file format available in the current HDF5 library for each object created. Setting low and high to h5f_FORMAT_EARLIEST will produce files that that always require the use of the earliest version of the file format for each object created. [NOTE! low=high=h5f_FORMAT_EARLIEST5 is not implemented as of version 1.8.0 and setting low and high to h5f_FORMAT_EARLIEST" will produce an error currently].Currently, the only two valid combinations for this routine are: low = h5f_FORMAT_EARLIEST and high = h5f_FORMAT_LATEST (the default setting, which creates objects with the ealiest version possible for each object, but no upper limit on the version allowed to be created if a newer version of an object's format is required to support a feature requested with an HDF5 library API routine), and low = h5f_FORMAT_LATEST and high = h5f_FORMAT_LATEST (which is described above).The low and high values set with this routine at imposed with each HDF5 library API call that creates objects in the file. API calls that would violate the low or high format bound will fail. Setting the low and high values will not affect reading / writing existing objects, only the creation of new objects.4Note: Eventually we want to add more values to the  enumerated type that indicate library release values where the file format was changed (like h5f_FORMAT_1_2_0 for the file format changes in the 1.2.x release branch and possily even h5f_FORMAT_1_4_2> for a change mid-way through the 1.4.x release branch, etc).Adding more values will allow applications to make settings like the following: low = h5f_FORMAT_EARLIEST, high = h5f_FORMAT_1_2_0Create objects with the earliest possible format and don't allow any objects to be created that require a library version greater than 1.2.x (This is the "make certain that linked with v1.2.x of the library can read the file produced" use case)low = h5f_FORMAT_1_4_2, high = h5f_FORMAT_LATESTCreate objects with at least the version of their format that the 1.4.2 library uses and allow any later version of the object's format necessary to represent features used. (This is the "make certain to take advantage of in the file format" use case (maybe is smaller or scales better than an ealier version, which would otherwise be used))low = h5f_FORMAT_1_2_0, high = h5f_FORMAT_1_6_0Creates objects with at least the version of their format that the 1.2.x library uses and don't allow any objects to be created that require a library version greater than 1.6.x. (Not certain of a particular use case for these settings, although its probably just the logical combination of the previous two; it just falls out as possible/logical (if it turns out to be hard to implement in some way, we can always disallow it))Note #2: We talked about whether to include enum values for only library versions where the format changed and decided it would be less confusing for application developers if we include enum values for _all_ library releases and then map down to the previous actual library release which had a format change.5Returns non-negative on success, negative on failure. herr_t H5Pset_libver_bounds(hid_t plist_id, H5F_libver_t low, H5F_libver_t high);hdf5Returns the current settings for the "small" raw data block allocation property from a file access property list.5Returns non-negative on success, negative on failure. herr_t H5Pget_small_data_block_size(hid_t fapl_id, hsize_t *size/*out*/);hdf5Sets the minimum size of "small" raw data block allocations when the  is set by a VFL driver. Each "small" raw data block is allocated to be this size and then pieces of raw data which are small enough to fit are sub-allocated from this block.The default value is set to 2048 (bytes), indicating that raw data smaller than this value will be attempted to be bunched together in (at least) 2K blocks in the file. Setting the value to 0 with this API function will turn off the "small" raw data aggregation, even if the VFL driver attempts to use that strategy.5Returns non-negative on success, negative on failure. herr_t H5Pset_small_data_block_size(hid_t fapl_id, hsize_t size);hdf5Returns the current settings for the data sieve buffer size property from a file access property list.5Returns non-negative on success, negative on failure. herr_t H5Pget_sieve_buf_size(hid_t fapl_id, size_t *size/*out*/);hdf5Sets the maximum size of the data seive buffer used for file drivers which are capable of using data sieving. The data sieve buffer is used when performing I/O on datasets in the file. Using a buffer which is large anough to hold several pieces of the dataset being read in for hyperslab selections boosts performance by quite a bit.The default value is set to 64KB, indicating that file I/O for raw data reads and writes will occur in at least 64KB blocks. Setting the value to 0 with this API function will turn off the data sieving, even if the VFL driver attempts to use that strategy.5Returns non-negative on success, negative on failure. 9herr_t H5Pset_sieve_buf_size(hid_t fapl_id, size_t size);hdf5Returns the current settings for the metadata block allocation property from a file access property list.5Returns non-negative on success, negative on failure. herr_t H5Pget_meta_block_size(hid_t fapl_id, hsize_t *size/*out*/);hdf5>Sets the minimum size of metadata block allocations when the  is set by a VFL driver. Each "raw" metadata block is allocated to be this size and then specific pieces of metadata (object headers, local heaps, B-trees, etc) are sub-allocated from this block.The default value is set to 2048 (bytes), indicating that metadata will be attempted to be bunched together in (at least) 2K blocks in the file. Setting the value to 0 with this API function will turn off the metadata aggregation, even if the VFL driver attempts to use that strategy.5Returns non-negative on success, negative on failure. ;herr_t H5Pset_meta_block_size(hid_t fapl_id, hsize_t size);hdf5,Gets the degree for the file close behavior.5Returns non-negative on success, negative on failure. herr_t H5Pget_fclose_degree(hid_t fapl_id, H5F_close_degree_t *degree);hdf5,Sets the degree for the file close behavior.5Returns non-negative on success, negative on failure. herr_t H5Pset_fclose_degree(hid_t fapl_id, H5F_close_degree_t degree);hdf5Returns the current setting for the garbage collection references property from a file access property list.5Returns non-negative on success, negative on failure. herr_t H5Pget_gc_references(hid_t fapl_id, unsigned *gc_ref/*out*/);hdf5Sets the flag for garbage collecting references for the file. Dataset region references (and other reference types probably) use space in the file heap. If garbage collection is on and the user passes in an uninitialized value in a reference structure, the heap might get corrupted. When garbage collection is off however and the user re-uses a reference, the previous heap block will be orphaned and not returned to the free heap space. When garbage collection is on, the user must initialize the reference structures to 0 or risk heap corruption.Default value for garbage collecting references is off, just to be on the safe side.5Returns non-negative on success, negative on failure. version" specifies an unknown version of .5Returns non-negative on success, negative on failure. herr_t H5Pget_mdc_config(hid_t plist_id, H5AC_cache_config_t * config_ptr); /* out */hdf5Set the initial metadata cache resize configuration in the target FAPL.5Returns non-negative on success, negative on failure. herr_t H5Pset_mdc_config(hid_t plist_id, H5AC_cache_config_t * config_ptr);hdf5Retrieves the maximum possible number of elements in the meta data cache and the maximum possible number of elements and bytes and the rdcc_w0 value in the raw data chunk cache. Any (or all) arguments may be null pointers in which case the corresponding datum is not returned.5Returns non-negative on success, negative on failure. herr_t H5Pget_cache(hid_t plist_id, int *mdc_nelmts, /* out */ size_t *rdcc_nslots/*out*/, size_t *rdcc_nbytes/*out*/, double *rdcc_w0);hdf5Set the number of objects in the meta data cache and the maximum number of chunks and bytes in the raw data chunk cache.The rdcc_w0 value should be between 0 and 1 inclusive and indicates how much chunks that have been fully read or fully written are favored for preemption. A value of zero means fully read or written chunks are treated no differently than other chunks (the preemption is strictly LRU) while a value of one means fully read chunks are always preempted before other chunks.5Returns non-negative on success, negative on failure. herr_t H5Pset_cache(hid_t plist_id, int mdc_nelmts, size_t rdcc_nslots, size_t rdcc_nbytes, double rdcc_w0);hdf5Get data type for multi driver. This file access property list will be passed to H5Fget_vfd_handle or  to retrieve VFD file handle.5Returns non-negative on success, negative on failure. :herr_t H5Pget_multi_type(hid_t fapl_id, H5FD_mem_t *type);hdf5Set data type for multi driver. This file access property list will be passed to  or  to retrieve VFD file handle.5Returns non-negative on success, negative on failure. 9herr_t H5Pset_multi_type(hid_t fapl_id, H5FD_mem_t type);hdf5Get offset for family driver. This file access property list will be passed to H5Fget_vfd_handle or  to retrieve VFD file handle.5Returns non-negative on success, negative on failure. =  threshold= bytes will be aligned on an address which is a multiple of . The addresses are relative to the end of the user block; the alignment is calculated by subtracting the user block size from the absolute file address and then adjusting the address to be a multiple of .Default values for  threshold and  are one, implying no alignment. Generally the default values will result in the best performance for single-process access to the file. For MPI-IO and other parallel systems, choose an alignment which is a multiple of the disk block size.5Returns non-negative on success, negative on failure. herr_t H5Pset_alignment(hid_t fapl_id, hsize_t threshold, hsize_t alignment);hdf5Gets the maximum size of a SOHM list index before it becomes a B-tree.5Returns non-negative on success, negative on failure. herr_t H5Pget_shared_mesg_phase_change(hid_t plist_id, unsigned *max_list, unsigned *min_btree);hdf5Sets the cutoff values for indexes storing shared object header messages in this file. If more than max_list messages are in an index, that index will become a B-tree. Likewise, a B-tree index containing fewer than  min_btree' messages will be converted to a list.If the max_list is zero then SOHM indexes in this file will never be lists but will be created as B-trees.5Returns non-negative on success, negative on failure. herr_t H5Pset_shared_mesg_phase_change(hid_t plist_id, unsigned max_list, unsigned min_btree);hdf5Get information about a given shared message index. Gets the types of message that are stored in the index and the minimum size of a message in the index.5Returns non-negative on success, negative on failure. herr_t H5Pget_shared_mesg_index(hid_t plist_id, unsigned index_num, unsigned *mesg_type_flags, unsigned *min_mesg_size);hdf5Configure a given shared message index. Sets the types of message that should be stored in this index and the minimum size of a message in the index. index_num is zero-indexed (in a file with three indexes, they are numbered 0, 1, and 2).5Returns non-negative on success, negative on failure. herr_t H5Pset_shared_mesg_index(hid_t plist_id, unsigned index_num, unsigned mesg_type_flags, unsigned min_mesg_size);hdf5Get the number of Shared Object Header Message (SOHM) indexes specified in this property list.5Returns non-negative on success, negative on failure. herr_t H5Pget_shared_mesg_nindexes(hid_t plist_id, unsigned *nindexes);hdf5Set the number of Shared Object Header Message (SOHM) indexes specified in this property list. If this is zero then shared object header messages are disabled for this file.These indexes can then be configured with H5Pset_shared_mesg_index. h5p_set_shared_mesg_phase_chage) also controls settings for all indexes.5Returns non-negative on success, negative on failure. herr_t H5Pset_shared_mesg_nindexes(hid_t plist_id, unsigned nindexes);hdf59Queries the 1/2 rank of an indexed storage B-tree. See 8 for details. The argument IK may be the null pointer.5Returns non-negative on success, negative on failure. herr_t H5Pset_sym_k(hid_t plist_id, unsigned ik, unsigned lk);hdf5Returns the size of address and size quantities stored in a file according to a file creation property list. Either (or even both)  sizeof_addr and  sizeof_size may be null pointers.5Returns non-negative on success, negative on failure. herr_t H5Pget_sizes(hid_t plist_id, size_t *sizeof_addr/*out*/, size_t *sizeof_size/*out*/);hdf5(Sets file size-of addresses and sizes. plist_id should be a file creation property list. A value of zero causes the property to not change.5Returns non-negative on success, negative on failure. herr_t H5Pset_sizes(hid_t plist_id, size_t sizeof_addr, size_t sizeof_size);hdf5Queries the size of a user block in a file creation property list.5Returns non-negative on success, negative on failure. 7herr_t H5Pget_userblock(hid_t plist_id, hsize_t *size);hdf5?Sets the userblock size field of a file creation property list.5Returns non-negative on success, negative on failure. 6herr_t H5Pset_userblock(hid_t plist_id, hsize_t size);hdf5:Retrieves version information for various parts of a file.Any (or even all) of the output arguments can be null pointers. Parameters:  plist_id ::  "The file creation property list ID boot :: 7  The file super block. freelist :: 7  The global free list. stab :: 7  The root symbol table entry. shhdr :: 7  Shared object headers.5Returns non-negative on success, negative on failure. herr_t H5Pget_version(hid_t plist_id, unsigned *boot/*out*/, unsigned *freelist/*out*/, unsigned *stab/*out*/, unsigned *shhdr/*out*/);hdf5Sets Fletcher32 checksum of EDC for a dataset creation property list or group creation property list.5Returns non-negative on success, negative on failure. )herr_t H5Pset_fletcher32(hid_t plist_id);hdf5Sets the compression method for a dataset or group link filter pipeline (depending on whether plist_id< is a dataset creation or group creation property list) to  and the compression level to level which should be a value between zero and nine, inclusive. Lower compression levels are faster but result in less compression. This is the same algorithm as used by the GNU gzip program.5Returns non-negative on success, negative on failure. ;herr_t H5Pset_deflate(hid_t plist_id, unsigned aggression);hdf5Deletes a filter from the dataset creation property list; deletes all filters if  is 5Returns non-negative on success, negative on failure. =herr_t H5Premove_filter(hid_t plist_id, H5Z_filter_t filter);hdf5This is a query routine to verify that all the filters set in the dataset creation property list are available currently. ,htri_t H5Pall_filters_avail(hid_t plist_id);hdf5+This is an additional query counterpart of  and returns information about a particular filter in a permanent or transient pipeline depending on whether plist_id? is a dataset creation or transfer property list. On input,  cd_nelmts( indicates the number of entries in the  cd_values array allocated by the caller while on exit it contains the number of values defined by the filter.  filter_config4 is a bit field contaning encode/decode flags from Bindings.HDF5.Raw.H5Z. The ID should be the filter ID to retrieve the parameters for. If the filter is not set for the property list, an error will be returned.5Returns the number of filters or negative on failure. herr_t H5Pget_filter_by_id2(hid_t plist_id, H5Z_filter_t id, unsigned int *flags/*out*/, size_t *cd_nelmts/*out*/, unsigned cd_values[]/*out*/, size_t namelen, char name[]/*out*/, unsigned *filter_config/*out*/);hdf5!This is the query counterpart of  and returns information about a particular filter number in a permanent or transient pipeline depending on whether plist_id? is a dataset creation or transfer property list. On input,  cd_nelmts( indicates the number of entries in the  cd_values array allocated by the caller while on exit it contains the number of values defined by the filter.  filter_config4 is a bit field contaning encode/decode flags from Bindings.HDF5.Raw.H5Z. The idx: should be a value between zero and N-1 as described for  and the function will return failure if the filter number is out of range.,Returns the filter identification number or ! on failure (which is negative). H5Z_filter_t H5Pget_filter2(hid_t plist_id, unsigned filter, unsigned int *flags/*out*/, size_t *cd_nelmts/*out*/, unsigned cd_values[]/*out*/, size_t namelen, char name[], unsigned *filter_config /*out*/);hdf5Returns the number of filters in the data or link pipeline depending on whether plist_id is a dataset creation or group creation property list. In each pipeline the filters are numbered from zero through N-1 where N is the value returned by this function. During output to the file the filters of a pipeline are applied in increasing order (the inverse is true for input).5Returns the number of filters or negative on failure. $int H5Pget_nfilters(hid_t plist_id);hdf5Adds the specified  and corresponding properties to the end of the data or link output filter pipeline depending on whether plist> is a dataset creation or group creation property list. The flags argument specifies certain general properties of the filter and is documented below. The  cd_values is an array of  cd_nelmts integers which are auxiliary data for the filter. The integer vlues will be stored in the dataset object header as part of the filter information.The flags2 argument is a bit vector of the following fields: If this bit is set then the filter is optional. If the filter fails during an  operation then the filter is just excluded from the pipeline for the chunk for which it failed; the filter will not participate in the pipeline during an  of the chunk. If this bit is clear and the filter fails then the entire I/O operation fails. If this bit is set but encoding is disabled for a filter, attempting to write will generate an error.5Returns non-negative on success, negative on failure. herr_t H5Pset_filter(hid_t plist_id, H5Z_filter_t filter, unsigned int flags, size_t cd_nelmts, const unsigned int c_values[]);hdf5Modifies the specified  in the transient or permanent output filter pipeline depending on whether plist is a dataset creation or dataset transfer property list. The flags argument specifies certain general properties of the filter and is documented below. The  cd_values is an array of  cd_nelmts integers which are auxiliary data for the filter. The integer values will be stored in the dataset object header as part of the filter information.The flags2 argument is a bit vector of the following fields: If this bit is set then the filter is optional. If the filter fails during an  operation then the filter is just excluded from the pipeline for the chunk for which it failed; the filter will not participate in the pipeline during an  of the chunk. If this bit is clear and the filter fails then the entire I/O operation fails. If this bit is set but encoding is disabled for a filter, attempting to write will generate an error.Note: This function currently supports only the permanent filter pipeline. That is, plist_id+ must be a dataset creation property list.5Returns non-negative on success, negative on failure. herr_t H5Pmodify_filter(hid_t plist_id, H5Z_filter_t filter, unsigned int flags, size_t cd_nelmts, const unsigned int cd_values[/*cd_nelmts*/]);hdf50Returns whether times are tracked for an object.5Returns non-negative on success, negative on failure. herr_t H5Pget_obj_track_times(hid_t plist_id, hbool_t *track_times);hdf5Set whether the birth, access, modification & change times for an object are stored.Birth time is the time the object was created. Access time is the last time that metadata or raw data was read from this object. Modification time is the last time the data for this object was changed (either writing raw data to a dataset or inserting modifyingdeleting a link in a group). Change time is the last time the metadata for this object was written (adding modifyingdeleting an attribute on an object, extending the size of a dataset, etc).If these times are not tracked, they will be reported as 12:00 AM UDT, Jan. 1, 1970 (i.e. 0 seconds past the UNIX epoch) when queried.5Returns non-negative on success, negative on failure. herr_t H5Pset_obj_track_times(hid_t plist_id, hbool_t track_times);hdf5Returns the flags indicating creation order is tracked/indexed for attributes on an object.5Returns non-negative on success, negative on failure. herr_t H5Pget_attr_creation_order(hid_t plist_id, unsigned *crt_order_flags);hdf5;Set the flags for creation order of attributes on an object5Returns non-negative on success, negative on failure. herr_t H5Pset_attr_creation_order(hid_t plist_id, unsigned crt_order_flags);hdf52Gets the phase change values for attribute storage5Returns non-negative on success, negative on failure. herr_t H5Pget_attr_phase_change(hid_t plist_id, unsigned *max_compact, unsigned *min_dense);hdf5Sets the cutoff values for indexes storing attributes in object headers for this file. If more than  max_compact attributes are in an object header, the attributes will be moved to a heap and indexed with a B-tree.1Likewise, an object header containing fewer than  min_dense attributes will be converted back to storing the attributes directly in the object header.If the  max_compact is zero then attributes for this object will never be stored in the object header but will be always be stored in a heap.5Returns non-negative on success, negative on failure. herr_t H5Pset_attr_phase_change(hid_t plist_id, unsigned max_compact, unsigned min_dense);hdf5Copy a property list or class and return the ID. This routine calls the class copy callback after any property copy. callbacks are called (assuming all property copy callbacks return successfully).Parameters: hid_t id; IN: Property list or class ID to copyReturns a valid (non-negative) property list ID on success, negative on failure. hid_t H5Pcopy(hid_t plist_id);hdf5Closes a property list. If a close callback exists for the property list class, it is called before the property list is destroyed. If close callbacks exist for any individual properties in the property list, they are called after the class close callback.Parameters: [ plist_id ::  ] Property list to close5Returns non-negative on success, negative on failure.  herr_t H5Pclose(hid_t plist_id);hdf5Release memory and de-attach a class from the property list class hierarchy. Parameters:  cls_id ::  Property list class ID to class5Returns non-negative on success, negative on failure. &herr_t H5Pclose_class(hid_t plist_id);hdf5Removes a property from a property list class. Future property lists created of that class will not contain this property. Existing property lists containing this property are not affected.Parameters: [ pclass_id ::  "] Property list class to modify [ name ::  ] Name of property to remove5Returns non-negative on success, negative on failure. 8herr_t H5Punregister(hid_t pclass_id, const char *name);hdf5Removes a property from a property list. Both properties which were in existance when the property list was created (i.e. properties registered with ) and properties added to the list after it was created (i.e. added with ) may be removed from a property list. Properties do not need to be removed a property list before the list itself is closed, they will be released automatically when  is called. The close callback for this property is called before the property is release, if the callback exists. Parameters:  plist_id ::  Property list to modify name ::  Name of property to remove5Returns non-negative on success, negative on failure. 3herr_t H5Premove(hid_t plist_id, const char *name);hdf5=Copies a property from one property list or class to another.If a property is copied from one class to another, all the property information will be first deleted from the destination class and then the property information will be copied from the source class into the destination class.If a property is copied from one list to another, the property will be first deleted from the destination list (generating a call to the close callback for the property, if one exists) and then the property is copied from the source list to the destination list (generating a call to the copy+ callback for the property, if one exists).If the property does not exist in the destination class or list, this call is equivalent to calling H5Pregister2 or H5Pinsert2 (for a class or list, as appropriate) and the create callback will be called in the case of the property being copied into a list (if such a callback exists for the property). Parameters:  dst_id ::  (ID of destination property list or class src_id ::  #ID of source property list or class name ::  Name of property to copy5Returns non-negative on success, negative on failure. herr_t H5Pcopy_prop(hid_t dst_id, hid_t src_id, const char *name);hdf5This routine iterates over the properties in the property object specified with ID. The properties in both property lists and classes may be iterated over with this function. For each property in the object, the  iter_data and some additional information, specified below, are passed to the  iter_func+ function. The iteration begins with the idx property in the object and the next element to be processed by the operator is returned in idx. If idx is NULL, then the iterator starts at the first property; since no stopping point is returned in this case, the iterator cannot be restarted if one of the calls to its operator returns non-zero. The idx> value is 0-based (ie. to start at the "first" property, the idx value should be 0). assumes that the properties in the object identified by ID remains unchanged through the iteration. If the membership changes during the iteration, the function's behavior is undefined. Parameters:  id ::  %ID of property object to iterate over idx :: 3  #Index of the property to begin with iter_func ::  a Function pointer to function to be called with each property iterated over. iter_data :: 3 a #Pointer to iteration data from user-Returns the return value of the last call to  iter_func if it was non-zero, or zero if all properties have been processed. Returns a negative value on failure. int H5Piterate(hid_t id, int *idx, H5P_iterate_t iter_func, void *iter_data);hdf5This routine queries whether a property list is a member of the property list class. Parameters:  plist_id ::  Property list to query pclass_id ::  Property class to query 5htri_t H5Pisa_class(hid_t plist_id, hid_t pclass_id);hdf5Determines whether two property lists or two property classes are equal. Parameters:  id1 ::  $Property list or class ID to compare id2 ::  $Property list or class ID to compare &htri_t H5Pequal(hid_t id1, hid_t id2);hdf5herr_t H5Pget(hid_t plist_id, const char *name, void * value);hdf5This routine retrieves an ID for the parent class of a property class. Parameters:  pclass_id ::  Property class to query=Returns the ID of the parent class object or NULL on failure. +hid_t H5Pget_class_parent(hid_t pclass_id);hdf5:Routine to query the name of a generic property list classThis routine retrieves the name of a generic property list class. The pointer to the name must be free'd by the user for successful calls. Parameters:  pclass_id ::  Property class to queryReturns a pointer to a malloc'ed string containing the class name, or NULL on failure. #hid_t H5Pget_class(hid_t plist_id);hdf5Routine to query the size of a property in a property list or class.This routine retrieves the number of properties in a property list or class. If a property class ID is given, the number of registered properties in the class is returned in nprops. If a property list ID is given, the current number of properties in the list is returned in nprops. Parameters:  id  %ID of Property list or class to check nprops 7  +Number of properties in the property object5Returns non-negative on success, negative on failure. /herr_t H5Pget_nprops(hid_t id, size_t *nprops);hdf5Routine to query the size of a property in a property list or class.This routine retrieves the size of a property's value in bytes. Zero- sized properties are allowed and return a value of 0. This function works for both property lists and classes. Parameters:  id ::  %ID of property list or class to check name ::  Name of property to query size :: 7  Size of property5Returns non-negative on success, negative on failure. =herr_t H5Pget_size(hid_t id, const char *name, size_t *size);hdf5Routine to query the existence of a property in a property object. Parameters:  id ::  Property object ID to check name ::  Name of property to check for 2htri_t H5Pexist(hid_t plist_id, const char *name);hdf55Routine to set a property's value in a property list.Sets a new value for a property in a property list. The property name must exist or this routine will fail. If there is a set5 callback routine registered for this property, the value8 will be passed to that routine and any changes to the value will be used when setting the property value. The information pointed at by the value$ pointer (possibly modified by the set callback) is copied into the property list value and may be changed by the application making the H5Pset call without affecting the property value.If the set callback routine returns an error, the property value will not be modified. This routine may not be called for zero-sized properties and will return an error in that case. Parameters:  plist_id ::  !Property list to find property in name ::  Name of property to set value :: ; a %Pointer to the value for the property5Returns non-negative on success, negative on failure. =herr_t H5Pset(hid_t plist_id, const char *name, void *value);hdf54Routine to insert a new property in a property list.Inserts a temporary property into a property list. The property will exist only in this property list object. The name of the property must not already exist. The value must be provided unless the property is zero- sized. Any of the callback routines may be set to NULL if they are not needed.Zero-sized properties are allowed and do not store any data in the property list. These may be used as flags to indicate the presence or absence of a particular piece of information. The value pointer for a zero-sized property may be set to NULL. The property close8 callback is called for zero-sized properties, but the set and get callbacks are never called. There is no create callback routine for temporary property list objects, the initial value is assumed to have any necessary setup already performed on it. Aside from that, the callbacks are the same as for  h5p_register.5Returns non-negative on success, negative on failure. herr_t H5Pinsert2(hid_t plist_id, const char *name, size_t size, void *value, H5P_prp_set_func_t prp_set, H5P_prp_get_func_t prp_get, H5P_prp_delete_func_t prp_delete, H5P_prp_copy_func_t prp_copy, H5P_prp_compare_func_t prp_cmp, H5P_prp_close_func_t prp_close);hdf5Pointer to user data to pass along to class creation callback. cls_copy ::  b The callback function to call when each property list in this class is copied. copy_data :: 3 b :Pointer to user data to pass along to class copy callback. cls_close ::  c The callback function to call when each property list in this class is closed. close_data :: 3 c ;Pointer to user data to pass along to class close callback.Returns a valid property list class ID on success, NULL on failure. hid_t H5Pcreate_class(hid_t parent, const char *name, H5P_cls_create_func_t cls_create, void *create_data, H5P_cls_copy_func_t cls_copy, void *copy_data, H5P_cls_close_func_t cls_close, void *close_data);hdf5+Default value for all property list classeshdf5The default value, H5D_MPIO_NO_CHUNK_OPTIMIZATION, is used for all I/O operations that do not use chunk optimizations, including non-collective IO and contiguous collective IO.hdf5NO_COLLECTIVE means that either collective I/O wasn't requested or that no I/O took place.hdf5CHUNK_INDEPENDENT means that collective I/O was requested, but the chunk optimization scheme chose independent I/O for each chunk.hdf53The contiguous case is separate from the bit field.hdf5:We renamed the "root" of the property list class hierarchy Safe-Inferredkhdf5Compatability function. Makes the multi driver act like the old split driver which stored meta data in one file and raw data in another file.If the raw or meta extension string contains a "%s", it will be substituted by the filename given for h5f_open or  h5f_create7. If no %s is found, one is inserted at the beginning.5Returns non-negative on success, negative on failure. herr_t H5Pset_fapl_split(hid_t fapl, const char *meta_ext, hid_t meta_plist_id, const char *raw_ext, hid_t raw_plist_id);hdf5Returns information about the multi file access property list though the function arguments which are the same as for  above.5Returns non-negative on success, negative on failure. herr_t H5Pget_fapl_multi(hid_t fapl_id, H5FD_mem_t *memb_map/*out*/, hid_t *memb_fapl/*out*/, char **memb_name/*out*/, haddr_t *memb_addr/*out*/, hbool_t *relax/*out*/);hdf5#Sets the file access property list fapl_id to use the multi driver. The memb_map array maps memory usage types to other memory usage types and is the mechanism which allows the caller to specify how many files are created. The array contains h5fd_MEM_NTYPES% entries which are either the value h5fd_MEM_DEFAULT or a memory usage type and the number of unique values determines the number of files which are opened. For each memory usage type which will be associated with a file the  memb_fapl, array should have a property list and the  memb_name array should be a name generator (a printf-style format with a %s which will be replaced with the name passed to , usually from  h5f_create or h5f_open).If relax is set then opening an existing file for read-only access will not fail if some file members are missing. This allows a file to be accessed in a limited sense if just the meta data is available.6Default values for each of the optional arguments are: memb_map+The default member map has the value h5fd_MEM_DEFAULT for each element. memb_fapl The value  h5p_DEFAULT for each element. memb_nameThe string "%s-X.h5" where "X" is one of the letters "s" (h5fd_MEM_SUPER), "b" (h5fd_MEM_BTREE), "r" ( h5fd_MEM_DRAW), "g" (h5fd_MEM_GHEAP), "l" (h5fd_MEM_LHEAP), "o" ( h5fd_MEM_OHDR). memb_addr The value  for each element.Example: To set up a multi file access property list which partitions data into meta and raw files each being 1/2 of the address space one would say (TODO: translate to Haskell): H5FD_mem_t mt, memb_map[H5FD_MEM_NTYPES]; hid_t memb_fapl[H5FD_MEM_NTYPES]; const char *memb[H5FD_MEM_NTYPES]; haddr_t memb_addr[H5FD_MEM_NTYPES]; // The mapping... for (mt=0; mtherr_t H5Aget_info(hid_t attr_id, H5A_info_t *ainfo /*out*/);hdf5Returns the amount of storage size that is allocated for this attribute. The return value may be zero if no data has been stored. +hsize_t H5Aget_storage_size(hid_t attr_id);hdf5Retrieve name of an attribute, according to the order within an index.Same pattern of behavior as 9Returns non-negative length of name, with information in name) buffer on success / negative on failure ssize_t H5Aget_name_by_idx(hid_t loc_id, const char *obj_name, H5_index_t idx_type, H5_iter_order_t order, hsize_t n, char *name /*out*/, size_t size, hid_t lapl_id);hdf5(Gets a copy of the name for an attribute Parameters:  attr_id :: HId_t Attribute to get name of buf_size :: CSize .The size of the buffer to store the string in. buf :: OutArray CChar Buffer to store name inThis function returns the length of the attribute's name (which may be longer than buf_size%) on success or negative for failure.This function retrieves the name of an attribute for an attribute ID. Up to buf_size characters are stored in buf followed by a '0' string terminator. If the name of the attribute is longer than buf_size-1, the string terminator is stored in the last position of the buffer to properly terminate the string. ?ssize_t H5Aget_name(hid_t attr_id, size_t buf_size, char *buf);hdf5:Gets a copy of the creation property list for an attribute Parameters:  attr_id :: HId_t Attribute to get name ofThis function returns the ID of a copy of the attribute's creation property list, or negative on failure. The resulting ID must be closed with  h5p_close or resource leaks will occur. +hid_t H5Aget_create_plist(hid_t attr_id);hdf5,Gets a copy of the datatype for an attribute Parameters:  attr_id :: HId_t Attribute to get datatype of5Returns a datatype ID on success, negative on failureThis function retrieves a copy of the datatype for an attribute. The datatype ID returned from this function must be released with  or resource leaks will develop. #hid_t H5Aget_type(hid_t attr_id);hdf5-Gets a copy of the dataspace for an attribute Parameters:  attr_id :: HId_t Attribute to get dataspace of6Returns a dataspace ID on success, negative on failureThis function retrieves a copy of the dataspace for an attribute. The dataspace ID returned from this function must be released with  h5s_close or resource leaks will develop. $hid_t H5Aget_space(hid_t attr_id);hdf5Close an attribute ID Parameters:  attr_id :: HId_t Attribute to release access to5Returns non-negative on success / negative on failureThis function releases an attribute from use. Further use of the attribute ID will result in undefined behavior.  herr_t H5Aclose(hid_t attr_id);hdf5Read in data from an attribute Parameters:  attr_id :: HId_t Attribute to read dtype_id :: HId_t Memory datatype of buffer buf :: OutArray a Buffer for data to read5Returns non-negative on success / negative on failure3This function reads a complete attribute from disk. 9herr_t H5Aread(hid_t attr_id, hid_t type_id, void *buf);hdf5Write out data to an attribute Parameters:  attr_id :: HId_t Attribute to write dtype_id :: HId_t Memory datatype of buffer buf :: InArray a Buffer of data to write5Returns non-negative on success / negative on failure2This function writes a complete attribute to disk. herr_t H5Awrite(hid_t attr_id, hid_t type_id, const void *buf);hdf5Opens an attribute for an object by looking up the attribute name Parameters:  loc_id :: HId_t $Object that attribute is attached to obj_name :: CString #Name of object relative to location attr_name :: CString $Name of attribute to locate and open aapl_id :: HId_t Attribute access property list lapl_id :: HId_t Link access property list7Returns ID of attribute on success, negative on failureThis function opens an existing attribute for access. The attribute name specified is used to look up the corresponding attribute for the object. The attribute ID returned from this function must be released with  or resource leaks will develop. hid_t H5Aopen_by_name(hid_t loc_id, const char *obj_name, const char *attr_name, hid_t aapl_id, hid_t lapl_id);hdf5Opens an attribute for an object by looking up the attribute name Parameters:  loc_id :: HId_t $Object that attribute is attached to attr_name :: CString $Name of attribute to locate and open aapl_id :: HId_t Attribute access property list7Returns ID of attribute on success, negative on failureThis function opens an existing attribute for access. The attribute name specified is used to look up the corresponding attribute for the object. The attribute ID returned from this function must be released with  or resource leaks will develop. hid_t H5Aopen(hid_t obj_id, const char *attr_name, hid_t aapl_id);hdf5!Creates an attribute on an object Parameters:  loc_id :: HId_t +Object (dataset or group) to be attached to obj_name :: CString #Name of object relative to location attr_name :: CString $Name of attribute to locate and open type_id :: HId_t ID of datatype for attribute space_id :: HId_t ID of dataspace for attribute acpl_id :: HId_t 1ID of creation property list (currently not used) aapl_id :: HId_t Attribute access property list lapl_id :: HId_t Link access property list5Returns non-negative on success / negative on failureThis function creates an attribute which is attached to the object specified with 'loc_id/obj_name'. The name specified with  attr_name for each attribute for an object must be unique for that object. The type_id and space_id are created with the H5T and H5S interfaces respectively. The aapl_id property list is currently unused, but will be used in the future for optional attribute access properties. The attribute ID returned from this function must be released with h5a_close or resource leaks will develop. hid_t H5Acreate_by_name(hid_t loc_id, const char *obj_name, const char *attr_name, hid_t type_id, hid_t space_id, hid_t acpl_id, hid_t aapl_id, hid_t lapl_id);hdf5 Typedef for  callbacks. 4 typedef herr_t (*H5A_operator2_t)(hid_t location_id*in*, const char *attr_name*in*, const H5A_info_t *ainfo*in*, void *op_data*in,out*); hdf5!Creates an attribute on an object Parameters:  loc_id :: HId_t +Object (dataset or group) to be attached to attr_name :: CString $Name of attribute to locate and open type_id :: HId_t ID of datatype for attribute space_id :: HId_t ID of dataspace for attribute acpl_id :: HId_t 1ID of creation property list (currently not used) aapl_id :: HId_t Attribute access property list5Returns non-negative on success / negative on failureThis function creates an attribute which is attached to the object specified with loc_id. The name specified with  attr_name for each attribute for an object must be unique for that object. The type_id and space_id are created with the H5T and H5S interfaces respectively. The aapl_id property list is currently unused, but will be used in the future for optional attribute access properties. The attribute ID returned from this function must be released with ! or resource leaks will develop. hid_t H5Acreate2(hid_t loc_id, const char *attr_name, hid_t type_id, hid_t space_id, hid_t acpl_id, hid_t aapl_id);< Safe-Inferred 0 /~|}z{vywx     !"#$%&'(     Safe-Inferred   Safe-Inferred hdf5Types returned from HDF5 library functions which always signal failure the same way.! Safe-Inferred  " Safe-Inferred6 d Safe-Inferred &&# Safe-Inferred ($ Safe-Inferred<*% Safe-Inferred(& Safe-Inferred25' Safe-Inferred7( Safe-Inferredv ) Safe-Inferred:* Safe-Inferred$(+ Safe-Inferred., Safe-Inferred.0 - Safe-Inferred2. Safe-InferredT2/ Safe-Inferred40 Safe-Inferredv(1 Safe-Inferred2 Safe-Inferredi3 Safe-Inferred*4 Safe-Inferredhhdf52Create a group given name, location and propertieshdf5(Create an anonymous group without a namehdf5Open an existing grouphdf5 Close a grouphdf5Parent location for the grouphdf5 Group namehdf5Link creation propertieshdf5Group creation propertieshdf5Group access propertieshdf5Resulting grouphdf5Parent location for the grouphdf5Group creation propertieshdf5Group access propertieshdf5Resulting grouphdf5Parent locationhdf5 Group namehdf5Group access propertieshdf5Resulting group5 Safe-Inferred6 Safe-Inferredm((7 Safe-Inferred58 Safe-Inferred//9 Safe-Inferred: Safe-Inferred#hdf5Open an existing attributehdf5Close an Attributehdf5Read in data from an attribute Parameters:  attr_id :: HId_t Attribute to read dtype_id :: HId_t Memory datatype of buffer buf :: OutArray a Buffer for data to read5Returns non-negative on success / negative on failure3This function reads a complete attribute from disk. 9herr_t H5Aread(hid_t attr_id, hid_t type_id, void *buf);hdf5for now this method read only Bytestring this part is a bit fragile... | we should check thaht the attr type is compatible with the string type. | TODO fnd a better way to deal with all kind of attribute type...hdf5Parent locationhdf5Attribute namehdf5Resulting attributehdf5Parent locationhdf5Attribute namehdf5Resulting attribute  = Safe-Inferred$     >?@>?@>?ABBCCDDEFGHIJKLMNOPQRSTUVVWWXXYZ[\]^_`abcdefghijjkkllmmnnoopqrstuvwxyz{|}~                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!""""""""""""""""""""""""""""""""""""""""""""""""#########$$$$$$$$$$%%%%%%%%%&&&&&&&&&&&&&&&&&&&&&&''''''''''((((((((((((((((((((((((((()))))))))))))))))))))))))*********+++++++++++++++,,,,,,,,,,,,,,,,,----------..........////////////0000000001111111111111111111111111111111122222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222223333333333333333333333333333333333333333333333333333333333333333333333333333333344444444444444444444444444444444445555555555555555555555555555555555666666666666666666666666666666666666666666666666666666666666666666666666666667777777777777777777777777777777777777777777888888888888888888888888888888888888888888888888888888888888888888888899999999999999999999999999999999::::::::::::::::::: hdf5-1.8.13-inplaceBindings.HDF5.PropertyListBindings.HDF5.Raw.H5CBindings.HDF5.Raw.H5FD.MPIBindings.HDF5.Raw.H5MMForeign.Ptr.ConventionsBindings.HDF5.Raw.H5Bindings.HDF5.Raw.H5IBindings.HDF5.Raw.H5ZBindings.HDF5.Raw.H5TBindings.HDF5.Raw.H5SBindings.HDF5.Raw.H5OBindings.HDF5.Raw.H5LBindings.HDF5.Raw.H5FD.DirectBindings.HDF5.Core.HIdBindings.HDF5.Raw.H5GBindings.HDF5.Raw.H5RBindings.HDF5.Raw.H5FD.StdIOBindings.HDF5.Raw.H5FD.Sec2Bindings.HDF5.Raw.H5FD.LogBindings.HDF5.Raw.H5FD.FamilyBindings.HDF5.Raw.H5FD.CoreBindings.HDF5.Raw.H5EBindings.HDF5.ErrorCodesBindings.HDF5.Raw.H5DBindings.HDF5.Raw.H5ACBindings.HDF5.Raw.H5FBindings.HDF5.Raw.H5FDBindings.HDF5.Raw.H5PBindings.HDF5.Raw.H5FD.MultiBindings.HDF5.Raw.H5ABindings.HDF5.Raw.Util Bindings.HDF5.Core.HDFResultTypeBindings.HDF5.CoreBindings.HDF5.Error!Bindings.HDF5.PropertyList.STRCPLBindings.HDF5.PropertyList.LCPL!Bindings.HDF5.PropertyList.OCPYPLBindings.HDF5.PropertyList.OCPLBindings.HDF5.PropertyList.TCPLBindings.HDF5.PropertyList.GCPLBindings.HDF5.PropertyList.FCPLBindings.HDF5.PropertyList.FMPLBindings.HDF5.PropertyList.FAPLBindings.HDF5.PropertyList.LAPLBindings.HDF5.PropertyList.TAPLBindings.HDF5.PropertyList.GAPLBindings.HDF5.PropertyList.DAPLBindings.HDF5.PropertyList.DXPLBindings.HDF5.ObjectBindings.HDF5.Datatype.InternalBindings.HDF5.PropertyList.DCPLBindings.HDF5.GroupBindings.HDF5.LinkBindings.HDF5.FileBindings.HDF5.DatatypeBindings.HDF5.DataspaceBindings.HDF5.DatasetBindings.HDF5.Attributehdf5Bindings.HDF5.Raw Bindings.HDF5#tagged-0.8.7-GvZycfxKsC4DmpASSrou9n Data.TaggedTaggedunTaggedH5C_cache_decr_modeH5C_cache_flash_incr_modeH5C_cache_incr_mode h5c_incr__offh5c_incr__thresholdh5c_flash_incr__offh5c_flash_incr__add_space h5c_decr__offh5c_decr__thresholdh5c_decr__age_out h5c_decr__age_out_with_threshold$fStorableH5C_cache_decr_mode$fShowH5C_cache_decr_mode$fEqH5C_cache_decr_mode#$fStorableH5C_cache_flash_incr_mode$fShowH5C_cache_flash_incr_mode$fEqH5C_cache_flash_incr_mode$fStorableH5C_cache_incr_mode$fShowH5C_cache_incr_mode$fEqH5C_cache_incr_modeH5FD_mpio_collective_opt_tH5FD_mpio_chunk_opt_tH5FD_mpio_xfer_th5d_ONE_LINK_CHUNK_IO_THRESHOLD h5d_MULTI_CHUNK_IO_COL_THRESHOLDh5fd_MPIO_INDEPENDENTh5fd_MPIO_COLLECTIVEh5fd_MPIO_CHUNK_DEFAULTh5fd_MPIO_CHUNK_ONE_IOh5fd_MPIO_CHUNK_MULTI_IOh5fd_MPIO_COLLECTIVE_IOh5fd_MPIO_INDIVIDUAL_IO$$fStorableH5FD_mpio_collective_opt_t $fShowH5FD_mpio_collective_opt_t$fStorableH5FD_mpio_chunk_opt_t$fShowH5FD_mpio_chunk_opt_t$fStorableH5FD_mpio_xfer_t$fShowH5FD_mpio_xfer_t H5MM_free_tH5MM_allocate_t InOutArrayInOutOutArrayOutInArrayIn WrappedPtrwrapPtr unwrapPtrnullWrappedPtrcastWrappedPtrwithIn withInList withInVector withInMVectorwithOut withMaybeOutwithOut_withOutMVector withOutVectorwithOutVector_withOutVector' withOutList withOutList_ withOutList' withOutList0withOutByteStringwithOutByteString' withInOut withInOut_ withInOutListwithInOutList_$fWrappedPtrPtr$fEqInOutArray$fOrdInOutArray$fShowInOutArray$fStorableInOutArray$fWrappedPtrInOutArray $fEqInOut $fOrdInOut $fShowInOut$fStorableInOut$fWrappedPtrInOut $fEqOutArray $fOrdOutArray$fShowOutArray$fStorableOutArray$fWrappedPtrOutArray$fEqOut$fOrdOut $fShowOut $fStorableOut$fWrappedPtrOut $fEqInArray $fOrdInArray $fShowInArray$fStorableInArray$fWrappedPtrInArray$fEqIn$fOrdIn$fShowIn $fStorableIn$fWrappedPtrIn H5_ih_info_th5_ih_info_t'index_sizeh5_ih_info_t'heap_size H5_index_tH5_iter_order_tHAddr_tHSSize_tHSize_tCSSizeHTri_tHBool_tHErr_tp_H5check_versionh5_check_versionp_H5get_libversionh5_get_libversionp_H5set_free_list_limitsh5_set_free_list_limitsp_H5garbage_collecth5_garbage_collectp_H5dont_atexith5_dont_atexit p_H5closeh5_closep_H5openh5_openh5_check h5_VERS_MAJOR h5_VERS_MINORh5_VERS_RELEASEh5_VERS_SUBRELEASEvers h5_VERS_INFOh5_SIZEOF_SSIZE_Th5_SIZEOF_HSIZE_Th5_SIZEOF_HSSIZE_T hSIZE_UNDEF hADDR_UNDEFh5_SIZEOF_HADDR_Th5_PRINTF_HADDR_FMT hADDR_MAXh5_ITER_UNKNOWN h5_ITER_INC h5_ITER_DECh5_ITER_NATIVE h5_ITER_N h5_ITER_ERROR h5_ITER_CONT h5_ITER_STOPh5_INDEX_UNKNOWN h5_INDEX_NAMEh5_INDEX_CRT_ORDER h5_INDEX_Np'H5_ih_info_t'index_sizep'H5_ih_info_t'heap_size $fEqHBool_t $fEqHTri_t$fStorableH5_ih_info_t$fEqH5_ih_info_t$fShowH5_ih_info_t$fStorableH5_index_t$fShowH5_index_t$fStorableH5_iter_order_t$fShowH5_iter_order_t$fStorableHAddr_t $fShowHAddr_t $fEqHAddr_t $fOrdHAddr_t $fNumHAddr_t $fBitsHAddr_t $fEnumHAddr_t$fBoundedHAddr_t $fRealHAddr_t$fIntegralHAddr_t$fStorableHSSize_t$fShowHSSize_t $fEqHSSize_t $fOrdHSSize_t $fNumHSSize_t$fBitsHSSize_t$fEnumHSSize_t$fBoundedHSSize_t$fRealHSSize_t$fIntegralHSSize_t$fStorableHSize_t $fShowHSize_t $fEqHSize_t $fOrdHSize_t $fNumHSize_t $fBitsHSize_t $fEnumHSize_t$fBoundedHSize_t $fRealHSize_t$fIntegralHSize_t$fStorableCSSize $fShowCSSize $fEqCSSize $fOrdCSSize $fNumCSSize $fBitsCSSize $fEnumCSSize$fBoundedCSSize $fRealCSSize$fIntegralCSSize$fStorableHTri_t $fShowHTri_t$fStorableHBool_t $fShowHBool_t$fStorableHErr_t $fShowHErr_t $fEqHErr_t $fOrdHErr_t $fNumHErr_t $fRealHErr_t $fBitsHErr_t $fEnumHErr_t$fBoundedHErr_t$fIntegralHErr_tH5I_search_func_t H5I_free_tHId_t H5I_type_t p_H5Iis_valid h5i_is_validp_H5Itype_existsh5i_type_exists p_H5Inmembers h5i_nmembers p_H5Isearch h5i_searchp_H5Iget_type_refh5i_get_type_refp_H5Idec_type_refh5i_dec_type_refp_H5Iinc_type_refh5i_inc_type_refp_H5Idestroy_typeh5i_destroy_typep_H5Iclear_typeh5i_clear_typep_H5Iregister_typeh5i_register_type p_H5Iget_ref h5i_get_ref p_H5Idec_ref h5i_dec_ref p_H5Iinc_ref h5i_inc_ref p_H5Iget_name h5i_get_namep_H5Iget_file_idh5i_get_file_id p_H5Iget_type h5i_get_typep_H5Iremove_verifyh5i_remove_verifyp_H5Iobject_verifyh5i_object_verify p_H5Iregister h5i_register h5i_UNINIT h5i_BADIDh5i_FILE h5i_GROUP h5i_DATATYPE h5i_DATASPACE h5i_DATASETh5i_ATTRh5i_VFLh5i_GENPROP_CLSh5i_GENPROP_LSTh5i_ERROR_CLASS h5i_ERROR_MSGh5i_ERROR_STACK h5i_NTYPESh5_SIZEOF_HID_Th5i_INVALID_HID $fShowHId_t$fStorableHId_t $fEqHId_t $fOrdHId_t$fStorableH5I_type_t$fShowH5I_type_t$fEqH5I_type_t H5Z_class2_th5z_class2_t'versionh5z_class2_t'idh5z_class2_t'encoder_presenth5z_class2_t'decoder_presenth5z_class2_t'nameh5z_class2_t'can_applyh5z_class2_t'set_localh5z_class2_t'filter H5Z_func_tH5Z_set_local_func_tH5Z_can_apply_func_tH5Z_filter_func_tH5Z_cb_return_t H5Z_EDC_tH5Z_SO_scale_type_t H5Z_filter_tp_H5Zget_filter_infoh5z_get_filter_infop_H5Zfilter_availh5z_filter_availp_H5Zunregisterh5z_unregister p_H5Zregister h5z_registermK_H5Z_set_local_func_tmk_H5Z_set_local_func_tmK_H5Z_can_apply_func_tmk_H5Z_can_apply_func_th5z_FILTER_ERRORh5z_FILTER_NONEh5z_FILTER_DEFLATEh5z_FILTER_SHUFFLEh5z_FILTER_FLETCHER32h5z_FILTER_SZIPh5z_FILTER_NBITh5z_FILTER_SCALEOFFSETh5z_FILTER_RESERVEDh5z_FILTER_MAXh5z_FILTER_ALLh5z_MAX_NFILTERSh5z_FLAG_DEFMASKh5z_FLAG_MANDATORYh5z_FLAG_OPTIONALh5z_FLAG_INVMASKh5z_FLAG_REVERSEh5z_FLAG_SKIP_EDCh5_SZIP_ALLOW_K13_OPTION_MASKh5_SZIP_CHIP_OPTION_MASKh5_SZIP_EC_OPTION_MASKh5_SZIP_NN_OPTION_MASKh5_SZIP_MAX_PIXELS_PER_BLOCKh5z_SHUFFLE_USER_NPARMSh5z_SHUFFLE_TOTAL_NPARMSh5z_SZIP_USER_NPARMSh5z_SZIP_TOTAL_NPARMSh5z_SZIP_PARM_MASKh5z_SZIP_PARM_PPBh5z_SZIP_PARM_BPPh5z_SZIP_PARM_PPSh5z_NBIT_USER_NPARMSh5z_SCALEOFFSET_USER_NPARMSh5z_SO_INT_MINBITS_DEFAULTh5z_SO_FLOAT_DSCALEh5z_SO_FLOAT_ESCALE h5z_SO_INTh5z_CLASS_T_VERS h5z_ERROR_EDCh5z_DISABLE_EDCh5z_ENABLE_EDC h5z_NO_EDC h5z_FILTER_CONFIG_ENCODE_ENABLED h5z_FILTER_CONFIG_DECODE_ENABLED h5z_CB_ERROR h5z_CB_FAIL h5z_CB_CONT h5z_CB_NOp'H5Z_class2_t'versionp'H5Z_class2_t'idp'H5Z_class2_t'encoder_presentp'H5Z_class2_t'decoder_presentp'H5Z_class2_t'namep'H5Z_class2_t'can_applyp'H5Z_class2_t'set_localp'H5Z_class2_t'filter$fStorableH5Z_class2_t$fEqH5Z_class2_t$fShowH5Z_class2_t$fStorableH5Z_cb_return_t$fShowH5Z_cb_return_t$fStorableH5Z_EDC_t$fShowH5Z_EDC_t$fStorableH5Z_SO_scale_type_t$fShowH5Z_SO_scale_type_t$fStorableH5Z_filter_t$fShowH5Z_filter_t$fEqH5Z_filter_tH5T_conv_except_func_t H5T_conv_tHVl_t hvl_t'lenhvl_t'pH5T_conv_ret_tH5T_conv_except_tH5T_direction_t H5T_pers_t H5T_cdata_th5t_cdata_t'commandh5t_cdata_t'need_bkgh5t_cdata_t'recalch5t_cdata_t'priv H5T_bkg_t H5T_cmd_t H5T_pad_t H5T_str_t H5T_cset_t H5T_norm_t H5T_sign_t H5T_order_t H5T_class_tp_H5Tget_array_dims1h5t_get_array_dims1p_H5Tarray_create1h5t_array_create1 p_H5Topen1 h5t_open1 p_H5Tcommit1 h5t_commit1 p_H5Tconvert h5t_convertp_H5Tcompiler_convh5t_compiler_conv p_H5Tfindh5t_findp_H5Tunregisterh5t_unregister p_H5Tregister h5t_registerp_H5Tset_strpadh5t_set_strpad p_H5Tset_cset h5t_set_csetp_H5Tset_inpad h5t_set_inpad p_H5Tset_norm h5t_set_normp_H5Tset_ebias h5t_set_ebiasp_H5Tset_fieldsh5t_set_fields p_H5Tset_sign h5t_set_sign p_H5Tset_pad h5t_set_padp_H5Tset_offseth5t_set_offsetp_H5Tset_precisionh5t_set_precisionp_H5Tset_order h5t_set_order p_H5Tset_size h5t_set_sizep_H5Tget_native_typeh5t_get_native_typep_H5Tis_variable_strh5t_is_variable_str p_H5Tget_cset h5t_get_csetp_H5Tget_member_valueh5t_get_member_valuep_H5Tget_member_typeh5t_get_member_typep_H5Tget_member_classh5t_get_member_classp_H5Tget_member_offseth5t_get_member_offsetp_H5Tget_member_indexh5t_get_member_indexp_H5Tget_member_nameh5t_get_member_namep_H5Tget_nmembersh5t_get_nmembersp_H5Tget_strpadh5t_get_strpadp_H5Tget_inpad h5t_get_inpad p_H5Tget_norm h5t_get_normp_H5Tget_ebias h5t_get_ebiasp_H5Tget_fieldsh5t_get_fields p_H5Tget_sign h5t_get_sign p_H5Tget_pad h5t_get_padp_H5Tget_offseth5t_get_offsetp_H5Tget_precisionh5t_get_precisionp_H5Tget_order h5t_get_order p_H5Tget_size h5t_get_sizep_H5Tdetect_classh5t_detect_classp_H5Tget_class h5t_get_classp_H5Tget_super h5t_get_super p_H5Tget_tag h5t_get_tag p_H5Tset_tag h5t_set_tagp_H5Tget_array_dims2h5t_get_array_dims2p_H5Tget_array_ndimsh5t_get_array_ndimsp_H5Tarray_create2h5t_array_create2p_H5Tvlen_createh5t_vlen_createp_H5Tenum_valueofh5t_enum_valueofp_H5Tenum_nameofh5t_enum_nameofp_H5Tenum_inserth5t_enum_insertp_H5Tenum_createh5t_enum_create p_H5Tpackh5t_pack p_H5Tinsert h5t_insert p_H5Trefresh h5t_refresh p_H5Tflush h5t_flush p_H5Tdecode h5t_decode p_H5Tencode h5t_encodep_H5Tcommitted h5t_committedp_H5Tget_create_plisth5t_get_create_plistp_H5Tcommit_anonh5t_commit_anon p_H5Topen2 h5t_open2 p_H5Tcommit2 h5t_commit2 p_H5Tlockh5t_lock p_H5Tequal h5t_equal p_H5Tclose h5t_close p_H5Tcopyh5t_copy p_H5Tcreate h5t_createh5t_NATIVE_UINT_FAST64h5t_NATIVE_INT_FAST64h5t_NATIVE_UINT_LEAST64h5t_NATIVE_INT_LEAST64h5t_NATIVE_UINT64h5t_NATIVE_INT64h5t_NATIVE_UINT_FAST32h5t_NATIVE_INT_FAST32h5t_NATIVE_UINT_LEAST32h5t_NATIVE_INT_LEAST32h5t_NATIVE_UINT32h5t_NATIVE_INT32h5t_NATIVE_UINT_FAST16h5t_NATIVE_INT_FAST16h5t_NATIVE_UINT_LEAST16h5t_NATIVE_INT_LEAST16h5t_NATIVE_UINT16h5t_NATIVE_INT16h5t_NATIVE_UINT_FAST8h5t_NATIVE_INT_FAST8h5t_NATIVE_UINT_LEAST8h5t_NATIVE_INT_LEAST8h5t_NATIVE_UINT8h5t_NATIVE_INT8h5t_NATIVE_HBOOLh5t_NATIVE_HERRh5t_NATIVE_HSSIZEh5t_NATIVE_HSIZEh5t_NATIVE_HADDRh5t_NATIVE_OPAQUEh5t_NATIVE_B64h5t_NATIVE_B32h5t_NATIVE_B16 h5t_NATIVE_B8h5t_NATIVE_LDOUBLEh5t_NATIVE_DOUBLEh5t_NATIVE_FLOATh5t_NATIVE_ULLONGh5t_NATIVE_LLONGh5t_NATIVE_ULONGh5t_NATIVE_LONGh5t_NATIVE_UINTh5t_NATIVE_INTh5t_NATIVE_USHORTh5t_NATIVE_SHORTh5t_NATIVE_UCHARh5t_NATIVE_SCHARh5t_NATIVE_CHAR h5t_VAX_F64 h5t_VAX_F32h5t_FORTRAN_S1h5t_C_S1h5t_UNIX_D64LEh5t_UNIX_D64BEh5t_UNIX_D32LEh5t_UNIX_D32BEh5t_STD_REF_DSETREGh5t_STD_REF_OBJ h5t_STD_B64LE h5t_STD_B64BE h5t_STD_B32LE h5t_STD_B32BE h5t_STD_B16LE h5t_STD_B16BE h5t_STD_B8LE h5t_STD_B8BE h5t_STD_U64LE h5t_STD_U64BE h5t_STD_U32LE h5t_STD_U32BE h5t_STD_U16LE h5t_STD_U16BE h5t_STD_U8LE h5t_STD_U8BE h5t_STD_I64LE h5t_STD_I64BE h5t_STD_I32LE h5t_STD_I32BE h5t_STD_I16LE h5t_STD_I16BE h5t_STD_I8LE h5t_STD_I8BEh5t_IEEE_F64LEh5t_IEEE_F64BEh5t_IEEE_F32LEh5t_IEEE_F32BE h5t_NO_CLASS h5t_INTEGER h5t_FLOATh5t_TIME h5t_STRING h5t_BITFIELD h5t_OPAQUE h5t_COMPOUND h5t_REFERENCEh5t_ENUMh5t_VLEN h5t_ARRAY h5t_NCLASSESh5t_ORDER_ERROR h5t_ORDER_LE h5t_ORDER_BE h5t_ORDER_VAXh5t_ORDER_MIXEDh5t_ORDER_NONE h5t_SGN_ERROR h5t_SGN_NONE h5t_SGN_2h5t_NSGNh5t_NORM_ERRORh5t_NORM_IMPLIEDh5t_NORM_MSBSET h5t_NORM_NONEh5t_CSET_ERRORh5t_CSET_ASCII h5t_CSET_UTF8h5t_CSET_RESERVED_2h5t_CSET_RESERVED_3h5t_CSET_RESERVED_4h5t_CSET_RESERVED_5h5t_CSET_RESERVED_6h5t_CSET_RESERVED_7h5t_CSET_RESERVED_8h5t_CSET_RESERVED_9h5t_CSET_RESERVED_10h5t_CSET_RESERVED_11h5t_CSET_RESERVED_12h5t_CSET_RESERVED_13h5t_CSET_RESERVED_14h5t_CSET_RESERVED_15 h5t_NCSET h5t_STR_ERRORh5t_STR_NULLTERMh5t_STR_NULLPADh5t_STR_SPACEPADh5t_STR_RESERVED_3h5t_STR_RESERVED_4h5t_STR_RESERVED_5h5t_STR_RESERVED_6h5t_STR_RESERVED_7h5t_STR_RESERVED_8h5t_STR_RESERVED_9h5t_STR_RESERVED_10h5t_STR_RESERVED_11h5t_STR_RESERVED_12h5t_STR_RESERVED_13h5t_STR_RESERVED_14h5t_STR_RESERVED_15h5t_NSTR h5t_PAD_ERROR h5t_PAD_ZERO h5t_PAD_ONEh5t_PAD_BACKGROUNDh5t_NPAD h5t_CONV_INIT h5t_CONV_CONV h5t_CONV_FREE h5t_BKG_NO h5t_BKG_TEMP h5t_BKG_YESh5t_PERS_DONTCARE h5t_PERS_HARD h5t_PERS_SOFTh5t_DIR_DEFAULTh5t_DIR_ASCENDh5t_DIR_DESCENDh5t_CONV_EXCEPT_RANGE_HIh5t_CONV_EXCEPT_RANGE_LOWh5t_CONV_EXCEPT_PRECISIONh5t_CONV_EXCEPT_TRUNCATEh5t_CONV_EXCEPT_PINFh5t_CONV_EXCEPT_NINFh5t_CONV_EXCEPT_NANh5t_CONV_ABORTh5t_CONV_UNHANDLEDh5t_CONV_HANDLED p'hvl_t'len p'hvl_t'p h5t_VARIABLEh5t_OPAQUE_TAG_MAX h5t_INTEL_I8 h5t_INTEL_I16 h5t_INTEL_I32 h5t_INTEL_I64 h5t_INTEL_U8 h5t_INTEL_U16 h5t_INTEL_U32 h5t_INTEL_U64 h5t_INTEL_B8 h5t_INTEL_B16 h5t_INTEL_B32 h5t_INTEL_B64 h5t_INTEL_F32 h5t_INTEL_F64 h5t_ALPHA_I8 h5t_ALPHA_I16 h5t_ALPHA_I32 h5t_ALPHA_I64 h5t_ALPHA_U8 h5t_ALPHA_U16 h5t_ALPHA_U32 h5t_ALPHA_U64 h5t_ALPHA_B8 h5t_ALPHA_B16 h5t_ALPHA_B32 h5t_ALPHA_B64 h5t_ALPHA_F32 h5t_ALPHA_F64 h5t_MIPS_I8 h5t_MIPS_I16 h5t_MIPS_I32 h5t_MIPS_I64 h5t_MIPS_U8 h5t_MIPS_U16 h5t_MIPS_U32 h5t_MIPS_U64 h5t_MIPS_B8 h5t_MIPS_B16 h5t_MIPS_B32 h5t_MIPS_B64 h5t_MIPS_F32 h5t_MIPS_F64$fStorableH5T_cdata_t$fStorableHVl_t $fEqHVl_t $fShowHVl_t$fStorableH5T_conv_ret_t$fShowH5T_conv_ret_t$fStorableH5T_conv_except_t$fShowH5T_conv_except_t$fStorableH5T_direction_t$fShowH5T_direction_t$fStorableH5T_pers_t$fShowH5T_pers_t$fEqH5T_cdata_t$fShowH5T_cdata_t$fStorableH5T_bkg_t$fShowH5T_bkg_t $fEqH5T_bkg_t$fStorableH5T_cmd_t$fShowH5T_cmd_t $fEqH5T_cmd_t$fStorableH5T_pad_t$fShowH5T_pad_t $fEqH5T_pad_t$fStorableH5T_str_t$fShowH5T_str_t $fEqH5T_str_t$fStorableH5T_cset_t$fShowH5T_cset_t$fEqH5T_cset_t$fOrdH5T_cset_t$fReadH5T_cset_t$fStorableH5T_norm_t$fShowH5T_norm_t$fEqH5T_norm_t$fStorableH5T_sign_t$fShowH5T_sign_t$fEqH5T_sign_t$fStorableH5T_order_t$fShowH5T_order_t$fEqH5T_order_t$fStorableH5T_class_t$fShowH5T_class_t$fEqH5T_class_t H5S_sel_type H5S_seloper_t H5S_class_tp_H5Sget_select_typeh5s_get_select_typep_H5Sget_select_boundsh5s_get_select_boundsp_H5Sget_select_elem_pointlisth5s_get_select_elem_pointlistp_H5Sget_select_hyper_blocklisth5s_get_select_hyper_blocklistp_H5Sget_select_elem_npointsh5s_get_select_elem_npointsp_H5Sget_select_hyper_nblocksh5s_get_select_hyper_nblocksp_H5Sget_regular_hyperslabh5s_get_regular_hyperslabp_H5Sis_regular_hyperslabh5s_is_regular_hyperslabp_H5Sselect_validh5s_select_validp_H5Soffset_simpleh5s_offset_simplep_H5Sselect_noneh5s_select_nonep_H5Sselect_allh5s_select_allp_H5Sextent_equalh5s_extent_equalp_H5Sextent_copyh5s_extent_copyp_H5Sset_extent_noneh5s_set_extent_nonep_H5Sget_simple_extent_typeh5s_get_simple_extent_typep_H5Sselect_elementsh5s_select_elementsp_H5Sselect_hyperslabh5s_select_hyperslabp_H5Sget_select_npointsh5s_get_select_npointsp_H5Sis_simple h5s_is_simplep_H5Sget_simple_extent_dimsh5s_get_simple_extent_dimsp_H5Sget_simple_extent_ndimsh5s_get_simple_extent_ndimsp_H5Sget_simple_extent_npointsh5s_get_simple_extent_npoints p_H5Sdecode h5s_decode p_H5Sencode h5s_encode p_H5Sclose h5s_close p_H5Scopyh5s_copyp_H5Sset_extent_simpleh5s_set_extent_simplep_H5Screate_simpleh5s_create_simple p_H5Screate h5s_createh5s_ALL h5s_UNLIMITED h5s_MAX_RANK h5s_NO_CLASS h5s_SCALAR h5s_SIMPLEh5s_NULLh5s_SELECT_NOOPh5s_SELECT_SET h5s_SELECT_ORh5s_SELECT_ANDh5s_SELECT_XORh5s_SELECT_NOTBh5s_SELECT_NOTAh5s_SELECT_APPENDh5s_SELECT_PREPENDh5s_SELECT_INVALID h5s_SEL_ERROR h5s_SEL_NONEh5s_SEL_POINTSh5s_SEL_HYPERSLABS h5s_SEL_ALL h5s_SEL_N$fStorableH5S_sel_type$fShowH5S_sel_type$fEqH5S_sel_type$fStorableH5S_seloper_t$fShowH5S_seloper_t$fStorableH5S_class_t$fShowH5S_class_t$fEqH5S_class_t H5O_stat_th5o_stat_t'sizeh5o_stat_t'freeh5o_stat_t'nmesgsh5o_stat_t'nchunksH5O_mcdt_search_cb_tH5O_mcdt_search_ret_t H5O_iterate_tH5O_msg_crt_idx_t H5O_info_th5o_info_t'filenoh5o_info_t'addrh5o_info_t'type h5o_info_t'rch5o_info_t'atimeh5o_info_t'mtimeh5o_info_t'ctimeh5o_info_t'btimeh5o_info_t'num_attrsh5o_info_t'hdrh5o_info_t'meta_size'objh5o_info_t'meta_size'attrH5O_hdr_info_th5o_hdr_info_t'versionh5o_hdr_info_t'nmesgsh5o_hdr_info_t'nchunksh5o_hdr_info_t'flagsh5o_hdr_info_t'space'totalh5o_hdr_info_t'space'metah5o_hdr_info_t'space'mesgh5o_hdr_info_t'space'freeh5o_hdr_info_t'mesg'presenth5o_hdr_info_t'mesg'shared H5O_type_tp_H5Oare_mdc_flushes_disabledh5o_are_mdc_flushes_disabledp_H5Oenable_mdc_flushesh5o_enable_mdc_flushesp_H5Odisable_mdc_flushesh5o_disable_mdc_flushes p_H5Orefresh h5o_refresh p_H5Oflush h5o_flush p_H5Oclose h5o_closep_H5Ovisit_by_nameh5o_visit_by_name p_H5Ovisit h5o_visitp_H5Oget_comment_by_nameh5o_get_comment_by_namep_H5Oget_commenth5o_get_commentp_H5Oset_comment_by_nameh5o_set_comment_by_namep_H5Oset_commenth5o_set_comment p_H5Ocopyh5o_copyp_H5Odecr_refcounth5o_decr_refcountp_H5Oincr_refcounth5o_incr_refcount p_H5Olinkh5o_linkp_H5Oget_info_by_idxh5o_get_info_by_idxp_H5Oget_info_by_nameh5o_get_info_by_name p_H5Oget_info h5o_get_infop_H5Oexists_by_nameh5o_exists_by_namep_H5Oopen_by_idxh5o_open_by_idxp_H5Oopen_by_addrh5o_open_by_addr p_H5Oopenh5o_openh5o_COPY_SHALLOW_HIERARCHY_FLAGh5o_COPY_EXPAND_SOFT_LINK_FLAGh5o_COPY_EXPAND_EXT_LINK_FLAGh5o_COPY_EXPAND_REFERENCE_FLAGh5o_COPY_WITHOUT_ATTR_FLAGh5o_COPY_PRESERVE_NULL_FLAG#h5o_COPY_MERGE_COMMITTED_DTYPE_FLAG h5o_COPY_ALLh5o_SHMESG_NONE_FLAGh5o_SHMESG_SDSPACE_FLAGh5o_SHMESG_DTYPE_FLAGh5o_SHMESG_FILL_FLAGh5o_SHMESG_PLINE_FLAGh5o_SHMESG_ATTR_FLAGh5o_SHMESG_ALL_FLAGh5o_HDR_CHUNK0_SIZEh5o_HDR_ATTR_CRT_ORDER_TRACKEDh5o_HDR_ATTR_CRT_ORDER_INDEXEDh5o_HDR_ATTR_STORE_PHASE_CHANGEh5o_HDR_STORE_TIMESh5o_HDR_ALL_FLAGSh5o_SHMESG_MAX_NINDEXESh5o_SHMESG_MAX_LIST_SIZEh5o_TYPE_UNKNOWNh5o_TYPE_GROUPh5o_TYPE_DATASETh5o_TYPE_NAMED_DATATYPEh5o_TYPE_NTYPESp'H5O_hdr_info_t'versionp'H5O_hdr_info_t'nmesgsp'H5O_hdr_info_t'nchunksp'H5O_hdr_info_t'flagsp'H5O_hdr_info_t'space'totalp'H5O_hdr_info_t'space'metap'H5O_hdr_info_t'space'mesgp'H5O_hdr_info_t'space'freep'H5O_hdr_info_t'mesg'presentp'H5O_hdr_info_t'mesg'sharedp'H5O_info_t'filenop'H5O_info_t'addrp'H5O_info_t'typep'H5O_info_t'rcp'H5O_info_t'atimep'H5O_info_t'mtimep'H5O_info_t'ctimep'H5O_info_t'btimep'H5O_info_t'num_attrsp'H5O_info_t'hdrp'H5O_info_t'meta_size'objp'H5O_info_t'meta_size'attrh5o_MCDT_SEARCH_ERRORh5o_MCDT_SEARCH_CONTh5o_MCDT_SEARCH_STOPp'H5O_stat_t'sizep'H5O_stat_t'freep'H5O_stat_t'nmesgsp'H5O_stat_t'nchunks$fStorableH5O_hdr_info_t$fStorableH5O_info_t$fStorableH5O_stat_t$fEqH5O_stat_t$fShowH5O_stat_t$fStorableH5O_mcdt_search_ret_t$fShowH5O_mcdt_search_ret_t$fStorableH5O_msg_crt_idx_t$fShowH5O_msg_crt_idx_t$fEqH5O_msg_crt_idx_t$fOrdH5O_msg_crt_idx_t$fReadH5O_msg_crt_idx_t$fEqH5O_info_t$fShowH5O_info_t$fEqH5O_hdr_info_t$fShowH5O_hdr_info_t$fStorableH5O_type_t$fShowH5O_type_t$fEqH5O_type_tH5L_elink_traverse_t H5L_class_th5l_class_t'versionh5l_class_t'idh5l_class_t'commenth5l_class_t'create_funch5l_class_t'move_funch5l_class_t'copy_funch5l_class_t'trav_funch5l_class_t'del_funch5l_class_t'query_funcH5L_query_func_tH5L_delete_func_tH5L_traverse_func_tH5L_copy_func_tH5L_move_func_tH5L_create_func_t H5L_iterate_t H5L_info_th5l_info_t'typeh5l_info_t'corder_validh5l_info_t'corderh5l_info_t'cseth5l_info_t'u'addressh5l_info_t'u'val_size H5L_type_tp_H5Lcreate_externalh5l_create_externalp_H5Lunpack_elink_valh5l_unpack_elink_valp_H5Lis_registeredh5l_is_registeredp_H5Lunregisterh5l_unregister p_H5Lregister h5l_registerp_H5Lcreate_ud h5l_create_udp_H5Lget_name_by_idxh5l_get_name_by_idx p_H5Lexists h5l_existsp_H5Lget_val_by_idxh5l_get_val_by_idx p_H5Lget_val h5l_get_valp_H5Ldelete_by_idxh5l_delete_by_idx p_H5Ldelete h5l_deletep_H5Lcreate_softh5l_create_softp_H5Lcreate_hardh5l_create_hard p_H5Lcopyh5l_copy p_H5Lmoveh5l_movep_H5Lvisit_by_nameh5l_visit_by_name p_H5Lvisit h5l_visitp_H5Literate_by_nameh5l_iterate_by_name p_H5Literate h5l_iteratep_H5Lget_info_by_idxh5l_get_info_by_idx p_H5Lget_info h5l_get_infoh5l_MAX_LINK_NAME_LEN h5l_SAME_LOCh5l_LINK_CLASS_T_VERSh5l_TYPE_ERROR h5l_TYPE_HARD h5l_TYPE_SOFTh5l_TYPE_EXTERNAL h5l_TYPE_MAXh5l_TYPE_BUILTIN_MAXh5l_TYPE_UD_MINp'H5L_info_t'typep'H5L_info_t'corder_validp'H5L_info_t'corderp'H5L_info_t'csetp'H5L_info_t'u'addressp'H5L_info_t'u'val_sizeu_H5L_info_t'u'addressu_H5L_info_t'u'val_sizep'H5L_class_t'versionp'H5L_class_t'idp'H5L_class_t'commentp'H5L_class_t'create_funcp'H5L_class_t'move_funcp'H5L_class_t'copy_funcp'H5L_class_t'trav_funcp'H5L_class_t'del_funcp'H5L_class_t'query_func$fStorableH5L_info_t$fStorableH5L_class_t$fEqH5L_class_t$fShowH5L_class_t$fEqH5L_info_t$fShowH5L_info_t$fStorableH5L_type_t$fShowH5L_type_t$fEqH5L_type_t$fOrdH5L_type_t$fReadH5L_type_t h5fd_DIRECTLocationFromHIduncheckedFromHIdHIdhid $fHIdHId_t$fFromHIdHId_t H5G_stat_th5g_stat_t'filenoh5g_stat_t'objnoh5g_stat_t'nlinkh5g_stat_t'typeh5g_stat_t'mtimeh5g_stat_t'linklenh5g_stat_t'ohdr H5G_iterate_t H5G_obj_t H5G_link_t H5G_info_th5g_info_t'storage_typeh5g_info_t'nlinksh5g_info_t'max_corderh5g_info_t'mountedH5G_storage_type_tp_H5Gget_objtype_by_idxh5g_get_objtype_by_idxp_H5Gget_objname_by_idxh5g_get_objname_by_idxp_H5Gget_objinfoh5g_get_objinfop_H5Gget_num_objsh5g_get_num_objs p_H5Giterate h5g_iteratep_H5Gget_commenth5g_get_commentp_H5Gset_commenth5g_set_commentp_H5Gget_linkvalh5g_get_linkval p_H5Gunlink h5g_unlink p_H5Gmove2 h5g_move2 p_H5Gmoveh5g_move p_H5Glink2 h5g_link2 p_H5Glinkh5g_link p_H5Gopen1 h5g_open1 p_H5Gcreate1 h5g_create1 h5g_USERTYPE p_H5Grefresh h5g_refresh p_H5Gflush h5g_flush p_H5Gclose h5g_closep_H5Gget_info_by_idxh5g_get_info_by_idxp_H5Gget_info_by_nameh5g_get_info_by_name p_H5Gget_info h5g_get_infop_H5Gget_create_plisth5g_get_create_plist p_H5Gopen2 h5g_open2p_H5Gcreate_anonh5g_create_anon p_H5Gcreate2 h5g_create2h5g_STORAGE_TYPE_UNKNOWNh5g_STORAGE_TYPE_SYMBOL_TABLEh5g_STORAGE_TYPE_COMPACTh5g_STORAGE_TYPE_DENSEp'H5G_info_t'storage_typep'H5G_info_t'nlinksp'H5G_info_t'max_corderp'H5G_info_t'mounted h5g_SAME_LOCh5g_LINK_ERROR h5g_LINK_HARD h5g_LINK_SOFT h5g_NTYPES h5g_NLIBTYPESh5g_NUSERTYPES h5g_UNKNOWN h5g_GROUP h5g_DATASETh5g_TYPEh5g_LINK h5g_UDLINKh5g_RESERVED_5h5g_RESERVED_6h5g_RESERVED_7p'H5G_stat_t'filenop'H5G_stat_t'objnop'H5G_stat_t'nlinkp'H5G_stat_t'typep'H5G_stat_t'mtimep'H5G_stat_t'linklenp'H5G_stat_t'ohdr$fStorableH5G_info_t$fStorableH5G_stat_t$fEqH5G_stat_t$fShowH5G_stat_t$fStorableH5G_obj_t$fShowH5G_obj_t $fEqH5G_obj_t$fEqH5G_info_t$fShowH5G_info_t$fStorableH5G_storage_type_t$fShowH5G_storage_type_t$fEqH5G_storage_type_t$fOrdH5G_storage_type_t$fReadH5G_storage_type_tHDset_reg_ref_t HObj_ref_t H5R_type_tp_H5Rget_obj_type1h5r_get_obj_type1 p_H5Rget_name h5r_get_namep_H5Rget_obj_type2h5r_get_obj_type2p_H5Rget_regionh5r_get_regionp_H5Rdereference2h5r_dereference2p_H5Rdereference1h5r_dereference1 p_H5Rcreate h5r_create h5r_BADTYPE h5r_OBJECTh5r_DATASET_REGION h5r_MAXTYPEh5r_OBJ_REF_BUF_SIZEh5r_DSET_REG_REF_BUF_SIZE$fStorableHObj_ref_t$fShowHObj_ref_t$fStorableH5R_type_t$fShowH5R_type_tp_H5Pset_fapl_stdioh5p_set_fapl_stdiop_H5FD_stdio_inith5fd_stdio_init h5fd_STDIOp_H5Pset_fapl_sec2h5p_set_fapl_sec2p_H5FD_sec2_inith5fd_sec2_init h5fd_SEC2p_H5Pset_fapl_logh5p_set_fapl_logp_H5FD_log_init h5fd_log_inith5fd_LOGh5fd_LOG_LOC_READh5fd_LOG_LOC_WRITEh5fd_LOG_LOC_SEEKh5fd_LOG_LOC_IOh5fd_LOG_FILE_READh5fd_LOG_FILE_WRITEh5fd_LOG_FILE_IOh5fd_LOG_FLAVORh5fd_LOG_NUM_READh5fd_LOG_NUM_WRITEh5fd_LOG_NUM_SEEKh5fd_LOG_NUM_IOh5fd_LOG_TIME_OPENh5fd_LOG_TIME_READh5fd_LOG_TIME_WRITEh5fd_LOG_TIME_SEEKh5fd_LOG_TIME_CLOSEh5fd_LOG_TIME_IOh5fd_LOG_ALLOC h5fd_LOG_ALLp_H5Pget_fapl_familyh5p_get_fapl_familyp_H5Pset_fapl_familyh5p_set_fapl_familyp_H5FD_family_inith5fd_family_init h5fd_FAMILYp_H5Pget_fapl_coreh5p_get_fapl_corep_H5Pset_fapl_coreh5p_set_fapl_corep_H5FD_core_inith5fd_core_init h5fd_CORE H5E_auto1_t H5E_walk1_t H5E_error1_th5e_error1_t'maj_numh5e_error1_t'min_numh5e_error1_t'func_nameh5e_error1_t'file_nameh5e_error1_t'lineh5e_error1_t'desc H5E_minor_t H5E_major_t H5E_auto2_t H5E_walk2_tH5E_direction_t H5E_TRY_STATE H5E_error2_th5e_error2_t'cls_idh5e_error2_t'maj_numh5e_error2_t'min_numh5e_error2_t'lineh5e_error2_t'func_nameh5e_error2_t'file_nameh5e_error2_t'desc H5E_type_tp_H5Eget_minor h5e_get_minorp_H5Eget_major h5e_get_major p_H5Ewalk1 h5e_walk1p_H5Eset_auto1 h5e_set_auto1 p_H5Eprint1 h5e_print1 p_H5Epush1 h5e_push1p_H5Eget_auto1 h5e_get_auto1 p_H5Eclear1 h5e_clear1 p_H5Eget_num h5e_get_num p_H5Eget_msg h5e_get_msgp_H5Eauto_is_v2h5e_auto_is_v2 p_H5Eclear2 h5e_clear2p_H5Eset_auto2 h5e_set_auto2p_H5Eget_auto2 h5e_get_auto2 p_H5Ewalk2 h5e_walk2 p_H5Eprint2 h5e_print2p_H5Epoph5e_pop p_H5Epush2h5e_push2_no_varargsp_H5Eset_current_stackh5e_set_current_stackp_H5Eget_class_nameh5e_get_class_namep_H5Eclose_stackh5e_close_stackp_H5Eget_current_stackh5e_get_current_stackp_H5Ecreate_stackh5e_create_stackp_H5Ecreate_msgh5e_create_msgp_H5Eclose_msg h5e_close_msgp_H5Eunregister_classh5e_unregister_classp_H5Eregister_classh5e_register_class h5e_BADSIZEh5e_CANTCONVERTh5e_CANTREMOVEh5e_CANTMODIFY h5e_CANTLISTh5e_CANTINSERT h5e_CANTSWAPh5e_CANTREDISTRIBUTE h5e_CANTSPLITh5e_CANTDECODEh5e_CANTENCODE h5e_EXISTS h5e_NOTFOUND h5e_BADVALUE h5e_BADRANGE h5e_BADTYPEh5e_UNSUPPORTEDh5e_UNINITIALIZEDh5e_CANTCOMPARE h5e_BADSELECT h5e_CANTNEXTh5e_CANTSELECT h5e_CANTCOUNT h5e_CANTCLIP h5e_CANTRECV h5e_MPIERRSTRh5e_MPI h5e_CANTSORT h5e_CANTMOVEh5e_NOTREGISTERED h5e_NLINKS h5e_TRAVERSEh5e_CANTRESIZEh5e_CANTEXPUNGE h5e_CANTDIRTYh5e_CANTMARKDIRTY h5e_CANTUNPIN h5e_CANTPINh5e_CANTUNPROTECTh5e_CANTPROTECT h5e_CANTINS h5e_SYSTEM h5e_NOTCACHED h5e_PROTECT h5e_CANTLOADh5e_CANTSERIALIZE h5e_CANTFLUSH h5e_NOIDS h5e_CANTDEC h5e_CANTINCh5e_CANTREGISTER h5e_BADGROUP h5e_MOUNT h5e_TRUNCATED h5e_BADFILE h5e_NOTHDF5h5e_CANTCLOSEFILEh5e_CANTOPENFILEh5e_CANTCREATE h5e_FILEOPENh5e_FILEEXISTS h5e_OPENERRORh5e_NONE_MINORh5e_PATH h5e_COMPLENh5e_CANTCLOSEOBJh5e_CANTOPENOBJh5e_CANTFILTER h5e_NOENCODER h5e_SETLOCAL h5e_CANAPPLY h5e_CALLBACK h5e_NOFILTER h5e_SYSERRSTRh5e_CANTRENAME h5e_CANTRESET h5e_CANTPACK h5e_BADITERh5e_CANTDELETE h5e_BADMESG h5e_ALIGNMENT h5e_VERSION h5e_LINKCOUNTh5e_CANTSHRINKh5e_CANTREVIVE h5e_CANTMERGEh5e_SETDISALLOWED h5e_DUPCLASS h5e_CANTSET h5e_CANTGETh5e_CANTRELEASEh5e_ALREADYINIT h5e_CANTINITh5e_CANTOPERATEh5e_CANTUPDATEh5e_CANTATTACHh5e_CANTEXTENDh5e_CANTCOMPUTEh5e_CANTRESTORE h5e_OBJOPENh5e_CANTGETSIZE h5e_CANTGCh5e_CANTUNLOCK h5e_CANTLOCKh5e_ALREADYEXISTS h5e_CANTFREE h5e_CANTCOPY h5e_CANTALLOC h5e_NOSPACE h5e_FCNTL h5e_OVERFLOWh5e_CLOSEERRORh5e_WRITEERROR h5e_READERROR h5e_SEEKERROR h5e_CACHE h5e_FSPACE h5e_PLINE h5e_ERRORh5e_ARGSh5e_TSTh5e_EFL h5e_SLISTh5e_IOh5e_NONE_MAJORh5e_ATTRh5e_OHDRh5e_HEAPh5e_RS h5e_DATATYPEh5e_LINK h5e_PLIST h5e_RESOURCE h5e_DATASPACE h5e_REFERENCE h5e_BTREE h5e_INTERNALh5e_VFL h5e_PLUGINh5e_SYMh5e_SOHMh5e_FILE h5e_STORAGEh5e_FUNC h5e_DATASET h5e_ERR_CLS h5e_DEFAULT h5e_MAJOR h5e_MINORp'H5E_error2_t'cls_idp'H5E_error2_t'maj_nump'H5E_error2_t'min_nump'H5E_error2_t'linep'H5E_error2_t'func_namep'H5E_error2_t'file_namep'H5E_error2_t'desc h5e_BEGIN_TRY h5e_END_TRYh5e_tryh5e_WALK_UPWARDh5e_WALK_DOWNWARD h5e_push2p'H5E_error1_t'maj_nump'H5E_error1_t'min_nump'H5E_error1_t'func_namep'H5E_error1_t'file_namep'H5E_error1_t'linep'H5E_error1_t'desc$fStorableH5E_error2_t$fStorableH5E_error1_t$fEqH5E_error1_t$fShowH5E_error1_t$fStorableH5E_minor_t$fShowH5E_minor_t$fEqH5E_minor_t$fStorableH5E_major_t$fShowH5E_major_t$fEqH5E_major_t$fStorableH5E_direction_t$fShowH5E_direction_t$fEqH5E_error2_t$fShowH5E_error2_t$fStorableH5E_type_t$fShowH5E_type_t MinorErrCode SeekError ReadError WriteError CloseErrorOverflowFCNTLNoSpace CantAllocCantCopyCantFree AlreadyExistsCantLock CantUnlockCantGC CantGetSizeObjOpen CantRestore CantCompute CantExtend CantAttach CantUpdate CantOperateCantInit AlreadyInit CantReleaseCantGetCantSetDupClass CantMerge CantRevive CantShrink LinkCountVersion AlignmentBadMesg CantDeleteBadIterCantPack CantReset CantRename SysErrStrNoFilterCallbackCanApplySetLocal NoEncoder CantFilter CantOpenObj CantCloseObjCompLenPath FileExistsFileOpen CantCreate CantOpenFile CantCloseFileNotHDF5BadFile TruncatedMountBadAtomBadGroup CantRegisterCantIncCantDecNoIds CantFlush CantSerializeCantLoadProtect NotCachedSystemCantIns CantProtect CanTUnprotectCantPin CantUnpin CantMarkDirty CantDirty CantExpunge CantResizeTraverseNLinks NotRegisteredCantMoveCantSortMPI MPIErrStrCantRecvCantClip CantCount CantSelectCantNext BadSelect CantCompare Uninitialized UnsupportedBadTypeBadRangeBadValueNotFoundExists CantEncode CantDecode CantSplitCantRedistributeCantSwap CantInsertCantList CantModify CantRemove CantConvertBadSize UnknownMinor MajorErrCodeDatasetFuncStorageFileSOHMSymVFLInternalBTree Reference DataspaceResourcePListLinkDatatypeRSHeapOHDRAtomAttrIOSListEFLTSTArgsErrorPLineFSpaceCache UnknownMajormajorErrorCodemajorErrorFromCodeminorErrorCodeminorErrorFromCode$fStorableMaybe$fStorableMaybe0$fEqMinorErrCode$fOrdMinorErrCode$fShowMinorErrCode$fEqMajorErrCode$fOrdMajorErrCode$fShowMajorErrCodeH5D_gather_func_tH5D_scatter_func_tH5D_operator_tH5D_append_cb_tH5D_vds_view_tH5D_fill_value_tH5D_fill_time_tH5D_space_status_tH5D_alloc_time_tH5D_chunk_index_t H5D_layout_t p_H5Dextend h5d_extend p_H5Dopen1 h5d_open1 p_H5Dcreate1 h5d_create1p_H5Dget_chunk_index_typeh5d_get_chunk_index_typep_H5Dformat_converth5d_format_convert p_H5Ddebug h5d_debug p_H5Dgather h5d_gather p_H5Dscatter h5d_scatter p_H5Drefresh h5d_refresh p_H5Dflush h5d_flushp_H5Dset_extenth5d_set_extent p_H5Dfillh5d_fillp_H5Dvlen_get_buf_sizeh5d_vlen_get_buf_sizep_H5Dvlen_reclaimh5d_vlen_reclaim p_H5Diterate h5d_iterate p_H5Dwrite h5d_write p_H5Dreadh5d_readp_H5Dget_offseth5d_get_offsetp_H5Dget_storage_sizeh5d_get_storage_sizep_H5Dget_access_plisth5d_get_access_plistp_H5Dget_create_plisth5d_get_create_plist p_H5Dget_type h5d_get_typep_H5Dget_space_statush5d_get_space_statusp_H5Dget_space h5d_get_space p_H5Dclose h5d_close p_H5Dopen2 h5d_open2p_H5Dcreate_anonh5d_create_anon p_H5Dcreate2 h5d_create2h5d_CHUNK_CACHE_NSLOTS_DEFAULTh5d_CHUNK_CACHE_NBYTES_DEFAULTh5d_CHUNK_CACHE_W0_DEFAULT$h5d_CHUNK_DONT_FILTER_PARTIAL_CHUNKS%h5d_XFER_DIRECT_CHUNK_WRITE_FLAG_NAME(h5d_XFER_DIRECT_CHUNK_WRITE_FILTERS_NAME'h5d_XFER_DIRECT_CHUNK_WRITE_OFFSET_NAME)h5d_XFER_DIRECT_CHUNK_WRITE_DATASIZE_NAMEh5d_LAYOUT_ERROR h5d_COMPACTh5d_CONTIGUOUS h5d_CHUNKED h5d_VIRTUAL h5d_NLAYOUTSh5d_CHUNK_BTREEh5d_CHUNK_IDX_BTREEh5d_CHUNK_IDX_SINGLEh5d_CHUNK_IDX_NONEh5d_CHUNK_IDX_FARRAYh5d_CHUNK_IDX_EARRAYh5d_CHUNK_IDX_BT2h5d_CHUNK_IDX_NTYPESh5d_ALLOC_TIME_ERRORh5d_ALLOC_TIME_DEFAULTh5d_ALLOC_TIME_EARLYh5d_ALLOC_TIME_LATEh5d_ALLOC_TIME_INCRh5d_SPACE_STATUS_ERRORh5d_SPACE_STATUS_NOT_ALLOCATEDh5d_SPACE_STATUS_PART_ALLOCATEDh5d_SPACE_STATUS_ALLOCATEDh5d_FILL_TIME_ERRORh5d_FILL_TIME_ALLOCh5d_FILL_TIME_NEVERh5d_FILL_TIME_IFSETh5d_FILL_VALUE_ERRORh5d_FILL_VALUE_UNDEFINEDh5d_FILL_VALUE_DEFAULTh5d_FILL_VALUE_USER_DEFINED h5d_VDS_ERRORh5d_VDS_FIRST_MISSINGh5d_VDS_LAST_AVAILABLE$fStorableH5D_vds_view_t$fShowH5D_vds_view_t$fEqH5D_vds_view_t$fStorableH5D_fill_value_t$fShowH5D_fill_value_t$fEqH5D_fill_value_t$fStorableH5D_fill_time_t$fShowH5D_fill_time_t$fEqH5D_fill_time_t$fStorableH5D_space_status_t$fShowH5D_space_status_t$fEqH5D_space_status_t$fStorableH5D_alloc_time_t$fShowH5D_alloc_time_t$fEqH5D_alloc_time_t$fStorableH5D_chunk_index_t$fShowH5D_chunk_index_t$fStorableH5D_layout_t$fShowH5D_layout_t$fEqH5D_layout_tH5AC_cache_config_th5ac_cache_config_t'version#h5ac_cache_config_t'rpt_fcn_enabled#h5ac_cache_config_t'open_trace_file$h5ac_cache_config_t'close_trace_file#h5ac_cache_config_t'trace_file_name%h5ac_cache_config_t'evictions_enabled$h5ac_cache_config_t'set_initial_size h5ac_cache_config_t'initial_size&h5ac_cache_config_t'min_clean_fractionh5ac_cache_config_t'max_sizeh5ac_cache_config_t'min_size h5ac_cache_config_t'epoch_lengthh5ac_cache_config_t'incr_mode&h5ac_cache_config_t'lower_hr_thresholdh5ac_cache_config_t'increment'h5ac_cache_config_t'apply_max_increment!h5ac_cache_config_t'max_increment#h5ac_cache_config_t'flash_incr_mode"h5ac_cache_config_t'flash_multiple#h5ac_cache_config_t'flash_thresholdh5ac_cache_config_t'decr_mode&h5ac_cache_config_t'upper_hr_thresholdh5ac_cache_config_t'decrement'h5ac_cache_config_t'apply_max_decrement!h5ac_cache_config_t'max_decrement*h5ac_cache_config_t'epochs_before_eviction'h5ac_cache_config_t'apply_empty_reserve!h5ac_cache_config_t'empty_reserve)h5ac_cache_config_t'dirty_bytes_threshold+h5ac_cache_config_t'metadata_write_strategyp'H5AC_cache_config_t'version%p'H5AC_cache_config_t'rpt_fcn_enabled%p'H5AC_cache_config_t'open_trace_file&p'H5AC_cache_config_t'close_trace_file%p'H5AC_cache_config_t'trace_file_name'p'H5AC_cache_config_t'evictions_enabled&p'H5AC_cache_config_t'set_initial_size"p'H5AC_cache_config_t'initial_size(p'H5AC_cache_config_t'min_clean_fractionp'H5AC_cache_config_t'max_sizep'H5AC_cache_config_t'min_size"p'H5AC_cache_config_t'epoch_lengthp'H5AC_cache_config_t'incr_mode(p'H5AC_cache_config_t'lower_hr_thresholdp'H5AC_cache_config_t'increment)p'H5AC_cache_config_t'apply_max_increment#p'H5AC_cache_config_t'max_increment%p'H5AC_cache_config_t'flash_incr_mode$p'H5AC_cache_config_t'flash_multiple%p'H5AC_cache_config_t'flash_thresholdp'H5AC_cache_config_t'decr_mode(p'H5AC_cache_config_t'upper_hr_thresholdp'H5AC_cache_config_t'decrement)p'H5AC_cache_config_t'apply_max_decrement#p'H5AC_cache_config_t'max_decrement,p'H5AC_cache_config_t'epochs_before_eviction)p'H5AC_cache_config_t'apply_empty_reserve#p'H5AC_cache_config_t'empty_reserve+p'H5AC_cache_config_t'dirty_bytes_threshold-p'H5AC_cache_config_t'metadata_write_strategyh5ac__CURR_CACHE_CONFIG_VERSIONh5ac__MAX_TRACE_FILE_NAME_LEN,h5ac_METADATA_WRITE_STRATEGY__PROCESS_0_ONLY)h5ac_METADATA_WRITE_STRATEGY__DISTRIBUTED$fStorableH5AC_cache_config_t$fEqH5AC_cache_config_t$fShowH5AC_cache_config_t H5F_info_th5f_info_t'super_ext_sizeh5f_info_t'sohm'hdr_sizeh5f_info_t'sohm'msgs_info H5F_info1_th5f_info1_t'super_ext_sizeh5f_info1_t'sohm'hdr_sizeh5f_info1_t'sohm'msgs_infoH5F_flush_cb_tH5F_retry_info_th5f_retry_info_t'nbinsh5f_retry_info_t'retriesH5F_file_space_type_t H5F_libver_tH5F_sect_info_th5f_sect_info_t'addrh5f_sect_info_t'size H5F_mem_tH5F_close_degree_t H5F_scope_t h5f_get_infop_H5Fget_mpi_atomicityh5f_get_mpi_atomicityp_H5Fset_mpi_atomicityh5f_set_mpi_atomicityp_H5Fget_info1 h5f_get_info1p_H5Fformat_converth5f_format_convertp_H5Fget_mdc_logging_statush5f_get_mdc_logging_statusp_H5Fstop_mdc_loggingh5f_stop_mdc_loggingp_H5Fstart_mdc_loggingh5f_start_mdc_loggingp_H5Fclear_elink_file_cacheh5f_clear_elink_file_cachep_H5Fget_free_sectionsh5f_get_free_sectionsp_H5Fstart_swmr_writeh5f_start_swmr_write!p_H5Fget_metadata_read_retry_info h5f_get_metadata_read_retry_info p_H5Fget_name h5f_get_namep_H5Freset_mdc_hit_rate_statsh5f_reset_mdc_hit_rate_statsp_H5Fget_mdc_sizeh5f_get_mdc_sizep_H5Fget_mdc_hit_rateh5f_get_mdc_hit_ratep_H5Fset_mdc_configh5f_set_mdc_configp_H5Fget_mdc_configh5f_get_mdc_configp_H5Fget_file_imageh5f_get_file_imagep_H5Fget_filesizeh5f_get_filesizep_H5Fget_freespaceh5f_get_freespace p_H5Funmount h5f_unmount p_H5Fmount h5f_mountp_H5Fget_vfd_handleh5f_get_vfd_handlep_H5Fget_obj_idsh5f_get_obj_idsp_H5Fget_obj_counth5f_get_obj_countp_H5Fget_intenth5f_get_intentp_H5Fget_access_plisth5f_get_access_plistp_H5Fget_create_plisth5f_get_create_plist p_H5Fclose h5f_close p_H5Fflush h5f_flush p_H5Freopen h5f_reopen p_H5Fopenh5f_open p_H5Fcreate h5f_create p_H5Fis_hdf5 h5f_is_hdf5h5f_ACC_RDONLY h5f_ACC_RDWR h5f_ACC_TRUNC h5f_ACC_EXCL h5f_ACC_DEBUG h5f_ACC_CREATh5f_ACC_SWMR_WRITEh5f_ACC_SWMR_READh5f_ACC_DEFAULT h5f_OBJ_FILEh5f_OBJ_DATASET h5f_OBJ_GROUPh5f_OBJ_DATATYPE h5f_OBJ_ATTR h5f_OBJ_ALL h5f_OBJ_LOCALh5f_FAMILY_DEFAULTh5f_MPIO_DEBUG_KEYh5f_SCOPE_LOCALh5f_SCOPE_GLOBAL h5f_UNLIMITEDh5f_CLOSE_DEFAULTh5f_CLOSE_WEAKh5f_CLOSE_SEMIh5f_CLOSE_STRONGh5fd_MEM_NOLISTh5fd_MEM_DEFAULTh5fd_MEM_SUPERh5fd_MEM_BTREE h5fd_MEM_DRAWh5fd_MEM_GHEAPh5fd_MEM_LHEAP h5fd_MEM_OHDRh5fd_MEM_NTYPESp'H5F_sect_info_t'addrp'H5F_sect_info_t'sizeh5f_LIBVER_EARLIESTh5f_LIBVER_LATESTh5f_FILE_SPACE_DEFAULTh5f_FILE_SPACE_ALL_PERSISTh5f_FILE_SPACE_ALLh5f_FILE_SPACE_AGGR_VFDh5f_FILE_SPACE_VFDh5f_FILE_SPACE_NTYPES!h5f_NUM_METADATA_READ_RETRY_TYPESp'H5F_retry_info_t'nbinsp'H5F_retry_info_t'retriesp'H5F_info1_t'super_ext_sizep'H5F_info1_t'sohm'hdr_sizep'H5F_info1_t'sohm'msgs_infop'H5F_info_t'super_ext_sizep'H5F_info_t'sohm'hdr_sizep'H5F_info_t'sohm'msgs_info$fStorableH5F_sect_info_t$fStorableH5F_retry_info_t$fStorableH5F_info1_t$fStorableH5F_info_t$fEqH5F_info_t$fShowH5F_info_t$fEqH5F_info1_t$fShowH5F_info1_t$fEqH5F_retry_info_t$fShowH5F_retry_info_t$fStorableH5F_file_space_type_t$fShowH5F_file_space_type_t$fEqH5F_file_space_type_t$fStorableH5F_libver_t$fShowH5F_libver_t$fEqH5F_sect_info_t$fShowH5F_sect_info_t$fStorableH5F_mem_t$fShowH5F_mem_t $fEqH5F_mem_t$fStorableH5F_close_degree_t$fShowH5F_close_degree_t$fEqH5F_close_degree_t$fStorableH5F_scope_t$fShowH5F_scope_tH5FD_file_image_callbacks_tH5FD_file_image_op_tH5FD_th5fd_t'driver_id h5fd_t'cls h5fd_t'filenoh5fd_t'feature_flagsh5fd_t'maxaddrh5fd_t'base_addrh5fd_t'thresholdh5fd_t'alignment H5FD_free_th5fd_free_t'addrh5fd_free_t'sizeh5fd_free_t'next H5FD_class_th5fd_class_t'nameh5fd_class_t'maxaddrh5fd_class_t'fc_degreeh5fd_class_t'terminateh5fd_class_t'sb_sizeh5fd_class_t'sb_encodeh5fd_class_t'sb_decodeh5fd_class_t'fapl_sizeh5fd_class_t'fapl_geth5fd_class_t'fapl_copyh5fd_class_t'fapl_freeh5fd_class_t'dxpl_sizeh5fd_class_t'dxpl_copyh5fd_class_t'dxpl_freeh5fd_class_t'openh5fd_class_t'closeh5fd_class_t'cmph5fd_class_t'queryh5fd_class_t'get_type_maph5fd_class_t'alloch5fd_class_t'freeh5fd_class_t'get_eoah5fd_class_t'set_eoah5fd_class_t'get_eofh5fd_class_t'get_handleh5fd_class_t'readh5fd_class_t'writeh5fd_class_t'flushh5fd_class_t'truncateh5fd_class_t'lockh5fd_class_t'unlockh5fd_class_t'fl_map H5FD_mem_t p_H5FDunlock h5fd_unlock p_H5FDlock h5fd_lockp_H5FDtruncate h5fd_truncate p_H5FDflush h5fd_flush p_H5FDwrite h5fd_write p_H5FDread h5fd_readp_H5FDget_vfd_handleh5fd_get_vfd_handle p_H5FDget_eof h5fd_get_eof p_H5FDset_eoa h5fd_set_eoa p_H5FDget_eoa h5fd_get_eoa p_H5FDfree h5fd_free p_H5FDalloc h5fd_alloc p_H5FDquery h5fd_query p_H5FDcmph5fd_cmp p_H5FDclose h5fd_close p_H5FDopen h5fd_openp_H5FDunregisterh5fd_unregisterp_H5FDregister h5fd_registerh5fd_FLMAP_DEFAULTh5fd_FLMAP_DICHOTOMYh5fd_FLMAP_SINGLEh5fd_VFD_DEFAULTh5fd_MEM_FHEAP_HDRh5fd_MEM_FHEAP_IBLOCKh5fd_MEM_FHEAP_DBLOCKh5fd_MEM_FHEAP_HUGE_OBJh5fd_MEM_FSPACE_HDRh5fd_MEM_FSPACE_SINFOh5fd_MEM_SOHM_TABLEh5fd_MEM_SOHM_INDEXh5fd_MEM_EARRAY_HDRh5fd_MEM_EARRAY_IBLOCKh5fd_MEM_EARRAY_SBLOCKh5fd_MEM_EARRAY_DBLOCKh5fd_MEM_EARRAY_DBLK_PAGEh5fd_MEM_FARRAY_HDRh5fd_MEM_FARRAY_DBLOCKh5fd_MEM_FARRAY_DBLK_PAGEh5fd_FEAT_AGGREGATE_METADATAh5fd_FEAT_ACCUMULATE_METADATA#h5fd_FEAT_ACCUMULATE_METADATA_WRITE"h5fd_FEAT_ACCUMULATE_METADATA_READh5fd_FEAT_DATA_SIEVEh5fd_FEAT_AGGREGATE_SMALLDATAh5fd_FEAT_IGNORE_DRVRINFOh5fd_FEAT_POSIX_COMPAT_HANDLEh5fd_FEAT_ALLOW_FILE_IMAGE&h5fd_FEAT_CAN_USE_FILE_IMAGE_CALLBACKSh5fd_FEAT_SUPPORTS_SWMR_IOp'H5FD_class_t'namep'H5FD_class_t'maxaddrp'H5FD_class_t'fc_degreep'H5FD_class_t'terminatep'H5FD_class_t'sb_sizep'H5FD_class_t'sb_encodep'H5FD_class_t'sb_decodep'H5FD_class_t'fapl_sizep'H5FD_class_t'fapl_getp'H5FD_class_t'fapl_copyp'H5FD_class_t'fapl_freep'H5FD_class_t'dxpl_sizep'H5FD_class_t'dxpl_copyp'H5FD_class_t'dxpl_freep'H5FD_class_t'openp'H5FD_class_t'closep'H5FD_class_t'cmpp'H5FD_class_t'queryp'H5FD_class_t'get_type_mapp'H5FD_class_t'allocp'H5FD_class_t'freep'H5FD_class_t'get_eoap'H5FD_class_t'set_eoap'H5FD_class_t'get_eofp'H5FD_class_t'get_handlep'H5FD_class_t'readp'H5FD_class_t'writep'H5FD_class_t'flushp'H5FD_class_t'truncatep'H5FD_class_t'lockp'H5FD_class_t'unlockp'H5FD_class_t'fl_mapp'H5FD_free_t'addrp'H5FD_free_t'sizep'H5FD_free_t'nextp'H5FD_t'driver_id p'H5FD_t'clsp'H5FD_t'filenop'H5FD_t'feature_flagsp'H5FD_t'maxaddrp'H5FD_t'base_addrp'H5FD_t'thresholdp'H5FD_t'alignmenth5fd_FILE_IMAGE_OP_NO_OP$h5fd_FILE_IMAGE_OP_PROPERTY_LIST_SET%h5fd_FILE_IMAGE_OP_PROPERTY_LIST_COPY$h5fd_FILE_IMAGE_OP_PROPERTY_LIST_GET&h5fd_FILE_IMAGE_OP_PROPERTY_LIST_CLOSEh5fd_FILE_IMAGE_OP_FILE_OPENh5fd_FILE_IMAGE_OP_FILE_RESIZEh5fd_FILE_IMAGE_OP_FILE_CLOSE$fStorableH5FD_free_t$fStorableH5FD_t$fStorableH5FD_class_t$fStorableH5FD_file_image_op_t$fShowH5FD_file_image_op_t $fEqH5FD_t $fShowH5FD_t$fEqH5FD_class_t$fShowH5FD_class_t$fEqH5FD_free_t$fShowH5FD_free_tH5D_mpio_no_collective_cause_tH5D_mpio_actual_io_mode_t H5D_mpio_actual_chunk_opt_mode_t H5P_iterate_tH5P_prp_close_func_tH5P_prp_compare_func_tH5P_prp_copy_func_tH5P_prp_delete_func_tH5P_prp_decode_func_tH5P_prp_encode_func_tH5P_prp_get_func_tH5P_prp_set_func_tH5P_prp_create_func_tH5P_cls_close_func_tH5P_cls_copy_func_tH5P_cls_create_func_tp_H5Pget_filter_by_id1h5p_get_filter_by_id1p_H5Pget_filter1h5p_get_filter1 p_H5Pinsert1 h5p_insert1p_H5Pregister1 h5p_register1p_H5Pget_mcdt_search_cbh5p_get_mcdt_search_cbp_H5Pset_mcdt_search_cbh5p_set_mcdt_search_cb%p_H5Pfree_merge_committed_dtype_paths$h5p_free_merge_committed_dtype_paths#p_H5Padd_merge_committed_dtype_path"h5p_add_merge_committed_dtype_pathp_H5Pget_copy_objecth5p_get_copy_objectp_H5Pset_copy_objecth5p_set_copy_objectp_H5Pget_elink_cbh5p_get_elink_cbp_H5Pset_elink_cbh5p_set_elink_cbp_H5Pget_elink_acc_flagsh5p_get_elink_acc_flagsp_H5Pset_elink_acc_flagsh5p_set_elink_acc_flagsp_H5Pset_elink_faplh5p_set_elink_faplp_H5Pget_elink_faplh5p_get_elink_faplp_H5Pget_elink_prefixh5p_get_elink_prefixp_H5Pset_elink_prefixh5p_set_elink_prefixp_H5Pget_nlinksh5p_get_nlinksp_H5Pset_nlinksh5p_set_nlinksp_H5Pget_char_encodingh5p_get_char_encodingp_H5Pset_char_encodingh5p_set_char_encodingp_H5Pget_link_creation_orderh5p_get_link_creation_orderp_H5Pset_link_creation_orderh5p_set_link_creation_orderp_H5Pget_est_link_infoh5p_get_est_link_infop_H5Pset_est_link_infoh5p_set_est_link_infop_H5Pget_link_phase_changeh5p_get_link_phase_changep_H5Pset_link_phase_changeh5p_set_link_phase_changep_H5Pget_local_heap_size_hinth5p_get_local_heap_size_hintp_H5Pset_local_heap_size_hinth5p_set_local_heap_size_hint"p_H5Pget_create_intermediate_group!h5p_get_create_intermediate_group"p_H5Pset_create_intermediate_group!h5p_set_create_intermediate_group!p_H5Pget_mpio_no_collective_cause h5p_get_mpio_no_collective_causep_H5Pget_mpio_actual_io_modeh5p_get_mpio_actual_io_mode#p_H5Pget_mpio_actual_chunk_opt_mode"h5p_get_mpio_actual_chunk_opt_modep_H5Pget_type_conv_cbh5p_get_type_conv_cbp_H5Pset_type_conv_cbh5p_set_type_conv_cbp_H5Pget_hyper_vector_sizeh5p_get_hyper_vector_sizep_H5Pset_hyper_vector_sizeh5p_set_hyper_vector_sizep_H5Pget_vlen_mem_managerh5p_get_vlen_mem_managerp_H5Pset_vlen_mem_managerh5p_set_vlen_mem_managerp_H5Pget_btree_ratiosh5p_get_btree_ratiosp_H5Pset_btree_ratiosh5p_set_btree_ratiosp_H5Pset_filter_callbackh5p_set_filter_callbackp_H5Pget_edc_checkh5p_get_edc_checkp_H5Pset_edc_checkh5p_set_edc_checkp_H5Pget_preserveh5p_get_preservep_H5Pset_preserveh5p_set_preservep_H5Pget_bufferh5p_get_bufferp_H5Pset_bufferh5p_set_bufferp_H5Pget_data_transformh5p_get_data_transformp_H5Pset_data_transformh5p_set_data_transformp_H5Pget_efile_prefixh5p_get_efile_prefixp_H5Pset_efile_prefixh5p_set_efile_prefixp_H5Pget_append_flushh5p_get_append_flushp_H5Pset_append_flushh5p_set_append_flushp_H5Pget_virtual_printf_gaph5p_get_virtual_printf_gapp_H5Pset_virtual_printf_gaph5p_set_virtual_printf_gapp_H5Pget_virtual_viewh5p_get_virtual_viewp_H5Pset_virtual_viewh5p_set_virtual_viewp_H5Pget_chunk_cacheh5p_get_chunk_cachep_H5Pset_chunk_cacheh5p_set_chunk_cachep_H5Pget_fill_timeh5p_get_fill_timep_H5Pset_fill_timeh5p_set_fill_timep_H5Pget_alloc_timeh5p_get_alloc_timep_H5Pset_alloc_timeh5p_set_alloc_timep_H5Pfill_value_definedh5p_fill_value_definedp_H5Pget_fill_valueh5p_get_fill_valuep_H5Pset_fill_valueh5p_set_fill_valuep_H5Pset_scaleoffseth5p_set_scaleoffset p_H5Pset_nbit h5p_set_nbitp_H5Pset_shuffleh5p_set_shuffle p_H5Pset_szip h5p_set_szipp_H5Pget_externalh5p_get_externalp_H5Pget_external_counth5p_get_external_countp_H5Pget_chunk_optsh5p_get_chunk_optsp_H5Pset_chunk_optsh5p_set_chunk_optsp_H5Pset_externalh5p_set_externalp_H5Pget_virtual_dsetnameh5p_get_virtual_dsetnamep_H5Pget_virtual_filenameh5p_get_virtual_filenamep_H5Pget_virtual_srcspaceh5p_get_virtual_srcspacep_H5Pget_virtual_vspaceh5p_get_virtual_vspacep_H5Pget_virtual_counth5p_get_virtual_countp_H5Pset_virtualh5p_set_virtualp_H5Pget_chunk h5p_get_chunkp_H5Pset_chunk h5p_set_chunkp_H5Pget_layouth5p_get_layoutp_H5Pset_layouth5p_set_layoutp_H5Pget_coll_metadata_writeh5p_get_coll_metadata_writep_H5Pset_coll_metadata_writeh5p_set_coll_metadata_writep_H5Pget_all_coll_metadata_opsh5p_get_all_coll_metadata_opsp_H5Pset_all_coll_metadata_opsh5p_set_all_coll_metadata_opsp_H5Pget_mdc_log_optionsh5p_get_mdc_log_optionsp_H5Pset_mdc_log_optionsh5p_set_mdc_log_optionsp_H5Pget_object_flush_cbh5p_get_object_flush_cbp_H5Pset_object_flush_cbh5p_set_object_flush_cbp_H5Pget_metadata_read_attemptsh5p_get_metadata_read_attemptsp_H5Pget_file_image_callbacksh5p_get_file_image_callbacksp_H5Pset_file_image_callbacksh5p_set_file_image_callbacksp_H5Pget_file_imageh5p_get_file_imagep_H5Pset_file_imageh5p_set_file_imagep_H5Pget_elink_file_cache_sizeh5p_get_elink_file_cache_sizep_H5Pset_elink_file_cache_sizeh5p_set_elink_file_cache_sizep_H5Pget_libver_boundsh5p_get_libver_boundsp_H5Pset_libver_boundsh5p_set_libver_boundsp_H5Pget_small_data_block_sizeh5p_get_small_data_block_sizep_H5Pset_small_data_block_sizeh5p_set_small_data_block_sizep_H5Pget_sieve_buf_sizeh5p_get_sieve_buf_sizep_H5Pset_sieve_buf_sizeh5p_set_sieve_buf_sizep_H5Pget_meta_block_sizeh5p_get_meta_block_sizep_H5Pset_meta_block_sizeh5p_set_meta_block_sizep_H5Pget_fclose_degreeh5p_get_fclose_degreep_H5Pset_fclose_degreeh5p_set_fclose_degreep_H5Pget_gc_referencesh5p_get_gc_referencesp_H5Pset_gc_referencesh5p_set_gc_referencesp_H5Pget_mdc_configh5p_get_mdc_configp_H5Pset_mdc_configh5p_set_mdc_configp_H5Pget_cache h5p_get_cachep_H5Pset_cache h5p_set_cachep_H5Pget_multi_typeh5p_get_multi_typep_H5Pset_multi_typeh5p_set_multi_typep_H5Pget_family_offseth5p_get_family_offsetp_H5Pset_family_offseth5p_set_family_offsetp_H5Pget_driver_infoh5p_get_driver_infop_H5Pget_driverh5p_get_driverp_H5Pset_driverh5p_set_driverp_H5Pget_alignmenth5p_get_alignmentp_H5Pset_alignmenth5p_set_alignmentp_H5Pget_file_spaceh5p_get_file_spacep_H5Pset_file_spaceh5p_set_file_space!p_H5Pget_shared_mesg_phase_change h5p_get_shared_mesg_phase_change!p_H5Pset_shared_mesg_phase_change h5p_set_shared_mesg_phase_changep_H5Pget_shared_mesg_indexh5p_get_shared_mesg_indexp_H5Pset_shared_mesg_indexh5p_set_shared_mesg_indexp_H5Pget_shared_mesg_nindexesh5p_get_shared_mesg_nindexesp_H5Pset_shared_mesg_nindexesh5p_set_shared_mesg_nindexesp_H5Pget_istore_kh5p_get_istore_kp_H5Pset_istore_kh5p_set_istore_kp_H5Pget_sym_k h5p_get_sym_kp_H5Pset_sym_k h5p_set_sym_kp_H5Pget_sizes h5p_get_sizesp_H5Pset_sizes h5p_set_sizesp_H5Pget_userblockh5p_get_userblockp_H5Pset_userblockh5p_set_userblockp_H5Pget_versionh5p_get_versionp_H5Pset_fletcher32h5p_set_fletcher32p_H5Pset_deflateh5p_set_deflatep_H5Premove_filterh5p_remove_filterp_H5Pall_filters_availh5p_all_filters_availp_H5Pget_filter_by_id2h5p_get_filter_by_id2p_H5Pget_filter2h5p_get_filter2p_H5Pget_nfiltersh5p_get_nfiltersp_H5Pset_filterh5p_set_filterp_H5Pmodify_filterh5p_modify_filterp_H5Pget_obj_track_timesh5p_get_obj_track_timesp_H5Pset_obj_track_timesh5p_set_obj_track_timesp_H5Pget_attr_creation_orderh5p_get_attr_creation_orderp_H5Pset_attr_creation_orderh5p_set_attr_creation_orderp_H5Pget_attr_phase_changeh5p_get_attr_phase_changep_H5Pset_attr_phase_changeh5p_set_attr_phase_change p_H5Pcopyh5p_copy p_H5Pclose h5p_closep_H5Pclose_classh5p_close_classp_H5Punregisterh5p_unregister p_H5Premove h5p_removep_H5Pcopy_prop h5p_copy_prop p_H5Piterate h5p_iteratep_H5Pisa_class h5p_isa_class p_H5Pequal h5p_equalp_H5Pgeth5p_getp_H5Pget_class_parenth5p_get_class_parentp_H5Pget_class h5p_get_classp_H5Pget_npropsh5p_get_nprops p_H5Pget_size h5p_get_size p_H5Pdecode h5p_decode p_H5Pencode h5p_encode p_H5Pexist h5p_existp_H5Pseth5p_set p_H5Pinsert2 h5p_insert2p_H5Pregister2 h5p_register2 p_H5Pcreate h5p_createp_H5Pget_class_nameh5p_get_class_namep_H5Pcreate_classh5p_create_classh5p_LINK_ACCESS_DEFAULTh5p_LINK_CREATE_DEFAULTh5p_OBJECT_COPY_DEFAULTh5p_ATTRIBUTE_CREATE_DEFAULTh5p_DATATYPE_ACCESS_DEFAULTh5p_DATATYPE_CREATE_DEFAULTh5p_GROUP_ACCESS_DEFAULTh5p_GROUP_CREATE_DEFAULTh5p_FILE_MOUNT_DEFAULTh5p_DATASET_XFER_DEFAULTh5p_DATASET_ACCESS_DEFAULTh5p_DATASET_CREATE_DEFAULTh5p_FILE_ACCESS_DEFAULTh5p_FILE_CREATE_DEFAULTh5p_LINK_ACCESSh5p_LINK_CREATEh5p_OBJECT_COPYh5p_ATTRIBUTE_CREATEh5p_STRING_CREATEh5p_DATATYPE_ACCESSh5p_DATATYPE_CREATEh5p_GROUP_ACCESSh5p_GROUP_CREATEh5p_FILE_MOUNTh5p_DATASET_XFERh5p_DATASET_ACCESSh5p_DATASET_CREATEh5p_FILE_ACCESSh5p_FILE_CREATEh5p_OBJECT_CREATEh5p_ROOT h5p_DEFAULTh5p_CRT_ORDER_TRACKEDh5p_CRT_ORDER_INDEXEDh5d_MPIO_NO_CHUNK_OPTIMIZATIONh5d_MPIO_LINK_CHUNKh5d_MPIO_MULTI_CHUNKh5d_MPIO_NO_COLLECTIVEh5d_MPIO_CHUNK_INDEPENDENTh5d_MPIO_CHUNK_COLLECTIVEh5d_MPIO_CHUNK_MIXEDh5d_MPIO_CONTIGUOUS_COLLECTIVEh5d_MPIO_COLLECTIVEh5d_MPIO_SET_INDEPENDENTh5d_MPIO_DATATYPE_CONVERSIONh5d_MPIO_DATA_TRANSFORMS(h5d_MPIO_NOT_SIMPLE_OR_SCALAR_DATASPACES*h5d_MPIO_NOT_CONTIGUOUS_OR_CHUNKED_DATASET h5d_MPIO_NO_COLLECTIVE_MAX_CAUSE h5p_NO_CLASS($fStorableH5D_mpio_no_collective_cause_t$$fShowH5D_mpio_no_collective_cause_t#$fStorableH5D_mpio_actual_io_mode_t$fShowH5D_mpio_actual_io_mode_t*$fStorableH5D_mpio_actual_chunk_opt_mode_t&$fShowH5D_mpio_actual_chunk_opt_mode_tp_H5Pset_fapl_splith5p_set_fapl_splitp_H5Pget_fapl_multih5p_get_fapl_multip_H5Pset_fapl_multih5p_set_fapl_multip_H5FD_multi_inith5fd_multi_init h5fd_MULTIH5A_operator1_tH5A_operator2_t H5A_info_th5a_info_t'corder_validh5a_info_t'corderh5a_info_t'cseth5a_info_t'data_size p_H5Aiterate1 h5a_iterate1p_H5Aget_num_attrsh5a_get_num_attrs p_H5Aopen_idx h5a_open_idxp_H5Aopen_name h5a_open_name p_H5Acreate1 h5a_create1p_H5Aexists_by_nameh5a_exists_by_name p_H5Aexists h5a_existsp_H5Adelete_by_idxh5a_delete_by_idxp_H5Adelete_by_nameh5a_delete_by_name p_H5Adelete h5a_deletep_H5Aiterate_by_nameh5a_iterate_by_name p_H5Aiterate2 h5a_iterate2p_H5Arename_by_nameh5a_rename_by_name p_H5Arename h5a_renamep_H5Aget_info_by_idxh5a_get_info_by_idxp_H5Aget_info_by_nameh5a_get_info_by_name p_H5Aget_info h5a_get_infop_H5Aget_storage_sizeh5a_get_storage_sizep_H5Aget_name_by_idxh5a_get_name_by_idx p_H5Aget_name h5a_get_namep_H5Aget_create_plisth5a_get_create_plist p_H5Aget_type h5a_get_typep_H5Aget_space h5a_get_space p_H5Aclose h5a_close p_H5Areadh5a_read p_H5Awrite h5a_writep_H5Aopen_by_idxh5a_open_by_idxp_H5Aopen_by_nameh5a_open_by_name p_H5Aopenh5a_openp_H5Acreate_by_nameh5a_create_by_name p_H5Acreate2 h5a_create2p'H5A_info_t'corder_validp'H5A_info_t'corderp'H5A_info_t'csetp'H5A_info_t'data_size$fStorableH5A_info_t$fEqH5A_info_t$fShowH5A_info_t hboolToBool boolToHBool test_htri_t HDFResultTypeisError$fHDFResultTypeH5T_norm_t$fHDFResultTypeH5I_type_t$fHDFResultTypeH5_iter_order_t$fHDFResultTypeH5_index_t$fHDFResultTypeH5T_str_t$fHDFResultTypeH5T_pad_t$fHDFResultTypeH5T_order_t$fHDFResultTypeHAddr_t$fHDFResultTypeHTri_t$fHDFResultTypeHErr_t$fHDFResultTypeHId_t IterOrder Increasing DecreasingNative IndexTypeByNameByCreationOrderIH_Info indexSizeheapSizeHAddrHSSizeHSizehSizehSSizehAddr indexTypeCode iterOrderCode $fShowHSize $fReadHSize $fShowHSSize $fReadHSSize $fShowHAddr $fReadHAddr $fEqIterOrder$fOrdIterOrder$fEnumIterOrder$fBoundedIterOrder$fReadIterOrder$fShowIterOrder $fEqIndexType$fOrdIndexType$fEnumIndexType$fBoundedIndexType$fReadIndexType$fShowIndexType $fEqIH_Info $fOrdIH_Info $fReadIH_Info $fShowIH_Info $fEqHAddr $fOrdHAddr $fEnumHAddr$fBoundedHAddr $fNumHAddr $fRealHAddr$fIntegralHAddr $fBitsHAddr$fStorableHAddr $fEqHSSize $fOrdHSSize $fEnumHSSize$fBoundedHSSize $fNumHSSize $fRealHSSize$fIntegralHSSize $fBitsHSSize$fStorableHSSize $fEqHSize $fOrdHSize $fEnumHSize$fBoundedHSize $fNumHSize $fRealHSize$fIntegralHSize $fBitsHSize$fStorableHSize ErrorStack HDF5Exception HDF5ErrorclassIdmajorNumminorNumlinefuncNamefileName description ErrorClassIDhdfError errorStack withErrorWhenwithErrorWhen_withErrorCheckwithErrorCheck_ htriToBoolregisterErrorClassunregisterErrorClasscreateMajorErrCodereleaseMajorErrCodecreateMinorErrCodereleaseMinorErrCodecreateErrorStackgetCurrentErrorStacksetCurrentErrorStackcloseErrorStack$fShowErrorClassID$fExceptionHDF5Exception$fEqErrorStack$fOrdErrorStack$fShowErrorStack$fHIdErrorStack$fFromHIdErrorStack$fHDFResultTypeErrorStack$fEqHDF5Exception$fOrdHDF5Exception$fShowHDF5Exception $fEqHDF5Error$fOrdHDF5Error$fShowHDF5Error$fEqErrorClassID$fOrdErrorClassID$fHIdErrorClassID$fFromHIdErrorClassID$fHDFResultTypeErrorClassID PropertyListstaticPlistClassPropertyListOrClassPropertyListIDPropertyListClassIDroot objectCreate fileCreate fileAccess datasetCreate datasetAccess datasetXfer fileMount groupCreate groupAccessdatatypeCreatedatatypeAccess stringCreateattributeCreate objectCopy linkCreate linkAccess getClassNamecastPropertyListcreatePropertyListcreatePropertyListWithClasspropertyExistsgetPropertySize getNPropsgetPropertyListClassgetPropertyListClassParentpropertyListsEqualpropertyListIsAclosePropertyListClassclosePropertyList($fPropertyListOrClassPropertyListClassID#$fPropertyListOrClassPropertyListID$fPropertyListPropertyListID$fEqPropertyListID$fHIdPropertyListID$fFromHIdPropertyListID$fHDFResultTypePropertyListID$fEqPropertyListClassID$fHIdPropertyListClassID$fFromHIdPropertyListClassID"$fHDFResultTypePropertyListClassIDSTRCPLStringCreationPropertyList"$fStringCreationPropertyListSTRCPL$fPropertyListSTRCPL $fEqSTRCPL $fHIdSTRCPL$fFromHIdSTRCPL$fHDFResultTypeSTRCPL$fPropertyListOrClassSTRCPLLCPLLinkCreationPropertyList$fLinkCreationPropertyListLCPL$fPropertyListLCPL$fEqLCPL $fHIdLCPL $fFromHIdLCPL$fHDFResultTypeLCPL$fPropertyListOrClassLCPL $fStringCreationPropertyListLCPLOCPYPLObjectCopyPropertyList$fObjectCopyPropertyListOCPYPL$fPropertyListOCPYPL $fEqOCPYPL $fHIdOCPYPL$fFromHIdOCPYPL$fHDFResultTypeOCPYPL$fPropertyListOrClassOCPYPLOCPLObjectCreationPropertyListsetAttrPhaseChangegetAttrPhaseChangesetAttrCreationOrdergetAttrCreationOrdersetObjTrackTimesgetObjTrackTimes modifyFilter setFilter getNFiltersallFiltersAvail removeFilter setDeflate setFletcher32 $fObjectCreationPropertyListOCPL$fPropertyListOCPL$fEqOCPL $fHIdOCPL $fFromHIdOCPL$fHDFResultTypeOCPL$fPropertyListOrClassOCPLDatatypeCreationPropertyListTCPL$fPropertyListTCPL"$fDatatypeCreationPropertyListTCPL$fEqTCPL $fHIdTCPL $fFromHIdTCPL$fHDFResultTypeTCPL$fPropertyListOrClassTCPL $fObjectCreationPropertyListTCPL CreationOrderTrackedIndexedGroupCreationPropertyListGCPLsetLocalHeapSizeHintgetLocalHeapSizeHintsetLinkPhaseChangegetLinkPhaseChangesetEstLinkInfogetEstLinkInfosetLinkCreationOrdergetLinkCreationOrder$fPropertyListGCPL$fGroupCreationPropertyListGCPL$fEqCreationOrder$fOrdCreationOrder$fBoundedCreationOrder$fEnumCreationOrder$fReadCreationOrder$fShowCreationOrder$fEqGCPL $fHIdGCPL $fFromHIdGCPL$fHDFResultTypeGCPL$fPropertyListOrClassGCPL $fObjectCreationPropertyListGCPLFileCreationPropertyListFCPL setUserblock getUserblocksetSizesgetSizessetSymKgetSymK setIstoreK getIstoreKsetSharedMesgNIndexesgetSharedMesgNIndexessetSharedMesgIndexgetSharedMesgIndexsetSharedMesgPhaseChangegetSharedMesgPhaseChange$fPropertyListFCPL$fFileCreationPropertyListFCPL$fEqFCPL $fHIdFCPL $fFromHIdFCPL$fHDFResultTypeFCPL$fPropertyListOrClassFCPL $fObjectCreationPropertyListFCPL$fGroupCreationPropertyListFCPLFMPLFileMountPropertyList$fFileMountPropertyListFMPL$fPropertyListFMPL$fEqFMPL $fHIdFMPL $fFromHIdFMPL$fHDFResultTypeFMPL$fPropertyListOrClassFMPLFAPLFileAccessPropertyList setAlignment getAlignmentsetFamilyOffsetgetFamilyOffsetsetFCloseDegreegetFCloseDegree$fFileAccessPropertyListFAPL$fPropertyListFAPL$fEqFAPL $fHIdFAPL $fFromHIdFAPL$fHDFResultTypeFAPL$fPropertyListOrClassFAPLLAPLLinkAccessPropertyList setNLinks getNLinkssetELinkPrefixgetELinkPrefix getELinkFAPL setELinkFAPLsetELinkAccFlagsgetELinkAccFlags$fLinkAccessPropertyListLAPL$fPropertyListLAPL$fEqLAPL $fHIdLAPL $fFromHIdLAPL$fHDFResultTypeLAPL$fPropertyListOrClassLAPLDatatypeAccessPropertyListTAPL$fPropertyListTAPL $fDatatypeAccessPropertyListTAPL$fEqTAPL $fHIdTAPL $fFromHIdTAPL$fHDFResultTypeTAPL$fPropertyListOrClassTAPL$fLinkAccessPropertyListTAPLGAPLGroupAccessPropertyList$fGroupAccessPropertyListGAPL$fPropertyListGAPL$fEqGAPL $fHIdGAPL $fFromHIdGAPL$fHDFResultTypeGAPL$fPropertyListOrClassGAPL$fLinkAccessPropertyListGAPLDatasetAccessPropertyListDAPL setChunkCache getChunkCache$fPropertyListDAPL$fDatasetAccessPropertyListDAPL$fEqDAPL $fHIdDAPL $fFromHIdDAPL$fHDFResultTypeDAPL$fPropertyListOrClassDAPL$fLinkAccessPropertyListDAPLDXPLDatasetTransferPropertyList!$fDatasetTransferPropertyListDXPL$fPropertyListDXPL$fEqDXPL $fHIdDXPL $fFromHIdDXPL$fHDFResultTypeDXPL$fPropertyListOrClassDXPL ObjectTypeFileObjGroupObj DatatypeObj DataspaceObj DatasetObjAttrObjObjectstaticObjectTypeObjectId objectTypeOf objectTypeOf1uncheckedCastObject castObject openObject getObjectType linkObject closeObject copyObjectdoesObjectExist$fObjectObjectId$fEqObjectType$fOrdObjectType$fReadObjectType$fShowObjectType$fEnumObjectType$fBoundedObjectType $fEqObjectId $fHIdObjectId$fFromHIdObjectId$fHDFResultTypeObjectId$fStorableObjectId NativeType nativeTypeId$fObjectDatatype$fNativeTypeWord64$fNativeTypeWord32$fNativeTypeWord16$fNativeTypeWord8$fNativeTypeInt64$fNativeTypeInt32$fNativeTypeInt16$fNativeTypeInt8$fNativeTypeHBool_t$fNativeTypeHErr_t$fNativeTypeHSSize$fNativeTypeHSize$fNativeTypeHAddr$fNativeTypeCDouble$fNativeTypeCFloat$fNativeTypeCULLong$fNativeTypeCLLong$fNativeTypeCULong$fNativeTypeCLong$fNativeTypeCUInt$fNativeTypeCInt$fNativeTypeCUShort$fNativeTypeCShort$fNativeTypeCUChar$fNativeTypeCSChar$fNativeTypeCChar $fEqDatatype $fHIdDatatype$fFromHIdDatatype$fHDFResultTypeDatatype$fNativeTypeFloat$fNativeTypeDouble$fNativeTypeInt StringPadNullTermNullPadSpacePadStringPad_Reserved3StringPad_Reserved4StringPad_Reserved5StringPad_Reserved6StringPad_Reserved7StringPad_Reserved8StringPad_Reserved9StringPad_Reserved10StringPad_Reserved11StringPad_Reserved12StringPad_Reserved13StringPad_Reserved14StringPad_Reserved15 NormalizationImpliedMSBSetPadZeroOne Background ByteOrderLEBEVAXMixedCSetASCII Reserved2 Reserved3 Reserved4 Reserved5 Reserved6 Reserved7 Reserved8 Reserved9 Reserved10 Reserved11 Reserved12 Reserved13 Reserved14 Reserved15UTF8ClassIntegerFloatTimeStringBitFieldOpaqueCompoundEnumVLenArray nativeTypeOf nativeTypeOf1 hdfTypeOf hdfTypeOf1 classCode classFromCodecSetCode cSetFromCode byteOrderCode byteOrderpadCode padFromCode normalization stringPadCodestringPadFromCode$fNativeTypeWord $fEqStringPad$fOrdStringPad$fEnumStringPad$fBoundedStringPad$fReadStringPad$fShowStringPad$fEqNormalization$fOrdNormalization$fEnumNormalization$fBoundedNormalization$fReadNormalization$fShowNormalization$fEqPad$fOrdPad $fEnumPad $fBoundedPad $fReadPad $fShowPad $fEqByteOrder$fOrdByteOrder$fBoundedByteOrder$fEnumByteOrder$fReadByteOrder$fShowByteOrder$fEqCSet $fOrdCSet $fReadCSet $fShowCSet $fEnumCSet $fBoundedCSet $fEqClass $fOrdClass $fEnumClass$fBoundedClass $fReadClass $fShowClassFillTimeAllocNeverIfSet AllocTimeDefaultAllocTimeEarlyLateIncrFillValueDefaultType UndefinedDefaultFillValue UserDefined ScaleType FloatDScale FloatEScaleIntScaleLayout CompactLayoutContiguousLayout ChunkedLayoutDatasetCreationPropertyListDCPL setLayout getLayoutsetChunkgetChunk setExternalgetExternalCount getExternalN getExternalsetSZip setShufflesetNBitsetScaleOffset setFillValue getFillValuefillValueDefined setAllocTime getAllocTime setFillTime getFillTime$fPropertyListDCPL!$fDatasetCreationPropertyListDCPL $fEqFillTime $fOrdFillTime$fBoundedFillTime$fEnumFillTime$fReadFillTime$fShowFillTime $fEqAllocTime$fOrdAllocTime$fBoundedAllocTime$fEnumAllocTime$fReadAllocTime$fShowAllocTime$fEqFillValueDefaultType$fOrdFillValueDefaultType$fBoundedFillValueDefaultType$fEnumFillValueDefaultType$fReadFillValueDefaultType$fShowFillValueDefaultType $fEqScaleType$fOrdScaleType$fBoundedScaleType$fEnumScaleType$fReadScaleType$fShowScaleType $fEqLayout $fOrdLayout$fBoundedLayout $fEnumLayout $fReadLayout $fShowLayout$fEqDCPL $fHIdDCPL $fFromHIdDCPL$fHDFResultTypeDCPL$fPropertyListOrClassDCPL $fObjectCreationPropertyListDCPL GroupInfogroupStorageType groupNLinksgroupMaxCOrder groupMountedGroupStorageTypeCompactStorage DenseStorageSymbolTableStorageUnknownStorageGroup createGroupcreateAnonymousGroup openGroup closeGroup getGroupInfogetGroupInfoByName $fObjectGroup$fLocationGroup $fEqGroupInfo$fOrdGroupInfo$fReadGroupInfo$fShowGroupInfo$fEqGroupStorageType$fOrdGroupStorageType$fReadGroupStorageType$fShowGroupStorageType$fEnumGroupStorageType$fBoundedGroupStorageType $fEqGroup $fHIdGroup$fFromHIdGroup$fHDFResultTypeGroupLinkInfolinkTypelinkCOrderValid linkCOrderlinkCSet linkValSizeLinkTypeExternalHardSoft OtherLinkTypecreateHardLinkcreateSoftLinkcreateExternalLinkgetLinkNameByIdx doesLinkExistmoveLinkcopyLink deleteLink getLinkInfo getSymLinkVal iterateLinksiterateLinksByName visitLinksvisitLinksByName $fEqLinkInfo $fOrdLinkInfo$fReadLinkInfo$fShowLinkInfo $fEqLinkType $fOrdLinkType$fReadLinkType$fShowLinkTypeFileInfo superExtSize sohmHdrSize sohmMsgsInfoScopeLocalGlobalObjTypeFilesDatasetsGroups DatatypesAttrsAllAccFlagsReadOnly ReadWriteTruncate FailIfExistsDebugCreateisHDF5 createFileopenFile reopenFile flushFile closeFile mountFile unmountFile getFileSizegetFileCreatePlistgetFileAccessPlist getFileInfo getFileIntent getFileNamegetFileObjCountgetOpenObjectsgetFileFreespace $fStorable[] $fStorable[]0 $fObjectFile$fLocationFile $fEqFileInfo $fOrdFileInfo$fReadFileInfo$fShowFileInfo$fEqFile $fHIdFile $fFromHIdFile$fHDFResultTypeFile$fEqCloseDegree$fOrdCloseDegree$fEnumCloseDegree$fBoundedCloseDegree$fReadCloseDegree$fShowCloseDegree $fEqScope $fOrdScope $fEnumScope$fBoundedScope $fReadScope $fShowScope $fEqObjType $fOrdObjType $fEnumObjType$fBoundedObjType $fReadObjType $fShowObjType $fEqAccFlags $fOrdAccFlags$fEnumAccFlags$fBoundedAccFlags$fReadAccFlags$fShowAccFlags createTypeID copyTypeID closeTypeID typeIDsEqual lockTypeID commitTypeID openTypeIDcommitTypeIDAnonymouslygetTypeCreationPListcommittedTypeID encodeTypeID decodeTypeIDinsertCompoundTypeMemberpackCompoundTypecreateVLenTypecreateArrayTypegetArrayTypeNDimsgetArrayTypeDimssetOpaqueTypeTaggetOpaqueTypeTag getSuperType getTypeClassdetectTypeClass getTypeSize getByteOrdergetTypePrecision getTypeOffset getTypePadgetFloatTypeFieldsgetFloatTypeEBiasgetFloatTypeNormalizationgetFloatTypeInternalPad getStringPadgetTypeNMembers getMemberNamegetMemberIndex setTypeSize setByteOrdersetTypePrecision setTypeOffset setTypePadsetFloatTypeFieldssetFloatTypeEBias SelectionTypePoints HyperslabsSelectionOperatorSetOrAndXorNotBNotAAppendPrependDataspaceClassScalarSimpleNullcreateDataspacecreateSimpleDataspacecreateExpandableDataspace copyDataspacecloseDataspaceencodeDataspacedecodeDataspacegetSimpleDataspaceExtentNPointsgetSimpleDataspaceExtentNDimsgetSimpleDataspaceExtentisSimpleDataspacegetDataspaceSelectionNPointsselectHyperslabselectElementsgetSimpleDataspaceExtentTypesetDataspaceExtentNonecopyDataspaceExtentdataspaceExtentsEqual selectAll selectNoneoffsetSimpleDataspaceSelectionselectionValidgetHyperslabSelectiongetHyperslabSelectionNBlocksgetHyperslabSelectionBlockListgetElementSelectiongetElementSelectionNPointsgetElementSelectionPointListgetSelectionBoundsgetSelectionType$fObjectDataspace$fEqSelectionType$fOrdSelectionType$fBoundedSelectionType$fEnumSelectionType$fReadSelectionType$fShowSelectionType$fEqSelectionOperator$fOrdSelectionOperator$fEnumSelectionOperator$fBoundedSelectionOperator$fReadSelectionOperator$fShowSelectionOperator$fEqDataspaceClass$fOrdDataspaceClass$fEnumDataspaceClass$fBoundedDataspaceClass$fReadDataspaceClass$fShowDataspaceClass $fEqDataspace$fHIdDataspace$fFromHIdDataspace$fHDFResultTypeDataspace SpaceStatus NotAllocated Allocated PartAllocated createDatasetcreateAnonymousDataset openDataset closeDatasetgetDatasetSpacegetDatasetSpaceStatusgetDatasetTypegetDatasetCreatePListgetDatasetAccessPListgetDatasetStorageSizegetDatasetOffset readDatasetreadDatasetInto writeDatasetsetDatasetExtent fillSelection$fObjectDataset$fEqSpaceStatus$fOrdSpaceStatus$fReadSpaceStatus$fShowSpaceStatus$fEnumSpaceStatus$fBoundedSpaceStatus $fEqDataset $fHIdDataset$fFromHIdDataset$fHDFResultTypeDataset Attribute openAttributegetAttributeTypecloseAttributegetAttributeSpace readAttributereadAttributeStringASCIIdoesAttributeExistgetAttributeInfoiterateAttributesiterateAttributesByName$fEqAttributeInfo$fOrdAttributeInfo$fReadAttributeInfo$fShowAttributeInfo $fEqAttribute$fHIdAttribute$fFromHIdAttribute$fHDFResultTypeAttributebytestring-0.11.5.2Data.ByteString.Internal.Type ByteStringbase Data.VersionForeign.C.TypesCSizeGHC.PtrnullPtrForeign.C.StringCStringCCharCUIntGHC.Baseidghc-prim GHC.ClassescompareCIntForeign.Storable alignmentGHC.Listfilter