OLD | NEW |
1 // Copyright 2010 The Chromium Authors. All rights reserved. | 1 // Copyright 2010 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_LAYERS_TEXTURE_LAYER_H_ | 5 #ifndef CC_LAYERS_TEXTURE_LAYER_H_ |
6 #define CC_LAYERS_TEXTURE_LAYER_H_ | 6 #define CC_LAYERS_TEXTURE_LAYER_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "base/callback.h" | 10 #include "base/callback.h" |
(...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
117 float bottom_right); | 117 float bottom_right); |
118 | 118 |
119 // Sets whether the alpha channel is premultiplied or unpremultiplied. | 119 // Sets whether the alpha channel is premultiplied or unpremultiplied. |
120 // Defaults to true. | 120 // Defaults to true. |
121 void SetPremultipliedAlpha(bool premultiplied_alpha); | 121 void SetPremultipliedAlpha(bool premultiplied_alpha); |
122 | 122 |
123 // Sets whether the texture should be blended with the background color | 123 // Sets whether the texture should be blended with the background color |
124 // at draw time. Defaults to false. | 124 // at draw time. Defaults to false. |
125 void SetBlendBackgroundColor(bool blend); | 125 void SetBlendBackgroundColor(bool blend); |
126 | 126 |
127 // Sets whether this context should rate limit on damage to prevent too many | |
128 // frames from being queued up before the compositor gets a chance to run. | |
129 // Requires a non-nil client. Defaults to false. | |
130 void SetRateLimitContext(bool rate_limit); | |
131 | |
132 // Code path for plugins which supply their own mailbox. | 127 // Code path for plugins which supply their own mailbox. |
133 void SetTextureMailbox(const TextureMailbox& mailbox, | 128 void SetTextureMailbox(const TextureMailbox& mailbox, |
134 scoped_ptr<SingleReleaseCallback> release_callback); | 129 scoped_ptr<SingleReleaseCallback> release_callback); |
135 | 130 |
136 // Use this for special cases where the same texture is used to back the | 131 // Use this for special cases where the same texture is used to back the |
137 // TextureLayer across all frames. | 132 // TextureLayer across all frames. |
138 // WARNING: DON'T ACTUALLY USE THIS WHAT YOU ARE DOING IS WRONG. | 133 // WARNING: DON'T ACTUALLY USE THIS WHAT YOU ARE DOING IS WRONG. |
139 // TODO(danakj): Remove this when pepper doesn't need it. crbug.com/350204 | 134 // TODO(danakj): Remove this when pepper doesn't need it. crbug.com/350204 |
140 void SetTextureMailboxWithoutReleaseCallback(const TextureMailbox& mailbox); | 135 void SetTextureMailboxWithoutReleaseCallback(const TextureMailbox& mailbox); |
141 | 136 |
(...skipping 18 matching lines...) Expand all Loading... |
160 TextureLayerClient* client_; | 155 TextureLayerClient* client_; |
161 | 156 |
162 bool flipped_; | 157 bool flipped_; |
163 bool nearest_neighbor_; | 158 bool nearest_neighbor_; |
164 gfx::PointF uv_top_left_; | 159 gfx::PointF uv_top_left_; |
165 gfx::PointF uv_bottom_right_; | 160 gfx::PointF uv_bottom_right_; |
166 // [bottom left, top left, top right, bottom right] | 161 // [bottom left, top left, top right, bottom right] |
167 float vertex_opacity_[4]; | 162 float vertex_opacity_[4]; |
168 bool premultiplied_alpha_; | 163 bool premultiplied_alpha_; |
169 bool blend_background_color_; | 164 bool blend_background_color_; |
170 bool rate_limit_context_; | |
171 | 165 |
172 scoped_ptr<TextureMailboxHolder::MainThreadReference> holder_ref_; | 166 scoped_ptr<TextureMailboxHolder::MainThreadReference> holder_ref_; |
173 bool needs_set_mailbox_; | 167 bool needs_set_mailbox_; |
174 | 168 |
175 DISALLOW_COPY_AND_ASSIGN(TextureLayer); | 169 DISALLOW_COPY_AND_ASSIGN(TextureLayer); |
176 }; | 170 }; |
177 | 171 |
178 } // namespace cc | 172 } // namespace cc |
179 #endif // CC_LAYERS_TEXTURE_LAYER_H_ | 173 #endif // CC_LAYERS_TEXTURE_LAYER_H_ |
OLD | NEW |