OpenCV  4.0.1
Open Source Computer Vision
Classes | Namespaces | Macros | Typedefs | Enumerations | Functions
gkernel.hpp File Reference
#include <functional>
#include <iostream>
#include <string>
#include <type_traits>
#include <unordered_map>
#include <utility>
#include <vector>
#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>

Classes

struct  cv::detail::CompileArgTag< cv::gapi::GKernelPackage >
 
struct  cv::detail::CompileArgTag< cv::gapi::GLookupOrder >
 
class  cv::gapi::GBackend
 
struct  cv::GKernel
 
struct  cv::GKernelImpl
 
class  cv::gapi::GKernelPackage
 A container class for heterogeneous kernel implementation collections. More...
 
class  cv::GKernelType< typename, typename >
 
class  cv::GKernelType< K, std::function< R(Args...)> >
 
class  cv::GKernelTypeM< typename, typename >
 
class  cv::GKernelTypeM< K, std::function< std::tuple< R... >(Args...)> >
 
struct  std::hash< cv::gapi::GBackend >
 
struct  cv::detail::MetaHelper< typename, typename, typename >
 
struct  cv::detail::MetaHelper< K, std::tuple< Ins... >, Out >
 
struct  cv::detail::MetaHelper< K, std::tuple< Ins... >, std::tuple< Outs... > >
 
struct  cv::detail::MetaType< T >
 
struct  cv::detail::MetaType< T >
 
struct  cv::detail::MetaType< cv::GArray< U > >
 
struct  cv::detail::MetaType< cv::GMat >
 
struct  cv::detail::MetaType< cv::GScalar >
 

Namespaces

 cv
 "black box" representation of the file storage associated with a file on disk.
 
 cv::detail
 
 cv::gapi
 

Macros

#define G_ID_HELPER_BODY(Class, Id)
 
#define G_ID_HELPER_CLASS(Class)   Class##IdHelper
 
#define G_TYPED_KERNEL(Class, API, Id)
 
#define G_TYPED_KERNEL_M(Class, API, Id)
 

Typedefs

using cv::gapi::GLookupOrder = std::vector< GBackend >
 Priority list of backends to use during kernel resolution process. More...
 
using cv::GShapes = std::vector< GShape >
 
template<typename T >
using cv::detail::is_nongapi_type = std::is_same< T, typename MetaType< T >::type >
 

Enumerations

enum  cv::unite_policy {
  cv::unite_policy::REPLACE,
  cv::unite_policy::KEEP
}
 

Functions

GKernelPackage cv::gapi::combine (const GKernelPackage &lhs, const GKernelPackage &rhs, const cv::unite_policy policy)
 
template<typename T >
std::enable_if<!is_nongapi_type< T >::value, typename MetaType< T >::type >::type cv::detail::get_in_meta (const GMetaArgs &in_meta, const GArgs &, int idx)
 
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... KK>
GKernelPackage cv::gapi::kernels ()
 Create a kernel package object containing kernels specified in variadic template argument. More...
 
GLookupOrder cv::gapi::lookup_order (std::initializer_list< GBackend > &&list)
 Create a backend lookup order – priority list of backends to use during graph compilation process. More...
 
bool cv::gapi::operator!= (const GBackend &lhs, const GBackend &rhs)
 

Macro Definition Documentation

§ G_ID_HELPER_BODY

#define G_ID_HELPER_BODY (   Class,
  Id 
)
Value:
namespace detail \
{ \
struct G_ID_HELPER_CLASS(Class) \
{ \
static constexpr const char * id() {return Id;}; \
}; \
}
#define G_ID_HELPER_CLASS(Class)
Definition: gkernel.hpp:221

§ G_ID_HELPER_CLASS

#define G_ID_HELPER_CLASS (   Class)    Class##IdHelper

§ G_TYPED_KERNEL

#define G_TYPED_KERNEL (   Class,
  API,
  Id 
)
Value:
G_ID_HELPER_BODY(Class, Id) \
struct Class final: public cv::GKernelType<Class, std::function API >, \
#define G_ID_HELPER_BODY(Class, Id)
Definition: gkernel.hpp:223
#define G_ID_HELPER_CLASS(Class)
Definition: gkernel.hpp:221
Definition: gkernel.hpp:196

§ G_TYPED_KERNEL_M

#define G_TYPED_KERNEL_M (   Class,
  API,
  Id 
)
Value:
G_ID_HELPER_BODY(Class, Id) \
struct Class final: public cv::GKernelTypeM<Class, std::function API >, \
public detail::G_ID_HELPER_CLASS(Class) \
#define G_ID_HELPER_BODY(Class, Id)
Definition: gkernel.hpp:223
Definition: gkernel.hpp:50
#define G_ID_HELPER_CLASS(Class)
Definition: gkernel.hpp:221