blob: 1b25112e011a2713cbcda8916e3dc133980eb928 [file] [log] [blame]
Peter Boströmeb66e802015-06-05 11:08:03 +02001/*
2 * Copyright (c) 2015 The WebRTC project authors. All Rights Reserved.
3 *
4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree.
9 */
Mirko Bonadei92ea95e2017-09-15 06:47:31 +020010#ifndef TEST_FAKE_TEXTURE_FRAME_H_
11#define TEST_FAKE_TEXTURE_FRAME_H_
Peter Boströmeb66e802015-06-05 11:08:03 +020012
Mirko Bonadei92ea95e2017-09-15 06:47:31 +020013#include "api/video/i420_buffer.h"
14#include "api/video/video_frame.h"
15#include "common_video/include/video_frame_buffer.h"
16#include "rtc_base/checks.h"
Peter Boströmeb66e802015-06-05 11:08:03 +020017
18namespace webrtc {
19namespace test {
20
Magnus Jedvert90e31902017-06-07 11:32:50 +020021class FakeNativeBuffer : public VideoFrameBuffer {
Peter Boström13f61df2016-01-04 22:36:38 +010022 public:
Magnus Jedvert90e31902017-06-07 11:32:50 +020023 static VideoFrame CreateFrame(int width,
Peter Boström13f61df2016-01-04 22:36:38 +010024 int height,
25 uint32_t timestamp,
26 int64_t render_time_ms,
27 VideoRotation rotation);
Peter Boströmeb66e802015-06-05 11:08:03 +020028
Magnus Jedvert90e31902017-06-07 11:32:50 +020029 FakeNativeBuffer(int width, int height) : width_(width), height_(height) {}
Peter Boströmeb66e802015-06-05 11:08:03 +020030
Mirko Bonadeid93a51d2018-07-17 15:47:51 +020031 Type type() const override;
32 int width() const override;
33 int height() const override;
Peter Boströmeb66e802015-06-05 11:08:03 +020034
35 private:
Mirko Bonadeid93a51d2018-07-17 15:47:51 +020036 rtc::scoped_refptr<I420BufferInterface> ToI420() override;
Magnus Jedvert90e31902017-06-07 11:32:50 +020037
38 const int width_;
39 const int height_;
Peter Boströmeb66e802015-06-05 11:08:03 +020040};
41
Peter Boströmeb66e802015-06-05 11:08:03 +020042} // namespace test
43} // namespace webrtc
Mirko Bonadei92ea95e2017-09-15 06:47:31 +020044#endif // TEST_FAKE_TEXTURE_FRAME_H_