00001 #ifndef __J2K__Limits_HPP__
00002 #define __J2K__Limits_HPP__
00003
00004 #define CHAR_BIT 8
00005 #define SCHAR_MIN (-128)
00006 #define SCHAR_MAX 127
00007 #define UCHAR_MIN 0
00008 #define UCHAR_MAX 0xFF
00009
00010 #define MB_LEN_MAX 2 // max. # bytes in multibyte char
00011 #define SHORT_MIN (-32768) // minimum signed short value
00012 #define SHORT_MAX 32767 // maximum signed short value
00013 #define USHRT_MAX 0xffff // maximum unsigned short value
00014 #define INT_MIN (-2147483648) // minimum signed int value
00015 #define INT_MAX 2147483647 // maximum signed int value
00016 #define UINT_MAX 0xffffffff // maximum unsigned int value
00017 #define LONG_MIN (-2147483648L) // minimum signed long value
00018 #define LONG_MAX 2147483647L // maximum signed long value
00019 #define ULONG_MAX 0xffffffffUL // maximum unsigned long value
00020
00021 #define _I8_MIN (-128i8) // minimum signed 8 bit value
00022 #define _I8_MAX 127i8 // maximum signed 8 bit value
00023 #define _UI8_MAX 0xffui8 // maximum unsigned 8 bit value
00024
00025 #define _I16_MIN (-32768i16) // minimum signed 16 bit value
00026 #define _I16_MAX 32767i16 // maximum signed 16 bit value
00027 #define _UI16_MAX 0xffffui16 // maximum unsigned 16 bit value
00028
00029 #define _I32_MIN (-2147483648i32) // minimum signed 32 bit value
00030 #define _I32_MAX 2147483647i32 // maximum signed 32 bit value
00031 #define _UI32_MAX 0xffffffffui32 // maximum unsigned 32 bit value
00032
00033
00034 #define _I64_MIN (-9223372036854775807i64 - 1)
00035
00036
00037 #define _I64_MAX 9223372036854775807i64
00038
00039
00040 #define _UI64_MAX 0xffffffffffffffffui64
00041
00042
00043
00044 #define _I128_MIN (-170141183460469231731687303715884105727i128 - 1)
00045
00046
00047 #define _I128_MAX 170141183460469231731687303715884105727i128
00048
00049
00050 #define _UI128_MAX 0xffffffffffffffffffffffffffffffffui128
00051
00052
00053 #endif