PageRenderTime 56ms CodeModel.GetById 43ms app.highlight 10ms RepoModel.GetById 1ms app.codeStats 0ms

/H264Dec/source/h264bsd_reconstruct.h

http://github.com/mbebenita/Broadway
C Header | 210 lines | 150 code | 23 blank | 37 comment | 0 complexity | 8445dad26ac040727c778a2a99abf9e2 MD5 | raw file
  1/*
  2 * Copyright (C) 2009 The Android Open Source Project
  3 *
  4 * Licensed under the Apache License, Version 2.0 (the "License");
  5 * you may not use this file except in compliance with the License.
  6 * You may obtain a copy of the License at
  7 *
  8 *      http://www.apache.org/licenses/LICENSE-2.0
  9 *
 10 * Unless required by applicable law or agreed to in writing, software
 11 * distributed under the License is distributed on an "AS IS" BASIS,
 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 13 * See the License for the specific language governing permissions and
 14 * limitations under the License.
 15 */
 16
 17/*------------------------------------------------------------------------------
 18
 19    Table of contents
 20
 21    1. Include headers
 22    2. Module defines
 23    3. Data types
 24    4. Function prototypes
 25
 26------------------------------------------------------------------------------*/
 27
 28#ifndef H264SWDEC_RECONSTRUCT_H
 29#define H264SWDEC_RECONSTRUCT_H
 30
 31/*------------------------------------------------------------------------------
 32    1. Include headers
 33------------------------------------------------------------------------------*/
 34
 35#include "basetype.h"
 36#include "h264bsd_macroblock_layer.h"
 37#include "h264bsd_image.h"
 38
 39/*------------------------------------------------------------------------------
 40    2. Module defines
 41------------------------------------------------------------------------------*/
 42
 43/*------------------------------------------------------------------------------
 44    3. Data types
 45------------------------------------------------------------------------------*/
 46
 47/*------------------------------------------------------------------------------
 48    4. Function prototypes
 49------------------------------------------------------------------------------*/
 50#ifndef H264DEC_OMXDL
 51void h264bsdPredictSamples(
 52  u8 *data,
 53  mv_t *mv,
 54  image_t *refPic,
 55  u32 xA,
 56  u32 yA,
 57  u32 partX,
 58  u32 partY,
 59  u32 partWidth,
 60  u32 partHeight);
 61#else
 62void h264bsdPredictSamples(
 63  u8 *data,
 64  mv_t *mv,
 65  image_t *refPic,
 66  u32 colAndRow,/* packaged data | column    | row                |*/
 67  u32 part,     /* packaged data |partX|partY|partWidth|partHeight|*/
 68  u8 *pFill);
 69#endif
 70
 71void h264bsdFillBlock(
 72  u8 * ref,
 73  u8 * fill,
 74  i32 x0,
 75  i32 y0,
 76  u32 width,
 77  u32 height,
 78  u32 blockWidth,
 79  u32 blockHeight,
 80  u32 fillScanLength);
 81
 82void h264bsdInterpolateChromaHor(
 83  u8 *pRef,
 84  u8 *predPartChroma,
 85  i32 x0,
 86  i32 y0,
 87  u32 width,
 88  u32 height,
 89  u32 xFrac,
 90  u32 chromaPartWidth,
 91  u32 chromaPartHeight);
 92
 93void h264bsdInterpolateChromaVer(
 94  u8 *pRef,
 95  u8 *predPartChroma,
 96  i32 x0,
 97  i32 y0,
 98  u32 width,
 99  u32 height,
100  u32 yFrac,
101  u32 chromaPartWidth,
102  u32 chromaPartHeight);
103
104void h264bsdInterpolateChromaHorVer(
105  u8 *ref,
106  u8 *predPartChroma,
107  i32 x0,
108  i32 y0,
109  u32 width,
110  u32 height,
111  u32 xFrac,
112  u32 yFrac,
113  u32 chromaPartWidth,
114  u32 chromaPartHeight);
115
116void h264bsdInterpolateVerHalf(
117  u8 *ref,
118  u8 *mb,
119  i32 x0,
120  i32 y0,
121  u32 width,
122  u32 height,
123  u32 partWidth,
124  u32 partHeight);
125
126void h264bsdInterpolateVerQuarter(
127  u8 *ref,
128  u8 *mb,
129  i32 x0,
130  i32 y0,
131  u32 width,
132  u32 height,
133  u32 partWidth,
134  u32 partHeight,
135  u32 verOffset);
136
137void h264bsdInterpolateHorHalf(
138  u8 *ref,
139  u8 *mb,
140  i32 x0,
141  i32 y0,
142  u32 width,
143  u32 height,
144  u32 partWidth,
145  u32 partHeight);
146
147void h264bsdInterpolateHorQuarter(
148  u8 *ref,
149  u8 *mb,
150  i32 x0,
151  i32 y0,
152  u32 width,
153  u32 height,
154  u32 partWidth,
155  u32 partHeight,
156  u32 horOffset);
157
158void h264bsdInterpolateHorVerQuarter(
159  u8 *ref,
160  u8 *mb,
161  i32 x0,
162  i32 y0,
163  u32 width,
164  u32 height,
165  u32 partWidth,
166  u32 partHeight,
167  u32 horVerOffset);
168
169void h264bsdInterpolateMidHalf(
170  u8 *ref,
171  u8 *mb,
172  i32 x0,
173  i32 y0,
174  u32 width,
175  u32 height,
176  u32 partWidth,
177  u32 partHeight);
178
179void h264bsdInterpolateMidVerQuarter(
180  u8 *ref,
181  u8 *mb,
182  i32 x0,
183  i32 y0,
184  u32 width,
185  u32 height,
186  u32 partWidth,
187  u32 partHeight,
188  u32 verOffset);
189
190void h264bsdInterpolateMidHorQuarter(
191  u8 *ref,
192  u8 *mb,
193  i32 x0,
194  i32 y0,
195  u32 width,
196  u32 height,
197  u32 partWidth,
198  u32 partHeight,
199  u32 horOffset);
200
201
202void h264bsdFillRow7(
203  u8 *ref,
204  u8 *fill,
205  i32 left,
206  i32 center,
207  i32 right);
208
209#endif /* #ifdef H264SWDEC_RECONSTRUCT_H */
210