@@ -72,6 +72,78 @@ * On Haiku, it uses the `B_USER_SETTINGS_DIRECTORY` directory. * * @return The path where user configuration for the application can be stored */ + (OFString*)userConfigPath; + +/*! + * @brief Returns the vendor of the CPU. + * + * If the vendor could not be determined, nil is returned instead. + * + * @return The vendor of the CPU + */ ++ (OFString*)CPUVendor; + +/*! + * @brief Returns whether the CPU supports MMX. + * + * @return Whether the CPU supports MMX + */ ++ (bool)supportsMMX; + +/*! + * @brief Returns whether the CPU supports SSE. + * + * @return Whether the CPU supports SSE + */ ++ (bool)supportsSSE; + +/*! + * @brief Returns whether the CPU supports SSE2. + * + * @return Whether the CPU supports SSE2 + */ ++ (bool)supportsSSE2; + +/*! + * @brief Returns whether the CPU supports SSE3. + * + * @return Whether the CPU supports SSE3 + */ ++ (bool)supportsSSE3; + +/*! + * @brief Returns whether the CPU supports SSSE3. + * + * @return Whether the CPU supports SSSE3 + */ ++ (bool)supportsSSSE3; + +/*! + * @brief Returns whether the CPU supports SSE4.1. + * + * @return Whether the CPU supports SSE4.1 + */ ++ (bool)supportsSSE41; + +/*! + * @brief Returns whether the CPU supports SSE4.2. + * + * @return Whether the CPU supports SSE4.2 + */ ++ (bool)supportsSSE42; + +/*! + * @brief Returns whether the CPU supports AVX. + * + * @return Whether the CPU supports AVX + */ ++ (bool)supportsAVX; + +/*! + * @brief Returns whether the CPU supports AVX2. + * + * @return Whether the CPU supports AVX2 + */ ++ (bool)supportsAVX2; @end