Sam Hocevar
e073082150
Rename arraynd to old_arraynd and create new lol::narray implementation.
4 lat temu
Sam Hocevar
c54b4cbe07
Add arraynd.clear() utility method.
4 lat temu
Sam Hocevar
80481a587c
Remove <numeric.h> and <interp.h>, they’re almost unused.
4 lat temu
Sam Hocevar
d22746ebaf
Remove deprecated assert.h header.
4 lat temu
Sam Hocevar
c806e77280
Minor compilation fixes.
4 lat temu
Sam Hocevar
6d98787e9e
Change the arraynd size query API.
Now size() returns the total number of elements, and sizes() returns an
N-dimensional vector containing each size separately.
4 lat temu
Sam Hocevar
b85c7adfe6
Big header refactor yet again.
Let’s see how it goes with a very flat hierarchy and no .h extension.
4 lat temu
Sam Hocevar
68adfe975f
Clean up math/functions.h header.
4 lat temu
Sam Hocevar
8ea7dcfbcf
Move noise functions to the clean header namespace.
4 lat temu
Sam Hocevar
e7984246c3
Move portal.h to legacy directory; I don’t know what to do with it.
4 lat temu
Sam Hocevar
ec5f308bd3
Clean up abs/fabs discrepancies here and there.
4 lat temu
Sam Hocevar
6f84e24794
Remove all usage of lol::array in the standalone headers.
4 lat temu
Sam Hocevar
c1aac56766
Replace lol::array with std::vector in aabb_tree.h.
4 lat temu
Sam Hocevar
4446947aec
Use std::tuple for our custom dynamic arrays.
4 lat temu
Sam Hocevar
ecc3aee6e1
Various Windows compilation fixes.
4 lat temu
Sam Hocevar
d05eb96665
Improve standalone inclusion support.
4 lat temu
Sam Hocevar
20f39ee086
Refactor arraynd class.
Use size_t instead of ptrdiff_t and reduce header usage.
4 lat temu
Sam Hocevar
2235ce1635
Various compilation fixes.
4 lat temu
Sam Hocevar
c696030648
Add <lol/base/lolunit.h> header for unit tests.
4 lat temu
Sam Hocevar
02bb54bdf9
Refactor the color class.
This code is not of very good quality, but a few methods such as the
RGB/HSV/HSL/YUV conversions are still useful, so I’m deciding to keep
them for now.
4 lat temu
Sam Hocevar
71d9bc1ec8
Move math types to a separate types/ subdirectory.
4 lat temu
Sam Hocevar
c042850637
Clean up bigint.h header.
4 lat temu
Sam Hocevar
59a4b5bd0c
Clean up the half.h header and make it optional.
4 lat temu
Sam Hocevar
38ee6b26e9
Use <stdint.h> instead of <cstdint>.
This is because <cstdint> is not guaranteed to expose C99 types to the
global namespace, and we don’t want to go through the hassle of using
each of them one by one.
4 lat temu
Sam Hocevar
655beda5bd
It’s 2020, use [[nodiscard]] unconditionally.
4 lat temu
Sam Hocevar
2626ce4efe
Make more headers private and remove unnecessary #includes.
4 lat temu
Sam Hocevar
ca3fb5a4ba
Make the vector, matrix and transform-related classes header-only.
4 lat temu
Sam Hocevar
f579dbc881
Minor header refactoring.
4 lat temu
Sam Hocevar
29336e3d2f
math: quick fix for linking issues in the real class.
4 lat temu
Sam Hocevar
0ba2833bd4
Make a lot of headers work independently.
4 lat temu
Sam Hocevar
c45a494ad5
base: re-add the threading and getopt classes.
4 lat temu
Sam Hocevar
8d5891b88a
math: clean up the polynomial.h header.
4 lat temu
Sam Hocevar
742bb53bdd
base: add a features.h header.
4 lat temu
Sam Hocevar
80dafa8edf
math: clean up the Real class.
4 lat temu
Sam Hocevar
bf2ea0744e
base: clean up string utility functions.
4 lat temu
Sam Hocevar
155ae65a4e
Start working on the header-only part of the framework.
This implies creating a trimmed down branch that contains almost
nothing. It will then be usable by projects that do not need the
complex build system, and by the engine itself as a submodule from
the same repository.
4 lat temu