#ifndef IS_DEC
#error "IS_DEC must be defined for reconinter_template.inc."
#endif
#if IS_DEC
static inline void build_one_inter_predictor(uint8_t *dst, int dst_stride,
const MV *src_mv,
InterPredParams *inter_pred_params,
MACROBLOCKD *xd, int mi_x,
int mi_y, int ref,
uint8_t **mc_buf) {
#else
static inline void build_one_inter_predictor(
uint8_t *dst, int dst_stride, const MV *src_mv,
InterPredParams *inter_pred_params) { … }
static bool is_sub8x8_inter(const MACROBLOCKD *xd, int plane, BLOCK_SIZE bsize,
int is_intrabc, int build_for_obmc) { … }
#if IS_DEC
static inline void build_inter_predictors_sub8x8(const AV1_COMMON *cm,
MACROBLOCKD *xd, int plane,
const MB_MODE_INFO *mi,
int mi_x, int mi_y,
uint8_t **mc_buf) {
#else
static inline void build_inter_predictors_sub8x8(const AV1_COMMON *cm,
MACROBLOCKD *xd, int plane,
const MB_MODE_INFO *mi,
int mi_x, int mi_y) { … }
#if IS_DEC
static inline void build_inter_predictors_8x8_and_bigger(
const AV1_COMMON *cm, MACROBLOCKD *xd, int plane, const MB_MODE_INFO *mi,
int build_for_obmc, int bw, int bh, int mi_x, int mi_y, uint8_t **mc_buf) {
#else
static inline void build_inter_predictors_8x8_and_bigger(
const AV1_COMMON *cm, MACROBLOCKD *xd, int plane, const MB_MODE_INFO *mi,
int build_for_obmc, int bw, int bh, int mi_x, int mi_y) { … }
#if IS_DEC
static inline void build_inter_predictors(const AV1_COMMON *cm, MACROBLOCKD *xd,
int plane, const MB_MODE_INFO *mi,
int build_for_obmc, int bw, int bh,
int mi_x, int mi_y,
uint8_t **mc_buf) {
if (is_sub8x8_inter(xd, plane, mi->bsize, is_intrabc_block(mi),
build_for_obmc)) {
assert(bw < 8 || bh < 8);
build_inter_predictors_sub8x8(cm, xd, plane, mi, mi_x, mi_y, mc_buf);
} else {
build_inter_predictors_8x8_and_bigger(cm, xd, plane, mi, build_for_obmc, bw,
bh, mi_x, mi_y, mc_buf);
}
}
#else
static inline void build_inter_predictors(const AV1_COMMON *cm, MACROBLOCKD *xd,
int plane, const MB_MODE_INFO *mi,
int build_for_obmc, int bw, int bh,
int mi_x, int mi_y) { … }
#endif