#ifndef AOM_AV1_COMMON_RECONINTRA_H_
#define AOM_AV1_COMMON_RECONINTRA_H_
#include <stdlib.h>
#include "aom/aom_integer.h"
#include "av1/common/av1_common_int.h"
#include "av1/common/blockd.h"
#ifdef __cplusplus
extern "C" {
#endif
void av1_init_intra_predictors(void);
void av1_predict_intra_block_facade(const AV1_COMMON *cm, MACROBLOCKD *xd,
int plane, int blk_col, int blk_row,
TX_SIZE tx_size);
void av1_predict_intra_block(const MACROBLOCKD *xd, BLOCK_SIZE sb_size,
int enable_intra_edge_filter, int wpx, int hpx,
TX_SIZE tx_size, PREDICTION_MODE mode,
int angle_delta, int use_palette,
FILTER_INTRA_MODE filter_intra_mode,
const uint8_t *ref, int ref_stride, uint8_t *dst,
int dst_stride, int col_off, int row_off,
int plane);
static const PREDICTION_MODE interintra_to_intra_mode[INTERINTRA_MODES] = …;
static const INTERINTRA_MODE intra_to_interintra_mode[INTRA_MODES] = …;
#define FILTER_INTRA_SCALE_BITS …
static inline int av1_is_directional_mode(PREDICTION_MODE mode) { … }
static inline int av1_is_diagonal_mode(PREDICTION_MODE mode) { … }
static inline int av1_use_angle_delta(BLOCK_SIZE bsize) { … }
static inline int av1_allow_intrabc(const AV1_COMMON *const cm) { … }
static inline int av1_filter_intra_allowed_bsize(const AV1_COMMON *const cm,
BLOCK_SIZE bs) { … }
static inline int av1_filter_intra_allowed(const AV1_COMMON *const cm,
const MB_MODE_INFO *mbmi) { … }
extern const int8_t av1_filter_intra_taps[FILTER_INTRA_MODES][8][8];
static const int16_t dr_intra_derivative[90] = …;
static inline int av1_get_dx(int angle) { … }
static inline int av1_get_dy(int angle) { … }
static inline int av1_use_intra_edge_upsample(int bs0, int bs1, int delta,
int type) { … }
#ifdef __cplusplus
}
#endif
#endif