1// Copyright 2013 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#ifndef CC_TEST_FAKE_UI_RESOURCE_LAYER_TREE_HOST_IMPL_H_ 6#define CC_TEST_FAKE_UI_RESOURCE_LAYER_TREE_HOST_IMPL_H_ 7 8#include "base/containers/hash_tables.h" 9#include "cc/test/fake_layer_tree_host_impl.h" 10 11namespace cc { 12 13class FakeUIResourceLayerTreeHostImpl : public FakeLayerTreeHostImpl { 14 public: 15 explicit FakeUIResourceLayerTreeHostImpl(Proxy* proxy, 16 SharedBitmapManager* manager); 17 virtual ~FakeUIResourceLayerTreeHostImpl(); 18 19 virtual void CreateUIResource(UIResourceId uid, 20 const UIResourceBitmap& bitmap) OVERRIDE; 21 22 virtual void DeleteUIResource(UIResourceId uid) OVERRIDE; 23 24 virtual ResourceProvider::ResourceId ResourceIdForUIResource( 25 UIResourceId uid) const OVERRIDE; 26 27 virtual bool IsUIResourceOpaque(UIResourceId uid) const OVERRIDE; 28 29 private: 30 ResourceProvider::ResourceId fake_next_resource_id_; 31 typedef base::hash_map<UIResourceId, LayerTreeHostImpl::UIResourceData> 32 UIResourceMap; 33 UIResourceMap fake_ui_resource_map_; 34}; 35 36} // namespace cc 37 38#endif // CC_TEST_FAKE_UI_RESOURCE_LAYER_TREE_HOST_IMPL_H_ 39