blob: 1ac927d29f95dacfbf05c5d895709dcb5c503fb4 [file] [log] [blame]
/*
* 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_METHOD(
vpx_image_t*,
img_alloc,
(vpx_image_t*, vpx_img_fmt_t, unsigned int, unsigned int, unsigned int),
(const, override));
MOCK_METHOD(vpx_image_t*,
img_wrap,
(vpx_image_t*,
vpx_img_fmt_t,
unsigned int,
unsigned int,
unsigned int,
unsigned char*),
(const, override));
MOCK_METHOD(void, img_free, (vpx_image_t * img), (const, override));
MOCK_METHOD(vpx_codec_err_t,
codec_enc_config_set,
(vpx_codec_ctx_t*, const vpx_codec_enc_cfg_t*),
(const, override));
MOCK_METHOD(vpx_codec_err_t,
codec_enc_config_default,
(vpx_codec_iface_t*, vpx_codec_enc_cfg_t*, unsigned int),
(const, override));
MOCK_METHOD(vpx_codec_err_t,
codec_enc_init,
(vpx_codec_ctx_t*,
vpx_codec_iface_t*,
const vpx_codec_enc_cfg_t*,
vpx_codec_flags_t),
(const, override));
MOCK_METHOD(vpx_codec_err_t,
codec_enc_init_multi,
(vpx_codec_ctx_t*,
vpx_codec_iface_t*,
vpx_codec_enc_cfg_t*,
int,
vpx_codec_flags_t,
vpx_rational_t*),
(const, override));
MOCK_METHOD(vpx_codec_err_t,
codec_destroy,
(vpx_codec_ctx_t*),
(const, override));
MOCK_METHOD(vpx_codec_err_t,
codec_control,
(vpx_codec_ctx_t*, vp8e_enc_control_id, uint32_t),
(const, override));
MOCK_METHOD(vpx_codec_err_t,
codec_control,
(vpx_codec_ctx_t*, vp8e_enc_control_id, int),
(const, override));
MOCK_METHOD(vpx_codec_err_t,
codec_control,
(vpx_codec_ctx_t*, vp8e_enc_control_id, int*),
(const, override));
MOCK_METHOD(vpx_codec_err_t,
codec_control,
(vpx_codec_ctx_t*, vp8e_enc_control_id, vpx_roi_map*),
(const, override));
MOCK_METHOD(vpx_codec_err_t,
codec_control,
(vpx_codec_ctx_t*, vp8e_enc_control_id, vpx_active_map*),
(const, override));
MOCK_METHOD(vpx_codec_err_t,
codec_control,
(vpx_codec_ctx_t*, vp8e_enc_control_id, vpx_scaling_mode*),
(const, override));
MOCK_METHOD(vpx_codec_err_t,
codec_encode,
(vpx_codec_ctx_t*,
const vpx_image_t*,
vpx_codec_pts_t,
uint64_t,
vpx_enc_frame_flags_t,
uint64_t),
(const, override));
MOCK_METHOD(const vpx_codec_cx_pkt_t*,
codec_get_cx_data,
(vpx_codec_ctx_t*, vpx_codec_iter_t*),
(const, override));
};
} // namespace webrtc
#endif // MODULES_VIDEO_CODING_CODECS_VP8_TEST_MOCK_LIBVPX_INTERFACE_H_