gd_linterp_tablename(3)

NAME
gd_linterp_tablename — retrieve the pathname of a look-up table in a dirfile

SYNOPSIS
#include <getdata.h>

char *gd_linterp_tablename(DIRFILE *dirfile, const char *field_code);

DESCRIPTION
The gd_linterp_tablename() function retrieves the pathname of the look-up table (LUT) used by the LINTERP field specified by field_code in the dirfile specified by dirfile. If field_code contains a valid representation suffix, it will be ignored.

Note: this function returns a fully canonicalised, absolute path. The value of the table member in a gd_entry_t object (see gd_entry(3)) is the path which appears in the format specification on disk, which may be a path relative to the fragment directory.

RETURN VALUE
On success, gd_linterp_tablename() returns the full pathname of the LUT associated with the specified field in a buffer allocated by malloc(3). Once no longer needed, the returned pointer should be passed to free(3) to deallocate the associated memory. On error, NULL is returned and the dirfile error is set to a non-zero error value. Possible error values are:

GD_E_ALLOC
    The library was unable to allocate memory.

GD_E_BAD_CODE
    The field specified by field_code was not found.

GD_E_BAD_DIRFILE
    The supplied dirfile was invalid.

GD_E_BAD_FIELD_TYPE
    The field specified by field_code was not a LINTERP field.

The dirfile error may be retrieved by calling gd_error(3). A descriptive error string for the last error encountered can be obtained from a call to gd_error_string(3).

SEE ALSO
gd_entry(3), gd_error(3), gd_error_string(3), dirfile(5), dirfile-format(5), free(3), malloc(3)