restore missed gpu functionality after merge #dddd285d
authormarina.kolpakova <marina.kolpakova@itseez.com>
Sun, 24 Feb 2013 18:14:57 +0000 (22:14 +0400)
committermarina.kolpakova <marina.kolpakova@itseez.com>
Sun, 24 Feb 2013 18:14:57 +0000 (22:14 +0400)
modules/core/include/opencv2/core/gpumat.hpp
modules/core/src/gpumat.cpp

index d39f0a8..52a8ba0 100644 (file)
@@ -143,6 +143,7 @@ namespace cv { namespace gpu
         int multi_processor_count_;
         int majorVersion_;
         int minorVersion_;
+        size_t sharedMemPerBlock_;
     };
 
     CV_EXPORTS void printCudaDeviceInfo(int device);
index 942fb45..a199381 100644 (file)
@@ -379,6 +379,8 @@ void cv::gpu::DeviceInfo::query()
     sharedMemPerBlock_ = prop.sharedMemPerBlock;
 }
 
+size_t cv::gpu::DeviceInfo::sharedMemPerBlock() const {return sharedMemPerBlock_;}
+
 void cv::gpu::DeviceInfo::queryMemory(size_t& free_memory, size_t& total_memory) const
 {
     int prev_device_id = getDevice();
@@ -802,6 +804,13 @@ void cv::gpu::ensureSizeIsEnough(int rows, int cols, int type, GpuMat& m)
     }
 }
 
+GpuMat cv::gpu::allocMatFromBuf(int rows, int cols, int type, GpuMat &mat)
+{
+    if (!mat.empty() && mat.type() == type && mat.rows >= rows && mat.cols >= cols)
+        return mat(Rect(0, 0, cols, rows));
+    return mat = GpuMat(rows, cols, type);
+}
+
 namespace
 {
     class GpuFuncTable