Intel IPP Integration Wrappers Developer Guide and Reference

ID 751823
Date 1/18/2023
Public
Document Table of Contents

iwiRotate

Syntax

typedef struct _IwiRotateParams
{
    int reserved;
} IwiRotateParams;
static IW_INLINE void iwiRotate_SetDefaultParams(
    IwiRotateParams *pParams
)

IW_DECL(IppStatus) iwiRotate(
    const IwiImage         *pSrcImage,
    IwiImage               *pDstImage,
    double                  angle,
    IppiInterpolationType   interpolation,
    const IwiRotateParams  *pAuxParams,
    IppiBorderType          border,
    const Ipp64f           *pBorderVal,
    const IwiTile          *pTile
);

Parameters

pSrcImage

Pointer to the source image.

pDstImage

Pointer to the destination image.

angle

Angle of clockwise rotation in degrees.

interpolation

Interpolation method. The supported values are ippNearest, ippLinear, and ippCubic.

pAuxParams

Pointer to the auxiliary parameters structure. If NULL, default parameters are used.

border

Extrapolation algorithm for out of image pixels processing. Supported values:

ippBorderConst

Values of all border pixels are set to a constant.

ippBorderRepl

Border is replicated from the edge pixels.

ippBorderTransp

Out of image pixels are not processed.

ippBorderInMem

Border is obtained from the source image pixels in memory.

pBorderVal

Pointer to an array of values to assign to pixels of the constant border, one element of the array for each channel of the image. This parameter is applicable only to the ippBorderConst border type and can be NULL for other border types.

pTile

Pointer to the IwiTile structure for tiling. If NULL, the whole image is processed.

Auxiliary Arguments

Argument Default Value Description

reserved

0

Reserved value.

Description

This function performs rotation of the image around (0,0). This is a simpler version of the iwiWarpAffine function designed specifically for rotation.

This function supports the following features:

Feature Support
Internal threading No
Manual tiling No
IwiTile simple tiling Yes
IwiTile pipeline tiling No

Return Values

ippStsInterpolationErr

The interpolation value is illegal.

ippStsDataTypeErr

The dataType value is illegal.

ippStsNumChannelsErr

The channels value is illegal.

ippStsBorderErr

The border value is illegal.

ippStsNotSupportedModeErr

The selected combination of parameters' values is not supported.

ippStsNoMemErr

Failed to allocate memory.

ippStsSizeErr

Values of the size fields are illegal.

ippStsInplaceModeNotSupportedErr

In-place operation is not supported: pSrcImage is equal to pDstImage.

ippStsNullPtrErr

At least one of the pointers (except pBorderVal and pTile) is NULL.

ippStsNoErr

No errors.

ippStsNoOperation

Warning: width and/or height of the image is equal to zero.

ippStsWrongIntersectQuadr

Warning: transformed source image has no intersection with the destination image.