2 * RPP API types definition header file.
6 * @copyright Copyright (C) 2013, 2014, 2015 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 */
80 #define RPP_ENODEV 6 /**< Specified device does not exist */
82 // Note: Sadly <stdint.h> is not available with CCS tools.
87 typedef bool boolean_t;
92 * Unsigned 64 bits integer datatype definition.
94 typedef unsigned long long uint64_t;
98 * Unsigned 32 bits integer datatype definition.
100 typedef unsigned int uint32_t;
104 * Unsigned 16 bits integer datatype definition.
106 typedef unsigned short uint16_t;
110 * Unsigned 8 bits integer datatype definition.
112 typedef unsigned char uint8_t;
116 * Signed 64 bits integer datatype definition.
118 typedef signed long long int64_t;
122 * Signed 32 bits integer datatype definition.
124 typedef signed int int32_t;
128 * Signed 16 bits integer datatype definition.
130 typedef signed short int16_t;
134 * Signed 8 bits integer datatype definition.
136 typedef signed char int8_t;
140 * Boolean datatype definition.
142 typedef unsigned char boolean_t;
144 #endif /* __GNUC__ */
146 #endif /* __RPP_TYPES_H */