Provided by: libgetdata-doc_0.10.0-3build2_all 

NAME
gd_native_type — returns the native data type of a field in a Dirfile
SYNOPSIS
#include <getdata.h>
gd_type_t gd_native_type(DIRFILE *dirfile, const char *field_code);
DESCRIPTION
The gd_native_type() function queries a dirfile(5) database specified by dirfile and determines the na‐
tive type of data specified by field_code, which may contain a representation suffix.
The dirfile argument must point to a valid DIRFILE object previously created by a call to gd_open(3).
The native data type of a field of a given entry type is calculated as:
BIT
INDEX GD_UINT64;
CONST
CARRAY the data type of the field;
DIVIDE
MULTIPLY
if either input field is complex valued: GD_COMPLEX128, otherwise: GD_FLOAT64;
INDIR the data type of the input CARRAY;
LINCOM
POLYNOM if any of the scalar parameters is complex valued, or if the native data type of any of the input
fields is complex valued: GD_COMPLEX128, otherwise: GD_FLOAT64;
LINTERP if the look-up table is complex valued: GD_COMPLEX128, otherwise: GD_FLOAT64;
MPLEX
WINDOW the native data type of the data field;
PHASE the native data type of the input field;
RAW the data type of the raw data on disk;
RECIP if the dividend or the native data type of the input field is complex valued: GD_COMPLEX128, oth‐
erwise: GD_FLOAT64;
SARRAY
SINDIR
STRING GD_STRING;
SBIT GD_INT64.
Furthermore, if the supplied field_code contains a representation suffix, and the native data type of the
field is complex valued, the native type returned will be the corresponding real valued type.
RETURN VALUE
Upon successful completion, gd_native_type() returns the native data type of the field code specified.
This will equal one of the symbols:
GD_UINT8, GD_INT8, GD_UINT16, GD_INT16, GD_UINT32, GD_INT32, GD_FLOAT32, GD_FLOAT64, GD_COMPLEX64,
GD_COMPLEX128, GD_STRING.
The meanings of these symbols are explained in the gd_getdata(3) manual page.
On error, this function returns GD_UNKNOWN and stores a negative-valued error code in the DIRFILE object
which may be retrieved by a subsequent call to gd_error(3). Possible error codes are:
GD_E_ALLOC
The library was unable to allocate memory.
GD_E_BAD_CODE
The field specified by field_code or one of the fields it uses as input was not found in the
database.
GD_E_BAD_DIRFILE
The supplied dirfile was invalid.
GD_E_DIMENSION
A scalar field was found where a vector field was expected.
GD_E_IO An error occurred while trying to read a LINTERP table from disk.
GD_E_LUT
A LINTERP table was malformed.
GD_E_RECURSE_LEVEL
Too many levels of recursion were encountered while trying to resolve field_code. This usually
indicates a circular dependency in field specification in the dirfile.
A descriptive error string for the error may be obtained by calling gd_error_string(3).
HISTORY
The get_native_type() function appeared in GetData-0.6.0. The return type for STRING fields was GD_NULL.
In GetData-0.7.0, this function was renamed to gd_native_type().
Before GetData-0.10.0, the return type for STRING fields was GD_NULL.
SEE ALSO
gd_error(3), gd_error_string(3) gd_getdata(3), gd_open(3), dirfile(5)
Version 0.10.0 25 January 2017 gd_native_type(3)