LCOV - code coverage report
Current view: directory - media/libvpx/vp8/common - invtrans.c (source / functions) Found Hit Coverage
Test: app.info Lines: 30 0 0.0 %
Date: 2012-06-02 Functions: 5 0 0.0 %

       1                 : /*
       2                 :  *  Copyright (c) 2010 The WebM project authors. All Rights Reserved.
       3                 :  *
       4                 :  *  Use of this source code is governed by a BSD-style license
       5                 :  *  that can be found in the LICENSE file in the root of the source
       6                 :  *  tree. An additional intellectual property rights grant can be found
       7                 :  *  in the file PATENTS.  All contributing project authors may
       8                 :  *  be found in the AUTHORS file in the root of the source tree.
       9                 :  */
      10                 : 
      11                 : 
      12                 : #include "invtrans.h"
      13                 : 
      14                 : 
      15                 : 
      16               0 : static void recon_dcblock(MACROBLOCKD *x)
      17                 : {
      18               0 :     BLOCKD *b = &x->block[24];
      19                 :     int i;
      20                 : 
      21               0 :     for (i = 0; i < 16; i++)
      22                 :     {
      23               0 :         x->block[i].dqcoeff[0] = b->diff[i];
      24                 :     }
      25                 : 
      26               0 : }
      27                 : 
      28               0 : void vp8_inverse_transform_b(const vp8_idct_rtcd_vtable_t *rtcd, BLOCKD *b, int pitch)
      29                 : {
      30               0 :     if (b->eob > 1)
      31               0 :         IDCT_INVOKE(rtcd, idct16)(b->dqcoeff, b->diff, pitch);
      32                 :     else
      33               0 :         IDCT_INVOKE(rtcd, idct1)(b->dqcoeff, b->diff, pitch);
      34               0 : }
      35                 : 
      36                 : 
      37               0 : void vp8_inverse_transform_mby(const vp8_idct_rtcd_vtable_t *rtcd, MACROBLOCKD *x)
      38                 : {
      39                 :     int i;
      40                 : 
      41                 :     /* do 2nd order transform on the dc block */
      42               0 :     IDCT_INVOKE(rtcd, iwalsh16)(x->block[24].dqcoeff, x->block[24].diff);
      43                 : 
      44               0 :     recon_dcblock(x);
      45                 : 
      46               0 :     for (i = 0; i < 16; i++)
      47                 :     {
      48               0 :         vp8_inverse_transform_b(rtcd, &x->block[i], 32);
      49                 :     }
      50                 : 
      51               0 : }
      52               0 : void vp8_inverse_transform_mbuv(const vp8_idct_rtcd_vtable_t *rtcd, MACROBLOCKD *x)
      53                 : {
      54                 :     int i;
      55                 : 
      56               0 :     for (i = 16; i < 24; i++)
      57                 :     {
      58               0 :         vp8_inverse_transform_b(rtcd, &x->block[i], 16);
      59                 :     }
      60                 : 
      61               0 : }
      62                 : 
      63                 : 
      64               0 : void vp8_inverse_transform_mb(const vp8_idct_rtcd_vtable_t *rtcd, MACROBLOCKD *x)
      65                 : {
      66                 :     int i;
      67                 : 
      68               0 :     if (x->mode_info_context->mbmi.mode != B_PRED &&
      69               0 :         x->mode_info_context->mbmi.mode != SPLITMV)
      70                 :     {
      71                 :         /* do 2nd order transform on the dc block */
      72                 : 
      73               0 :         IDCT_INVOKE(rtcd, iwalsh16)(&x->block[24].dqcoeff[0], x->block[24].diff);
      74               0 :         recon_dcblock(x);
      75                 :     }
      76                 : 
      77               0 :     for (i = 0; i < 16; i++)
      78                 :     {
      79               0 :         vp8_inverse_transform_b(rtcd, &x->block[i], 32);
      80                 :     }
      81                 : 
      82                 : 
      83               0 :     for (i = 16; i < 24; i++)
      84                 :     {
      85               0 :         vp8_inverse_transform_b(rtcd, &x->block[i], 16);
      86                 :     }
      87                 : 
      88               0 : }

Generated by: LCOV version 1.7