1 // Copyright 2012 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #include "cc/test/fake_video_frame_provider.h" 6 7 #include "components/viz/common/frame_sinks/begin_frame_args.h" 8 9 namespace cc { 10 FakeVideoFrameProvider()11FakeVideoFrameProvider::FakeVideoFrameProvider() 12 : frame_(nullptr), client_(nullptr), put_current_frame_count_(0) {} 13 ~FakeVideoFrameProvider()14FakeVideoFrameProvider::~FakeVideoFrameProvider() { 15 if (client_) 16 client_->StopUsingProvider(); 17 } 18 UpdateCurrentFrame(base::TimeTicks deadline_min,base::TimeTicks deadline_max)19bool FakeVideoFrameProvider::UpdateCurrentFrame(base::TimeTicks deadline_min, 20 base::TimeTicks deadline_max) { 21 return HasCurrentFrame(); 22 } 23 SetVideoFrameProviderClient(Client * client)24void FakeVideoFrameProvider::SetVideoFrameProviderClient(Client* client) { 25 client_ = client; 26 } 27 HasCurrentFrame()28bool FakeVideoFrameProvider::HasCurrentFrame() { 29 return static_cast<bool>(frame_); 30 } 31 GetCurrentFrame()32scoped_refptr<media::VideoFrame> FakeVideoFrameProvider::GetCurrentFrame() { 33 return frame_; 34 } 35 PutCurrentFrame()36void FakeVideoFrameProvider::PutCurrentFrame() { 37 ++put_current_frame_count_; 38 } 39 GetPreferredRenderInterval()40base::TimeDelta FakeVideoFrameProvider::GetPreferredRenderInterval() { 41 return viz::BeginFrameArgs::MinInterval(); 42 } 43 44 } // namespace cc 45