Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
O
opencv
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
submodule
opencv
Commits
f2df7848
Commit
f2df7848
authored
Nov 15, 2010
by
Anatoly Baksheev
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fixed error reporting in GPU module (exceptions in destructors, etc)
parent
d7d0754f
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
61 additions
and
46 deletions
+61
-46
types_c.h
modules/core/include/opencv2/core/types_c.h
+1
-1
system.cpp
modules/core/src/system.cpp
+3
-0
gpu.hpp
modules/gpu/include/opencv2/gpu/gpu.hpp
+0
-0
error.cpp
modules/gpu/src/error.cpp
+53
-42
precomp.hpp
modules/gpu/src/precomp.hpp
+2
-1
gputest.hpp
tests/gpu/src/gputest.hpp
+2
-2
No files found.
modules/core/include/opencv2/core/types_c.h
View file @
f2df7848
...
...
@@ -245,7 +245,7 @@ enum {
CV_StsNotImplemented
=
-
213
,
/* the requested function/feature is not implemented */
CV_StsBadMemBlock
=
-
214
,
/* an allocated block has been corrupted */
CV_StsAssert
=
-
215
,
/* assertion failed */
CV_GpuNot
Found
=
-
216
,
CV_GpuNot
Supported
=
-
216
,
CV_GpuApiCallError
=
-
217
,
CV_GpuNppCallError
=
-
218
};
...
...
modules/core/src/system.cpp
View file @
f2df7848
...
...
@@ -527,6 +527,9 @@ CV_IMPL const char* cvErrorStr( int status )
case
CV_StsNotImplemented
:
return
"The function/feature is not implemented"
;
case
CV_StsBadMemBlock
:
return
"Memory block has been corrupted"
;
case
CV_StsAssert
:
return
"Assertion failed"
;
case
CV_GpuNotSupported
:
return
"No GPU support"
;
case
CV_GpuApiCallError
:
return
"GPU API error"
;
case
CV_GpuNppCallError
:
return
"NPP API error"
;
};
sprintf
(
buf
,
"Unknown %s code %d"
,
status
>=
0
?
"status"
:
"error"
,
status
);
...
...
modules/gpu/include/opencv2/gpu/gpu.hpp
View file @
f2df7848
This diff is collapsed.
Click to expand it.
modules/gpu/src/error.cpp
View file @
f2df7848
...
...
@@ -54,53 +54,54 @@ using namespace cv::gpu;
namespace
{
#define error_entry(entry) { entry, #entry }
struct
NppError
{
int
error
;
string
str
;
}
npp_errors
[]
=
{
{
NPP_NOT_SUPPORTED_MODE_ERROR
,
"NPP_NOT_SUPPORTED_MODE_ERROR"
},
{
NPP_ROUND_MODE_NOT_SUPPORTED_ERROR
,
"NPP_ROUND_MODE_NOT_SUPPORTED_ERROR"
},
{
NPP_RESIZE_NO_OPERATION_ERROR
,
"NPP_RESIZE_NO_OPERATION_ERROR"
},
{
NPP_BAD_ARG_ERROR
,
"NPP_BAD_ARG_ERROR"
},
{
NPP_LUT_NUMBER_OF_LEVELS_ERROR
,
"NPP_LUT_NUMBER_OF_LEVELS_ERROR"
},
{
NPP_TEXTURE_BIND_ERROR
,
"NPP_TEXTURE_BIND_ERROR"
},
{
NPP_COEFF_ERROR
,
"NPP_COEFF_ERROR"
},
{
NPP_RECT_ERROR
,
"NPP_RECT_ERROR"
},
{
NPP_QUAD_ERROR
,
"NPP_QUAD_ERROR"
},
{
NPP_WRONG_INTERSECTION_ROI_ERROR
,
"NPP_WRONG_INTERSECTION_ROI_ERROR"
},
{
NPP_NOT_EVEN_STEP_ERROR
,
"NPP_NOT_EVEN_STEP_ERROR"
},
{
NPP_INTERPOLATION_ERROR
,
"NPP_INTERPOLATION_ERROR"
},
{
NPP_RESIZE_FACTOR_ERROR
,
"NPP_RESIZE_FACTOR_ERROR"
},
{
NPP_HAAR_CLASSIFIER_PIXEL_MATCH_ERROR
,
"NPP_HAAR_CLASSIFIER_PIXEL_MATCH_ERROR"
},
{
NPP_MEMFREE_ERR
,
"NPP_MEMFREE_ERR"
},
{
NPP_MEMSET_ERR
,
"NPP_MEMSET_ERR"
},
{
NPP_MEMCPY_ERROR
,
"NPP_MEMCPY_ERROR"
},
{
NPP_MEM_ALLOC_ERR
,
"NPP_MEM_ALLOC_ERR"
},
{
NPP_HISTO_NUMBER_OF_LEVELS_ERROR
,
"NPP_HISTO_NUMBER_OF_LEVELS_ERROR"
},
{
NPP_MIRROR_FLIP_ERR
,
"NPP_MIRROR_FLIP_ERR"
},
{
NPP_INVALID_INPUT
,
"NPP_INVALID_INPUT"
},
{
NPP_ALIGNMENT_ERROR
,
"NPP_ALIGNMENT_ERROR"
},
{
NPP_STEP_ERROR
,
"NPP_STEP_ERROR"
},
{
NPP_SIZE_ERROR
,
"NPP_SIZE_ERROR"
},
{
NPP_POINTER_ERROR
,
"NPP_POINTER_ERROR"
},
{
NPP_NULL_POINTER_ERROR
,
"NPP_NULL_POINTER_ERROR"
},
{
NPP_CUDA_KERNEL_EXECUTION_ERROR
,
"NPP_CUDA_KERNEL_EXECUTION_ERROR"
},
{
NPP_NOT_IMPLEMENTED_ERROR
,
"NPP_NOT_IMPLEMENTED_ERROR"
},
{
NPP_ERROR
,
"NPP_ERROR"
},
{
NPP_NO_ERROR
,
"NPP_NO_ERROR"
},
{
NPP_SUCCESS
,
"NPP_SUCCESS"
},
{
NPP_WARNING
,
"NPP_WARNING"
},
{
NPP_WRONG_INTERSECTION_QUAD_WARNING
,
"NPP_WRONG_INTERSECTION_QUAD_WARNING"
},
{
NPP_MISALIGNED_DST_ROI_WARNING
,
"NPP_MISALIGNED_DST_ROI_WARNING"
},
{
NPP_AFFINE_QUAD_INCORRECT_WARNING
,
"NPP_AFFINE_QUAD_INCORRECT_WARNING"
},
//disabled in NPP for cuda 3.2-rc
//{ NPP_AFFINE_QUAD_CHANGED_WARNING, "NPP_AFFINE_QUAD_CHANGED_WARNING" },
//{ NPP_ADJUSTED_ROI_SIZE_WARNING, "NPP_ADJUSTED_ROI_SIZE_WARNING" },
{
NPP_DOUBLE_SIZE_WARNING
,
"NPP_DOUBLE_SIZE_WARNING"
},
{
NPP_ODD_ROI_WARNING
,
"NPP_ODD_ROI_WARNING"
}
error_entry
(
NPP_NOT_SUPPORTED_MODE_ERROR
),
error_entry
(
NPP_ROUND_MODE_NOT_SUPPORTED_ERROR
),
error_entry
(
NPP_RESIZE_NO_OPERATION_ERROR
),
error_entry
(
NPP_NOT_SUFFICIENT_COMPUTE_CAPABILITY
),
error_entry
(
NPP_BAD_ARG_ERROR
),
error_entry
(
NPP_LUT_NUMBER_OF_LEVELS_ERROR
),
error_entry
(
NPP_TEXTURE_BIND_ERROR
),
error_entry
(
NPP_COEFF_ERROR
),
error_entry
(
NPP_RECT_ERROR
),
error_entry
(
NPP_QUAD_ERROR
),
error_entry
(
NPP_WRONG_INTERSECTION_ROI_ERROR
),
error_entry
(
NPP_NOT_EVEN_STEP_ERROR
),
error_entry
(
NPP_INTERPOLATION_ERROR
),
error_entry
(
NPP_RESIZE_FACTOR_ERROR
),
error_entry
(
NPP_HAAR_CLASSIFIER_PIXEL_MATCH_ERROR
),
error_entry
(
NPP_MEMFREE_ERR
),
error_entry
(
NPP_MEMSET_ERR
),
error_entry
(
NPP_MEMCPY_ERROR
),
error_entry
(
NPP_MEM_ALLOC_ERR
),
error_entry
(
NPP_HISTO_NUMBER_OF_LEVELS_ERROR
),
error_entry
(
NPP_MIRROR_FLIP_ERR
),
error_entry
(
NPP_INVALID_INPUT
),
error_entry
(
NPP_ALIGNMENT_ERROR
),
error_entry
(
NPP_STEP_ERROR
),
error_entry
(
NPP_SIZE_ERROR
),
error_entry
(
NPP_POINTER_ERROR
),
error_entry
(
NPP_NULL_POINTER_ERROR
),
error_entry
(
NPP_CUDA_KERNEL_EXECUTION_ERROR
),
error_entry
(
NPP_NOT_IMPLEMENTED_ERROR
),
error_entry
(
NPP_ERROR
),
error_entry
(
NPP_NO_ERROR
),
error_entry
(
NPP_SUCCESS
),
error_entry
(
NPP_WARNING
),
error_entry
(
NPP_WRONG_INTERSECTION_QUAD_WARNING
),
error_entry
(
NPP_MISALIGNED_DST_ROI_WARNING
),
error_entry
(
NPP_AFFINE_QUAD_INCORRECT_WARNING
),
error_entry
(
NPP_DOUBLE_SIZE_WARNING
),
error_entry
(
NPP_ODD_ROI_WARNING
)
};
int
error_num
=
sizeof
(
npp_errors
)
/
sizeof
(
npp_errors
[
0
]);
...
...
@@ -136,8 +137,18 @@ namespace cv
void
error
(
const
char
*
error_string
,
const
char
*
file
,
const
int
line
,
const
char
*
func
)
{
//if (uncaught_exception())
cv
::
error
(
cv
::
Exception
(
CV_GpuApiCallError
,
error_string
,
func
,
file
,
line
)
);
int
code
=
CV_GpuApiCallError
;
if
(
std
::
uncaught_exception
())
{
const
char
*
errorStr
=
cvErrorStr
(
code
);
const
char
*
function
=
func
?
func
:
"unknown function"
;
std
::
cerr
<<
"OpenCV Error: "
<<
errorStr
<<
"("
<<
error_string
<<
") in "
<<
function
<<
", file "
<<
file
<<
", line "
<<
line
;
std
::
cerr
.
flush
();
}
else
cv
::
error
(
cv
::
Exception
(
code
,
error_string
,
func
,
file
,
line
)
);
}
}
}
...
...
modules/gpu/src/precomp.hpp
View file @
f2df7848
...
...
@@ -55,6 +55,7 @@
#include <vector>
#include <algorithm>
#include <sstream>
#include <exception>
#include "opencv2/gpu/gpu.hpp"
#include "opencv2/imgproc/imgproc.hpp"
...
...
@@ -68,7 +69,7 @@
#else
/* defined(HAVE_CUDA) */
static
inline
void
throw_nogpu
()
{
CV_Error
(
CV_GpuNotFound
,
"The library is compilled with
no
GPU support"
);
}
static
inline
void
throw_nogpu
()
{
CV_Error
(
CV_GpuNotFound
,
"The library is compilled with
out
GPU support"
);
}
#endif
/* defined(HAVE_CUDA) */
...
...
tests/gpu/src/gputest.hpp
View file @
f2df7848
...
...
@@ -69,8 +69,8 @@ static inline bool check_and_treat_gpu_exception(const cv::Exception& e, CvTS* t
{
switch
(
e
.
code
)
{
case
CV_GpuNot
Foun
d
:
ts
->
printf
(
CvTS
::
LOG
,
"
\n
Gpu not
found
"
);
case
CV_GpuNot
Supporte
d
:
ts
->
printf
(
CvTS
::
LOG
,
"
\n
Gpu not
supported by the library
"
);
break
;
case
CV_GpuApiCallError
:
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment