Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(282)

Side by Side Diff: cc/resources/returned_resource.h

Issue 1427543002: Modified old wait sync point functions to also accept new sync tokens. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix mock gpu video accelerator factory Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 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 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CC_RESOURCES_RETURNED_RESOURCE_H_ 5 #ifndef CC_RESOURCES_RETURNED_RESOURCE_H_
6 #define CC_RESOURCES_RETURNED_RESOURCE_H_ 6 #define CC_RESOURCES_RETURNED_RESOURCE_H_
7 7
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/basictypes.h" 10 #include "base/basictypes.h"
11 #include "cc/base/cc_export.h" 11 #include "cc/base/cc_export.h"
12 #include "cc/base/resource_id.h" 12 #include "cc/base/resource_id.h"
13 #include "gpu/command_buffer/common/sync_token.h"
13 14
14 namespace cc { 15 namespace cc {
15 16
16 // A ReturnedResource is a struct passed along to a child compositor from a 17 // A ReturnedResource is a struct passed along to a child compositor from a
17 // parent compositor that corresponds to a TransferableResource that was 18 // parent compositor that corresponds to a TransferableResource that was
18 // first passed to the parent compositor. 19 // first passed to the parent compositor.
19 struct CC_EXPORT ReturnedResource { 20 struct CC_EXPORT ReturnedResource {
20 ReturnedResource() : id(0), sync_point(0), count(0), lost(false) {} 21 ReturnedResource() : id(0), sync_point(0), count(0), lost(false) {}
21 // |id| is an identifier generated by the child compositor that uniquely 22 // |id| is an identifier generated by the child compositor that uniquely
22 // identifies a resource. This is the same ID space as TransferableResource. 23 // identifies a resource. This is the same ID space as TransferableResource.
23 ResourceId id; 24 ResourceId id;
24 25
25 // A |sync_point| is an identifier for a point in the parent compositor's 26 // A |sync_point| is an identifier for a point in the parent compositor's
26 // command buffer. The child compositor then issues a WaitSyncPointCHROMIUM 27 // command buffer. The child compositor then issues a WaitSyncPointCHROMIUM
27 // command with this |sync_point| as a parameter into its own command buffer. 28 // command with this |sync_point| as a parameter into its own command buffer.
28 // This ensures that uses of the resource submitted by the parent compositor 29 // This ensures that uses of the resource submitted by the parent compositor
29 // are executed before commands submitted by the child. 30 // are executed before commands submitted by the child.
31 gpu::SyncToken sync_token;
30 unsigned sync_point; 32 unsigned sync_point;
31 33
32 // |count| is a reference count for this resource. A resource may be used 34 // |count| is a reference count for this resource. A resource may be used
33 // by mulitple compositor frames submitted to the parent compositor. |count| 35 // by mulitple compositor frames submitted to the parent compositor. |count|
34 // is the number of references being returned back to the child compositor. 36 // is the number of references being returned back to the child compositor.
35 int count; 37 int count;
36 38
37 // If the resource is lost, then the returner cannot give a sync point for it, 39 // If the resource is lost, then the returner cannot give a sync point for it,
38 // and so it has taken ownership of the resource. The receiver cannot do 40 // and so it has taken ownership of the resource. The receiver cannot do
39 // anything with the resource except delete it. 41 // anything with the resource except delete it.
40 bool lost; 42 bool lost;
41 }; 43 };
42 44
43 typedef std::vector<ReturnedResource> ReturnedResourceArray; 45 typedef std::vector<ReturnedResource> ReturnedResourceArray;
44 46
45 } // namespace cc 47 } // namespace cc
46 48
47 #endif // CC_RESOURCES_RETURNED_RESOURCE_H_ 49 #endif // CC_RESOURCES_RETURNED_RESOURCE_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698