Developer Reference

  • 2020
  • 07/15/2020
  • Public Content
Contents

FIRSparseInit

Initializes a sparse FIR filter structure.

Syntax

IppStatus ippsFIRSparseInit_32f(IppsFIRSparseState_32f**
ppState
, const Ipp32f*
pNZTaps
, const Ipp32s*
pNZTapPos
, int
nzTapsLen
, const Ipp32f*
pDlyLine
, Ipp8u*
pBuffer
);
IppStatus ippsFIRSparseInit_32fc(IppsFIRSparseState_32fc**
ppState
, const Ipp32fc*
pNZTaps
, const Ipp32s*
pNZTapPos
, int
nzTapsLen
, const Ipp32fc*
pDlyLine
, Ipp8u*
pBuffer
);
Include Files
ipps.h
Domain Dependencies
Headers:
ippcore.h
,
ippvm.h
Libraries:
ippcore.lib
,
ippvm.lib
Parameters
pNZTaps
Pointer to the array containing the non-zero tap values. The number of elements in the array is
nzTapsLen
.
pNZTapPos
Pointer to the array containing positions of the non-zero tap values. The number of elements in the array is
nzTapsLen
.
nzTapsLen
Number of elements in the array with non-zero tap values.
pDlyLine
Pointer to the array containing the delay line values.
ppState
Double pointer to the sparse FIR state structure.
pBuffer
Pointer to the external buffer for the sparse FIR state structure.
Description
This function initializes a sparse FIR filter state structure
ppState
in the external buffer
pBuffer
. The size of this buffer must be computed previously by calling the function
FIRSparseGetStateSize
. The initialization function copies the values of filter coefficients from the array
pNZTaps
containing
nzTapsLen
non-zero taps and their positions from the array
pNZTapPos
into the state structure
ppState
. The array
pDlyLine
specifies the delay line values. The number of elements in this array is
pNZTapPos
[
nzTapsLen
-1]
. If the pointer to the array
pDlyLine
is not
NULL
, the array contents are copied into the state structure
ppState
, otherwise the delay line values in the state structure are initialized to 0.
The values of
nzTapsLen
and
pNZTapPos
[
nzTapsLen
-1]
must be equal to those specified in the function
FIRSparseGetStateSize
.
Return Values
ippStsNoErr
Indicates no error.
ippStsNullPtrErr
Indicates an error if one of the pointers
ppState
,
pNZTaps
,
pNZTapPos
, or
pBuffer
is
NULL
.
ippStsFIRLenErr
Indicates an error if
nxTapsLen
is less than or equal to 0.
ippStsSparseErr
Indicates an error if positions of the non-zero taps are not in ascending order, or are negative or repetitive.

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804