Commit 4efed3e0a0f9992759e4c1b500cb4f5691a35b4c

Authored by boolli
1 parent a2742d60

Make maxindex type

openbr/plugins/cuda/MatManager.cu
... ... @@ -41,7 +41,7 @@ namespace br { namespace cuda {
41 41 sem_init(_matSemaphore, 0, _numMats);
42 42 }
43 43  
44   - int MatManager::reserve(Mat *mat) {
  44 + MatManager::matindex MatManager::reserve(Mat *mat) {
45 45 int reservedMatIndex = 0;
46 46 //std::cout << "Reserving" << std::endl << std::flush;
47 47  
... ... @@ -82,7 +82,7 @@ namespace br { namespace cuda {
82 82 return reservedMatIndex;
83 83 }
84 84  
85   - void MatManager::upload(int reservedMatIndex, Mat& mat) {
  85 + void MatManager::upload(MatManager::matindex reservedMatIndex, Mat& mat) {
86 86 // upload the image
87 87 /*
88 88 pthread_mutex_lock(_matsDimensionLock);
... ... @@ -95,7 +95,7 @@ namespace br { namespace cuda {
95 95 cudaMemcpy(reservedMat, mat.ptr<uint8_t>(), mat.rows * mat.cols, cudaMemcpyHostToDevice);
96 96 }
97 97  
98   - void MatManager::download(int reservedMatIndex, Mat& dstMat) {
  98 + void MatManager::download(MatManager::matindex reservedMatIndex, Mat& dstMat) {
99 99 /*
100 100 pthread_mutex_lock(_matsDimensionLock);
101 101 reservedMat->download(dstMat);
... ... @@ -108,7 +108,7 @@ namespace br { namespace cuda {
108 108 cudaMemcpy(dstMat.ptr<uint8_t>(), reservedMat, dimension, cudaMemcpyDeviceToHost);
109 109 }
110 110  
111   - void MatManager::release(int reservedMatIndex) {
  111 + void MatManager::release(MatManager::matindex reservedMatIndex) {
112 112 uint8_t* reservedMat = _mats[reservedMatIndex];
113 113 pthread_mutex_lock(_matTakenLock);
114 114 bool foundMatch = false;
... ... @@ -185,7 +185,7 @@ namespace br { namespace cuda {
185 185 std::cout << "can't release mat at address: " << gpuMat << std::endl << std::flush;
186 186 }
187 187 */
188   - uint8_t* MatManager::get_mat_pointer_from_index(int matIndex) {
  188 + uint8_t* MatManager::get_mat_pointer_from_index(MatManager::matindex matIndex) {
189 189 return _mats[matIndex];
190 190 }
191 191  
... ...
openbr/plugins/cuda/MatManager.hpp
... ... @@ -25,13 +25,14 @@ namespace br { namespace cuda {
25 25 sem_t* _matSemaphore;
26 26  
27 27 public:
  28 + typedef int matindex;
28 29 MatManager(int num);
29 30  
30 31 int reserve(Mat *mat);
31   - void upload(int reservedMatIndex, Mat& mat);
32   - void download(int reservedMatIndex, Mat& dstMat);
33   - void release(int matIndex);
34   - uint8_t* get_mat_pointer_from_index(int matIndex);
  32 + void upload(matindex reservedMatIndex, Mat& mat);
  33 + void download(matindex reservedMatIndex, Mat& dstMat);
  34 + void release(matindex matIndex);
  35 + uint8_t* get_mat_pointer_from_index(matindex matIndex);
35 36  
36 37 ~MatManager();
37 38 //void printMats();
... ...
openbr/plugins/cuda/cudalbp.cpp
... ... @@ -154,8 +154,8 @@ class CUDALBPTransform : public UntrainableTransform
154 154 void project(const Template &src, Template &dst) const
155 155 {
156 156 Mat& m = (Mat&)src.m();
157   - int a;
158   - int b;
  157 + cuda::MatManager::matindex a;
  158 + cuda::MatManager::matindex b;
159 159 a = matManager->reserve(&m);
160 160 // std::cout << "m: " << m.size() << ", " << m.type() << std::endl << std::flush;
161 161 // std::cout << "a: " << a->size() << ", " << a->type() << std::endl << std::flush;
... ...