Go to the documentation of this file.
73 #include <jasper/jas_config.h>
81 #if defined(JAS_HAVE_SYS_TYPES_H)
82 #include <sys/types.h>
89 #define jas_uchar unsigned char
90 #define jas_uint unsigned int
91 #define jas_ulong unsigned long
92 #define jas_longlong long long
93 #define jas_ulonglong unsigned long long
95 #if !defined(JAS_NO_SET_SSIZE_T)
96 # if !defined(SSIZE_MAX)
97 # if (JAS_SIZEOF_INT == JAS_SIZEOF_SIZE_T)
99 # define SSIZE_MAX INT_MAX
100 # elif (JAS_SIZEOF_LONG == JAS_SIZEOF_SIZE_T)
101 # define ssize_t long
102 # define SSIZE_MAX LONG_MAX
104 # define ssize_t jas_longlong
105 # define SSIZE_MAX LLONG_MAX
111 #if defined(JAS_HAVE_SSIZE_T)
112 #define jas_ssize_t ssize_t
113 #define JAS_SSIZE_MAX SSIZE_MAX
115 #define jas_ssize_t jas_longlong
116 #define JAS_SSIZE_MAX LLONG_MAX
120 #if defined(_MSC_VER) && (_MSC_VER < 1800)
125 #define PRIxFAST32 "x"
126 #define PRIxFAST16 PRIxFAST32
127 #define PRIuFAST32 "u"
128 #define PRIuFAST16 PRIuFAST32
129 #define PRIiFAST32 "i"
131 #define PRIdPTR "lld"
137 #define _HUGE_ENUF 1e+300
140 #define INFINITY ((float)(_HUGE_ENUF * _HUGE_ENUF))
142 #define strtoull _strtoui64
146 #include <inttypes.h>
152 #define JAS_CAST(t, e) \
157 #define JAS_UINTFAST32_NUMBITS (8 * sizeof(uint_fast32_t))
160 #if defined(JAS_HAVE_MAX_ALIGN_T)
161 #define jas_max_align_t max_align_t
163 #define jas_max_align_t long double
173 #if defined(JAS_NO_SET_MAX_ALIGN_T)
178 #elif defined(_MSC_VER)
183 # define max_align_t long double
184 #elif !(defined(__STDC_VERSION__) && (__STDC_VERSION__ - 0 >= 201112L))
185 # define max_align_t long double
189 #if defined(JAS_HAVE_UINTMAX_T)
190 #define jas_uintmax_t uintmax_t
192 #define jas_uintmax_t uint_fast64_t
197 #if defined(JAS_HAVE_INTMAX_T)
198 #define jas_intmax_t intmax_t
200 #define jas_intmax_t int_fast64_t