copy_output_result.cc revision 7d4cd473f85ac64c3747c96c277f9e506a0d2246
17d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)// Copyright 2013 The Chromium Authors. All rights reserved. 27d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 37d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)// found in the LICENSE file. 47d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles) 57d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)#include "cc/output/copy_output_result.h" 67d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles) 77d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)#include "base/logging.h" 87d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)#include "cc/resources/texture_mailbox.h" 97d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)#include "third_party/skia/include/core/SkBitmap.h" 107d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles) 117d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)namespace cc { 127d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles) 137d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)CopyOutputResult::CopyOutputResult() {} 147d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles) 157d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)CopyOutputResult::CopyOutputResult(scoped_ptr<SkBitmap> bitmap) 167d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles) : size_(bitmap->width(), bitmap->height()), 177d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles) bitmap_(bitmap.Pass()) { 187d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles) DCHECK(bitmap_); 197d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)} 207d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles) 217d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)CopyOutputResult::CopyOutputResult(gfx::Size size, 227d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles) scoped_ptr<TextureMailbox> texture_mailbox) 237d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles) : size_(size), 247d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles) texture_mailbox_(texture_mailbox.Pass()) { 257d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles) DCHECK(texture_mailbox_); 267d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles) DCHECK(texture_mailbox_->IsTexture()); 277d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)} 287d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles) 297d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)CopyOutputResult::~CopyOutputResult() {} 307d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles) 317d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)scoped_ptr<SkBitmap> CopyOutputResult::TakeBitmap() { 327d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles) return bitmap_.Pass(); 337d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)} 347d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles) 357d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)scoped_ptr<TextureMailbox> CopyOutputResult::TakeTexture() { 367d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles) return texture_mailbox_.Pass(); 377d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)} 387d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles) 397d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)} // namespace cc 40