Home | History | Annotate | Download | only in common
      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_recon.h
     22 *
     23 * @brief
     24 *  Functions declarations reconstruction
     25 *
     26 * @author
     27 *  Ittiam
     28 *
     29 * @remarks
     30 *  None
     31 *
     32 *******************************************************************************
     33 */
     34 #ifndef _IHEVC_RECON_H_
     35 #define _IHEVC_RECON_H_
     36 
     37 typedef void ihevc_recon_4x4_ttype1_ft(WORD16 *pi2_src,
     38                                        UWORD8 *pu1_pred,
     39                                        UWORD8 *pu1_dst,
     40                                        WORD32 src_strd,
     41                                        WORD32 pred_strd,
     42                                        WORD32 dst_strd,
     43                                        WORD32 zero_cols);
     44 typedef void ihevc_hbd_recon_4x4_ttype1_ft(WORD16 *pi2_src,
     45                                            UWORD16 *pu2_pred,
     46                                            UWORD16 *pu2_dst,
     47                                            WORD32 src_strd,
     48                                            WORD32 pred_strd,
     49                                            WORD32 dst_strd,
     50                                            WORD32 zero_cols,
     51                                            UWORD8 bit_depth);
     52 typedef void ihevc_recon_4x4_ft(WORD16 *pi2_src,
     53                                 UWORD8 *pu1_pred,
     54                                 UWORD8 *pu1_dst,
     55                                 WORD32 src_strd,
     56                                 WORD32 pred_strd,
     57                                 WORD32 dst_strd,
     58                                 WORD32 zero_cols);
     59 typedef void ihevc_hbd_recon_4x4_ft(WORD16 *pi2_src,
     60                                     UWORD16 *pu2_pred,
     61                                     UWORD16 *pu2_dst,
     62                                     WORD32 src_strd,
     63                                     WORD32 pred_strd,
     64                                     WORD32 dst_strd,
     65                                     WORD32 zero_cols,
     66                                     UWORD8 bit_depth);
     67 typedef void ihevc_recon_8x8_ft(WORD16 *pi2_src,
     68                                 UWORD8 *pu1_pred,
     69                                 UWORD8 *pu1_dst,
     70                                 WORD32 src_strd,
     71                                 WORD32 pred_strd,
     72                                 WORD32 dst_strd,
     73                                 WORD32 zero_cols);
     74 typedef void ihevc_hbd_recon_8x8_ft(WORD16 *pi2_src,
     75                                     UWORD16 *pu2_pred,
     76                                     UWORD16 *pu2_dst,
     77                                     WORD32 src_strd,
     78                                     WORD32 pred_strd,
     79                                     WORD32 dst_strd,
     80                                     WORD32 zero_cols,
     81                                     UWORD8 bit_depth);
     82 typedef void ihevc_recon_16x16_ft(WORD16 *pi2_src,
     83                                   UWORD8 *pu1_pred,
     84                                   UWORD8 *pu1_dst,
     85                                   WORD32 src_strd,
     86                                   WORD32 pred_strd,
     87                                   WORD32 dst_strd,
     88                                   WORD32 zero_cols);
     89 typedef void ihevc_hbd_recon_16x16_ft(WORD16 *pi2_src,
     90                                       UWORD16 *pu2_pred,
     91                                       UWORD16 *pu2_dst,
     92                                       WORD32 src_strd,
     93                                       WORD32 pred_strd,
     94                                       WORD32 dst_strd,
     95                                       WORD32 zero_cols,
     96                                       UWORD8 bit_depth);
     97 typedef void ihevc_recon_32x32_ft(WORD16 *pi2_src,
     98                                   UWORD8 *pu1_pred,
     99                                   UWORD8 *pu1_dst,
    100                                   WORD32 src_strd,
    101                                   WORD32 pred_strd,
    102                                   WORD32 dst_strd,
    103                                   WORD32 zero_cols);
    104 typedef void ihevc_hbd_recon_32x32_ft(WORD16 *pi2_src,
    105                                       UWORD16 *pu2_pred,
    106                                       UWORD16 *pu2_dst,
    107                                       WORD32 src_strd,
    108                                       WORD32 pred_strd,
    109                                       WORD32 dst_strd,
    110                                       WORD32 zero_cols,
    111                                       UWORD8 bit_depth);
    112 
    113 ihevc_recon_4x4_ttype1_ft ihevc_recon_4x4_ttype1;
    114 ihevc_hbd_recon_4x4_ttype1_ft ihevc_hbd_recon_4x4_ttype1;
    115 ihevc_recon_4x4_ft ihevc_recon_4x4;
    116 ihevc_hbd_recon_4x4_ft ihevc_hbd_recon_4x4;
    117 ihevc_recon_8x8_ft ihevc_recon_8x8;
    118 ihevc_hbd_recon_8x8_ft ihevc_hbd_recon_8x8;
    119 ihevc_recon_16x16_ft ihevc_recon_16x16;
    120 ihevc_hbd_recon_16x16_ft ihevc_hbd_recon_16x16;
    121 ihevc_recon_32x32_ft ihevc_recon_32x32;
    122 ihevc_hbd_recon_32x32_ft ihevc_hbd_recon_32x32;
    123 
    124 #endif /*_IHEVC_RECON_H_*/
    125