2 * RPP API types definition header file.
6 * @copyright Copyright (C) 2013, 2014 Czech Technical University in Prague
8 * @author Carlos Jenkins <carlos@jenkins.co.cr>
19 #define NULL ((void *)0U)
25 * Boolean definition for TRUE
33 * Boolean definition for FALSE
40 * Logic definition for logic HIGH
46 * Logic definition for logic LOW
52 * Value indicating a closed switch
54 #define RPP_CLOSED TRUE
58 * Value indicating an open switch
60 #define RPP_OPEN FALSE
64 * Definition for SUCCESS
70 * Definition for FAILURE (oldschool code)
75 // Error codes used instead of FAILURE in new code (as negative numbers)
76 #define RPP_EINVAL 2 /**< Input value error */
77 #define RPP_EBUSY 3 /**< Hardware is busy */
78 #define RPP_ENOMEM 4 /**< Not enough memory */
79 #define RPP_ENODATA 5 /**< No data were reveived */
81 // Note: Sadly <stdint.h> is not available with CCS tools.
86 typedef bool boolean_t;
91 * Unsigned 64 bits integer datatype definition.
93 typedef unsigned long long uint64_t;
97 * Unsigned 32 bits integer datatype definition.
99 typedef unsigned int uint32_t;
103 * Unsigned 16 bits integer datatype definition.
105 typedef unsigned short uint16_t;
109 * Unsigned 8 bits integer datatype definition.
111 typedef unsigned char uint8_t;
115 * Signed 64 bits integer datatype definition.
117 typedef signed long long int64_t;
121 * Signed 32 bits integer datatype definition.
123 typedef signed int int32_t;
127 * Signed 16 bits integer datatype definition.
129 typedef signed short int16_t;
133 * Signed 8 bits integer datatype definition.
135 typedef signed char int8_t;
139 * Boolean datatype definition.
141 typedef unsigned char boolean_t;
143 #endif /* __GNUC__ */
145 #endif /* __RPP_TYPES_H */