ScanFwd

Performs classical zigzag, alternate-horizontal, or alternate-vertical forward scan on a block.

Syntax

IppStatus ippiScanFwd_16s_C1(Ipp16s* pSrc, Ipp16s* pDst, int countNonZero, int scan);

Parameters

pSrc

Pointer to the input block (coefficients in the normal order).

pDst

Pointer to the output block (coefficients in the scan order).

countNonZero

Number of non-zero coefficients in the block. Valid within the range of 1 to 64. This parameter provides faster operation. If the value is unknown, set to 64.

scan

Type of the scan, takes one of the following values:

IPPVC_SCAN_ZIGZAG,

indicating the classical zigzag scan,

IPPVC_SCAN_HORIZONTAL,

indicating the alternate-horizontal scan,

IPPVC_SCAN_VERTICAL,

indicating the alternate-vertical scan.

See the corresponding enumerator in the " Structures and Enumerators".

Description

The function ippiScanFwd_16s_C1 is declared in the ippvc.h header file. This function converts a block of coefficients placed in the conventional - left-to-right, top-to-bottom raster scan - order to a block of coefficients placed in classical zigzag, alternate-horizontal, or alternate-vertical scan order. See Figure "Scanning Matrix and Sequence" for the scanning process in line with the classical zigzag pattern. The zigzag and the two alternate scan patterns are shown, for example, in [ ITUH263 ], Figure14 and [ ITUH263 ], Annex I, Figure I.2.

Return Values

ippStsNoErr

Indicates no error.

ippStsNullPtrErr

Indicates an error condition if at least one of the specified pointers is NULL.

ippStsOutOfRangeErr

Indicates an error condition if countNonZero is out of the range [1, 64].


Submit feedback on this help topic

Copyright © 2000 - 2010, Intel Corporation. All rights reserved.