| /* |
| * Copyright (c) 2018 The WebRTC 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 MODULES_VIDEO_CODING_CODECS_VP8_TEST_MOCK_LIBVPX_INTERFACE_H_ |
| #define MODULES_VIDEO_CODING_CODECS_VP8_TEST_MOCK_LIBVPX_INTERFACE_H_ |
| |
| #include "modules/video_coding/codecs/vp8/libvpx_interface.h" |
| #include "test/gmock.h" |
| #include "test/gtest.h" |
| |
| namespace webrtc { |
| |
| class MockLibvpxVp8Interface : public LibvpxInterface { |
| public: |
| MOCK_CONST_METHOD5(img_alloc, |
| vpx_image_t*(vpx_image_t*, |
| vpx_img_fmt_t, |
| unsigned int, |
| unsigned int, |
| unsigned int)); |
| MOCK_CONST_METHOD6(img_wrap, |
| vpx_image_t*(vpx_image_t*, |
| vpx_img_fmt_t, |
| unsigned int, |
| unsigned int, |
| unsigned int, |
| unsigned char*)); |
| MOCK_CONST_METHOD1(img_free, void(vpx_image_t* img)); |
| MOCK_CONST_METHOD2(codec_enc_config_set, |
| vpx_codec_err_t(vpx_codec_ctx_t*, |
| const vpx_codec_enc_cfg_t*)); |
| MOCK_CONST_METHOD3(codec_enc_config_default, |
| vpx_codec_err_t(vpx_codec_iface_t*, |
| vpx_codec_enc_cfg_t*, |
| unsigned int)); |
| MOCK_CONST_METHOD4(codec_enc_init, |
| vpx_codec_err_t(vpx_codec_ctx_t*, |
| vpx_codec_iface_t*, |
| const vpx_codec_enc_cfg_t*, |
| vpx_codec_flags_t)); |
| MOCK_CONST_METHOD6(codec_enc_init_multi, |
| vpx_codec_err_t(vpx_codec_ctx_t*, |
| vpx_codec_iface_t*, |
| vpx_codec_enc_cfg_t*, |
| int, |
| vpx_codec_flags_t, |
| vpx_rational_t*)); |
| MOCK_CONST_METHOD1(codec_destroy, vpx_codec_err_t(vpx_codec_ctx_t*)); |
| MOCK_CONST_METHOD3(codec_control, |
| vpx_codec_err_t(vpx_codec_ctx_t*, |
| vp8e_enc_control_id, |
| uint32_t)); |
| MOCK_CONST_METHOD3(codec_control, |
| vpx_codec_err_t(vpx_codec_ctx_t*, |
| vp8e_enc_control_id, |
| int)); |
| MOCK_CONST_METHOD3(codec_control, |
| vpx_codec_err_t(vpx_codec_ctx_t*, |
| vp8e_enc_control_id, |
| int*)); |
| MOCK_CONST_METHOD3(codec_control, |
| vpx_codec_err_t(vpx_codec_ctx_t*, |
| vp8e_enc_control_id, |
| vpx_roi_map*)); |
| MOCK_CONST_METHOD3(codec_control, |
| vpx_codec_err_t(vpx_codec_ctx_t*, |
| vp8e_enc_control_id, |
| vpx_active_map*)); |
| MOCK_CONST_METHOD3(codec_control, |
| vpx_codec_err_t(vpx_codec_ctx_t*, |
| vp8e_enc_control_id, |
| vpx_scaling_mode*)); |
| MOCK_CONST_METHOD6(codec_encode, |
| vpx_codec_err_t(vpx_codec_ctx_t*, |
| const vpx_image_t*, |
| vpx_codec_pts_t, |
| uint64_t, |
| vpx_enc_frame_flags_t, |
| uint64_t)); |
| MOCK_CONST_METHOD2(codec_get_cx_data, |
| const vpx_codec_cx_pkt_t*(vpx_codec_ctx_t*, |
| vpx_codec_iter_t*)); |
| }; |
| |
| } // namespace webrtc |
| |
| #endif // MODULES_VIDEO_CODING_CODECS_VP8_TEST_MOCK_LIBVPX_INTERFACE_H_ |