Cemu/dependencies/ih264d/common/ih264_weighted_pred.h
Exverge 3a3710d2e2
Correctly deal with preceding underscore on macOS
Co-authored-by: neebyA <neebyA@users.noreply.github.com>

Revert "Update ih264_intra_pred_filters.h"

This reverts commit 0ac296d79a.

Revert "Update ih264_deblk_edge_filters.h"

This reverts commit 0e48f86412.

Revert "fix CI on windows"

This reverts commit 2ccb5dd287.

Revert "fix compiling on x64"

This reverts commit 99378f137f.

Revert "update ih264d macros"

This reverts commit 0924e1180e.

Revert "ih264d: Modify to compile with AppleClang & for M1"

This reverts commit d2a9c317d6.
2025-05-26 00:33:31 -04:00

164 lines
5.6 KiB
C

/******************************************************************************
*
* Copyright (C) 2015 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at:
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
*****************************************************************************
* Originally developed and contributed by Ittiam Systems Pvt. Ltd, Bangalore
*/
/**
*******************************************************************************
* @file
* ih264_weighted_pred.h
*
* @brief
* Declarations of functions used for weighted prediction
*
* @author
* Ittiam
*
* @par List of Functions:
* -ih264_default_weighted_pred_luma
* -ih264_default_weighted_pred_chroma
* -ih264_weighted_pred_luma
* -ih264_weighted_pred_chroma
* -ih264_weighted_bi_pred_luma
* -ih264_weighted_bi_pred_chroma
* -ih264_default_weighted_pred_luma_a9q
* -ih264_default_weighted_pred_chroma_a9q
* -ih264_weighted_pred_luma_a9q
* -ih264_weighted_pred_luma_a9q
* -ih264_weighted_bi_pred_luma_a9q
* -ih264_weighted_bi_pred_chroma_a9q
* -ih264_default_weighted_pred_luma_av8
* -ih264_default_weighted_pred_chroma_av8
* -ih264_weighted_pred_luma_av8
* -ih264_weighted_pred_chroma_av8
* -ih264_weighted_bi_pred_luma_av8
* -ih264_weighted_bi_pred_chroma_av8
* -ih264_default_weighted_pred_luma_sse42
* -ih264_default_weighted_pred_chroma_sse42
* -ih264_weighted_pred_luma_sse42
* -ih264_weighted_pred_chroma_sse42
* -ih264_weighted_bi_pred_luma_sse42
* -ih264_weighted_bi_pred_chroma_sse42
*
*
* @remarks
* None
*
*******************************************************************************
*/
#ifndef IH264_WEIGHTED_PRED_H_
#define IH264_WEIGHTED_PRED_H_
/*****************************************************************************/
/* Extern Function Declarations */
/*****************************************************************************/
typedef void ih264_default_weighted_pred_ft(UWORD8 *puc_src1,
UWORD8 *puc_src2,
UWORD8 *puc_dst,
WORD32 src_strd1,
WORD32 src_strd2,
WORD32 dst_strd,
WORD32 ht,
WORD32 wd);
typedef void ih264_weighted_pred_ft(UWORD8 *puc_src,
UWORD8 *puc_dst,
WORD32 src_strd,
WORD32 dst_strd,
WORD32 log_wd,
WORD32 wt,
WORD32 ofst,
WORD32 ht,
WORD32 wd);
typedef void ih264_weighted_bi_pred_ft(UWORD8 *puc_src1,
UWORD8 *puc_src2,
UWORD8 *puc_dst,
WORD32 src_strd1,
WORD32 src_strd2,
WORD32 dst_strd,
WORD32 log_wd,
WORD32 wt1,
WORD32 wt2,
WORD32 ofst1,
WORD32 ofst2,
WORD32 ht,
WORD32 wd);
/* No NEON Declarations */
ih264_default_weighted_pred_ft ih264_default_weighted_pred_luma;
ih264_default_weighted_pred_ft ih264_default_weighted_pred_chroma;
ih264_weighted_pred_ft ih264_weighted_pred_luma;
ih264_weighted_pred_ft ih264_weighted_pred_chroma;
ih264_weighted_bi_pred_ft ih264_weighted_bi_pred_luma;
ih264_weighted_bi_pred_ft ih264_weighted_bi_pred_chroma;
/* A9 NEON Declarations */
ih264_default_weighted_pred_ft ih264_default_weighted_pred_luma_a9q;
ih264_default_weighted_pred_ft ih264_default_weighted_pred_chroma_a9q;
ih264_weighted_pred_ft ih264_weighted_pred_luma_a9q;
ih264_weighted_pred_ft ih264_weighted_pred_chroma_a9q;
ih264_weighted_bi_pred_ft ih264_weighted_bi_pred_luma_a9q;
ih264_weighted_bi_pred_ft ih264_weighted_bi_pred_chroma_a9q;
/* AV8 NEON Declarations */
ih264_default_weighted_pred_ft ih264_default_weighted_pred_luma_av8;
ih264_default_weighted_pred_ft ih264_default_weighted_pred_chroma_av8;
ih264_weighted_pred_ft ih264_weighted_pred_luma_av8;
ih264_weighted_pred_ft ih264_weighted_pred_chroma_av8;
ih264_weighted_bi_pred_ft ih264_weighted_bi_pred_luma_av8;
ih264_weighted_bi_pred_ft ih264_weighted_bi_pred_chroma_av8;
/* SSE42 Intrinsic Declarations */
ih264_default_weighted_pred_ft ih264_default_weighted_pred_luma_sse42;
ih264_default_weighted_pred_ft ih264_default_weighted_pred_chroma_sse42;
ih264_weighted_pred_ft ih264_weighted_pred_luma_sse42;
ih264_weighted_pred_ft ih264_weighted_pred_chroma_sse42;
ih264_weighted_bi_pred_ft ih264_weighted_bi_pred_luma_sse42;
ih264_weighted_bi_pred_ft ih264_weighted_bi_pred_chroma_sse42;
#endif /* IH264_WEIGHTED_PRED_H_ */
/** Nothing past this point */