Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 2012 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_TRANSFERABLE_RESOURCE_H_ | 5 #ifndef CC_TRANSFERABLE_RESOURCE_H_ |
| 6 #define CC_TRANSFERABLE_RESOURCE_H_ | 6 #define CC_TRANSFERABLE_RESOURCE_H_ |
| 7 | 7 |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
| 11 #include "base/callback.h" | |
| 11 #include "cc/cc_export.h" | 12 #include "cc/cc_export.h" |
| 12 #include "ui/gfx/size.h" | 13 #include "ui/gfx/size.h" |
| 13 | 14 |
| 14 namespace cc { | 15 namespace cc { |
| 15 | 16 |
| 16 struct CC_EXPORT Mailbox { | 17 struct CC_EXPORT Mailbox { |
| 17 Mailbox(); | 18 Mailbox(); |
| 19 ~Mailbox(); | |
| 18 bool isZero() const; | 20 bool isZero() const; |
| 19 void setName(const int8* name); | 21 void setName(const int8* name); |
| 20 int8 name[64]; | 22 int8 name[64]; |
| 23 base::Callback<void(unsigned)> releaseCallback; | |
|
danakj
2013/01/07 21:10:59
oh I see.
How about Mailbox::ReleaseCallback, and
piman
2013/01/08 01:45:34
NAK here, this is intended to be a serialized type
| |
| 21 }; | 24 }; |
| 22 | 25 |
| 23 struct CC_EXPORT TransferableResource { | 26 struct CC_EXPORT TransferableResource { |
| 24 TransferableResource(); | 27 TransferableResource(); |
| 25 ~TransferableResource(); | 28 ~TransferableResource(); |
| 26 | 29 |
| 27 unsigned id; | 30 unsigned id; |
| 28 uint32 format; | 31 uint32 format; |
| 29 uint32 filter; | 32 uint32 filter; |
| 30 gfx::Size size; | 33 gfx::Size size; |
| 31 Mailbox mailbox; | 34 Mailbox mailbox; |
| 32 }; | 35 }; |
| 33 | 36 |
| 34 typedef std::vector<TransferableResource> TransferableResourceArray; | 37 typedef std::vector<TransferableResource> TransferableResourceArray; |
| 35 | 38 |
| 36 struct CC_EXPORT TransferableResourceList { | 39 struct CC_EXPORT TransferableResourceList { |
| 37 TransferableResourceList(); | 40 TransferableResourceList(); |
| 38 ~TransferableResourceList(); | 41 ~TransferableResourceList(); |
| 39 | 42 |
| 40 TransferableResourceArray resources; | 43 TransferableResourceArray resources; |
| 41 unsigned sync_point; | 44 unsigned sync_point; |
| 42 }; | 45 }; |
| 43 | 46 |
| 44 } // namespace cc | 47 } // namespace cc |
| 45 | 48 |
| 46 #endif // CC_TRANSFERABLE_RESOURCE_H_ | 49 #endif // CC_TRANSFERABLE_RESOURCE_H_ |
| OLD | NEW |