mirror of
https://github.com/morgan9e/FreeRDP
synced 2026-04-14 00:14:11 +09:00
[primitives] rename function pointer types
* Remove __ prefix, reserved identifiers * Add drop in replacement for compatibility * Clean up SSE macros
This commit is contained in:
@@ -84,24 +84,24 @@ typedef enum
|
||||
} avc444_frame_type;
|
||||
|
||||
/* Function prototypes for all of the supported primitives. */
|
||||
typedef pstatus_t (*__copy_t)(const void* WINPR_RESTRICT pSrc, void* WINPR_RESTRICT pDst,
|
||||
INT32 bytes);
|
||||
typedef pstatus_t (*__copy_8u_t)(const BYTE* WINPR_RESTRICT pSrc, BYTE* WINPR_RESTRICT pDst,
|
||||
INT32 len);
|
||||
typedef pstatus_t (*__copy_8u_AC4r_t)(const BYTE* WINPR_RESTRICT pSrc, INT32 srcStep, /* bytes */
|
||||
BYTE* WINPR_RESTRICT pDst, INT32 dstStep, /* bytes */
|
||||
INT32 width, INT32 height); /* pixels */
|
||||
typedef pstatus_t (*__set_8u_t)(BYTE val, BYTE* WINPR_RESTRICT pDst, UINT32 len);
|
||||
typedef pstatus_t (*__set_32s_t)(INT32 val, INT32* WINPR_RESTRICT pDst, UINT32 len);
|
||||
typedef pstatus_t (*__set_32u_t)(UINT32 val, UINT32* WINPR_RESTRICT pDst, UINT32 len);
|
||||
typedef pstatus_t (*__zero_t)(void* WINPR_RESTRICT pDst, size_t bytes);
|
||||
typedef pstatus_t (*__alphaComp_argb_t)(const BYTE* WINPR_RESTRICT pSrc1, UINT32 src1Step,
|
||||
const BYTE* WINPR_RESTRICT pSrc2, UINT32 src2Step,
|
||||
BYTE* WINPR_RESTRICT pDst, UINT32 dstStep, UINT32 width,
|
||||
UINT32 height);
|
||||
typedef pstatus_t (*__add_16s_t)(const INT16* WINPR_RESTRICT pSrc1,
|
||||
const INT16* WINPR_RESTRICT pSrc2, INT16* WINPR_RESTRICT pDst,
|
||||
UINT32 len);
|
||||
typedef pstatus_t (*fn_copy_t)(const void* WINPR_RESTRICT pSrc, void* WINPR_RESTRICT pDst,
|
||||
INT32 bytes);
|
||||
typedef pstatus_t (*fn_copy_8u_t)(const BYTE* WINPR_RESTRICT pSrc, BYTE* WINPR_RESTRICT pDst,
|
||||
INT32 len);
|
||||
typedef pstatus_t (*fn_copy_8u_AC4r_t)(const BYTE* WINPR_RESTRICT pSrc, INT32 srcStep, /* bytes */
|
||||
BYTE* WINPR_RESTRICT pDst, INT32 dstStep, /* bytes */
|
||||
INT32 width, INT32 height); /* pixels */
|
||||
typedef pstatus_t (*fn_set_8u_t)(BYTE val, BYTE* WINPR_RESTRICT pDst, UINT32 len);
|
||||
typedef pstatus_t (*fn_set_32s_t)(INT32 val, INT32* WINPR_RESTRICT pDst, UINT32 len);
|
||||
typedef pstatus_t (*fn_set_32u_t)(UINT32 val, UINT32* WINPR_RESTRICT pDst, UINT32 len);
|
||||
typedef pstatus_t (*fn_zero_t)(void* WINPR_RESTRICT pDst, size_t bytes);
|
||||
typedef pstatus_t (*fn_alphaComp_argb_t)(const BYTE* WINPR_RESTRICT pSrc1, UINT32 src1Step,
|
||||
const BYTE* WINPR_RESTRICT pSrc2, UINT32 src2Step,
|
||||
BYTE* WINPR_RESTRICT pDst, UINT32 dstStep, UINT32 width,
|
||||
UINT32 height);
|
||||
typedef pstatus_t (*fn_add_16s_t)(const INT16* WINPR_RESTRICT pSrc1,
|
||||
const INT16* WINPR_RESTRICT pSrc2, INT16* WINPR_RESTRICT pDst,
|
||||
UINT32 len);
|
||||
/**
|
||||
* @brief Add INT16 from pSrcDst2 to pSrcDst1 and store in both arrays
|
||||
* @param pSrcDst1 A pointer to the array of INT16 to add to
|
||||
@@ -110,8 +110,8 @@ typedef pstatus_t (*__add_16s_t)(const INT16* WINPR_RESTRICT pSrc1,
|
||||
* @return \b <=0 for failure, success otherwise
|
||||
* @since version 3.6.0
|
||||
*/
|
||||
typedef pstatus_t (*__add_16s_inplace_t)(INT16* WINPR_RESTRICT pSrcDst1,
|
||||
INT16* WINPR_RESTRICT pSrcDst2, UINT32 len);
|
||||
typedef pstatus_t (*fn_add_16s_inplace_t)(INT16* WINPR_RESTRICT pSrcDst1,
|
||||
INT16* WINPR_RESTRICT pSrcDst2, UINT32 len);
|
||||
|
||||
/**
|
||||
* @brief Copy (sub)image data without overlapping
|
||||
@@ -133,126 +133,165 @@ typedef pstatus_t (*__add_16s_inplace_t)(INT16* WINPR_RESTRICT pSrcDst1,
|
||||
* @return \b <=0 for failure, success otherwise
|
||||
* @since version 3.6.0
|
||||
*/
|
||||
typedef pstatus_t (*__copy_no_overlap_t)(BYTE* WINPR_RESTRICT pDstData, DWORD DstFormat,
|
||||
UINT32 nDstStep, UINT32 nXDst, UINT32 nYDst, UINT32 nWidth,
|
||||
UINT32 nHeight, const BYTE* WINPR_RESTRICT pSrcData,
|
||||
DWORD SrcFormat, UINT32 nSrcStep, UINT32 nXSrc,
|
||||
UINT32 nYSrc, const gdiPalette* WINPR_RESTRICT palette,
|
||||
UINT32 flags);
|
||||
typedef pstatus_t (*__lShiftC_16s_inplace_t)(INT16* WINPR_RESTRICT pSrcDst, UINT32 val, UINT32 len);
|
||||
typedef pstatus_t (*__lShiftC_16s_t)(const INT16* WINPR_RESTRICT pSrc, UINT32 val,
|
||||
typedef pstatus_t (*fn_copy_no_overlap_t)(BYTE* WINPR_RESTRICT pDstData, DWORD DstFormat,
|
||||
UINT32 nDstStep, UINT32 nXDst, UINT32 nYDst,
|
||||
UINT32 nWidth, UINT32 nHeight,
|
||||
const BYTE* WINPR_RESTRICT pSrcData, DWORD SrcFormat,
|
||||
UINT32 nSrcStep, UINT32 nXSrc, UINT32 nYSrc,
|
||||
const gdiPalette* WINPR_RESTRICT palette, UINT32 flags);
|
||||
typedef pstatus_t (*fn_lShiftC_16s_inplace_t)(INT16* WINPR_RESTRICT pSrcDst, UINT32 val,
|
||||
UINT32 len);
|
||||
typedef pstatus_t (*fn_lShiftC_16s_t)(const INT16* WINPR_RESTRICT pSrc, UINT32 val,
|
||||
INT16* WINPR_RESTRICT pSrcDst, UINT32 len);
|
||||
typedef pstatus_t (*fn_lShiftC_16u_t)(const UINT16* WINPR_RESTRICT pSrc, UINT32 val,
|
||||
UINT16* WINPR_RESTRICT pSrcDst, UINT32 len);
|
||||
typedef pstatus_t (*fn_rShiftC_16s_t)(const INT16* WINPR_RESTRICT pSrc, UINT32 val,
|
||||
INT16* WINPR_RESTRICT pSrcDst, UINT32 len);
|
||||
typedef pstatus_t (*fn_rShiftC_16u_t)(const UINT16* WINPR_RESTRICT pSrc, UINT32 val,
|
||||
UINT16* WINPR_RESTRICT pSrcDst, UINT32 len);
|
||||
typedef pstatus_t (*fn_shiftC_16s_t)(const INT16* WINPR_RESTRICT pSrc, INT32 val,
|
||||
INT16* WINPR_RESTRICT pSrcDst, UINT32 len);
|
||||
typedef pstatus_t (*__lShiftC_16u_t)(const UINT16* WINPR_RESTRICT pSrc, UINT32 val,
|
||||
typedef pstatus_t (*fn_shiftC_16u_t)(const UINT16* WINPR_RESTRICT pSrc, INT32 val,
|
||||
UINT16* WINPR_RESTRICT pSrcDst, UINT32 len);
|
||||
typedef pstatus_t (*__rShiftC_16s_t)(const INT16* WINPR_RESTRICT pSrc, UINT32 val,
|
||||
INT16* WINPR_RESTRICT pSrcDst, UINT32 len);
|
||||
typedef pstatus_t (*__rShiftC_16u_t)(const UINT16* WINPR_RESTRICT pSrc, UINT32 val,
|
||||
UINT16* WINPR_RESTRICT pSrcDst, UINT32 len);
|
||||
typedef pstatus_t (*__shiftC_16s_t)(const INT16* WINPR_RESTRICT pSrc, INT32 val,
|
||||
INT16* WINPR_RESTRICT pSrcDst, UINT32 len);
|
||||
typedef pstatus_t (*__shiftC_16u_t)(const UINT16* WINPR_RESTRICT pSrc, INT32 val,
|
||||
UINT16* WINPR_RESTRICT pSrcDst, UINT32 len);
|
||||
typedef pstatus_t (*__sign_16s_t)(const INT16* WINPR_RESTRICT pSrc, INT16* WINPR_RESTRICT pSrcDst,
|
||||
UINT32 len);
|
||||
typedef pstatus_t (*__yCbCrToRGB_16s8u_P3AC4R_t)(const INT16* WINPR_RESTRICT pSrc[3],
|
||||
UINT32 srcStep, BYTE* WINPR_RESTRICT pDst,
|
||||
UINT32 dstStep, UINT32 DstFormat,
|
||||
typedef pstatus_t (*fn_sign_16s_t)(const INT16* WINPR_RESTRICT pSrc, INT16* WINPR_RESTRICT pSrcDst,
|
||||
UINT32 len);
|
||||
typedef pstatus_t (*fn_yCbCrToRGB_16s8u_P3AC4R_t)(const INT16* WINPR_RESTRICT pSrc[3],
|
||||
UINT32 srcStep, BYTE* WINPR_RESTRICT pDst,
|
||||
UINT32 dstStep, UINT32 DstFormat,
|
||||
const prim_size_t* WINPR_RESTRICT roi);
|
||||
typedef pstatus_t (*fn_yCbCrToRGB_16s16s_P3P3_t)(const INT16* WINPR_RESTRICT pSrc[3], INT32 srcStep,
|
||||
INT16* WINPR_RESTRICT pDst[3], INT32 dstStep,
|
||||
const prim_size_t* WINPR_RESTRICT roi);
|
||||
typedef pstatus_t (*__yCbCrToRGB_16s16s_P3P3_t)(const INT16* WINPR_RESTRICT pSrc[3], INT32 srcStep,
|
||||
INT16* WINPR_RESTRICT pDst[3], INT32 dstStep,
|
||||
typedef pstatus_t (*fn_RGBToYCbCr_16s16s_P3P3_t)(const INT16* WINPR_RESTRICT pSrc[3], INT32 srcStep,
|
||||
INT16* WINPR_RESTRICT pDst[3], INT32 dstStep,
|
||||
const prim_size_t* WINPR_RESTRICT roi);
|
||||
typedef pstatus_t (*fn_RGBToRGB_16s8u_P3AC4R_t)(const INT16* WINPR_RESTRICT pSrc[3], UINT32 srcStep,
|
||||
BYTE* WINPR_RESTRICT pDst, UINT32 dstStep,
|
||||
UINT32 DstFormat,
|
||||
const prim_size_t* WINPR_RESTRICT roi);
|
||||
typedef pstatus_t (*__RGBToYCbCr_16s16s_P3P3_t)(const INT16* WINPR_RESTRICT pSrc[3], INT32 srcStep,
|
||||
INT16* WINPR_RESTRICT pDst[3], INT32 dstStep,
|
||||
typedef pstatus_t (*fn_YCoCgToRGB_8u_AC4R_t)(const BYTE* WINPR_RESTRICT pSrc, INT32 srcStep,
|
||||
BYTE* WINPR_RESTRICT pDst, UINT32 DstFormat,
|
||||
INT32 dstStep, UINT32 width, UINT32 height,
|
||||
UINT8 shift, BOOL withAlpha);
|
||||
typedef pstatus_t (*fn_RGB565ToARGB_16u32u_C3C4_t)(const UINT16* WINPR_RESTRICT pSrc, INT32 srcStep,
|
||||
UINT32* WINPR_RESTRICT pDst, INT32 dstStep,
|
||||
UINT32 width, UINT32 height, UINT32 format);
|
||||
typedef pstatus_t (*fn_YUV420ToRGB_8u_P3AC4R_t)(const BYTE* WINPR_RESTRICT pSrc[3],
|
||||
const UINT32 srcStep[3], BYTE* WINPR_RESTRICT pDst,
|
||||
UINT32 dstStep, UINT32 DstFormat,
|
||||
const prim_size_t* WINPR_RESTRICT roi);
|
||||
typedef pstatus_t (*__RGBToRGB_16s8u_P3AC4R_t)(const INT16* WINPR_RESTRICT pSrc[3], UINT32 srcStep,
|
||||
BYTE* WINPR_RESTRICT pDst, UINT32 dstStep,
|
||||
UINT32 DstFormat,
|
||||
const prim_size_t* WINPR_RESTRICT roi);
|
||||
typedef pstatus_t (*__YCoCgToRGB_8u_AC4R_t)(const BYTE* WINPR_RESTRICT pSrc, INT32 srcStep,
|
||||
BYTE* WINPR_RESTRICT pDst, UINT32 DstFormat,
|
||||
INT32 dstStep, UINT32 width, UINT32 height, UINT8 shift,
|
||||
BOOL withAlpha);
|
||||
typedef pstatus_t (*__RGB565ToARGB_16u32u_C3C4_t)(const UINT16* WINPR_RESTRICT pSrc, INT32 srcStep,
|
||||
UINT32* WINPR_RESTRICT pDst, INT32 dstStep,
|
||||
UINT32 width, UINT32 height, UINT32 format);
|
||||
typedef pstatus_t (*__YUV420ToRGB_8u_P3AC4R_t)(const BYTE* WINPR_RESTRICT pSrc[3],
|
||||
const UINT32 srcStep[3], BYTE* WINPR_RESTRICT pDst,
|
||||
UINT32 dstStep, UINT32 DstFormat,
|
||||
const prim_size_t* WINPR_RESTRICT roi);
|
||||
typedef pstatus_t (*__YUV444ToRGB_8u_P3AC4R_t)(const BYTE* WINPR_RESTRICT pSrc[3],
|
||||
const UINT32 srcStep[3], BYTE* WINPR_RESTRICT pDst,
|
||||
UINT32 dstStep, UINT32 DstFormat,
|
||||
const prim_size_t* WINPR_RESTRICT roi);
|
||||
typedef pstatus_t (*__RGBToYUV420_8u_P3AC4R_t)(const BYTE* WINPR_RESTRICT pSrc, UINT32 SrcFormat,
|
||||
UINT32 srcStep, BYTE* WINPR_RESTRICT pDst[3],
|
||||
const UINT32 dstStep[3],
|
||||
const prim_size_t* WINPR_RESTRICT roi);
|
||||
typedef pstatus_t (*__RGBToYUV444_8u_P3AC4R_t)(const BYTE* WINPR_RESTRICT pSrc, UINT32 SrcFormat,
|
||||
UINT32 srcStep, BYTE* WINPR_RESTRICT pDst[3],
|
||||
const UINT32 dstStep[3],
|
||||
const prim_size_t* WINPR_RESTRICT roi);
|
||||
typedef pstatus_t (*__YUV420CombineToYUV444_t)(avc444_frame_type type,
|
||||
const BYTE* WINPR_RESTRICT pSrc[3],
|
||||
const UINT32 srcStep[3], UINT32 nWidth,
|
||||
UINT32 nHeight, BYTE* WINPR_RESTRICT pDst[3],
|
||||
const UINT32 dstStep[3],
|
||||
const RECTANGLE_16* WINPR_RESTRICT roi);
|
||||
typedef pstatus_t (*__YUV444SplitToYUV420_t)(
|
||||
typedef pstatus_t (*fn_YUV444ToRGB_8u_P3AC4R_t)(const BYTE* WINPR_RESTRICT pSrc[3],
|
||||
const UINT32 srcStep[3], BYTE* WINPR_RESTRICT pDst,
|
||||
UINT32 dstStep, UINT32 DstFormat,
|
||||
const prim_size_t* WINPR_RESTRICT roi);
|
||||
typedef pstatus_t (*fn_RGBToYUV420_8u_P3AC4R_t)(const BYTE* WINPR_RESTRICT pSrc, UINT32 SrcFormat,
|
||||
UINT32 srcStep, BYTE* WINPR_RESTRICT pDst[3],
|
||||
const UINT32 dstStep[3],
|
||||
const prim_size_t* WINPR_RESTRICT roi);
|
||||
typedef pstatus_t (*fn_RGBToYUV444_8u_P3AC4R_t)(const BYTE* WINPR_RESTRICT pSrc, UINT32 SrcFormat,
|
||||
UINT32 srcStep, BYTE* WINPR_RESTRICT pDst[3],
|
||||
const UINT32 dstStep[3],
|
||||
const prim_size_t* WINPR_RESTRICT roi);
|
||||
typedef pstatus_t (*fn_YUV420CombineToYUV444_t)(avc444_frame_type type,
|
||||
const BYTE* WINPR_RESTRICT pSrc[3],
|
||||
const UINT32 srcStep[3], UINT32 nWidth,
|
||||
UINT32 nHeight, BYTE* WINPR_RESTRICT pDst[3],
|
||||
const UINT32 dstStep[3],
|
||||
const RECTANGLE_16* WINPR_RESTRICT roi);
|
||||
typedef pstatus_t (*fn_YUV444SplitToYUV420_t)(
|
||||
const BYTE* WINPR_RESTRICT pSrc[3], const UINT32 srcStep[3], BYTE* WINPR_RESTRICT pMainDst[3],
|
||||
const UINT32 dstMainStep[3], BYTE* WINPR_RESTRICT pAuxDst[3], const UINT32 srcAuxStep[3],
|
||||
const prim_size_t* WINPR_RESTRICT roi);
|
||||
typedef pstatus_t (*__RGBToAVC444YUV_t)(const BYTE* WINPR_RESTRICT pSrc, UINT32 srcFormat,
|
||||
UINT32 srcStep, BYTE* WINPR_RESTRICT pMainDst[3],
|
||||
const UINT32 dstMainStep[3],
|
||||
BYTE* WINPR_RESTRICT pAuxDst[3], const UINT32 dstAuxStep[3],
|
||||
const prim_size_t* WINPR_RESTRICT roi);
|
||||
typedef pstatus_t (*__andC_32u_t)(const UINT32* WINPR_RESTRICT pSrc, UINT32 val,
|
||||
typedef pstatus_t (*fn_RGBToAVC444YUV_t)(const BYTE* WINPR_RESTRICT pSrc, UINT32 srcFormat,
|
||||
UINT32 srcStep, BYTE* WINPR_RESTRICT pMainDst[3],
|
||||
const UINT32 dstMainStep[3],
|
||||
BYTE* WINPR_RESTRICT pAuxDst[3],
|
||||
const UINT32 dstAuxStep[3],
|
||||
const prim_size_t* WINPR_RESTRICT roi);
|
||||
typedef pstatus_t (*fn_andC_32u_t)(const UINT32* WINPR_RESTRICT pSrc, UINT32 val,
|
||||
UINT32* WINPR_RESTRICT pDst, INT32 len);
|
||||
typedef pstatus_t (*fn_orC_32u_t)(const UINT32* WINPR_RESTRICT pSrc, UINT32 val,
|
||||
UINT32* WINPR_RESTRICT pDst, INT32 len);
|
||||
typedef pstatus_t (*__orC_32u_t)(const UINT32* WINPR_RESTRICT pSrc, UINT32 val,
|
||||
UINT32* WINPR_RESTRICT pDst, INT32 len);
|
||||
typedef pstatus_t (*primitives_uninit_t)(void);
|
||||
|
||||
#if defined(WITH_FREERDP_3x_DEPRECATED)
|
||||
typedef fn_copy_t __copy_t;
|
||||
typedef fn_copy_8u_t __copy_8u_t;
|
||||
typedef fn_copy_8u_AC4r_t __copy_8u_AC4r_t;
|
||||
typedef fn_set_8u_t __set_8u_t;
|
||||
typedef fn_set_32s_t __set_32s_t;
|
||||
typedef fn_set_32u_t __set_32u_t;
|
||||
typedef fn_zero_t __zero_t;
|
||||
typedef fn_alphaComp_argb_t __alphaComp_argb_t;
|
||||
typedef fn_add_16s_t __add_16s_t;
|
||||
typedef fn_add_16s_inplace_t __add_16s_inplace_t;
|
||||
typedef fn_copy_no_overlap_t __copy_no_overlap_t;
|
||||
typedef fn_lShiftC_16s_inplace_t __lShiftC_16s_inplace_t;
|
||||
typedef fn_lShiftC_16s_t __lShiftC_16s_t;
|
||||
typedef fn_lShiftC_16u_t __lShiftC_16u_t;
|
||||
typedef fn_rShiftC_16s_t __rShiftC_16s_t;
|
||||
typedef fn_rShiftC_16u_t __rShiftC_16u_t;
|
||||
typedef fn_shiftC_16s_t __shiftC_16s_t;
|
||||
typedef fn_shiftC_16u_t __shiftC_16u_t;
|
||||
typedef fn_sign_16s_t __sign_16s_t;
|
||||
typedef fn_yCbCrToRGB_16s8u_P3AC4R_t __yCbCrToRGB_16s8u_P3AC4R_t;
|
||||
typedef fn_yCbCrToRGB_16s16s_P3P3_t __yCbCrToRGB_16s16s_P3P3_t;
|
||||
typedef fn_RGBToYCbCr_16s16s_P3P3_t __RGBToYCbCr_16s16s_P3P3_t;
|
||||
typedef fn_RGBToRGB_16s8u_P3AC4R_t __RGBToRGB_16s8u_P3AC4R_t;
|
||||
typedef fn_YCoCgToRGB_8u_AC4R_t __YCoCgToRGB_8u_AC4R_t;
|
||||
typedef fn_RGB565ToARGB_16u32u_C3C4_t __RGB565ToARGB_16u32u_C3C4_t;
|
||||
typedef fn_YUV420ToRGB_8u_P3AC4R_t __YUV420ToRGB_8u_P3AC4R_t;
|
||||
typedef fn_YUV444ToRGB_8u_P3AC4R_t __YUV444ToRGB_8u_P3AC4R_t;
|
||||
typedef fn_RGBToYUV420_8u_P3AC4R_t __RGBToYUV420_8u_P3AC4R_t;
|
||||
typedef fn_RGBToYUV444_8u_P3AC4R_t __RGBToYUV444_8u_P3AC4R_t;
|
||||
typedef fn_YUV420CombineToYUV444_t __YUV420CombineToYUV444_t;
|
||||
typedef fn_YUV444SplitToYUV420_t __YUV444SplitToYUV420_t;
|
||||
typedef fn_RGBToAVC444YUV_t __RGBToAVC444YUV_t;
|
||||
typedef fn_andC_32u_t __andC_32u_t;
|
||||
typedef fn_orC_32u_t __orC_32u_t;
|
||||
#endif
|
||||
|
||||
typedef struct
|
||||
{
|
||||
/* Memory-to-memory copy routines */
|
||||
__copy_t copy; /* memcpy/memmove, basically */
|
||||
__copy_8u_t copy_8u; /* more strongly typed */
|
||||
__copy_8u_AC4r_t copy_8u_AC4r; /* pixel copy function */
|
||||
fn_copy_t copy; /* memcpy/memmove, basically */
|
||||
fn_copy_8u_t copy_8u; /* more strongly typed */
|
||||
fn_copy_8u_AC4r_t copy_8u_AC4r; /* pixel copy function */
|
||||
/* Memory setting routines */
|
||||
__set_8u_t set_8u; /* memset, basically */
|
||||
__set_32s_t set_32s;
|
||||
__set_32u_t set_32u;
|
||||
__zero_t zero; /* bzero or faster */
|
||||
fn_set_8u_t set_8u; /* memset, basically */
|
||||
fn_set_32s_t set_32s;
|
||||
fn_set_32u_t set_32u;
|
||||
fn_zero_t zero; /* bzero or faster */
|
||||
/* Arithmetic functions */
|
||||
__add_16s_t add_16s;
|
||||
fn_add_16s_t add_16s;
|
||||
/* And/or */
|
||||
__andC_32u_t andC_32u;
|
||||
__orC_32u_t orC_32u;
|
||||
fn_andC_32u_t andC_32u;
|
||||
fn_orC_32u_t orC_32u;
|
||||
/* Shifts */
|
||||
__lShiftC_16s_t lShiftC_16s;
|
||||
__lShiftC_16u_t lShiftC_16u;
|
||||
__rShiftC_16s_t rShiftC_16s;
|
||||
__rShiftC_16u_t rShiftC_16u;
|
||||
__shiftC_16s_t shiftC_16s;
|
||||
__shiftC_16u_t shiftC_16u;
|
||||
fn_lShiftC_16s_t lShiftC_16s;
|
||||
fn_lShiftC_16u_t lShiftC_16u;
|
||||
fn_rShiftC_16s_t rShiftC_16s;
|
||||
fn_rShiftC_16u_t rShiftC_16u;
|
||||
fn_shiftC_16s_t shiftC_16s;
|
||||
fn_shiftC_16u_t shiftC_16u;
|
||||
/* Alpha Composition */
|
||||
__alphaComp_argb_t alphaComp_argb;
|
||||
fn_alphaComp_argb_t alphaComp_argb;
|
||||
/* Sign */
|
||||
__sign_16s_t sign_16s;
|
||||
fn_sign_16s_t sign_16s;
|
||||
/* Color conversions */
|
||||
__yCbCrToRGB_16s8u_P3AC4R_t yCbCrToRGB_16s8u_P3AC4R;
|
||||
__yCbCrToRGB_16s16s_P3P3_t yCbCrToRGB_16s16s_P3P3;
|
||||
__RGBToYCbCr_16s16s_P3P3_t RGBToYCbCr_16s16s_P3P3;
|
||||
__RGBToRGB_16s8u_P3AC4R_t RGBToRGB_16s8u_P3AC4R;
|
||||
__YCoCgToRGB_8u_AC4R_t YCoCgToRGB_8u_AC4R;
|
||||
__YUV420ToRGB_8u_P3AC4R_t YUV420ToRGB_8u_P3AC4R;
|
||||
__RGBToYUV420_8u_P3AC4R_t RGBToYUV420_8u_P3AC4R;
|
||||
__RGBToYUV444_8u_P3AC4R_t RGBToYUV444_8u_P3AC4R;
|
||||
__YUV420CombineToYUV444_t YUV420CombineToYUV444;
|
||||
__YUV444SplitToYUV420_t YUV444SplitToYUV420;
|
||||
__YUV444ToRGB_8u_P3AC4R_t YUV444ToRGB_8u_P3AC4R;
|
||||
__RGBToAVC444YUV_t RGBToAVC444YUV;
|
||||
__RGBToAVC444YUV_t RGBToAVC444YUVv2;
|
||||
fn_yCbCrToRGB_16s8u_P3AC4R_t yCbCrToRGB_16s8u_P3AC4R;
|
||||
fn_yCbCrToRGB_16s16s_P3P3_t yCbCrToRGB_16s16s_P3P3;
|
||||
fn_RGBToYCbCr_16s16s_P3P3_t RGBToYCbCr_16s16s_P3P3;
|
||||
fn_RGBToRGB_16s8u_P3AC4R_t RGBToRGB_16s8u_P3AC4R;
|
||||
fn_YCoCgToRGB_8u_AC4R_t YCoCgToRGB_8u_AC4R;
|
||||
fn_YUV420ToRGB_8u_P3AC4R_t YUV420ToRGB_8u_P3AC4R;
|
||||
fn_RGBToYUV420_8u_P3AC4R_t RGBToYUV420_8u_P3AC4R;
|
||||
fn_RGBToYUV444_8u_P3AC4R_t RGBToYUV444_8u_P3AC4R;
|
||||
fn_YUV420CombineToYUV444_t YUV420CombineToYUV444;
|
||||
fn_YUV444SplitToYUV420_t YUV444SplitToYUV420;
|
||||
fn_YUV444ToRGB_8u_P3AC4R_t YUV444ToRGB_8u_P3AC4R;
|
||||
fn_RGBToAVC444YUV_t RGBToAVC444YUV;
|
||||
fn_RGBToAVC444YUV_t RGBToAVC444YUVv2;
|
||||
/* flags */
|
||||
DWORD flags;
|
||||
primitives_uninit_t uninit;
|
||||
@@ -260,9 +299,9 @@ typedef struct
|
||||
/** \brief Do vecotor addition, store result in both input buffers
|
||||
* pSrcDst1 = pSrcDst2 = pSrcDst1 + pSrcDst2
|
||||
*/
|
||||
__add_16s_inplace_t add_16s_inplace; /** @since version 3.6.0 */
|
||||
__lShiftC_16s_inplace_t lShiftC_16s_inplace; /** @since version 3.6.0 */
|
||||
__copy_no_overlap_t copy_no_overlap; /** @since version 3.6.0 */
|
||||
fn_add_16s_inplace_t add_16s_inplace; /** @since version 3.6.0 */
|
||||
fn_lShiftC_16s_inplace_t lShiftC_16s_inplace; /** @since version 3.6.0 */
|
||||
fn_copy_no_overlap_t copy_no_overlap; /** @since version 3.6.0 */
|
||||
} primitives_t;
|
||||
|
||||
typedef enum
|
||||
|
||||
Reference in New Issue
Block a user