From 6d3dda5a2f10f450cf0e155185600d67ed74ad74 Mon Sep 17 00:00:00 2001 From: Dennis Eichhorn Date: Wed, 24 Apr 2024 03:20:47 +0000 Subject: [PATCH] more tests and some fixes --- Input/XInput.h | 44 ++++++++++++++++++++++++++++++++ Stdlib/Intrinsics.h | 3 +-- Utils/TestUtils.h | 10 ++++++++ tests/Stdlib/IntrinsicsTest | Bin 16320 -> 0 bytes tests/Stdlib/IntrinsicsTest.cpp | 7 ++++- tests/test.sh | 4 +-- 6 files changed, 63 insertions(+), 5 deletions(-) create mode 100644 Input/XInput.h delete mode 100644 tests/Stdlib/IntrinsicsTest diff --git a/Input/XInput.h b/Input/XInput.h new file mode 100644 index 0000000..2828fa4 --- /dev/null +++ b/Input/XInput.h @@ -0,0 +1,44 @@ +/** + * Karaka + * + * @package Stdlib + * @copyright Dennis Eichhorn + * @license OMS License 1.0 + * @version 1.0.0 + * @link https://jingga.app + */ +#ifndef INPUT_XINPUT_H +#define INPUT_XINPUT_H + +#ifdef _WIN32 + #include +#else + #include +#endif + +#include "../Stdlib/Types.h" + +uint32 find_joysticks() +{ + +} + +void destory_joysticks() +{ + +} + +void handle_controller_input() +{ + + for (uint32 controller_index = 0; controller_index < XUSER_MAX_COUNT; ++controller_index) { + XINPUT_STATE controller_state; + if (XInputGetState(controller_index, &controller_state) == ERROR_SUCCESS) { + + } else { + + } + } +} + +#endif \ No newline at end of file diff --git a/Stdlib/Intrinsics.h b/Stdlib/Intrinsics.h index dd1e5d0..f9fe798 100644 --- a/Stdlib/Intrinsics.h +++ b/Stdlib/Intrinsics.h @@ -11,10 +11,9 @@ #define STDLIB_INTRINSICS_H #include -#include #include #include -#include +#include #include "Types.h" diff --git a/Utils/TestUtils.h b/Utils/TestUtils.h index b039bdc..870739e 100755 --- a/Utils/TestUtils.h +++ b/Utils/TestUtils.h @@ -23,6 +23,16 @@ return 0; } \ }) +#define ASSERT_NOT_EQUALS(a, b, t1, t2) ({\ + if ((a) != (b)) { \ + printf("."); \ + } else { \ + printf("\033[31m[F]\033[0m"); \ + printf("\n\n%s - %i: ", __FILE__, __LINE__); \ + printf((t1), (a)); printf(" == "); printf((t2), (b)); printf("\n"); \ + return 0; } \ + }) + #define ASSERT_EQUALS_WITH_DELTA(a, b, delta, t1, t2) ({\ if (oms_abs((a) - (b)) <= (delta)) { \ printf("."); \ diff --git a/tests/Stdlib/IntrinsicsTest b/tests/Stdlib/IntrinsicsTest deleted file mode 100644 index af5bf529964b024ab43a26b6e0dcf7991dd06efb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16320 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 E0D=X^VE_OC diff --git a/tests/Stdlib/IntrinsicsTest.cpp b/tests/Stdlib/IntrinsicsTest.cpp index e948cea..35b5d40 100644 --- a/tests/Stdlib/IntrinsicsTest.cpp +++ b/tests/Stdlib/IntrinsicsTest.cpp @@ -19,7 +19,12 @@ int main(int argc, char** argv) printf("Intrinsics:\n\n"); ASSERT_EQUALS_WITH_DELTA(Stdlib::Intrinsics::sqrt(1.234f), sqrt(1.234f), 0.01, "%f", "%f"); - ASSERT_EQUALS_WITH_DELTA(Stdlib::Intrinsics::round(1.234f), round(1.234f), 0.01, "%f", "%f"); + ASSERT_EQUALS_WITH_DELTA((int) Stdlib::Intrinsics::round_to_int(1.234f), (int) roundf(1.234f), 0.01, "%d", "%d"); + + //ASSERT_EQUALS_WITH_DELTA(Stdlib::Intrinsics::floor(1.234f), 1.0f, 0.01, "%f", "%f"); + //ASSERT_EQUALS_WITH_DELTA(Stdlib::Intrinsics::round(1.234f), roundf(1.234f), 0.01, "%f", "%f"); + + ASSERT_NOT_EQUALS(Stdlib::Intrinsics::hash(123456), Stdlib::Intrinsics::hash(654321), "%d", "%d"); printf("\n\n"); diff --git a/tests/test.sh b/tests/test.sh index 61befc3..1be5c32 100755 --- a/tests/test.sh +++ b/tests/test.sh @@ -12,6 +12,6 @@ g++ $BASEDIR/Threads/ThreadPoolTest.cpp -o $BASEDIR/Threads/ThreadPoolTest && $B g++ $BASEDIR/Stdlib/SIMD/SIMD_HelperTest.cpp -o $BASEDIR/Stdlib/SIMD/SIMD_HelperTest && $BASEDIR/Stdlib/SIMD/SIMD_HelperTest && rm $BASEDIR/Stdlib/SIMD/SIMD_HelperTest -g++ -mavx -maes -msse -msse2 -msse3 -msse4.1 -mavx512f -mpclmul -mavx512dq -march=native $BASEDIR/Stdlib/IntrinsicsTest.cpp -o $BASEDIR/Stdlib/IntrinsicsTest && $BASEDIR/Stdlib/IntrinsicsTest && rm $BASEDIR/Stdlib/IntrinsicsTest +g++ -maes -msse4.2 -mavx512f -mpclmul -mavx512dq -march=native $BASEDIR/Stdlib/IntrinsicsTest.cpp -o $BASEDIR/Stdlib/IntrinsicsTest && $BASEDIR/Stdlib/IntrinsicsTest && rm $BASEDIR/Stdlib/IntrinsicsTest -g++ -mavx -maes -msse -msse2 -msse3 -msse4.1 -mavx512f -mpclmul -mavx512dq -march=native $BASEDIR/Stdlib/SIMD/SIMD_F32Test.cpp -o $BASEDIR/Stdlib/SIMD/SIMD_F32Test && $BASEDIR/Stdlib/SIMD/SIMD_F32Test && rm $BASEDIR/Stdlib/SIMD/SIMD_F32Test +g++ -maes -msse4.2 -mavx512f -mpclmul -mavx512dq -march=native $BASEDIR/Stdlib/SIMD/SIMD_F32Test.cpp -o $BASEDIR/Stdlib/SIMD/SIMD_F32Test && $BASEDIR/Stdlib/SIMD/SIMD_F32Test && rm $BASEDIR/Stdlib/SIMD/SIMD_F32Test