fixed useOptimized(); added checkHardwareSupport description (ticket #1258)
authorVadim Pisarevsky <no@email>
Wed, 3 Aug 2011 08:17:58 +0000 (08:17 +0000)
committerVadim Pisarevsky <no@email>
Wed, 3 Aug 2011 08:17:58 +0000 (08:17 +0000)
modules/core/doc/utility_and_system_functions_and_macros.rst
modules/core/src/system.cpp

index 6ad75e8..d6c5e01 100644 (file)
@@ -280,6 +280,28 @@ The function acts like ``sprintf``  but forms and returns an STL string. It can
 
 
 
+checkHardwareSupport
+--------------------
+Returns true if the specified feature is supported by the host hardware.
+
+.. ocv:function:: bool checkHardwareSupport(int feature)
+.. ocv:cfunction:: int cvCheckHardwareSupport(int feature)
+.. ocv:pyfunction:: checkHardwareSupport(feature) -> Bool
+
+    :param feature: The feature of interest, one of:
+    
+                        * ``CV_CPU_MMX`` - MMX
+                        * ``CV_CPU_SSE`` - SSE
+                        * ``CV_CPU_SSE2`` - SSE 2
+                        * ``CV_CPU_SSE3`` - SSE 3
+                        * ``CV_CPU_SSSE3`` - SSSE 3
+                        * ``CV_CPU_SSE4_1`` - SSE 4.1
+                        * ``CV_CPU_SSE4_2`` - SSE 4.2
+                        * ``CV_CPU_POPCNT`` - POPCOUNT
+                        * ``CV_CPU_AVX`` - AVX
+
+The function returns true if the host hardware supports the specified feature. When user calls ``setUseOptimized(false)``, the subsequent calls to ``checkHardwareSupport()`` will return false until ``setUseOptimized(true)`` is called. This way user can dynamically switch on and off the optimized code in OpenCV.
+
 getNumThreads
 -----------------
 Returns the number of threads used by OpenCV.
index 4c0ec13..2922cda 100644 (file)
@@ -203,7 +203,7 @@ struct IPPInitializer
 
 IPPInitializer ippInitializer;
 #else
-volatile bool useOptimizedFlag = false;
+volatile bool useOptimizedFlag = true;
 #endif
 
 volatile bool USE_SSE2 = false;