gd_endianness(3) report the byte sex of fields in a dirfile


#include <getdata.h>
unsigned long gd_endianness(DIRFILE *dirfile, int fragment_index);


The gd_endianness() function queries a dirfile(5) database specified by dirfile and returns the byte sex for the fragment indexed by fragment_index. The byte sex of a fragment indicate the endianness of data stored in binary files associated with RAW fields defined in the specified fragment. The endianness of a fragment containing no RAW fields is not meaningful.

The dirfile argument must point to a valid DIRFILE object previously created by a call to gd_open(3).


Upon successful completion, gd_endianness() returns the byte sex of the specified fragment, which will be either GD_BIG_ENDIAN or GD_LITTLE_ENDIAN, bitwise-or'd with either GD_ARM_ENDIAN or GD_NOT_ARM_ENDIAN, indicating whether double-precision floating point data in this fragment are stored in the old ARM middle-endian format. On error, it returns zero and sets the dirfile error to a non-zero error value. Possible error values are:
The supplied dirfile was invalid.
The supplied index was out of range.

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