OpenCV  4.10.0
开源计算机视觉
加载中...
搜索中...
无匹配项
| 命名空间 | | 类型定义 | 枚举
intrin.hpp 文件参考
#include <cmath>
#include <float.h>
#include <stdlib.h>
#include "opencv2/core/cvdef.h"
#include "opencv2/core/hal/intrin_cpp.hpp"
intrin.hpp 的包含依赖关系图
此图显示了哪些文件直接或间接包含此文件

struct  cv::V_TypeTraits< _Tp >
 
struct  cv::V_TypeTraits< double >
 
struct  cv::V_TypeTraits< float >
 
struct  cv::V_TypeTraits< int64 >
 
struct  cv::V_TypeTraits< schar >
 
struct  cv::V_TypeTraits< short >
 
struct  cv::V_TypeTraits< uchar >
 
struct  cv::V_TypeTraits< uint64 >
 
struct  cv::V_TypeTraits< unsigned >
 
struct  cv::V_TypeTraits< ushort >
 

命名空间

namespace  cv
 “黑盒”表示与磁盘上文件关联的文件存储。
 
namespace  cv::hal
 
namespace  simd512
 

#define CV_INTRIN_DEF_TYPE_TRAITS(type, int_type_, uint_type_, abs_type_, w_type_, q_type_, sum_type_)
 
#define CV_INTRIN_DEF_TYPE_TRAITS_NO_Q_TYPE(type, int_type_, uint_type_, abs_type_, w_type_, sum_type_)
 
#define CV_SIMD   1
 
#define CV_SIMD_64F   CV_SIMD512_64F
 
#define CV_SIMD_FP16   CV_SIMD512_FP16
 
#define CV_SIMD_WIDTH   64
 
#define OPENCV_HAL_1ST(a, b)   (a)
 
#define OPENCV_HAL_ADD(a, b)   ((a) + (b))
 
#define OPENCV_HAL_AND(a, b)   ((a) & (b))
 
#define OPENCV_HAL_NOP(a)   (a)
 
#define VXPREFIX(func)   v512##func
 

类型定义

typedef v_float32x16 simd512::v_float32
 最大可用矢量寄存器容量 32 位浮点值(单精度)
 
typedef v_float64x8 simd512::v_float64
 最大可用矢量寄存器容量 64 位浮点值(双精度)
 
typedef v_int16x32 simd512::v_int16
 最大可用矢量寄存器容量 16 位有符号整数值。
 
typedef v_int32x16 simd512::v_int32
 最大可用矢量寄存器容量 32 位有符号整数值。
 
typedef v_int64x8 simd512::v_int64
 最大可用矢量寄存器容量 64 位有符号整数值。
 
typedef v_int8x64 simd512::v_int8
 最大可用矢量寄存器容量 8 位有符号整数值。
 
typedef v_uint16x32 simd512::v_uint16
 最大可用矢量寄存器容量 16 位无符号整数值。
 
typedef v_uint32x16 simd512::v_uint32
 最大可用矢量寄存器容量 32 位无符号整数值。
 
typedef v_uint64x8 simd512::v_uint64
 最大可用矢量寄存器容量 64 位无符号整数值。
 
typedef v_uint8x64 simd512::v_uint8
 最大可用矢量寄存器容量 8 位无符号整数值。
 

枚举

enum  cv::hal::StoreMode {
  cv::hal::STORE_UNALIGNED = 0 ,
  cv::hal::STORE_ALIGNED = 1 ,
  cv::hal::STORE_ALIGNED_NOCACHE = 2
}
 

宏定义文档

◆ CV_INTRIN_DEF_TYPE_TRAITS

#define CV_INTRIN_DEF_TYPE_TRAITS (   type,
  int_type_,
  uint_type_,
  abs_type_,
  w_type_,
  q_type_,
  sum_type_ 
)
template<> struct V_TypeTraits<type> \
{ \
typedef type value_type; \
typedef int_type_ int_type; \
typedef abs_type_ abs_type; \
typedef uint_type_ uint_type; \
typedef w_type_ w_type; \
typedef q_type_ q_type; \
typedef sum_type_ sum_type; \
\
static inline int_type reinterpret_int(type x) \
{ \
union { type l; int_type i; } v; \
v.l = x; \
return v.i; \
} \
\
static inline type reinterpret_from_int(int_type x) \
{ \
union { type l; int_type i; } v; \
v.i = x; \
return v.l; \
} \
}

◆ CV_INTRIN_DEF_TYPE_TRAITS_NO_Q_TYPE

#define CV_INTRIN_DEF_TYPE_TRAITS_NO_Q_TYPE (   type,
  int_type_,
  uint_type_,
  abs_type_,
  w_type_,
  sum_type_ 
)
template<> struct V_TypeTraits<type> \
{ \
typedef type value_type; \
typedef int_type_ int_type; \
typedef abs_type_ abs_type; \
typedef uint_type_ uint_type; \
typedef w_type_ w_type; \
typedef sum_type_ sum_type; \
\
static inline int_type reinterpret_int(type x) \
{ \
union { type l; int_type i; } v; \
v.l = x; \
return v.i; \
} \
\
static inline type reinterpret_from_int(int_type x) \
{ \
union { type l; int_type i; } v; \
v.i = x; \
return v.l; \
} \
}

◆ CV_SIMD

#define CV_SIMD   1

◆ CV_SIMD_64F

#define CV_SIMD_64F   CV_SIMD512_64F

◆ CV_SIMD_FP16

#define CV_SIMD_FP16   CV_SIMD512_FP16

◆ CV_SIMD_WIDTH

#define CV_SIMD_WIDTH   64

◆ OPENCV_HAL_1ST

#define OPENCV_HAL_1ST (   a,
 
)    (a)

◆ OPENCV_HAL_ADD

#define OPENCV_HAL_ADD (   a,
 
)    ((a) + (b))

◆ OPENCV_HAL_AND

#define OPENCV_HAL_AND (   a,
 
)    ((a) & (b))

◆ OPENCV_HAL_NOP

#define OPENCV_HAL_NOP (   a)    (a)

◆ VXPREFIX

#define VXPREFIX (   func)    v512##func