Name: H5Sdecode
Signature:
  hid_t `H5Sdecode` (unsigned char *`buf`)
Purpose:
  Decode a binary object description of data space and return a new object handle.
Description:
  Given an object description of data space in binary in a buffer, `H5Sdecode` reconstructs the HDF5 data type object and returns a new object handle for it. The binary description of the object is encoded by `H5Sencode`. User is responsible for passing in the right buffer. The types of data space we address in this function are null, scalar, and simple space. For simple data space, the information of selection, for example, hyperslab selection, is also encoded and decoded. Complex data space has not been implemented in the library.
Parameters:

unsigned char *`buf` | IN: Buffer for the data space object to be decoded.

Returns:
  Returns an object ID(non-negative) if successful; otherwise returns a negative value.