OpenCV  4.5.4
Open Source Computer Vision
Public Types | Public Member Functions | Static Public Member Functions | List of all members
cv::gapi::wip::onevpl::CfgParam Struct Reference

Public class is using for creation of onevpl::GSource instances. More...

#include <opencv2/gapi/streaming/onevpl/cfg_params.hpp>

Public Types

using name_t = std::string
 
using value_t = cv::util::variant< uint8_t, int8_t, uint16_t, int16_t, uint32_t, int32_t, uint64_t, int64_t, float_t, double_t, void *, std::string >
 

Public Member Functions

 CfgParam (const CfgParam &src)
 
 CfgParam (CfgParam &&src)
 
 ~CfgParam ()
 
const name_tget_name () const
 
const value_tget_value () const
 
bool is_major () const
 
bool operator!= (const CfgParam &rhs) const
 
bool operator< (const CfgParam &rhs) const
 
CfgParamoperator= (const CfgParam &src)
 
CfgParamoperator= (CfgParam &&src)
 
bool operator== (const CfgParam &rhs) const
 

Static Public Member Functions

template<typename ValueType >
static CfgParam create (const std::string &name, ValueType &&value, bool is_major=true)
 

Detailed Description

Public class is using for creation of onevpl::GSource instances.

Class members availaible through methods CfgParam::get_name() and CfgParam::get_value() are used by onevpl::GSource inner logic to create or find oneVPL particular implementation (software/hardware, specific API version and etc.).

Note
Because oneVPL may provide several implementations which are satisfying with multiple (or single one) CfgParam criteria therefore it is possible to configure preferred parameters. This kind of CfgParams are created using is_major = false argument in CfgParam::create method and are not used by creating oneVPL particular implementations. Instead they fill out a "score table" to select preferrable implementation from available list. Implementation are satisfying with most of these optional params would be chosen. If no one optional CfgParam params were present then first of available oneVPL implementation would be applied. Please get on https://spec.oneapi.io/versions/latest/elements/oneVPL/source/API_ref/VPL_disp_api_func.html?highlight=mfxcreateconfig#mfxsetconfigfilterproperty for using OneVPL configuration. In this schema mfxU8 *name represents CfgParam::get_name() and mfxVariant value is CfgParam::get_value()

Member Typedef Documentation

◆ name_t

◆ value_t

Constructor & Destructor Documentation

◆ CfgParam() [1/2]

cv::gapi::wip::onevpl::CfgParam::CfgParam ( const CfgParam src)

◆ CfgParam() [2/2]

cv::gapi::wip::onevpl::CfgParam::CfgParam ( CfgParam &&  src)

◆ ~CfgParam()

cv::gapi::wip::onevpl::CfgParam::~CfgParam ( )

Member Function Documentation

◆ create()

template<typename ValueType >
static CfgParam cv::gapi::wip::onevpl::CfgParam::create ( const std::string &  name,
ValueType &&  value,
bool  is_major = true 
)
inlinestatic

Create onevp::GSource configuration parameter.

Parameters
namename of parameter.
valuevalue of parameter.
is_majorTRUE if parameter MUST be provided by OneVPL inner implementation, FALSE for optional (for resolve multiple available implementations).

◆ get_name()

const name_t& cv::gapi::wip::onevpl::CfgParam::get_name ( ) const

◆ get_value()

const value_t& cv::gapi::wip::onevpl::CfgParam::get_value ( ) const

◆ is_major()

bool cv::gapi::wip::onevpl::CfgParam::is_major ( ) const

◆ operator!=()

bool cv::gapi::wip::onevpl::CfgParam::operator!= ( const CfgParam rhs) const

◆ operator<()

bool cv::gapi::wip::onevpl::CfgParam::operator< ( const CfgParam rhs) const

◆ operator=() [1/2]

CfgParam& cv::gapi::wip::onevpl::CfgParam::operator= ( const CfgParam src)

◆ operator=() [2/2]

CfgParam& cv::gapi::wip::onevpl::CfgParam::operator= ( CfgParam &&  src)

◆ operator==()

bool cv::gapi::wip::onevpl::CfgParam::operator== ( const CfgParam rhs) const

The documentation for this struct was generated from the following file: