1 /*
2 * Copyright (C) 2004-2010 NXP Software
3 * Copyright (C) 2010 The Android Open Source Project
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17
18 #include "BIQUAD.h"
19 #include "FO_1I_D32F32Cll_TRC_WRA_01_Private.h"
20
21
22 /*-------------------------------------------------------------------------*/
23 /* FUNCTION: */
24 /* FO_1I_D32F32Cll_TRC_WRA_01_Init */
25 /* */
26 /* DESCRIPTION: */
27 /* These functions initializes a BIQUAD filter defined as a cascade of */
28 /* biquadratic Filter Sections. */
29 /* */
30 /* PARAMETERS: */
31 /* pInstance - output, returns the pointer to the State Variable */
32 /* This state pointer must be passed to any subsequent */
33 /* call to "Biquad" functions. */
34 /* pTaps - input, pointer to the taps memory */
35 /* pCoef - input, pointer to the coefficient structure */
36 /* N - M coefficient factor of QM.N */
37 /* RETURNS: */
38 /* void return code */
39 /*-------------------------------------------------------------------------*/
40 #ifdef BUILD_FLOAT
FO_1I_D32F32Cll_TRC_WRA_01_Init(Biquad_FLOAT_Instance_t * pInstance,Biquad_1I_Order1_FLOAT_Taps_t * pTaps,FO_FLOAT_Coefs_t * pCoef)41 void FO_1I_D32F32Cll_TRC_WRA_01_Init( Biquad_FLOAT_Instance_t *pInstance,
42 Biquad_1I_Order1_FLOAT_Taps_t *pTaps,
43 FO_FLOAT_Coefs_t *pCoef)
44 {
45 LVM_FLOAT temp;
46 PFilter_State_FLOAT pBiquadState = (PFilter_State_FLOAT) pInstance;
47 pBiquadState->pDelays = (LVM_FLOAT *) pTaps;
48
49 temp = pCoef->A1;
50 pBiquadState->coefs[0] = temp;
51 temp = pCoef->A0;
52 pBiquadState->coefs[1] = temp;
53 temp = pCoef->B1;
54 pBiquadState->coefs[2] = temp;
55 }
56 #else
FO_1I_D32F32Cll_TRC_WRA_01_Init(Biquad_Instance_t * pInstance,Biquad_1I_Order1_Taps_t * pTaps,FO_C32_Coefs_t * pCoef)57 void FO_1I_D32F32Cll_TRC_WRA_01_Init( Biquad_Instance_t *pInstance,
58 Biquad_1I_Order1_Taps_t *pTaps,
59 FO_C32_Coefs_t *pCoef)
60 {
61 LVM_INT32 temp;
62 PFilter_State pBiquadState = (PFilter_State) pInstance;
63 pBiquadState->pDelays = (LVM_INT32 *) pTaps;
64
65 temp=pCoef->A1;
66 pBiquadState->coefs[0]=temp;
67 temp=pCoef->A0;
68 pBiquadState->coefs[1]=temp;
69 temp=pCoef->B1;
70 pBiquadState->coefs[2]=temp;
71 }
72 #endif
73 /*------------------------------------------------*/
74 /* End Of File: FO_1I_D32F32Cll_TRC_WRA_01_Init.c */
75
76