MFMv2.0.10
Movable Feast Machine Simulator 2.0.10
Main Page
Related Pages
Data Structures
Files
File List
Globals
All
Data Structures
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
src
core
include
itype.h
Go to the documentation of this file.
1
/* -*- mode:C++ -*-
2
itype.h Short names for sized ints, and limits
3
Copyright (C) 2008-2014 The Regents of the University of New Mexico. All rights reserved.
4
5
This library is free software; you can redistribute it and/or
6
modify it under the terms of the GNU Lesser General Public
7
License as published by the Free Software Foundation; either
8
version 2.1 of the License, or (at your option) any later version.
9
10
This library is distributed in the hope that it will be useful,
11
but WITHOUT ANY WARRANTY; without even the implied warranty of
12
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
Lesser General Public License for more details.
14
15
You should have received a copy of the GNU General Public License
16
along with this library; if not, write to the Free Software
17
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301
18
USA
19
*/
20
27
#ifndef ITYPE_H
28
#define ITYPE_H
29
30
#include <inttypes.h>
31
32
namespace
MFM {
33
34
typedef
int8_t s8;
35
typedef
int16_t s16;
36
typedef
int32_t s32;
37
typedef
int64_t s64;
38
typedef
intptr_t sptr;
40
typedef
const
int8_t sc8;
41
typedef
const
int16_t sc16;
42
typedef
const
int32_t sc32;
43
typedef
const
int64_t sc64;
44
typedef
const
intptr_t scptr;
46
typedef
volatile
int8_t sv8;
47
typedef
volatile
int16_t sv16;
48
typedef
volatile
int32_t sv32;
49
typedef
volatile
int64_t sv64;
50
typedef
volatile
intptr_t svptr;
52
typedef
volatile
const
int8_t svc8;
53
typedef
volatile
const
int16_t svc16;
54
typedef
volatile
const
int32_t svc32;
55
typedef
volatile
const
int64_t svc64;
56
typedef
volatile
const
intptr_t svcptr;
58
typedef
uint8_t u8;
59
typedef
uint16_t u16;
60
typedef
uint32_t u32;
61
typedef
uint64_t u64;
62
typedef
uintptr_t uptr;
64
typedef
const
uint8_t uc8;
65
typedef
const
uint16_t uc16;
66
typedef
const
uint32_t uc32;
67
typedef
const
uint64_t uc64;
68
typedef
const
uintptr_t ucptr;
70
typedef
volatile
uint8_t uv8;
71
typedef
volatile
uint16_t uv16;
72
typedef
volatile
uint32_t uv32;
73
typedef
volatile
uint64_t uv64;
74
typedef
volatile
uintptr_t uvptr;
76
typedef
volatile
const
uint8_t uvc8;
77
typedef
volatile
const
uint16_t uvc16;
78
typedef
volatile
const
uint32_t uvc32;
79
typedef
volatile
const
uint64_t uvc64;
80
typedef
volatile
const
uintptr_t uvcptr;
82
#define S8_MAX ((s8)127)
83
#define S8_MIN ((s8)-128)
84
#define S16_MAX ((s16)32767)
85
#define S16_MIN ((s16)-32768)
86
#define S32_MAX ((s32)2147483647)
87
#define S32_MIN ((s32)2147483648UL)
88
#define S64_MAX ((((s64)0x7fffffff)<<32)|0xffffffff)
89
#define S64_MIN ((((s64)0x80000000)<<32))
91
#define U8_MAX ((u8)255)
92
#define U8_MIN ((u8)0)
93
#define U16_MAX ((u16)65535U)
94
#define U16_MIN ((u16)0)
95
#define U32_MAX ((u32)4294967295UL)
96
#define U32_MIN ((u32)0)
97
#define U64_MAX ((((u64)0xffffffff)<<32)|0xffffffff)
98
/* U64_MAX hacked with an expression to avoid C99ish syntax.. */
99
#define U64_MIN ((u64)0LL)
101
}
/* namespace MFM */
102
103
#endif
/* ITYPE_H */
104
Generated on Wed Oct 29 2014 05:10:16 for MFMv2.0.10 by
1.8.6