summaryrefslogtreecommitdiffstats
path: root/gpu/command_buffer/service/gpu_scheduler.h
diff options
context:
space:
mode:
authorapatrick@chromium.org <apatrick@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-07-29 20:02:01 +0000
committerapatrick@chromium.org <apatrick@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-07-29 20:02:01 +0000
commitde472286527828640709fe3dfcfb48d074e63098 (patch)
tree4873318953ce9b06f7e3742430f865df70893267 /gpu/command_buffer/service/gpu_scheduler.h
parentcf0a77e1e18f547316c8da0a55c3ddeedae18263 (diff)
downloadchromium_src-de472286527828640709fe3dfcfb48d074e63098.zip
chromium_src-de472286527828640709fe3dfcfb48d074e63098.tar.gz
chromium_src-de472286527828640709fe3dfcfb48d074e63098.tar.bz2
Allow the renderer process to map textures from one context into another.
This is on an individual resource basis rather than general share groups in order to hide be able to hide the full namespace from untrusted plugins. Accelerated 2D canvas now no longer needs to copy its backing store on every page composite and the redundant backing texture is not needed, saving video memory. Unit tests for the GPU service to follow. Patch to delete copyTextureToParentTexture extensions from gpu/ to follow. BUG=90714 Review URL: http://codereview.chromium.org/7529015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@94743 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'gpu/command_buffer/service/gpu_scheduler.h')
-rw-r--r--gpu/command_buffer/service/gpu_scheduler.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/gpu/command_buffer/service/gpu_scheduler.h b/gpu/command_buffer/service/gpu_scheduler.h
index 75ccc63..04b6f3b 100644
--- a/gpu/command_buffer/service/gpu_scheduler.h
+++ b/gpu/command_buffer/service/gpu_scheduler.h
@@ -15,6 +15,7 @@
#include "base/shared_memory.h"
#include "base/task.h"
#include "gpu/command_buffer/common/command_buffer.h"
+#include "gpu/command_buffer/common/constants.h"
#include "gpu/command_buffer/service/cmd_buffer_engine.h"
#include "gpu/command_buffer/service/cmd_parser.h"
#include "gpu/command_buffer/service/gles2_cmd_decoder.h"
@@ -75,6 +76,11 @@ class GpuScheduler : public CommandBufferEngine {
void Destroy();
void DestroyCommon();
+ bool MapExternalResource(resource_type::ResourceType resource_type,
+ uint32 resource_source_id,
+ GpuScheduler* source_scheduler,
+ uint32 resource_dest_id);
+
bool SetParent(GpuScheduler* parent_scheduler, uint32 parent_texture_id);
void PutChanged();