| Index: content/common/gpu/gpu_messages.h
|
| ===================================================================
|
| --- content/common/gpu/gpu_messages.h (revision 94701)
|
| +++ content/common/gpu/gpu_messages.h (working copy)
|
| @@ -102,6 +102,7 @@
|
|
|
| IPC_ENUM_TRAITS(content::CauseForGpuLaunch)
|
| IPC_ENUM_TRAITS(gpu::error::ContextLostReason)
|
| +IPC_ENUM_TRAITS(gpu::resource_type::ResourceType)
|
|
|
| //------------------------------------------------------------------------------
|
| // GPU Messages
|
| @@ -318,6 +319,28 @@
|
| int32 /* size */,
|
| bool /* result */)
|
|
|
| +
|
| +// Map a resource from an external context into this context. The source
|
| +// context need not be in the same share group from the client's point of
|
| +// view, allowing safe sharing between an "untrusted" context, like Pepper
|
| +// and a compositor context.
|
| +//
|
| +// Currently only texture resources are supported. TODO(apatrick): generalize
|
| +// this as appropriate.
|
| +//
|
| +// To unmap a previously mapped external resource, delete it in the
|
| +// destination context group. This will not delete the underlying texture
|
| +// object, just disassociate it with the id in the destination context group.
|
| +//
|
| +// The lifetime of the external resource is managed by the context group it
|
| +// was originally created in. When the last context in that group is destroyed
|
| +// the resource becomes invalid in all other context groups it is mapped into.
|
| +IPC_MESSAGE_ROUTED4(GpuCommandBufferMsg_MapExternalResource,
|
| + gpu::resource_type::ResourceType /* resource_type */,
|
| + uint32 /* resource_source_id */,
|
| + int32 /* source_route_id */,
|
| + uint32 /* resource_dest_id */)
|
| +
|
| // Sets the parent command buffer. This allows the parent and child to share
|
| // textures.
|
| IPC_SYNC_MESSAGE_ROUTED2_1(GpuCommandBufferMsg_SetParent,
|
|
|