GPU module: minor interface changes

This commit is contained in:
Anatoly Baksheev 2010-09-17 17:18:41 +00:00
parent 1387bfcde0
commit 4ffb519cdd
6 changed files with 20 additions and 18 deletions

View File

@ -61,6 +61,8 @@ namespace cv
T* ptr;
size_t step;
DevMem2D_() : cols(0), rows(0), ptr(0), step(0) {}
DevMem2D_(int rows_, int cols_, T *ptr_, size_t step_)
: cols(cols_), rows(rows_), ptr(ptr_), step(step_) {}

View File

@ -62,10 +62,10 @@ namespace cv
CV_EXPORTS void setDevice(int device);
CV_EXPORTS int getDevice();
CV_EXPORTS void getComputeCapability(int device, int* major, int* minor);
CV_EXPORTS void getComputeCapability(int device, int& major, int& minor);
CV_EXPORTS int getNumberOfSMs(int device);
CV_EXPORTS void getGpuMemInfo(size_t *free, size_t* total);
CV_EXPORTS void getGpuMemInfo(size_t& free, size_t& total);
//////////////////////////////// GpuMat ////////////////////////////////
class Stream;

View File

@ -52,9 +52,9 @@ CV_EXPORTS int cv::gpu::getCudaEnabledDeviceCount() { return 0; }
CV_EXPORTS string cv::gpu::getDeviceName(int /*device*/) { throw_nogpu(); return 0; }
CV_EXPORTS void cv::gpu::setDevice(int /*device*/) { throw_nogpu(); }
CV_EXPORTS int cv::gpu::getDevice() { throw_nogpu(); return 0; }
CV_EXPORTS void cv::gpu::getComputeCapability(int /*device*/, int* /*major*/, int* /*minor*/) { throw_nogpu(); }
CV_EXPORTS void cv::gpu::getComputeCapability(int /*device*/, int& /*major*/, int& /*minor*/) { throw_nogpu(); }
CV_EXPORTS int cv::gpu::getNumberOfSMs(int /*device*/) { throw_nogpu(); return 0; }
CV_EXPORTS void cv::gpu::getGpuMemInfo(size_t* /*free*/, size_t* /*total*/) { throw_nogpu(); }
CV_EXPORTS void cv::gpu::getGpuMemInfo(size_t& /*free*/, size_t& /*total*/) { throw_nogpu(); }
#else /* !defined (HAVE_CUDA) */
@ -84,13 +84,13 @@ CV_EXPORTS int cv::gpu::getDevice()
return device;
}
CV_EXPORTS void cv::gpu::getComputeCapability(int device, int* major, int* minor)
CV_EXPORTS void cv::gpu::getComputeCapability(int device, int& major, int& minor)
{
cudaDeviceProp prop;
cudaSafeCall( cudaGetDeviceProperties( &prop, device) );
*major = prop.major;
*minor = prop.minor;
major = prop.major;
minor = prop.minor;
}
CV_EXPORTS int cv::gpu::getNumberOfSMs(int device)
@ -101,9 +101,9 @@ CV_EXPORTS int cv::gpu::getNumberOfSMs(int device)
}
CV_EXPORTS void cv::gpu::getGpuMemInfo(size_t *free, size_t* total)
CV_EXPORTS void cv::gpu::getGpuMemInfo(size_t& free, size_t& total)
{
cudaSafeCall( cudaMemGetInfo( free, total ) );
cudaSafeCall( cudaMemGetInfo( &free, &total ) );
}
#endif

View File

@ -89,7 +89,7 @@ bool cv::gpu::StereoBM_GPU::checkIfGpuCallReasonable()
int device = getDevice();
int minor, major;
getComputeCapability(device, &major, &minor);
getComputeCapability(device, major, minor);
int numSM = getNumberOfSMs(device);
if (major > 1 || numSM > 16)

View File

@ -39,8 +39,8 @@
//
//M*/
#ifndef _CXCORE_TEST_H_
#define _CXCORE_TEST_H_
#ifndef _GPU_TEST_H_
#define _GPU_TEST_H_
#if defined WIN32 || defined _WIN32
#include <windows.h>
@ -62,10 +62,8 @@
#pragma warning(disable : 4996) /* deprecated function */
#endif
#endif /* _CXCORE_TEST_H_ */
inline bool check_and_treat_gpu_exception(const cv::Exception& e, CvTS* ts)
static inline bool check_and_treat_gpu_exception(const cv::Exception& e, CvTS* ts)
{
switch (e.code)
{
@ -88,4 +86,6 @@ inline bool check_and_treat_gpu_exception(const cv::Exception& e, CvTS* ts)
return true;
}
#endif
/* End of file. */

View File

@ -132,7 +132,7 @@ public:
protected:
virtual int test(const Mat& img)
{
Mat kernel(3, 3, CV_8U, 1);
Mat kernel(3, 3, CV_8U, Scalar(1));
Point anchor(1,1);
int iters = 3;
@ -158,7 +158,7 @@ public:
protected:
virtual int test(const Mat& img)
{
Mat kernel(3, 3, CV_8U, 1);
Mat kernel(3, 3, CV_8U, Scalar(1));
Point anchor(1,1);
int iters = 3;
@ -189,7 +189,7 @@ protected:
const char *names[] = { "MORPH_OPEN", "CV_MOP_CLOSE", "CV_MOP_GRADIENT", "CV_MOP_TOPHAT", "CV_MOP_BLACKHAT"};
int num = sizeof(ops)/sizeof(ops[0]);
Mat kernel(3, 3, CV_8U, 1);
Mat kernel(3, 3, CV_8U, Scalar(1));
Point anchor(1,1);
int iters = 3;