/**************************************************************************** * 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 #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_ */