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.
5 #include "cc/test/fake_ui_resource_layer_tree_host_impl.h"
7 #include "cc/test/fake_layer_tree_host_impl.h"
11 FakeUIResourceLayerTreeHostImpl::FakeUIResourceLayerTreeHostImpl(Proxy
* proxy
)
12 : FakeLayerTreeHostImpl(proxy
), fake_next_resource_id_(1) {}
14 FakeUIResourceLayerTreeHostImpl::~FakeUIResourceLayerTreeHostImpl() {}
16 void FakeUIResourceLayerTreeHostImpl::CreateUIResource(
18 const UIResourceBitmap
& bitmap
) {
19 if (ResourceIdForUIResource(uid
))
20 DeleteUIResource(uid
);
23 data
.resource_id
= fake_next_resource_id_
++;
24 data
.size
= bitmap
.GetSize();
25 data
.opaque
= bitmap
.GetOpaque();
26 fake_ui_resource_map_
[uid
] = data
;
29 void FakeUIResourceLayerTreeHostImpl::DeleteUIResource(UIResourceId uid
) {
30 ResourceProvider::ResourceId id
= ResourceIdForUIResource(uid
);
32 fake_ui_resource_map_
.erase(uid
);
35 ResourceProvider::ResourceId
36 FakeUIResourceLayerTreeHostImpl::ResourceIdForUIResource(
37 UIResourceId uid
) const {
38 UIResourceMap::const_iterator iter
= fake_ui_resource_map_
.find(uid
);
39 if (iter
!= fake_ui_resource_map_
.end())
40 return iter
->second
.resource_id
;
44 bool FakeUIResourceLayerTreeHostImpl::IsUIResourceOpaque(UIResourceId uid
)
46 UIResourceMap::const_iterator iter
= fake_ui_resource_map_
.find(uid
);
47 DCHECK(iter
!= fake_ui_resource_map_
.end());
48 return iter
->second
.opaque
;