15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Copyright 2012 The Chromium Authors. All rights reserved. 25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file. 45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "cc/test/mock_quad_culler.h" 65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 72a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "cc/quads/draw_quad.h" 82a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)namespace cc { 105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)MockQuadCuller::MockQuadCuller() 122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) : active_quad_list_(&quad_list_storage_), 132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) active_shared_quad_state_list_(&shared_quad_state_storage_) {} 142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 152a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)MockQuadCuller::MockQuadCuller( 162a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) QuadList* external_quad_list, 172a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) SharedQuadStateList* external_shared_quad_state_list) 182a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) : active_quad_list_(external_quad_list), 192a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) active_shared_quad_state_list_(external_shared_quad_state_list) {} 202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)MockQuadCuller::~MockQuadCuller() {} 222a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 232a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)bool MockQuadCuller::Append(scoped_ptr<DrawQuad> draw_quad, AppendQuadsData*) { 242a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) if (!draw_quad->rect.IsEmpty()) { 252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) active_quad_list_->push_back(draw_quad.Pass()); 262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) return true; 272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) } 282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) return false; 295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 312a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)SharedQuadState* MockQuadCuller::UseSharedQuadState( 322a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) scoped_ptr<SharedQuadState> shared_quad_state) { 332a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) SharedQuadState* raw_ptr = shared_quad_state.get(); 342a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) active_shared_quad_state_list_->push_back(shared_quad_state.Pass()); 352a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) return raw_ptr; 365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 382a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} // namespace cc 39