Antkeeper
0.0.1
src
engine
utility
fundamental-types.hpp
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2023 Christopher J. Howard
3
*
4
* This file is part of Antkeeper source code.
5
*
6
* Antkeeper source code is free software: you can redistribute it and/or modify
7
* it under the terms of the GNU General Public License as published by
8
* the Free Software Foundation, either version 3 of the License, or
9
* (at your option) any later version.
10
*
11
* Antkeeper source code is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
* GNU General Public License for more details.
15
*
16
* You should have received a copy of the GNU General Public License
17
* along with Antkeeper source code. If not, see <http://www.gnu.org/licenses/>.
18
*/
19
20
#ifndef ANTKEEPER_FUNDAMENTAL_TYPES_HPP
21
#define ANTKEEPER_FUNDAMENTAL_TYPES_HPP
22
23
#include <
engine/math/vector.hpp
>
24
#include <
engine/math/matrix.hpp
>
25
27
using
bool2
=
math::vector<bool, 2>
;
28
30
using
bool3
=
math::vector<bool, 3>
;
31
33
using
bool4
=
math::vector<bool, 4>
;
34
36
using
char2
=
math::vector<char, 2>
;
37
39
using
char3
=
math::vector<char, 3>
;
40
42
using
char4
=
math::vector<char, 4>
;
43
45
using
uchar2
=
math::vector<unsigned char, 2>
;
46
48
using
uchar3
=
math::vector<unsigned char, 3>
;
49
51
using
uchar4
=
math::vector<unsigned char, 4>
;
52
54
using
short2
=
math::vector<short, 2>
;
55
57
using
short3
=
math::vector<short, 3>
;
58
60
using
short4
=
math::vector<short, 4>
;
61
63
using
ushort2
=
math::vector<unsigned short, 2>
;
64
66
using
ushort3
=
math::vector<unsigned short, 3>
;
67
69
using
ushort4
=
math::vector<unsigned short, 4>
;
70
72
using
int2
=
math::vector<int, 2>
;
73
75
using
int3
=
math::vector<int, 3>
;
76
78
using
int4
=
math::vector<int, 4>
;
79
81
using
uint2
=
math::vector<unsigned int, 2>
;
82
84
using
uint3
=
math::vector<unsigned int, 3>
;
85
87
using
uint4
=
math::vector<unsigned int, 4>
;
88
90
using
long2
=
math::vector<long, 2>
;
91
93
using
long3
=
math::vector<long, 3>
;
94
96
using
long4
=
math::vector<long, 4>
;
97
99
using
ulong2
=
math::vector<unsigned long, 2>
;
100
102
using
ulong3
=
math::vector<unsigned long, 3>
;
103
105
using
ulong4
=
math::vector<unsigned long, 4>
;
106
108
using
float2
=
math::vector<float, 2>
;
109
111
using
float3
=
math::vector<float, 3>
;
112
114
using
float4
=
math::vector<float, 4>
;
115
117
using
double2
=
math::vector<double, 2>
;
118
120
using
double3
=
math::vector<double, 3>
;
121
123
using
double4
=
math::vector<double, 4>
;
124
126
using
bool2x2
=
math::matrix<bool, 2, 2>
;
127
129
using
bool3x3
=
math::matrix<bool, 3, 3>
;
130
132
using
bool4x4
=
math::matrix<bool, 4, 4>
;
133
135
using
char2x2
=
math::matrix<char, 2, 2>
;
136
138
using
char3x3
=
math::matrix<char, 3, 3>
;
139
141
using
char4x4
=
math::matrix<char, 4, 4>
;
142
144
using
uchar2x2
=
math::matrix<unsigned char, 2, 2>
;
145
147
using
uchar3x3
=
math::matrix<unsigned char, 3, 3>
;
148
150
using
uchar4x4
=
math::matrix<unsigned char, 4, 4>
;
151
153
using
short2x2
=
math::matrix<short, 2, 2>
;
154
156
using
short3x3
=
math::matrix<short, 3, 3>
;
157
159
using
short4x4
=
math::matrix<short, 4, 4>
;
160
162
using
ushort2x2
=
math::matrix<unsigned short, 2, 2>
;
163
165
using
ushort3x3
=
math::matrix<unsigned short, 3, 3>
;
166
168
using
ushort4x4
=
math::matrix<unsigned short, 4, 4>
;
169
171
using
int2x2
=
math::matrix<int, 2, 2>
;
172
174
using
int3x3
=
math::matrix<int, 3, 3>
;
175
177
using
int4x4
=
math::matrix<int, 4, 4>
;
178
180
using
uint2x2
=
math::matrix<unsigned int, 2, 2>
;
181
183
using
uint3x3
=
math::matrix<unsigned int, 3, 3>
;
184
186
using
uint4x4
=
math::matrix<unsigned int, 4, 4>
;
187
189
using
long2x2
=
math::matrix<long, 2, 2>
;
190
192
using
long3x3
=
math::matrix<long, 3, 3>
;
193
195
using
long4x4
=
math::matrix<long, 4, 4>
;
196
198
using
ulong2x2
=
math::matrix<unsigned long, 2, 2>
;
199
201
using
ulong3x3
=
math::matrix<unsigned long, 3, 3>
;
202
204
using
ulong4x4
=
math::matrix<unsigned long, 4, 4>
;
205
207
using
float2x2
=
math::matrix<float, 2, 2>
;
208
210
using
float3x3
=
math::matrix<float, 3, 3>
;
211
213
using
float4x4
=
math::matrix<float, 4, 4>
;
214
216
using
double2x2
=
math::matrix<double, 2, 2>
;
217
219
using
double3x3
=
math::matrix<double, 3, 3>
;
220
222
using
double4x4
=
math::matrix<double, 4, 4>
;
223
224
#endif
// ANTKEEPER_FUNDAMENTAL_TYPES_HPP
matrix.hpp
math::matrix
n by m column-major matrix.
Definition:
math/matrix.hpp:42
math::vector
n-dimensional vector.
Definition:
vector.hpp:41
vector.hpp