hdf5-1.8.14: Haskell interface to the HDF5 scientific data storage library.
Safe HaskellSafe-Inferred
LanguageHaskell2010

Bindings.HDF5.Raw.H5A

Synopsis

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

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

alignment :: H5A_info_t -> Int

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

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

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

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

peek :: Ptr H5A_info_t -> IO H5A_info_t

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

Show H5A_info_t Source # 
Instance details

Defined in Bindings.HDF5.Raw.H5A

Methods

showsPrec :: Int -> H5A_info_t -> ShowS

show :: H5A_info_t -> String

showList :: [H5A_info_t] -> ShowS

Eq H5A_info_t Source # 
Instance details

Defined in Bindings.HDF5.Raw.H5A

Methods

(==) :: H5A_info_t -> H5A_info_t -> Bool

(/=) :: H5A_info_t -> H5A_info_t -> Bool

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

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

Public function prototypes

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 #

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

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

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

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

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

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

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 nth 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 #