Telemetry support for iframes.
[chromium-blink-merge.git] / cc / surfaces / surface.cc
blob82a13222f261376c45378c859f3f3c2a879fa57a
1 // Copyright 2014 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.
5 #include "cc/surfaces/surface.h"
7 #include "cc/output/compositor_frame.h"
8 #include "cc/surfaces/surface_manager.h"
10 namespace cc {
12 Surface::Surface(SurfaceManager* manager,
13 SurfaceClient* client,
14 const gfx::Size& size)
15 : manager_(manager),
16 client_(client),
17 size_(size) {
18 surface_id_ = manager_->RegisterAndAllocateIDForSurface(this);
21 Surface::~Surface() {
22 manager_->DeregisterSurface(surface_id_);
25 void Surface::QueueFrame(scoped_ptr<CompositorFrame> frame) {
26 current_frame_ = frame.Pass();
29 CompositorFrame* Surface::GetEligibleFrame() { return current_frame_.get(); }
31 } // namespace cc