#include "test_precomp.hpp"
-#ifdef HAVE_CUDA
-
-using namespace std;
-using namespace cv;
-using namespace cv::gpu;
-using namespace cvtest;
-using namespace testing;
-
-int main(int argc, char** argv)
-{
- try
- {
- const std::string keys =
- "{ h help ? | | Print help}"
- "{ i info | | Print information about system and exit }"
- "{ device | -1 | Device on which tests will be executed (-1 means all devices) }"
- ;
-
- CommandLineParser cmd(argc, (const char**)argv, keys);
-
- if (cmd.has("help"))
- {
- cmd.printMessage();
- return 0;
- }
-
- printCudaInfo();
-
- if (cmd.has("info"))
- {
- return 0;
- }
-
- int device = cmd.get<int>("device");
- if (device < 0)
- {
- DeviceManager::instance().loadAll();
-
- cout << "Run tests on all supported devices \n" << endl;
- }
- else
- {
- DeviceManager::instance().load(device);
-
- DeviceInfo info(device);
- cout << "Run tests on device " << device << " [" << info.name() << "] \n" << endl;
- }
-
- TS::ptr()->init("gpu");
- InitGoogleTest(&argc, argv);
-
- return RUN_ALL_TESTS();
- }
- catch (const exception& e)
- {
- cerr << e.what() << endl;
- return -1;
- }
- catch (...)
- {
- cerr << "Unknown error" << endl;
- return -1;
- }
-
- return 0;
-}
-
-#else // HAVE_CUDA
-
-int main()
-{
- printf("OpenCV was built without CUDA support\n");
- return 0;
-}
-
-#endif // HAVE_CUDA
+CV_GPU_TEST_MAIN("gpu")
#include "test_precomp.hpp"
-CV_TEST_MAIN("gpu")
+CV_GPU_TEST_MAIN("gpu")
#include "test_precomp.hpp"
-#ifdef HAVE_CUDA
-
-using namespace std;
-using namespace cv;
-using namespace cv::gpu;
-using namespace cvtest;
-using namespace testing;
-
-int main(int argc, char** argv)
-{
- try
- {
- const std::string keys =
- "{ h help ? | | Print help}"
- "{ i info | | Print information about system and exit }"
- "{ device | -1 | Device on which tests will be executed (-1 means all devices) }"
- ;
-
- CommandLineParser cmd(argc, (const char**)argv, keys);
-
- if (cmd.has("help"))
- {
- cmd.printMessage();
- return 0;
- }
-
- printCudaInfo();
-
- if (cmd.has("info"))
- {
- return 0;
- }
-
- int device = cmd.get<int>("device");
- if (device < 0)
- {
- DeviceManager::instance().loadAll();
-
- cout << "Run tests on all supported devices \n" << endl;
- }
- else
- {
- DeviceManager::instance().load(device);
-
- DeviceInfo info(device);
- cout << "Run tests on device " << device << " [" << info.name() << "] \n" << endl;
- }
-
- TS::ptr()->init("gpu");
- InitGoogleTest(&argc, argv);
-
- return RUN_ALL_TESTS();
- }
- catch (const exception& e)
- {
- cerr << e.what() << endl;
- return -1;
- }
- catch (...)
- {
- cerr << "Unknown error" << endl;
- return -1;
- }
-
- return 0;
-}
-
-#else // HAVE_CUDA
-
-int main()
-{
- printf("OpenCV was built without CUDA support\n");
- return 0;
-}
-
-#endif // HAVE_CUDA
+CV_GPU_TEST_MAIN("gpu")
#ifndef __OPENCV_GPU_TEST_UTILITY_HPP__
#define __OPENCV_GPU_TEST_UTILITY_HPP__
+#include <stdexcept>
#include "opencv2/core.hpp"
#include "opencv2/core/gpumat.hpp"
#include "opencv2/highgui.hpp"
CV_EXPORTS void PrintTo(const DeviceInfo& info, std::ostream* os);
}}
+#ifdef HAVE_CUDA
+
+#define CV_GPU_TEST_MAIN(resourcesubdir) \
+ int main(int argc, char* argv[]) \
+ { \
+ try \
+ { \
+ cv::CommandLineParser cmd(argc, argv, \
+ "{ h help ? | | Print help}" \
+ "{ i info | | Print information about system and exit }" \
+ "{ device | -1 | Device on which tests will be executed (-1 means all devices) }" \
+ ); \
+ if (cmd.has("help")) \
+ { \
+ cmd.printMessage(); \
+ return 0; \
+ } \
+ cvtest::printCudaInfo(); \
+ if (cmd.has("info")) \
+ { \
+ return 0; \
+ } \
+ int device = cmd.get<int>("device"); \
+ if (device < 0) \
+ { \
+ cvtest::DeviceManager::instance().loadAll(); \
+ std::cout << "Run tests on all supported devices \n" << std::endl; \
+ } \
+ else \
+ { \
+ cvtest::DeviceManager::instance().load(device); \
+ cv::gpu::DeviceInfo info(device); \
+ std::cout << "Run tests on device " << device << " [" << info.name() << "] \n" << std::endl; \
+ } \
+ cvtest::TS::ptr()->init( resourcesubdir ); \
+ testing::InitGoogleTest(&argc, argv); \
+ return RUN_ALL_TESTS(); \
+ } \
+ catch (const std::exception& e) \
+ { \
+ std::cerr << e.what() << std::endl; \
+ return -1; \
+ } \
+ catch (...) \
+ { \
+ std::cerr << "Unknown error" << std::endl; \
+ return -1; \
+ } \
+ return 0; \
+ }
+
+#else // HAVE_CUDA
+
+#define CV_GPU_TEST_MAIN(resourcesubdir) \
+ int main() \
+ { \
+ printf("OpenCV was built without CUDA support\n"); \
+ return 0; \
+ }
+
+#endif // HAVE_CUDA
+
+
#endif // __OPENCV_GPU_TEST_UTILITY_HPP__