Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Greenplum
Opencv
提交
310b1ad7
O
Opencv
项目概览
Greenplum
/
Opencv
11 个月 前同步成功
通知
7
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
O
Opencv
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
310b1ad7
编写于
8月 03, 2012
作者:
V
Vadim Pisarevsky
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
moved parallel_for_ and ParallelLoopBody to core.hpp
上级
fd906942
变更
5
显示空白变更内容
内联
并排
Showing
5 changed file
with
29 addition
and
110 deletion
+29
-110
modules/core/include/opencv2/core/core.hpp
modules/core/include/opencv2/core/core.hpp
+12
-0
modules/core/include/opencv2/core/parallel_tool.hpp
modules/core/include/opencv2/core/parallel_tool.hpp
+0
-108
modules/core/src/parallel.cpp
modules/core/src/parallel.cpp
+17
-0
modules/core/src/precomp.hpp
modules/core/src/precomp.hpp
+0
-1
modules/imgproc/src/precomp.hpp
modules/imgproc/src/precomp.hpp
+0
-1
未找到文件。
modules/core/include/opencv2/core/core.hpp
浏览文件 @
310b1ad7
...
...
@@ -4608,6 +4608,18 @@ float CommandLineParser::analyzeValue<float>(const std::string& str, bool space_
template
<
>
CV_EXPORTS
double
CommandLineParser
::
analyzeValue
<
double
>
(
const
std
::
string
&
str
,
bool
space_delete
);
/////////////////////////////// Parallel Primitives //////////////////////////////////
// a base body class
class
CV_EXPORTS
ParallelLoopBody
{
public:
virtual
void
operator
()
(
const
Range
&
range
)
const
=
0
;
virtual
~
ParallelLoopBody
();
};
CV_EXPORTS
void
parallel_for_
(
const
Range
&
range
,
const
ParallelLoopBody
&
body
);
}
#endif // __cplusplus
...
...
modules/core/include/opencv2/core/parallel_tool.hpp
已删除
100644 → 0
浏览文件 @
fd906942
/*M///////////////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING.
//
// By downloading, copying, installing or using the software you agree to this license.
// If you do not agree to this license, do not download, install,
// copy or use the software.
//
//
// License Agreement
// For Open Source Computer Vision Library
//
// Copyright (C) 2000-2008, Intel Corporation, all rights reserved.
// Copyright (C) 2009-2011, Willow Garage Inc., all rights reserved.
// Third party copyrights are property of their respective owners.
//
// Redistribution and use in source and binary forms, with or without modification,
// are permitted provided that the following conditions are met:
//
// * Redistribution's of source code must retain the above copyright notice,
// this list of conditions and the following disclaimer.
//
// * Redistribution's in binary form must reproduce the above copyright notice,
// this list of conditions and the following disclaimer in the documentation
// and/or other materials provided with the distribution.
//
// * The name of the copyright holders may not be used to endorse or promote products
// derived from this software without specific prior written permission.
//
// This software is provided by the copyright holders and contributors "as is" and
// any express or implied warranties, including, but not limited to, the implied
// warranties of merchantability and fitness for a particular purpose are disclaimed.
// In no event shall the Intel Corporation or contributors be liable for any direct,
// indirect, incidental, special, exemplary, or consequential damages
// (including, but not limited to, procurement of substitute goods or services;
// loss of use, data, or profits; or business interruption) however caused
// and on any theory of liability, whether in contract, strict liability,
// or tort (including negligence or otherwise) arising in any way out of
// the use of this software, even if advised of the possibility of such damage.
//
//M*/
#ifndef __OPENCV_PARALLEL_TOOL_HPP__
#define __OPENCV_PARALLEL_TOOL_HPP__
#ifdef HAVE_CVCONFIG_H
# include <cvconfig.h>
#endif // HAVE_CVCONFIG_H
/*
HAVE_TBB - using TBB
HAVE_GCD - using GCD
HAVE_OPENMP - using OpenMP
HAVE_CONCURRENCY - using visual studio 2010 concurrency
*/
#ifdef HAVE_TBB
# include "tbb/tbb_stddef.h"
# if TBB_VERSION_MAJOR*100 + TBB_VERSION_MINOR >= 202
# include "tbb/tbb.h"
# include "tbb/task.h"
# undef min
# undef max
# else
# undef HAVE_TBB
# endif // end TBB version
#endif // HAVE_TBB
#ifdef __cplusplus
namespace
cv
{
// a base body class
class
CV_EXPORTS
ParallelLoopBody
{
public:
virtual
void
operator
()
(
const
Range
&
range
)
const
=
0
;
virtual
~
ParallelLoopBody
();
};
CV_EXPORTS
void
parallel_for_
(
const
Range
&
range
,
const
ParallelLoopBody
&
body
);
template
<
typename
Iterator
,
typename
Body
>
inline
CV_EXPORTS
void
parallel_do_
(
Iterator
first
,
Iterator
last
,
const
Body
&
body
)
{
#ifdef HAVE_TBB
tbb
::
parallel_do
(
first
,
last
,
body
);
#else
for
(
;
first
!=
last
;
++
first
)
body
(
*
first
);
#endif // HAVE_TBB
}
template
<
typename
Body
>
inline
CV_EXPORTS
void
parallel_reduce_
(
const
Range
&
range
,
Body
&
body
)
{
#ifdef HAVE_TBB
tbb
::
parallel_reduce
(
tbb
::
blocked_range
<
int
>
(
range
.
start
,
range
.
end
),
body
);
#else
body
(
range
);
#endif // end HAVE_TBB
}
}
// namespace cv
#endif // __cplusplus
#endif // __OPENCV_PARALLEL_TOOL_HPP__
modules/core/src/parallel
_tool
.cpp
→
modules/core/src/parallel.cpp
浏览文件 @
310b1ad7
...
...
@@ -48,8 +48,25 @@
# include <omp.h>
#elif defined HAVE_GCD
# include <dispatch/dispatch.h>
#elif defined HAVE_TBB
# include "tbb/tbb_stddef.h"
# if TBB_VERSION_MAJOR*100 + TBB_VERSION_MINOR >= 202
# include "tbb/tbb.h"
# include "tbb/task.h"
# undef min
# undef max
# else
# undef HAVE_TBB
# endif // end TBB version
#endif // HAVE_CONCURRENCY
/*
HAVE_TBB - using TBB
HAVE_GCD - using GCD
HAVE_OPENMP - using OpenMP
HAVE_CONCURRENCY - using visual studio 2010 concurrency
*/
namespace
cv
{
ParallelLoopBody
::~
ParallelLoopBody
()
{
}
...
...
modules/core/src/precomp.hpp
浏览文件 @
310b1ad7
...
...
@@ -50,7 +50,6 @@
#include "opencv2/core/core.hpp"
#include "opencv2/core/core_c.h"
#include "opencv2/core/internal.hpp"
#include "opencv2/core/parallel_tool.hpp"
#include <assert.h>
#include <ctype.h>
...
...
modules/imgproc/src/precomp.hpp
浏览文件 @
310b1ad7
...
...
@@ -50,7 +50,6 @@
#include "opencv2/imgproc/imgproc.hpp"
#include "opencv2/imgproc/imgproc_c.h"
#include "opencv2/core/internal.hpp"
#include "opencv2/core/parallel_tool.hpp"
#include <math.h>
#include <assert.h>
#include <string.h>
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录