Integration Wrappers for Intel® Integrated Performance Primitives Developer Guide and Reference 2018
typedef struct _IwiSwapChannelsParams
{
IwiChDescriptor chDesc;
} IwiSwapChannelsParams;
static IW_INLINE void iwiSwapChannels_SetDefaultParams(
IwiSwapChannelsParams *pParams
)
IW_DECL(IppStatus) iwiSwapChannels(
const IwiImage *pSrcImage,
IwiImage *pDstImage,
const int *pDstOrder,
double value,
const IwiSwapChannelsParams *pAuxParams,
const IwiTile *pTile
);
pSrcImage |
Pointer to the source image. |
pDstImage |
Pointer to the destination image. |
pDstOrder |
Pointer to the destination image channel order: dst[channel] = src[dstOrder[channel]]. |
value |
Value to set destination channels to if the number of destination channels is greater than the number of source channels. |
pAuxParams |
Pointer to the auxiliary parameters structure. If NULL, default parameters are used. |
pTile |
Pointer to the IwiTile structure for tiling. If NULL, the whole image is processed. |
Argument | Default Value | Description |
---|---|---|
IwiChDescriptor |
iwiChDesc_None |
Special channels processing mode. |
This function swaps image channels, putting them in the order specified in pDstOrder. One source channel can be mapped to several destination channels.
If the number of destination channels is greater than the number of source channels then:
If dstOrder[channel] == srcChannels, dst[channel] = constValue.
If dstOrder[channel] > srcChannels, dst[channel] is unchanged.
This function supports the following features:
Feature | Support |
---|---|
Internal threading | No |
Manual tiling | Yes |
IwiTile simple tiling | Yes |
IwiTile pipeline tiling | Yes |
ippStsChannelOrderErr |
The destination order is out of the range. |
ippStsDataTypeErr |
The dataType value is illegal. |
ippStsNumChannelsErr |
Thechannels value is illegal. |
ippStsSizeErr |
Values of the size fields are illegal. |
ippStsNullPtrErr |
At least one of the pointers (except pTile) is NULL. |
ippStsNoErr |
No errors. |