OpenCV 4.12.0
开源计算机视觉
加载中...
搜索中...
无匹配项
gkernel.hpp 文件参考
#include <functional>
#include <iostream>
#include <string>
#include <type_traits>
#include <unordered_map>
#include <utility>
#include <opencv2/gapi/gcommon.hpp>
#include <opencv2/gapi/util/util.hpp>
#include <opencv2/gapi/gcall.hpp>
#include <opencv2/gapi/garg.hpp>
#include <opencv2/gapi/gmetaarg.hpp>
#include <opencv2/gapi/gtype_traits.hpp>
#include <opencv2/gapi/util/compiler_hints.hpp>
#include <opencv2/gapi/gtransform.hpp>
gkernel.hpp 的包含依赖图
此图显示了哪些文件直接或间接包含了此文件

结构体  cv::detail::CompileArgTag< cv::gapi::use_only >
 
结构体  cv::detail::CompileArgTag< cv::GKernelPackage >
 
结构体  cv::GKernel
 
结构体  cv::GKernelImpl
 
类  cv::GKernelPackage
 一个用于异构内核实现集合和图转换的容器类。更多...
 
类  cv::GKernelType< K, std::function< R(Args...)> >
 
类  cv::GKernelTypeM< K, std::function< std::tuple< R... >(Args...)> >
 
结构体  cv::GTypeInfo
 
结构体  std::hash< cv::gapi::GBackend >
 
类  cv::detail::KernelTypeMedium< K, std::function< R(Args...)> >
 
类  cv::detail::KernelTypeMedium< K, std::function< std::tuple< R... >(Args...)> >
 
结构体  cv::detail::MetaHelper< K, std::tuple< Ins... >, Out >
 
结构体  cv::detail::MetaHelper< K, std::tuple< Ins... >, std::tuple< Outs... > >
 
结构体  cv::detail::MetaType< T >
 
结构体  cv::detail::MetaType< cv::GArray< U > >
 
结构体  cv::detail::MetaType< cv::GFrame >
 
结构体  cv::detail::MetaType< cv::GMat >
 
结构体  cv::detail::MetaType< cv::GMatP >
 
结构体  cv::detail::MetaType< cv::GOpaque< U > >
 
结构体  cv::detail::MetaType< cv::GScalar >
 
结构体  cv::detail::NoTag
 
结构体  cv::gapi::use_only
 cv::gapi::use_only() 是一个特殊的组合器,它提示 G-API 仅使用在 cv::GComputation::compile() 中指定的内核(而不是用该包扩展默认可用的内核)。更多...
 
结构体  cv::detail::Yield< cv::GArray< U > >
 
结构体  cv::detail::Yield< cv::GMat >
 
结构体  cv::detail::Yield< cv::GMatP >
 
结构体  cv::detail::Yield< cv::GOpaque< U > >
 
结构体  cv::detail::Yield< cv::GScalar >
 
结构体  cv::detail::Yield< GFrame >
 

命名空间

命名空间  cv
 
命名空间  cv::detail
 
命名空间  cv::gapi
 
命名空间  std
 STL 命名空间。
 

#define __WRAP_VAARGS(x)
 
#define COMBINE_SIGNATURE(...)
 
#define G_API_OP   G_TYPED_KERNEL
 
#define G_API_OP_M   G_API_OP
 
#define G_TYPED_KERNEL(Class, ...)
 
#define G_TYPED_KERNEL_HELPER(Class, API, Id)
 
#define G_TYPED_KERNEL_HELPER_10(Class, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, Id)
 
#define G_TYPED_KERNEL_HELPER_2(Class, _1, _2, Id)
 
#define G_TYPED_KERNEL_HELPER_3(Class, _1, _2, _3, Id)
 
#define G_TYPED_KERNEL_HELPER_4(Class, _1, _2, _3, _4, Id)
 
#define G_TYPED_KERNEL_HELPER_5(Class, _1, _2, _3, _4, _5, Id)
 
#define G_TYPED_KERNEL_HELPER_6(Class, _1, _2, _3, _4, _5, _6, Id)
 
#define G_TYPED_KERNEL_HELPER_7(Class, _1, _2, _3, _4, _5, _6, _7, Id)
 
#define G_TYPED_KERNEL_HELPER_8(Class, _1, _2, _3, _4, _5, _6, _7, _8, Id)
 
#define G_TYPED_KERNEL_HELPER_9(Class, _1, _2, _3, _4, _5, _6, _7, _8, _9, Id)
 
#define G_TYPED_KERNEL_M   G_TYPED_KERNEL
 
#define GET_G_TYPED_KERNEL(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, NAME, ...)
 

类型定义

using cv::GCtors = std::vector<detail::HostCtor>
 
using cv::gapi::GKernelPackage = cv::GKernelPackage
 
using cv::GKinds = std::vector<cv::detail::OpaqueKind>
 
using cv::GShapes = std::vector<GShape>
 
template<typename T >
using cv::detail::is_nongapi_type = std::is_same<T, typename MetaType<T>::type>
 

函数

template<typename... Ps>
cv::GKernelPackage cv::gapi::combine (const cv::GKernelPackage &a, const cv::GKernelPackage &b, Ps &&... rest)
 将多个 G-API 核包组合成一个。
 
cv::GKernelPackage cv::gapi::combine (const cv::GKernelPackage &lhs, const cv::GKernelPackage &rhs)
 
template<typename T >
std::enable_if< is_nongapi_type< T >::value, T >::type cv::detail::get_in_meta (const GMetaArgs &, const GArgs &in_args, int idx)
 
template<typename T >
std::enable_if<!is_nongapi_type< T >::value, typenameMetaType< T >::type >::type cv::detail::get_in_meta (const GMetaArgs &in_meta, const GArgs &, int idx)
 
template<typename... KK>
GKernelPackage cv::gapi::kernels ()
 创建一个包含可变参数模板中指定的内核和转换的内核包对象。
 
template<typename... FF>
GKernelPackage cv::gapi::kernels (FF &... functors)
 
bool cv::gapi::operator!= (const GBackend &lhs, const GBackend &rhs)
 

变量

class GAPI_EXPORTS_W_SIMPLE cv::GKernelPackage
 

宏定义文档

◆ __WRAP_VAARGS

#define __WRAP_VAARGS ( x)
x

◆ COMBINE_SIGNATURE

#define COMBINE_SIGNATURE ( ...)
__VA_ARGS__

◆ G_API_OP

#define G_API_OP   G_TYPED_KERNEL

◆ G_API_OP_M

#define G_API_OP_M   G_API_OP

◆ G_TYPED_KERNEL

#define G_TYPED_KERNEL ( Class,
... )
G_TYPED_KERNEL_HELPER)(Class, __VA_ARGS__)) \
#define G_TYPED_KERNEL_HELPER_7(Class, _1, _2, _3, _4, _5, _6, _7, Id)
定义 gkernel.hpp:329
#define GET_G_TYPED_KERNEL(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, NAME,...)
定义 gkernel.hpp:294
#define G_TYPED_KERNEL_HELPER_4(Class, _1, _2, _3, _4, Id)
定义 gkernel.hpp:320
#define G_TYPED_KERNEL_HELPER_9(Class, _1, _2, _3, _4, _5, _6, _7, _8, _9, Id)
定义 gkernel.hpp:335
#define G_TYPED_KERNEL_HELPER_6(Class, _1, _2, _3, _4, _5, _6, Id)
定义 gkernel.hpp:326
#define G_TYPED_KERNEL_HELPER_5(Class, _1, _2, _3, _4, _5, Id)
定义 gkernel.hpp:323
#define G_TYPED_KERNEL_HELPER_8(Class, _1, _2, _3, _4, _5, _6, _7, _8, Id)
定义 gkernel.hpp:332
#define G_TYPED_KERNEL_HELPER_2(Class, _1, _2, Id)
定义 gkernel.hpp:314
#define G_TYPED_KERNEL_HELPER(Class, API, Id)
定义 gkernel.hpp:308
#define G_TYPED_KERNEL_HELPER_3(Class, _1, _2, _3, Id)
定义 gkernel.hpp:317
#define G_TYPED_KERNEL_HELPER_10(Class, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, Id)
定义 gkernel.hpp:338
#define __WRAP_VAARGS(x)
定义 gkernel.hpp:297

声明一个新的 G-API 操作。详情请参见 Kernel API

参数
Class此操作的类型名称。

◆ G_TYPED_KERNEL_HELPER

#define G_TYPED_KERNEL_HELPER ( Class,
API,
Id )
G_ID_HELPER_BODY(Class, Id) \
struct Class final: public cv::detail::KernelTypeMedium<Class, std::function API >, \
public G_ID_HELPER_CLASS(Class)
定义 gkernel.hpp:266

G_TYPED_KERNEL 的辅助宏,用于声明新的 G-API 操作。详情请参见 Kernel API

参数
Class此操作的类型名称。
API操作的 `std::function<>` 类似签名;返回类型为单个值或多个值的元组。
Id操作的字符串标识符。必须是唯一的。

◆ G_TYPED_KERNEL_HELPER_10

#define G_TYPED_KERNEL_HELPER_10 ( Class,
_1,
_2,
_3,
_4,
_5,
_6,
_7,
_8,
_9,
_10,
Id )
G_TYPED_KERNEL_HELPER(Class, COMBINE_SIGNATURE(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10), Id)
#define COMBINE_SIGNATURE(...)
定义 gkernel.hpp:295

◆ G_TYPED_KERNEL_HELPER_2

#define G_TYPED_KERNEL_HELPER_2 ( Class,
_1,
_2,
Id )

◆ G_TYPED_KERNEL_HELPER_3

#define G_TYPED_KERNEL_HELPER_3 ( Class,
_1,
_2,
_3,
Id )

◆ G_TYPED_KERNEL_HELPER_4

#define G_TYPED_KERNEL_HELPER_4 ( Class,
_1,
_2,
_3,
_4,
Id )
G_TYPED_KERNEL_HELPER(Class, COMBINE_SIGNATURE(_1, _2, _3, _4), Id)

◆ G_TYPED_KERNEL_HELPER_5

#define G_TYPED_KERNEL_HELPER_5 ( Class,
_1,
_2,
_3,
_4,
_5,
Id )
G_TYPED_KERNEL_HELPER(Class, COMBINE_SIGNATURE(_1, _2, _3, _4, _5), Id)

◆ G_TYPED_KERNEL_HELPER_6

#define G_TYPED_KERNEL_HELPER_6 ( Class,
_1,
_2,
_3,
_4,
_5,
_6,
Id )
G_TYPED_KERNEL_HELPER(Class, COMBINE_SIGNATURE(_1, _2, _3, _4, _5, _6), Id)

◆ G_TYPED_KERNEL_HELPER_7

#define G_TYPED_KERNEL_HELPER_7 ( Class,
_1,
_2,
_3,
_4,
_5,
_6,
_7,
Id )
G_TYPED_KERNEL_HELPER(Class, COMBINE_SIGNATURE(_1, _2, _3, _4, _5, _6, _7), Id)

◆ G_TYPED_KERNEL_HELPER_8

#define G_TYPED_KERNEL_HELPER_8 ( Class,
_1,
_2,
_3,
_4,
_5,
_6,
_7,
_8,
Id )
G_TYPED_KERNEL_HELPER(Class, COMBINE_SIGNATURE(_1, _2, _3, _4, _5, _6, _7, _8), Id)

◆ G_TYPED_KERNEL_HELPER_9

#define G_TYPED_KERNEL_HELPER_9 ( Class,
_1,
_2,
_3,
_4,
_5,
_6,
_7,
_8,
_9,
Id )
G_TYPED_KERNEL_HELPER(Class, COMBINE_SIGNATURE(_1, _2, _3, _4, _5, _6, _7, _8, _9), Id)

◆ G_TYPED_KERNEL_M

#define G_TYPED_KERNEL_M   G_TYPED_KERNEL

声明一个新的 G-API 操作。详情请参见 Kernel API

已弃用
此宏已弃用,请改用 `G_TYPED_KERNEL`,它用于声明任何 G-API 操作。
参数
Class此操作的类型名称。

◆ GET_G_TYPED_KERNEL

#define GET_G_TYPED_KERNEL ( _1,
_2,
_3,
_4,
_5,
_6,
_7,
_8,
_9,
_10,
_11,
NAME,
... )
NAME