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 af5bf52..0000000 Binary files a/tests/Stdlib/IntrinsicsTest and /dev/null differ 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