diff options
author | RĂ©mi Verschelde <rverschelde@gmail.com> | 2016-10-30 18:12:00 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-10-30 18:12:00 +0100 |
commit | c6c13eb8fc7d4ad631a92edcf360f38210129d39 (patch) | |
tree | 12e82cb0ab3e2c3953d92ffd2aca5500685b87d7 /thirdparty/libvpx/vp9/common/vp9_mv.h | |
parent | 1944635ac4f3e9f12b176c2f38d43205195c35c5 (diff) | |
parent | d710b265f8c9c94f3315d2d2ae2267c7437eb179 (diff) |
Merge pull request #6490 from zaps166/webm-pr
Add WebM support
Diffstat (limited to 'thirdparty/libvpx/vp9/common/vp9_mv.h')
-rw-r--r-- | thirdparty/libvpx/vp9/common/vp9_mv.h | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/thirdparty/libvpx/vp9/common/vp9_mv.h b/thirdparty/libvpx/vp9/common/vp9_mv.h new file mode 100644 index 0000000000..5d89da8c25 --- /dev/null +++ b/thirdparty/libvpx/vp9/common/vp9_mv.h @@ -0,0 +1,55 @@ +/* + * Copyright (c) 2010 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 VP9_COMMON_VP9_MV_H_ +#define VP9_COMMON_VP9_MV_H_ + +#include "vpx/vpx_integer.h" + +#include "vp9/common/vp9_common.h" + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct mv { + int16_t row; + int16_t col; +} MV; + +typedef union int_mv { + uint32_t as_int; + MV as_mv; +} int_mv; /* facilitates faster equality tests and copies */ + +typedef struct mv32 { + int32_t row; + int32_t col; +} MV32; + +static INLINE int is_zero_mv(const MV *mv) { + return *((const uint32_t *)mv) == 0; +} + +static INLINE int is_equal_mv(const MV *a, const MV *b) { + return *((const uint32_t *)a) == *((const uint32_t *)b); +} + +static INLINE void clamp_mv(MV *mv, int min_col, int max_col, + int min_row, int max_row) { + mv->col = clamp(mv->col, min_col, max_col); + mv->row = clamp(mv->row, min_row, max_row); +} + +#ifdef __cplusplus +} // extern "C" +#endif + +#endif // VP9_COMMON_VP9_MV_H_ |