iwiSwapChannels
iwiSwapChannels
Syntax
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
);
Parameters
- 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. IfNULL, default parameters are used.
- pTile
- Pointer to theIwiTilestructure for tiling. IfNULL, the whole image is processed.
Auxiliary Arguments
Argument | Default Value | Description |
---|---|---|
IwiChDescriptor | iwiChDesc_None | Special channels processing mode. |
Description
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:
- IfdstOrder[channel]==srcChannels,dst[channel]=constValue.
- IfdstOrder[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 |
Return Values
- ippStsChannelOrderErr
- The destination order is out of the range.
- ippStsDataTypeErr
- ThedataTypevalue is illegal.
- ippStsNumChannelsErr
- Thechannelsvalue is illegal.
- ippStsSizeErr
- Values of thesizefields are illegal.
- ippStsNullPtrErr
- At least one of the pointers (exceptpTile) isNULL.
- ippStsNoErr
- No errors.