ITK  6.0.0
Insight Toolkit
itkIntTypes.h
Go to the documentation of this file.
1/*=========================================================================
2 *
3 * Copyright NumFOCUS
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * https://www.apache.org/licenses/LICENSE-2.0.txt
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 *
17 *=========================================================================*/
18#ifndef itkIntTypes_h
19#define itkIntTypes_h
20
21#include "itkMacro.h"
22
23#include <cstdint>
24#include <climits>
25
26namespace itk
27{
28using std::int8_t;
29using std::uint8_t;
30using std::int16_t;
31using std::uint16_t;
32using std::int32_t;
33using std::uint32_t;
34using std::int64_t;
35using std::uint64_t;
36
37using std::int_least8_t;
38using std::uint_least8_t;
39using std::int_least16_t;
40using std::uint_least16_t;
41using std::int_least32_t;
42using std::uint_least32_t;
43using std::int_least64_t;
44using std::uint_least64_t;
45
46using std::int_fast8_t;
47using std::uint_fast8_t;
48using std::int_fast16_t;
49using std::uint_fast16_t;
50using std::int_fast32_t;
51using std::uint_fast32_t;
52using std::int_fast64_t;
53using std::uint_fast64_t;
54
55using std::intmax_t;
56using std::uintmax_t;
57
58using std::intptr_t;
59using std::uintptr_t;
60
61using std::size_t;
62using std::ptrdiff_t;
63
64
65#if defined(ITK_USE_64BITS_IDS) && ((ULLONG_MAX != ULONG_MAX) || (LLONG_MAX != LONG_MAX))
66
69using SizeValueType = uint64_t;
70
74
76using IndexValueType = int64_t;
77
80using OffsetValueType = int64_t;
81
82#else
83
86using SizeValueType = unsigned long;
87
91
93using IndexValueType = long;
94
97using OffsetValueType = long;
98
99#endif
100
102using ThreadIdType = unsigned int;
103
106
107} // namespace itk
108
109#endif /* itkIntTypes_h */
unsigned long IdentifierType
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
unsigned int ThreadIdType
Definition: itkIntTypes.h:102
long IndexValueType
Definition: itkIntTypes.h:93
SizeValueType IdentifierType
Definition: itkIntTypes.h:90
SizeValueType ModifiedTimeType
Definition: itkIntTypes.h:105
unsigned long SizeValueType
Definition: itkIntTypes.h:86
long OffsetValueType
Definition: itkIntTypes.h:97