iwiCopyMakeBorder
iwiCopyMakeBorder
Syntax
typedef struct _IwiCopyMakeBorderParams
{
int reserved;
} IwiCopyMakeBorderParams;
static IW_INLINE void iwiCopyMakeBorder_SetDefaultParams(
IwiCopyMakeBorderParams *pParams
)
IW_DECL(IppStatus) iwiCopyMakeBorder(
const IwiImage *pSrcImage,
IwiImage *pDstImage,
IppiBorderSize borderSize,
IppiBorderType border,
const Ipp64f *pBorderVal,
const IwiCopyMakeBorderParams *pAuxParams,
const IwiTile *pTile
);
Parameters
- pSrcImage
- Pointer to the source image.
- pDstImage
- Pointer to the start of the destination image data.
- borderSize
- Size of the border to reconstruct.
- 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.
- ippBorderInMem
- Border is obtained from the source image pixels in memory.
- ippBorderMirror
- Border pixels are mirrored from the source image boundary pixels.
- 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 theippBorderConstborder type and can beNULLfor other border types.
- 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 |
---|---|---|
reserved | 0 | Reserved value. |
Description
This function copies image data to the destination image and constructs a border of the specified size. The destination image must have enough memory for a border according to the
inMemSize
member.This function supports the following features:
Feature | Support |
---|---|
Internal threading | No |
Manual tiling | Yes |
IwiTile simple tiling | Yes |
IwiTile pipeline tiling | Yes |
Return Values
- ippStsNotSupportedModeErr
- The selected function mode is not supported.
- ippStsSizeErr
- Values of thesizefields are illegal.
- border.borderToporborder.borderLeftis greater than the correspondinginMemSizevalue of the destination image.
- dst_width+dst_inMemSize.borderRight<min_width+border.borderRight
- dst_height+dst_inMemSize.borderBottom<min_height+border.borderBottom
- ippStsNullPtrErr
- At least one of the pointers (exceptpTile) isNULL.
- ippStsNoErr
- No errors.