Files
obitools3/src/obitypes.h
2015-05-22 17:54:34 +02:00

51 lines
1.2 KiB
C

/****************************************************************************
* OBITypes header file *
****************************************************************************/
/**
* @file obitypes.h
* @author Celine Mercier
* @date 18 May 2015
* @brief Header file for the OBITypes.
*/
#ifndef OBITYPES_H_
#define OBITYPES_H_
#include <stdio.h>
#define OBIInt_NA (INT32_MIN)
#define OBIFloat_NA (NAN)
#define OBIIdx_NA (SIZE_MAX)
/**
* @brief enum for the boolean OBIType.
*/
typedef enum {
FALSE = 0,
TRUE = 1,
OBIBool_NA = 2
} OBIBool_t, *OBIBool_p; /**< a boolean true/false value */
/**
* @brief enum OBITypes for the data type of the OBIColumns.
*/
typedef enum OBIType {
OBI_VOID = 0, /**< data type not specified */
OBIInt_t, /**< a signed integer value (C type : int32_t) */
OBIFloat_t, /**< a floating value (C type : double) */
OBIChar_t, /**< a character (C type : char) */
OBIIdx_t /**< an index in a data structure (C type : size_t) */
} OBIType_t, *OBIType_p;
typedef int32_t obiint_t;
typedef double obifloat_t;
typedef char obichar_t;
typedef size_t obiidx_t;
#endif /* OBITYPES_H_ */