12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- #pragma once
- #include <AK/SoundEngine/Common/AkTypes.h>
- namespace AK
- {
-
- enum AkSIMDProcessorSupport
- {
- #if (defined(AK_CPU_X86_64) || defined(AK_CPU_X86) || defined(AK_CPU_WASM))
- AK_SIMD_SSE = 1<<0,
- AK_SIMD_SSE2 = 1<<1,
- AK_SIMD_SSE3 = 1<<2,
- AK_SIMD_SSSE3 = 1<<3,
- AK_SIMD_SSE41 = 1<<4,
- AK_SIMD_AVX = 1<<5,
- AK_SIMD_F16C = 1<<6,
- AK_SIMD_AVX2 = 1<<7
- #endif
- };
-
-
-
-
-
- class IAkProcessorFeatures
- {
- protected:
-
- virtual ~IAkProcessorFeatures(){}
- public:
-
- virtual bool GetSIMDSupport(AkSIMDProcessorSupport in_eSIMD) = 0;
-
- virtual AkUInt32 GetCacheSize() = 0;
-
- virtual AkUInt32 GetCacheLineSize() = 0;
- };
- }
|