From 49a2d7a4f63f54bdba639e4ab6c916442ed059ba Mon Sep 17 00:00:00 2001
From: Nicolas Pope <nwpope@utu.fi>
Date: Fri, 7 Feb 2020 19:23:26 +0200
Subject: [PATCH] Specify opencv components

---
 CMakeLists.txt                      | 2 +-
 components/common/cpp/src/timer.cpp | 5 +++--
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index c3c25a477..53dc9b883 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -29,7 +29,7 @@ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/")
 
 include(Findglog)
 
-find_package( OpenCV REQUIRED )
+find_package( OpenCV REQUIRED COMPONENTS core imgproc highgui cudaimgproc calib3d imgcodecs videoio aruco cudaarithm cudastereo cudaoptflow face tracking quality)
 find_package( Threads REQUIRED )
 find_package( URIParser REQUIRED )
 find_package( MsgPack REQUIRED )
diff --git a/components/common/cpp/src/timer.cpp b/components/common/cpp/src/timer.cpp
index 842a1e7ee..79fb8720b 100644
--- a/components/common/cpp/src/timer.cpp
+++ b/components/common/cpp/src/timer.cpp
@@ -92,9 +92,9 @@ static void waitTimePoint() {
 
 	if (hprec_) {
 		// Spin loop until exact grab time
-		//LOG(INFO) << "Spin Delay: " << (now / 40) << " = " << (40 - (now%40));
-
+		// Accurate to around 4 micro seconds.
 		if (sincelast != mspf) {
+			// TODO: Try using sleep_for for msdelay-1
 			target = now / mspf;
 			while ((now/mspf) == target) {
 				_mm_pause();  // SSE2 nano pause intrinsic
@@ -102,6 +102,7 @@ static void waitTimePoint() {
 			};
 		}
 	} else {
+		// Accurate to just under 1 millisecond usually
 		if (sincelast != mspf) sleep_for(milliseconds(msdelay));
 		now = get_time();
 	}
-- 
GitLab