1 /******************************************************************************
2 *
3 * Copyright (C) 2012 Ittiam Systems Pvt Ltd, Bangalore
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 /**
19 *******************************************************************************
20 * @file
21 *  ihevc_trans.h
22 *
23 * @brief
24 *  Functions declarations for forward transform
25 *
26 * @author
27 *  Ittiam
28 *
29 * @remarks
30 *  None
31 *
32 *******************************************************************************
33 */
34 #ifndef _IHEVC_TRANS_H_
35 #define _IHEVC_TRANS_H_
36 
37 typedef void ihevc_trans_4x4_ttype1_ft(WORD16 *pi2_src,
38                                        WORD16 *pi2_dst,
39                                        WORD32 i4_src_strd,
40                                        WORD32 i4_dst_strd,
41                                        WORD32 i4_shift,
42                                        WORD32 i4_zero_rows);
43 typedef void ihevc_trans_4x4_ft(WORD16 *pi2_src,
44                                 WORD16 *pi2_dst,
45                                 WORD32 i4_src_strd,
46                                 WORD32 i4_dst_strd,
47                                 WORD32 i4_shift,
48                                 WORD32 i4_zero_rows);
49 typedef void ihevc_trans_8x8_ft(WORD16 *pi2_src,
50                                 WORD16 *pi2_dst,
51                                 WORD32 i4_src_strd,
52                                 WORD32 i4_dst_strd,
53                                 WORD32 i4_shift,
54                                 WORD32 i4_zero_rows);
55 typedef void ihevc_trans_16x16_ft(WORD16 *pi2_src,
56                                   WORD16 *pi2_dst,
57                                   WORD32 i4_src_strd,
58                                   WORD32 i4_dst_strd,
59                                   WORD32 i4_shift,
60                                   WORD32 i4_zero_rows);
61 typedef void ihevc_trans_32x32_ft(WORD16 *pi2_src,
62                                   WORD16 *pi2_dst,
63                                   WORD32 i4_src_strd,
64                                   WORD32 i4_dst_strd,
65                                   WORD32 i4_shift,
66                                   WORD32 i4_zero_rows);
67 
68 ihevc_trans_4x4_ttype1_ft ihevc_trans_4x4_ttype1;
69 ihevc_trans_4x4_ft ihevc_trans_4x4;
70 ihevc_trans_8x8_ft ihevc_trans_8x8;
71 ihevc_trans_16x16_ft ihevc_trans_16x16;
72 ihevc_trans_32x32_ft ihevc_trans_32x32;
73 
74 
75 #endif /*_IHEVC_TRANS_H_*/
76