From: Jingning Han Date: Wed, 15 Jul 2015 20:02:01 +0000 (-0700) Subject: Add vpx_dsp_common.h file X-Git-Tag: v1.5.0~446^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=db8e731b8d5a9e15e369e3921d4326e32b9efa10;p=libvpx Add vpx_dsp_common.h file Move the clamp functions to vpx_dsp_common.h file. Clear out the dependency of vp9_loopfilter_filters.c on vp9_common.h file. Change-Id: I9c4b928bcd7f597106b5aa96354356d3775a3431 --- diff --git a/vp9/common/vp9_common.h b/vp9/common/vp9_common.h index 9c2d7791e..44dfb4d2f 100644 --- a/vp9/common/vp9_common.h +++ b/vp9/common/vp9_common.h @@ -16,6 +16,7 @@ #include #include "./vpx_config.h" +#include "vpx_dsp/vpx_dsp_common.h" #include "vpx_mem/vpx_mem.h" #include "vpx/vpx_integer.h" #include "vp9/common/vp9_systemdependent.h" @@ -24,9 +25,6 @@ extern "C" { #endif -#define MIN(x, y) (((x) < (y)) ? (x) : (y)) -#define MAX(x, y) (((x) > (y)) ? (x) : (y)) - // Only need this for fixed-size arrays, for structs just assign. #define vp9_copy(dest, src) { \ assert(sizeof(dest) == sizeof(src)); \ @@ -42,18 +40,6 @@ extern "C" { #define vp9_zero(dest) memset(&(dest), 0, sizeof(dest)) #define vp9_zero_array(dest, n) memset(dest, 0, n * sizeof(*dest)) -static INLINE uint8_t clip_pixel(int val) { - return (val > 255) ? 255 : (val < 0) ? 0 : val; -} - -static INLINE int clamp(int value, int low, int high) { - return value < low ? low : (value > high ? high : value); -} - -static INLINE double fclamp(double value, double low, double high) { - return value < low ? low : (value > high ? high : value); -} - static INLINE int get_unsigned_bits(unsigned int num_values) { return num_values > 0 ? get_msb(num_values) + 1 : 0; } diff --git a/vp9/common/vp9_loopfilter_filters.c b/vp9/common/vp9_loopfilter_filters.c index b0626625a..4876f9e3e 100644 --- a/vp9/common/vp9_loopfilter_filters.c +++ b/vp9/common/vp9_loopfilter_filters.c @@ -9,8 +9,8 @@ */ #include "./vpx_config.h" +#include "vpx_dsp/vpx_dsp_common.h" #include "vpx_ports/mem.h" -#include "vp9/common/vp9_common.h" static INLINE int8_t signed_char_clamp(int t) { return (int8_t)clamp(t, -128, 127); diff --git a/vpx_dsp/vpx_dsp.mk b/vpx_dsp/vpx_dsp.mk index 70a131ced..22d1fed61 100644 --- a/vpx_dsp/vpx_dsp.mk +++ b/vpx_dsp/vpx_dsp.mk @@ -9,6 +9,7 @@ ## DSP_SRCS-yes += vpx_dsp.mk +DSP_SRCS-yes += vpx_dsp_common.h DSP_SRCS-$(HAVE_MSA) += mips/macros_msa.h diff --git a/vpx_dsp/vpx_dsp_common.h b/vpx_dsp/vpx_dsp_common.h new file mode 100644 index 000000000..c7bac9599 --- /dev/null +++ b/vpx_dsp/vpx_dsp_common.h @@ -0,0 +1,43 @@ +/* + * Copyright (c) 2015 The WebM project authors. All Rights Reserved. + * + * Use of this source code is governed by a BSD-style license + * that can be found in the LICENSE file in the root of the source + * tree. An additional intellectual property rights grant can be found + * in the file PATENTS. All contributing project authors may + * be found in the AUTHORS file in the root of the source tree. + */ + +#ifndef VPX_DSP_COMMON_H_ +#define VPX_DSP_COMMON_H_ + +#include + +#include "./vpx_config.h" +#include "vpx/vpx_integer.h" +#include "vpx_ports/mem.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define MIN(x, y) (((x) < (y)) ? (x) : (y)) +#define MAX(x, y) (((x) > (y)) ? (x) : (y)) + +static INLINE uint8_t clip_pixel(int val) { + return (val > 255) ? 255 : (val < 0) ? 0 : val; +} + +static INLINE int clamp(int value, int low, int high) { + return value < low ? low : (value > high ? high : value); +} + +static INLINE double fclamp(double value, double low, double high) { + return value < low ? low : (value > high ? high : value); +} + +#ifdef __cplusplus +} // extern "C" +#endif + +#endif // VPX_DSP_COMMON_H_