hdf5-1.8.15: Haskell interface to the HDF5 scientific data storage library.

Safe Haskell | None
Language | Haskell2010

Bindings.HDF5.Raw.H5A

Contents

- Public function prototypes

Synopsis

- data H5A_info_t = H5A_info_t {
  - h5a_info_t'corder_valid :: HBool_t
  - h5a_info_t'corder :: H5O_msg_crt_idx_t
  - h5a_info_t'cset :: H5T_cset_t
  - h5a_info_t'data_size :: HSize_t
  }
- p'H5A_info_t'corder_valid :: Ptr H5A_info_t -> Ptr HBool_t
- p'H5A_info_t'corder :: Ptr H5A_info_t -> Ptr H5O_msg_crt_idx_t
- type H5A_operator2_t a = FunPtr (HId_t -> CString -> In H5A_info_t -> InOut a -> IO HErr_t)
- p'H5A_info_t'cset :: Ptr H5A_info_t -> Ptr H5T_cset_t
- p'H5A_info_t'data_size :: Ptr H5A_info_t -> Ptr HSize_t
- h5a_create2 :: HId_t -> CString -> HId_t -> HId_t -> HId_t -> HId_t -> IO HId_t
- p_H5Acreate2 :: FunPtr (HId_t -> CString -> HId_t -> HId_t -> HId_t -> HId_t -> IO HId_t)
- h5a_create_by_name :: HId_t -> CString -> CString -> HId_t -> HId_t -> HId_t -> HId_t -> HId_t -> IO HId_t
- p_H5Acreate_by_name :: FunPtr (HId_t -> CString -> CString -> HId_t -> HId_t -> HId_t -> HId_t -> HId_t -> IO HId_t)
- h5a_open :: HId_t -> CString -> HId_t -> IO HId_t
- p_H5Aopen :: FunPtr (HId_t -> CString -> HId_t -> IO HId_t)
- h5a_open_by_name :: HId_t -> CString -> CString -> HId_t -> HId_t -> IO HId_t
- p_H5Aopen_by_name :: FunPtr (HId_t -> CString -> CString -> HId_t -> HId_t -> IO HId_t)
- h5a_open_by_idx :: HId_t -> CString -> H5_index_t -> H5_iter_order_t -> HSize_t -> HId_t -> HId_t -> IO HId_t
- p_H5Aopen_by_idx :: FunPtr (HId_t -> CString -> H5_index_t -> H5_iter_order_t -> HSize_t -> HId_t -> HId_t -> IO HId_t)
- h5a_write :: HId_t -> HId_t -> InArray a -> IO HErr_t
- p_H5Awrite :: FunPtr (HId_t -> HId_t -> InArray a -> IO HErr_t)
- h5a_read :: HId_t -> HId_t -> OutArray a -> IO HErr_t
- p_H5Aread :: FunPtr (HId_t -> HId_t -> OutArray a -> IO HErr_t)
- h5a_close :: HId_t -> IO HErr_t
- p_H5Aclose :: FunPtr (HId_t -> IO HErr_t)
- h5a_get_space :: HId_t -> IO HId_t
- p_H5Aget_space :: FunPtr (HId_t -> IO HId_t)
- h5a_get_type :: HId_t -> IO HId_t
- p_H5Aget_type :: FunPtr (HId_t -> IO HId_t)
- h5a_get_create_plist :: HId_t -> IO HId_t
- p_H5Aget_create_plist :: FunPtr (HId_t -> IO HId_t)
- h5a_get_name :: HId_t -> CSize -> OutArray CChar -> IO CSSize
- p_H5Aget_name :: FunPtr (HId_t -> CSize -> OutArray CChar -> IO CSSize)
- h5a_get_name_by_idx :: HId_t -> CString -> H5_index_t -> H5_iter_order_t -> HSize_t -> OutArray CChar -> CSize -> HId_t -> IO CSSize
- p_H5Aget_name_by_idx :: FunPtr (HId_t -> CString -> H5_index_t -> H5_iter_order_t -> HSize_t -> OutArray CChar -> CSize -> HId_t -> IO CSSize)
- h5a_get_storage_size :: HId_t -> IO HSize_t
- p_H5Aget_storage_size :: FunPtr (HId_t -> IO HSize_t)
- h5a_get_info :: HId_t -> Out H5A_info_t -> IO HErr_t
- p_H5Aget_info :: FunPtr (HId_t -> Out H5A_info_t -> IO HErr_t)
- h5a_get_info_by_name :: HId_t -> CString -> CString -> Out H5A_info_t -> HId_t -> IO HErr_t
- p_H5Aget_info_by_name :: FunPtr (HId_t -> CString -> CString -> Out H5A_info_t -> HId_t -> IO HErr_t)
- h5a_get_info_by_idx :: HId_t -> CString -> H5_index_t -> H5_iter_order_t -> HSize_t -> Out H5A_info_t -> HId_t -> IO HErr_t
- p_H5Aget_info_by_idx :: FunPtr (HId_t -> CString -> H5_index_t -> H5_iter_order_t -> HSize_t -> Out H5A_info_t -> HId_t -> IO HErr_t)
- h5a_rename :: HId_t -> CString -> CString -> IO HErr_t
- p_H5Arename :: FunPtr (HId_t -> CString -> CString -> IO HErr_t)
- h5a_rename_by_name :: HId_t -> CString -> CString -> CString -> HId_t -> IO HErr_t
- p_H5Arename_by_name :: FunPtr (HId_t -> CString -> CString -> CString -> HId_t -> IO HErr_t)
- h5a_iterate2 :: HId_t -> H5_index_t -> H5_iter_order_t -> InOut HSize_t -> H5A_operator2_t a -> InOut a -> IO HErr_t
- p_H5Aiterate2 :: FunPtr (HId_t -> H5_index_t -> H5_iter_order_t -> InOut HSize_t -> H5A_operator2_t a -> InOut a -> IO HErr_t)
- h5a_iterate_by_name :: HId_t -> CString -> H5_index_t -> H5_iter_order_t -> InOut HSize_t -> H5A_operator2_t a -> InOut a -> HId_t -> IO HErr_t
- p_H5Aiterate_by_name :: FunPtr (HId_t -> CString -> H5_index_t -> H5_iter_order_t -> InOut HSize_t -> H5A_operator2_t a -> InOut a -> HId_t -> IO HErr_t)
- h5a_delete :: HId_t -> CString -> IO HErr_t
- p_H5Adelete :: FunPtr (HId_t -> CString -> IO HErr_t)
- h5a_delete_by_name :: HId_t -> CString -> CString -> HId_t -> IO HErr_t
- p_H5Adelete_by_name :: FunPtr (HId_t -> CString -> CString -> HId_t -> IO HErr_t)
- h5a_delete_by_idx :: HId_t -> CString -> H5_index_t -> H5_iter_order_t -> HSize_t -> HId_t -> IO HErr_t
- p_H5Adelete_by_idx :: FunPtr (HId_t -> CString -> H5_index_t -> H5_iter_order_t -> HSize_t -> HId_t -> IO HErr_t)
- h5a_exists :: HId_t -> CString -> IO HTri_t
- p_H5Aexists :: FunPtr (HId_t -> CString -> IO HTri_t)
- h5a_exists_by_name :: HId_t -> CString -> CString -> HId_t -> IO HTri_t
- p_H5Aexists_by_name :: FunPtr (HId_t -> CString -> CString -> HId_t -> IO HTri_t)
- type H5A_operator1_t a = FunPtr (HId_t -> CString -> InOut a -> IO HErr_t)
- h5a_create1 :: HId_t -> CString -> HId_t -> HId_t -> HId_t -> IO HId_t
- p_H5Acreate1 :: FunPtr (HId_t -> CString -> HId_t -> HId_t -> HId_t -> IO HId_t)
- h5a_open_name :: HId_t -> CString -> IO HId_t
- p_H5Aopen_name :: FunPtr (HId_t -> CString -> IO HId_t)
- h5a_open_idx :: HId_t -> CUInt -> IO HId_t
- p_H5Aopen_idx :: FunPtr (HId_t -> CUInt -> IO HId_t)
- h5a_get_num_attrs :: HId_t -> IO CInt
- p_H5Aget_num_attrs :: FunPtr (HId_t -> IO CInt)
- h5a_iterate1 :: HId_t -> InOut CUInt -> H5A_operator1_t a -> InOut a -> IO HErr_t
- p_H5Aiterate1 :: FunPtr (HId_t -> InOut CUInt -> H5A_operator1_t a -> InOut a -> IO HErr_t)

# Documentation

data H5A_info_t Source #

Information struct for attribute (for `h5a_get_info`/`h5a_get_info_by_idx`)

Indicate if creation order is valid

Creation order

Character set of attribute name

Size of raw data

Constructors

H5A_info_t |

Fields

- h5a_info_t'corder_valid :: HBool_t
- h5a_info_t'corder :: H5O_msg_crt_idx_t
- h5a_info_t'cset :: H5T_cset_t
- h5a_info_t'data_size :: HSize_t

#### Instances

Instances details

Storable H5A_info_t Source #

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`
  ID of creation property list (currently not used)
`aapl_id :: HId_t`
  Attribute access property list

Returns non-negative on success / negative on failure

This 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 `h5a_close` 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);

Instance details

Defined in Bindings.HDF5.Raw.H5A

Methods

sizeOf :: H5A_info_t -> Int Source #

alignment :: H5A_info_t -> Int Source #

peekElemOff :: Ptr H5A_info_t -> Int -> IO H5A_info_t Source #

pokeElemOff :: Ptr H5A_info_t -> Int -> H5A_info_t -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO H5A_info_t Source #

pokeByteOff :: Ptr b -> Int -> H5A_info_t -> IO () Source #

peek :: Ptr H5A_info_t -> IO H5A_info_t Source #

poke :: Ptr H5A_info_t -> H5A_info_t -> IO () Source #

Show H5A_info_t Source # |
Instance details Defined in Bindings.HDF5.Raw.H5A Methods showsPrec :: Int -> H5A_info_t -> ShowS Source # show :: H5A_info_t -> String Source # showList :: [H5A_info_t] -> ShowS Source #
Eq H5A_info_t Source # |
Instance details Defined in Bindings.HDF5.Raw.H5A Methods (==) :: H5A_info_t -> H5A_info_t -> Bool Source # (/=) :: H5A_info_t -> H5A_info_t -> Bool Source #

p'H5A_info_t'corder_valid :: Ptr H5A_info_t -> Ptr HBool_t Source #

Typedef for `h5a_iterate2` callbacks.

     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*);

p'H5A_info_t'corder :: Ptr H5A_info_t -> Ptr H5O_msg_crt_idx_t Source #

type H5A_operator2_t a = FunPtr (HId_t -> CString -> In H5A_info_t -> InOut a -> IO HErr_t) Source #

p'H5A_info_t'cset :: Ptr H5A_info_t -> Ptr H5T_cset_t Source #

# Public function prototypes

p'H5A_info_t'data_size :: Ptr H5A_info_t -> Ptr HSize_t Source #

h5a_create2 :: HId_t -> CString -> HId_t -> HId_t -> HId_t -> HId_t -> IO HId_t Source #

p_H5Acreate2 :: FunPtr (HId_t -> CString -> HId_t -> HId_t -> HId_t -> HId_t -> IO HId_t) Source #

h5a_create_by_name :: HId_t -> CString -> CString -> HId_t -> HId_t -> HId_t -> HId_t -> HId_t -> IO HId_t Source #

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`
  ID of creation property list (currently not used)
`aapl_id :: HId_t`
  Attribute access property list
`lapl_id :: HId_t`
  Link access property list

Returns non-negative on success / negative on failure

This 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);

p_H5Acreate_by_name :: FunPtr (HId_t -> CString -> CString -> HId_t -> HId_t -> HId_t -> HId_t -> HId_t -> IO HId_t) Source #

h5a_open :: HId_t -> CString -> HId_t -> IO HId_t Source #

Opens 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 list

Returns ID of attribute on success, negative on failure

This 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 `h5a_close` or resource leaks will develop.

    hid_t   H5Aopen(hid_t obj_id, const char *attr_name, hid_t aapl_id);

p_H5Aopen :: FunPtr (HId_t -> CString -> HId_t -> IO HId_t) Source #

h5a_open_by_name :: HId_t -> CString -> CString -> HId_t -> HId_t -> IO HId_t Source #

Opens 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 list

Returns ID of attribute on success, negative on failure

This 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 `h5a_close` 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);

p_H5Aopen_by_name :: FunPtr (HId_t -> CString -> CString -> HId_t -> HId_t -> IO HId_t) Source #

h5a_open_by_idx :: HId_t -> CString -> H5_index_t -> H5_iter_order_t -> HSize_t -> HId_t -> HId_t -> IO HId_t Source #

p_H5Aopen_by_idx :: FunPtr (HId_t -> CString -> H5_index_t -> H5_iter_order_t -> HSize_t -> HId_t -> HId_t -> IO HId_t) Source #

h5a_write :: HId_t -> HId_t -> InArray a -> IO HErr_t Source #

Write 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 write

Returns non-negative on success / negative on failure

This function writes a complete attribute to disk.

    herr_t  H5Awrite(hid_t attr_id, hid_t type_id, const void *buf);

p_H5Awrite :: FunPtr (HId_t -> HId_t -> InArray a -> IO HErr_t) Source #

h5a_read :: HId_t -> HId_t -> OutArray a -> IO HErr_t Source #

Read 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 read

Returns non-negative on success / negative on failure

This function reads a complete attribute from disk.

    herr_t  H5Aread(hid_t attr_id, hid_t type_id, void *buf);

p_H5Aread :: FunPtr (HId_t -> HId_t -> OutArray a -> IO HErr_t) Source #

h5a_close :: HId_t -> IO HErr_t Source #

Close an attribute ID

Parameters:

`attr_id :: HId_t`
  Attribute to release access to

Returns non-negative on success / negative on failure

This function releases an attribute from use. Further use of the attribute ID will result in undefined behavior.

    herr_t  H5Aclose(hid_t attr_id);

p_H5Aclose :: FunPtr (HId_t -> IO HErr_t) Source #

h5a_get_space :: HId_t -> IO HId_t Source #

Gets a copy of the dataspace for an attribute

Parameters:

`attr_id :: HId_t`
  Attribute to get dataspace of

Returns a dataspace ID on success, negative on failure

This 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);

p_H5Aget_space :: FunPtr (HId_t -> IO HId_t) Source #

h5a_get_type :: HId_t -> IO HId_t Source #

Gets a copy of the datatype for an attribute

Parameters:

`attr_id :: HId_t`
  Attribute to get datatype of

Returns a datatype ID on success, negative on failure

This function retrieves a copy of the datatype for an attribute. The datatype ID returned from this function must be released with `h5t_close` or resource leaks will develop.

    hid_t   H5Aget_type(hid_t attr_id);

p_H5Aget_type :: FunPtr (HId_t -> IO HId_t) Source #

h5a_get_create_plist :: HId_t -> IO HId_t Source #

Gets a copy of the creation property list for an attribute

Parameters:

`attr_id :: HId_t`
  Attribute to get name of

This 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);

p_H5Aget_create_plist :: FunPtr (HId_t -> IO HId_t) Source #

h5a_get_name :: HId_t -> CSize -> OutArray CChar -> IO CSSize Source #

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 in

This 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);

p_H5Aget_name :: FunPtr (HId_t -> CSize -> OutArray CChar -> IO CSSize) Source #

h5a_get_name_by_idx :: HId_t -> CString -> H5_index_t -> H5_iter_order_t -> HSize_t -> OutArray CChar -> CSize -> HId_t -> IO CSSize Source #

Retrieve name of an attribute, according to the order within an index.

Same pattern of behavior as `h5i_get_name`

Returns 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);

p_H5Aget_name_by_idx :: FunPtr (HId_t -> CString -> H5_index_t -> H5_iter_order_t -> HSize_t -> OutArray CChar -> CSize -> HId_t -> IO CSSize) Source #

h5a_get_storage_size :: HId_t -> IO HSize_t Source #

Returns 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);

p_H5Aget_storage_size :: FunPtr (HId_t -> IO HSize_t) Source #

h5a_get_info :: HId_t -> Out H5A_info_t -> IO HErr_t Source #

Retrieve information about an attribute.

Returns non-negative on success / negative on failure

    herr_t  H5Aget_info(hid_t attr_id, H5A_info_t *ainfo /*out*/);

p_H5Aget_info :: FunPtr (HId_t -> Out H5A_info_t -> IO HErr_t) Source #

h5a_get_info_by_name :: HId_t -> CString -> CString -> Out H5A_info_t -> HId_t -> IO HErr_t Source #

Retrieve information about an attribute by name.

Returns non-negative on success / negative on failure

    herr_t  H5Aget_info_by_name(hid_t loc_id, const char *obj_name,
        const char *attr_name, H5A_info_t *ainfo /*out*/, hid_t lapl_id);

p_H5Aget_info_by_name :: FunPtr (HId_t -> CString -> CString -> Out H5A_info_t -> HId_t -> IO HErr_t) Source #

h5a_get_info_by_idx :: HId_t -> CString -> H5_index_t -> H5_iter_order_t -> HSize_t -> Out H5A_info_t -> HId_t -> IO HErr_t Source #

Retrieve information about an attribute, according to the order within an index.

Returns non-negative on success / negative on failure

    herr_t  H5Aget_info_by_idx(hid_t loc_id, const char *obj_name,
        H5_index_t idx_type, H5_iter_order_t order, hsize_t n,
        H5A_info_t *ainfo /*out*/, hid_t lapl_id);

p_H5Aget_info_by_idx :: FunPtr (HId_t -> CString -> H5_index_t -> H5_iter_order_t -> HSize_t -> Out H5A_info_t -> HId_t -> IO HErr_t) Source #

h5a_rename :: HId_t -> CString -> CString -> IO HErr_t Source #

Rename an attribute

Returns non-negative on success / negative on failure

    herr_t  H5Arename(hid_t loc_id, const char *old_name, const char *new_name);

p_H5Arename :: FunPtr (HId_t -> CString -> CString -> IO HErr_t) Source #

h5a_rename_by_name :: HId_t -> CString -> CString -> CString -> HId_t -> IO HErr_t Source #

Rename an attribute

Returns non-negative on success / negative on failure

    herr_t  H5Arename_by_name(hid_t loc_id, const char *obj_name,
        const char *old_attr_name, const char *new_attr_name, hid_t lapl_id);

p_H5Arename_by_name :: FunPtr (HId_t -> CString -> CString -> CString -> HId_t -> IO HErr_t) Source #

h5a_iterate2 :: HId_t -> H5_index_t -> H5_iter_order_t -> InOut HSize_t -> H5A_operator2_t a -> InOut a -> IO HErr_t Source #

Calls a user's function for each attribute on an object.

Parameters:

`loc_id :: HId_t`
  Base location for object
`idx_type :: H5_index_t`
  Type of index to use
`order :: H5_iter_order_t`
  Order to iterate over index
`idx :: InOut HSize_t`
  Starting (IN) & Ending (OUT) attribute in index & order
`op :: H5A_operator2_t a`
  User's function to pass each attribute to
`op_data :: InOut a`
  User's data to pass through to iterator operator function

Returns a negative value if an error occurs, the return value of the last operator if it was non-zero (which can be a negative value), or zero if all attributes were processed.

This function interates over the attributes of dataset or group specified with `loc_id` & `obj_name`. For each attribute of the object, the `op_data` and some additional information (specified below) are passed to the `op` function. The iteration begins with the '*idx' object in the group and the next attribute to be processed by the operator is returned in '*idx'.

The operation receives the ID for the group or dataset being iterated over (`loc_id`), the name of the current attribute about the object (`attr_name`), the attribute's "info" struct (`ainfo`) and the pointer to the operator data passed in to H5Aiterate2 (`op_data`). The return values from an operator are:

- Zero causes the iterator to continue, returning zero when all attributes 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 attribute.
- Negative causes the iterator to immediately return that value, indicating failure. The iterator can be restarted at the next attribute.

    herr_t  H5Aiterate2(hid_t loc_id, H5_index_t idx_type,
        H5_iter_order_t order, hsize_t *idx, H5A_operator2_t op, void *op_data);

p_H5Aiterate2 :: FunPtr (HId_t -> H5_index_t -> H5_iter_order_t -> InOut HSize_t -> H5A_operator2_t a -> InOut a -> IO HErr_t) Source #

h5a_iterate_by_name :: HId_t -> CString -> H5_index_t -> H5_iter_order_t -> InOut HSize_t -> H5A_operator2_t a -> InOut a -> HId_t -> IO HErr_t Source #

Calls a user's function for each attribute on an object

Parameters:

`loc_id :: HId_t`
  Base location for object
`obj_name :: CString`
  Name of object relative to location
`idx_type :: H5_index_t`
  Type of index to use
`order :: H5_iter_order_t`
  Order to iterate over index
`idx :: InOut HSize_t`
  Starting (IN) & Ending (OUT) attribute in index & order
`op :: H5A_operator2_t a`
  H5A_operator2_t IN: User's function to pass each attribute to
`op_data :: InOut a`
  User's data to pass through to iterator operator function
`lapl_id :: HId_t`
  Link access property list

Returns a negative value if an error occurs, the return value of the last operator if it was non-zero (which can be a negative value), or zero if all attributes were processed.

This function interates over the attributes of dataset or group specified with `loc_id` & `obj_name`. For each attribute of the object, the `op_data` and some additional information (specified below) are passed to the `op` function. The iteration begins with the '*idx' object in the group and the next attribute to be processed by the operator is returned in '*idx'.

The operation receives the ID for the group or dataset being iterated over (`loc_id`), the name of the current attribute about the object (`attr_name`), the attribute's "info" struct (`ainfo`) and the pointer to the operator data passed in to H5Aiterate_by_name (`op_data`). The return values from an operator are:

- Zero causes the iterator to continue, returning zero when all attributes 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 attribute.
- Negative causes the iterator to immediately return that value, indicating failure. The iterator can be restarted at the next attribute.

    herr_t  H5Aiterate_by_name(hid_t loc_id, const char *obj_name, H5_index_t idx_type,
        H5_iter_order_t order, hsize_t *idx, H5A_operator2_t op, void *op_data,
        hid_t lapd_id);

p_H5Aiterate_by_name :: FunPtr (HId_t -> CString -> H5_index_t -> H5_iter_order_t -> InOut HSize_t -> H5A_operator2_t a -> InOut a -> HId_t -> IO HErr_t) Source #

h5a_delete :: HId_t -> CString -> IO HErr_t Source #

Deletes an attribute from a location

Parameters:

`loc_id :: HId_t`
  Object (dataset or group) to have attribute deleted from
`name :: CString`
  Name of attribute to delete

Returns non-negative on success / negative on failure

This function removes the named attribute from a dataset or group.

    herr_t  H5Adelete(hid_t loc_id, const char *name);

p_H5Adelete :: FunPtr (HId_t -> CString -> IO HErr_t) Source #

h5a_delete_by_name :: HId_t -> CString -> CString -> HId_t -> IO HErr_t Source #

Deletes an attribute from a location

Parameters:

`loc_id :: HId_t`
  Object (dataset or group) to have attribute deleted from
`obj_name :: CString`
  Name of object relative to location
`attr_name :: CString`
  Name of attribute to delete
`lapl_id :: HId_t`
  Link access property list

Returns non-negative on success / negative on failure

This function removes the named attribute from a dataset or group.

    herr_t  H5Adelete_by_name(hid_t loc_id, const char *obj_name,
        const char *attr_name, hid_t lapl_id);

p_H5Adelete_by_name :: FunPtr (HId_t -> CString -> CString -> HId_t -> IO HErr_t) Source #

h5a_delete_by_idx :: HId_t -> CString -> H5_index_t -> H5_iter_order_t -> HSize_t -> HId_t -> IO HErr_t Source #

Deletes an attribute from a location, according to the order within an index

Parameters:

`loc_id :: HId_t`
  Base location for object
`obj_name :: CString`
  Name of object relative to location
`idx_type :: H5_index_t`
  Type of index to use
`order :: H5_iter_order_t`
  Order to iterate over index
`n :: HSize_t`
  Offset within index
`lapl_id :: HId_t`
  Link access property list

Returns non-negative on success / negative on failure

This function removes an attribute from an object, using the `idx_type` index to delete the `n`th attribute in `order` direction in the index. The object is specified relative to the `loc_id` with the `obj_name` path. To remove an attribute on the object specified by `loc_id`, pass in `"."` for `obj_name`. The link access property list, `lapl_id`, controls aspects of the group hierarchy traversal when using the `obj_name` to locate the final object to operate on.

    herr_t  H5Adelete_by_idx(hid_t loc_id, const char *obj_name,
        H5_index_t idx_type, H5_iter_order_t order, hsize_t n, hid_t lapl_id);

p_H5Adelete_by_idx :: FunPtr (HId_t -> CString -> H5_index_t -> H5_iter_order_t -> HSize_t -> HId_t -> IO HErr_t) Source #

h5a_exists :: HId_t -> CString -> IO HTri_t Source #

Checks if an attribute with a given name exists on an opened object.

    htri_t H5Aexists(hid_t obj_id, const char *attr_name);

p_H5Aexists :: FunPtr (HId_t -> CString -> IO HTri_t) Source #

h5a_exists_by_name :: HId_t -> CString -> CString -> HId_t -> IO HTri_t Source #

Checks if an attribute with a given name exists on an object.

    htri_t H5Aexists_by_name(hid_t obj_id, const char *obj_name,
        const char *attr_name, hid_t lapl_id);

p_H5Aexists_by_name :: FunPtr (HId_t -> CString -> CString -> HId_t -> IO HTri_t) Source #

type H5A_operator1_t a = FunPtr (HId_t -> CString -> InOut a -> IO HErr_t) Source #

Typedef for `h5a_iterate1` callbacks

    typedef herr_t (*H5A_operator1_t)(hid_t location_id/*in*/,
        const char *attr_name/*in*/, void *operator_data/*in,out*/);

h5a_create1 :: HId_t -> CString -> HId_t -> HId_t -> HId_t -> IO HId_t Source #

Creates an attribute on an object

Parameters:

`loc_id :: HId_t`
  Object (dataset or group) to be attached to
`name :: CString`
  Name of attribute to create
`type_id :: HId_t`
  ID of datatype for attribute
`space_id :: HId_t`
  ID of dataspace for attribute
`plist_id :: HId_t`
  ID of creation property list (currently not used)

Returns non-negative on success / negative on failure

This function creates an attribute which is attached to the object specified with `location_id`. The name specified with `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 attribute ID returned from this function must be released with `h5a_close` or resource leaks will develop.

Note: Deprecated in favor of `h5a_create2`

    hid_t   H5Acreate1(hid_t loc_id, const char *name, hid_t type_id,
        hid_t space_id, hid_t acpl_id);

p_H5Acreate1 :: FunPtr (HId_t -> CString -> HId_t -> HId_t -> HId_t -> IO HId_t) Source #

h5a_open_name :: HId_t -> CString -> IO HId_t Source #

Opens an attribute for an object by looking up the attribute name

Parameters:

`loc_id :: HId_t`
  Object (dataset or group) to be attached to
`name :: CString`
  Name of attribute to locate and open

Returns ID of attribute on success, negative on failure

This 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 H5Aclose or resource leaks will develop.

The location object may be either a group or a dataset, both of which may have any sort of attribute.

Note: Deprecated in favor of `h5a_open`

    hid_t   H5Aopen_name(hid_t loc_id, const char *name);

p_H5Aopen_name :: FunPtr (HId_t -> CString -> IO HId_t) Source #

h5a_open_idx :: HId_t -> CUInt -> IO HId_t Source #

Opens the n'th attribute for an object

Parameters:

`loc_id :: HId_t`
  Object that attribute is attached to
`idx :: CUInt`
  Index (0-based) attribute to open

Returns ID of attribute on success, negative on failure

This function opens an existing attribute for access. The attribute index specified is used to look up the corresponding attribute for the object. The attribute ID returned from this function must be released with `h5a_close` or resource leaks will develop.

The location object may be either a group or a dataset, both of which may have any sort of attribute.

Note: Deprecated in favor of `h5a_open_by_idx`

    hid_t   H5Aopen_idx(hid_t loc_id, unsigned idx);

p_H5Aopen_idx :: FunPtr (HId_t -> CUInt -> IO HId_t) Source #

h5a_get_num_attrs :: HId_t -> IO CInt Source #

Determines the number of attributes attached to an object

Parameters:

`loc_id :: HId_t`
  Object (dataset or group) to be queried

Returns number of attributes on success, negative on failure

This function returns the number of attributes attached to a dataset or group, `location_id`.

Note: Deprecated in favor of `h5o_get_info`

    int H5Aget_num_attrs(hid_t loc_id);

p_H5Aget_num_attrs :: FunPtr (HId_t -> IO CInt) Source #

h5a_iterate1 :: HId_t -> InOut CUInt -> H5A_operator1_t a -> InOut a -> IO HErr_t Source #

Calls a user's function for each attribute on an object

Parameters:

`loc_id :: HId_t`
  Object (dataset or group) to be iterated over
`attr_num :: InOut CUInt`
  Starting (IN) & Ending (OUT) attribute number
`op :: H5A_operator1_t a`
  User's function to pass each attribute to
`op_data :: InOut a`
  User's data to pass through to iterator operator function

Returns a negative value if something is wrong, the return value of the last operator if it was non-zero, or zero if all attributes were processed.

This function interates over the attributes of dataset or group specified with `loc_id`. For each attribute of the object, the `op_data` and some additional information (specified below) are passed to the `op` function. The iteration begins with the `attr_num` object in the group and the next attribute to be processed by the operator is returned in `attr_num`.

The operation receives the ID for the group or dataset being iterated over (`loc_id`), the name of the current attribute about the object (`attr_name`) and the pointer to the operator data passed in to `h5a_iterate1` (`op_data`). The return values from an operator are:

- Zero causes the iterator to continue, returning zero when all attributes 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 attribute.
- Negative causes the iterator to immediately return that value, indicating failure. The iterator can be restarted at the next attribute.

Note: Deprecated in favor of `h5a_iterate2`

    herr_t  H5Aiterate1(hid_t loc_id, unsigned *attr_num, H5A_operator1_t op,
        void *op_data);

p_H5Aiterate1 :: FunPtr (HId_t -> InOut CUInt -> H5A_operator1_t a -> InOut a -> IO HErr_t) Source #