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

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

Issue 2122573003: media: replace LUMINANCE_F16 by RG_88 for 9/10-bit h264 videos Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: resolve hubbe's concerns except for test. separate the CLs. Created 4 years, 2 months 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 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_RESOURCES_RESOURCE_PROVIDER_H_ 5 #ifndef CC_RESOURCES_RESOURCE_PROVIDER_H_
6 #define CC_RESOURCES_RESOURCE_PROVIDER_H_ 6 #define CC_RESOURCES_RESOURCE_PROVIDER_H_
7 7
8 #include <stddef.h> 8 #include <stddef.h>
9 #include <stdint.h> 9 #include <stdint.h>
10 10
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after
124 bool IsLost(ResourceId id); 124 bool IsLost(ResourceId id);
125 125
126 void LoseResourceForTesting(ResourceId id); 126 void LoseResourceForTesting(ResourceId id);
127 void EnableReadLockFencesForTesting(ResourceId id); 127 void EnableReadLockFencesForTesting(ResourceId id);
128 128
129 // Producer interface. 129 // Producer interface.
130 130
131 ResourceType default_resource_type() const { return default_resource_type_; } 131 ResourceType default_resource_type() const { return default_resource_type_; }
132 ResourceType GetResourceType(ResourceId id); 132 ResourceType GetResourceType(ResourceId id);
133 GLenum GetResourceTextureTarget(ResourceId id); 133 GLenum GetResourceTextureTarget(ResourceId id);
134 ResourceFormat GetResourceFormat(ResourceId id);
134 bool IsImmutable(ResourceId id); 135 bool IsImmutable(ResourceId id);
135 TextureHint GetTextureHint(ResourceId id); 136 TextureHint GetTextureHint(ResourceId id);
136 137
137 // Creates a resource of the default resource type. 138 // Creates a resource of the default resource type.
138 ResourceId CreateResource(const gfx::Size& size, 139 ResourceId CreateResource(const gfx::Size& size,
139 TextureHint hint, 140 TextureHint hint,
140 ResourceFormat format, 141 ResourceFormat format,
141 const gfx::ColorSpace& color_space); 142 const gfx::ColorSpace& color_space);
142 143
143 // Creates a resource for a particular texture target (the distinction between 144 // Creates a resource for a particular texture target (the distinction between
144 // texture targets has no effect in software mode). 145 // texture targets has no effect in software mode).
145 ResourceId CreateGpuMemoryBufferResource(const gfx::Size& size, 146 ResourceId CreateGpuMemoryBufferResource(const gfx::Size& size,
146 TextureHint hint, 147 TextureHint hint,
147 ResourceFormat format, 148 ResourceFormat format,
148 gfx::BufferUsage usage, 149 gfx::BufferUsage usage,
149 const gfx::ColorSpace& color_space); 150 const gfx::ColorSpace& color_space);
150 151
151 // Wraps an external texture mailbox into a GL resource. 152 // Wraps an external texture mailbox into a GL resource.
152 ResourceId CreateResourceFromTextureMailbox( 153 ResourceId CreateResourceFromTextureMailbox(
153 const TextureMailbox& mailbox, 154 const TextureMailbox& mailbox,
154 std::unique_ptr<SingleReleaseCallbackImpl> release_callback_impl); 155 std::unique_ptr<SingleReleaseCallbackImpl> release_callback_impl);
155 156
156 ResourceId CreateResourceFromTextureMailbox( 157 ResourceId CreateResourceFromTextureMailbox(
157 const TextureMailbox& mailbox, 158 const TextureMailbox& mailbox,
158 std::unique_ptr<SingleReleaseCallbackImpl> release_callback_impl, 159 std::unique_ptr<SingleReleaseCallbackImpl> release_callback_impl,
159 bool read_lock_fences_enabled); 160 bool read_lock_fences_enabled);
160 161
162 ResourceId CreateResourceFromTextureMailbox(
163 const TextureMailbox& mailbox,
164 ResourceFormat format,
165 std::unique_ptr<SingleReleaseCallbackImpl> release_callback_impl,
166 bool read_lock_fences_enabled);
167
161 void DeleteResource(ResourceId id); 168 void DeleteResource(ResourceId id);
162 169
163 // Update pixels from image, copying source_rect (in image) to dest_offset (in 170 // Update pixels from image, copying source_rect (in image) to dest_offset (in
164 // the resource). 171 // the resource).
165 void CopyToResource(ResourceId id, 172 void CopyToResource(ResourceId id,
166 const uint8_t* image, 173 const uint8_t* image,
167 const gfx::Size& image_size); 174 const gfx::Size& image_size);
168 175
169 // Generates sync tokesn for resources which need a sync token. 176 // Generates sync tokesn for resources which need a sync token.
170 void GenerateSyncTokenForResource(ResourceId resource_id); 177 void GenerateSyncTokenForResource(ResourceId resource_id);
(...skipping 545 matching lines...) Expand 10 before | Expand all | Expand 10 after
716 // A process-unique ID used for disambiguating memory dumps from different 723 // A process-unique ID used for disambiguating memory dumps from different
717 // resource providers. 724 // resource providers.
718 int tracing_id_; 725 int tracing_id_;
719 726
720 DISALLOW_COPY_AND_ASSIGN(ResourceProvider); 727 DISALLOW_COPY_AND_ASSIGN(ResourceProvider);
721 }; 728 };
722 729
723 } // namespace cc 730 } // namespace cc
724 731
725 #endif // CC_RESOURCES_RESOURCE_PROVIDER_H_ 732 #endif // CC_RESOURCES_RESOURCE_PROVIDER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698