#ifndef GPU_IPC_COMMON_GPU_CHANNEL_MOJOM_H_
#define GPU_IPC_COMMON_GPU_CHANNEL_MOJOM_H_
#include <stdint.h>
#include <limits>
#include <optional>
#include <type_traits>
#include <utility>
#include "base/types/cxx23_to_underlying.h"
#include "mojo/public/cpp/bindings/clone_traits.h"
#include "mojo/public/cpp/bindings/equals_traits.h"
#include "mojo/public/cpp/bindings/lib/serialization.h"
#include "mojo/public/cpp/bindings/struct_ptr.h"
#include "mojo/public/cpp/bindings/struct_traits.h"
#include "mojo/public/cpp/bindings/union_traits.h"
#include "third_party/perfetto/include/perfetto/tracing/traced_value_forward.h"
#include "gpu/ipc/common/gpu_channel.mojom-features.h"
#include "gpu/ipc/common/gpu_channel.mojom-shared.h"
#include "gpu/ipc/common/gpu_channel.mojom-forward.h"
#include "gpu/ipc/common/capabilities.mojom.h"
#include "gpu/ipc/common/context_result.mojom.h"
#include "gpu/ipc/common/mailbox.mojom.h"
#include "gpu/ipc/common/shared_image_metadata.mojom.h"
#include "gpu/ipc/common/surface_handle.mojom-forward.h"
#include "gpu/ipc/common/sync_token.mojom.h"
#include "gpu/ipc/common/vulkan_ycbcr_info.mojom-forward.h"
#include "mojo/public/mojom/base/shared_memory.mojom.h"
#include "mojo/public/mojom/base/unguessable_token.mojom.h"
#include "services/viz/public/mojom/compositing/shared_image_format.mojom.h"
#include "skia/public/mojom/image_info.mojom-forward.h"
#include "skia/public/mojom/surface_origin.mojom-forward.h"
#include "ui/gfx/geometry/mojom/geometry.mojom.h"
#include "ui/gfx/mojom/buffer_types.mojom.h"
#include "ui/gfx/mojom/color_space.mojom.h"
#include "ui/gfx/mojom/gpu_fence_handle.mojom.h"
#include "ui/gfx/mojom/native_handle_types.mojom-forward.h"
#include "ui/gfx/mojom/presentation_feedback.mojom-forward.h"
#include "ui/gl/mojom/gpu_preference.mojom.h"
#include "url/mojom/url.mojom.h"
#include <string>
#include <vector>
#include "mojo/public/cpp/bindings/lib/control_message_handler.h"
#include "mojo/public/cpp/bindings/lib/message_size_estimator.h"
#include "mojo/public/cpp/bindings/raw_ptr_impl_ref_traits.h"
#include "mojo/public/cpp/bindings/lib/native_enum_serialization.h"
#include "mojo/public/cpp/bindings/lib/native_struct_serialization.h"
#include "gpu/ipc/common/command_buffer_mojom_traits.h"
#include "gpu/ipc/common/context_creation_attribs_mojom_traits.h"
#include "gpu/ipc/common/gpu_param_traits_macros.h"
#include "gpu/ipc/common/scheduling_priority_mojom_traits.h"
#include "gpu/gpu_export.h"
namespace gpu::mojom {
class GpuChannelProxy;
template <typename ImplRefTraits>
class GpuChannelStub;
class GpuChannelRequestValidator;
class GpuChannelResponseValidator;
class GPU_EXPORT GpuChannel
: public GpuChannelInterfaceBase { … };
class CommandBufferProxy;
template <typename ImplRefTraits>
class CommandBufferStub;
class CommandBufferRequestValidator;
class CommandBufferResponseValidator;
class GPU_EXPORT CommandBuffer
: public CommandBufferInterfaceBase { … };
class CommandBufferClientProxy;
template <typename ImplRefTraits>
class CommandBufferClientStub;
class CommandBufferClientRequestValidator;
class GPU_EXPORT CommandBufferClient
: public CommandBufferClientInterfaceBase { … };
class GPU_EXPORT GpuChannelProxy
: public GpuChannel { … };
class GPU_EXPORT CommandBufferProxy
: public CommandBuffer { … };
class GPU_EXPORT CommandBufferClientProxy
: public CommandBufferClient { … };
class GPU_EXPORT GpuChannelStubDispatch { … };
template <typename ImplRefTraits =
mojo::RawPtrImplRefTraits<GpuChannel>>
class GpuChannelStub
: public mojo::MessageReceiverWithResponderStatus {
public:
using ImplPointerType = typename ImplRefTraits::PointerType;
GpuChannelStub() = default;
~GpuChannelStub() override = default;
void set_sink(ImplPointerType sink) { … }
ImplPointerType& sink() { … }
bool Accept(mojo::Message* message) override { … }
bool AcceptWithResponder(
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder) override { … }
private:
ImplPointerType sink_;
};
class GPU_EXPORT CommandBufferStubDispatch { … };
template <typename ImplRefTraits =
mojo::RawPtrImplRefTraits<CommandBuffer>>
class CommandBufferStub
: public mojo::MessageReceiverWithResponderStatus {
public:
using ImplPointerType = typename ImplRefTraits::PointerType;
CommandBufferStub() = default;
~CommandBufferStub() override = default;
void set_sink(ImplPointerType sink) { … }
ImplPointerType& sink() { … }
bool Accept(mojo::Message* message) override { … }
bool AcceptWithResponder(
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder) override { … }
private:
ImplPointerType sink_;
};
class GPU_EXPORT CommandBufferClientStubDispatch { … };
template <typename ImplRefTraits =
mojo::RawPtrImplRefTraits<CommandBufferClient>>
class CommandBufferClientStub
: public mojo::MessageReceiverWithResponderStatus {
public:
using ImplPointerType = typename ImplRefTraits::PointerType;
CommandBufferClientStub() = default;
~CommandBufferClientStub() override = default;
void set_sink(ImplPointerType sink) { … }
ImplPointerType& sink() { … }
bool Accept(mojo::Message* message) override { … }
bool AcceptWithResponder(
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder) override { … }
private:
ImplPointerType sink_;
};
class GPU_EXPORT GpuChannelRequestValidator : public mojo::MessageReceiver { … };
class GPU_EXPORT CommandBufferRequestValidator : public mojo::MessageReceiver { … };
class GPU_EXPORT CommandBufferClientRequestValidator : public mojo::MessageReceiver { … };
class GPU_EXPORT GpuChannelResponseValidator : public mojo::MessageReceiver { … };
class GPU_EXPORT CommandBufferResponseValidator : public mojo::MessageReceiver { … };
class GPU_EXPORT DeferredRequestParams { … };
class GPU_EXPORT DeferredCommandBufferRequestParams { … };
class GPU_EXPORT DeferredSharedImageRequest { … };
class GPU_EXPORT ContextCreationAttribs { … };
template <typename T, ContextCreationAttribs::EnableIfSame<T>* = nullptr>
bool operator<(const T& lhs, const T& rhs);
template <typename T, ContextCreationAttribs::EnableIfSame<T>* = nullptr>
bool operator<=(const T& lhs, const T& rhs) { … }
template <typename T, ContextCreationAttribs::EnableIfSame<T>* = nullptr>
bool operator>(const T& lhs, const T& rhs) { … }
template <typename T, ContextCreationAttribs::EnableIfSame<T>* = nullptr>
bool operator>=(const T& lhs, const T& rhs) { … }
class GPU_EXPORT CreateCommandBufferParams { … };
template <typename T, CreateCommandBufferParams::EnableIfSame<T>* = nullptr>
bool operator<(const T& lhs, const T& rhs);
template <typename T, CreateCommandBufferParams::EnableIfSame<T>* = nullptr>
bool operator<=(const T& lhs, const T& rhs) { … }
template <typename T, CreateCommandBufferParams::EnableIfSame<T>* = nullptr>
bool operator>(const T& lhs, const T& rhs) { … }
template <typename T, CreateCommandBufferParams::EnableIfSame<T>* = nullptr>
bool operator>=(const T& lhs, const T& rhs) { … }
class GPU_EXPORT CommandBufferState { … };
template <typename T, CommandBufferState::EnableIfSame<T>* = nullptr>
bool operator<(const T& lhs, const T& rhs);
template <typename T, CommandBufferState::EnableIfSame<T>* = nullptr>
bool operator<=(const T& lhs, const T& rhs) { … }
template <typename T, CommandBufferState::EnableIfSame<T>* = nullptr>
bool operator>(const T& lhs, const T& rhs) { … }
template <typename T, CommandBufferState::EnableIfSame<T>* = nullptr>
bool operator>=(const T& lhs, const T& rhs) { … }
class GPU_EXPORT ScheduleImageDecodeParams { … };
template <typename T, ScheduleImageDecodeParams::EnableIfSame<T>* = nullptr>
bool operator<(const T& lhs, const T& rhs);
template <typename T, ScheduleImageDecodeParams::EnableIfSame<T>* = nullptr>
bool operator<=(const T& lhs, const T& rhs) { … }
template <typename T, ScheduleImageDecodeParams::EnableIfSame<T>* = nullptr>
bool operator>(const T& lhs, const T& rhs) { … }
template <typename T, ScheduleImageDecodeParams::EnableIfSame<T>* = nullptr>
bool operator>=(const T& lhs, const T& rhs) { … }
class GPU_EXPORT DeferredRequest { … };
template <typename T, DeferredRequest::EnableIfSame<T>* = nullptr>
bool operator<(const T& lhs, const T& rhs);
template <typename T, DeferredRequest::EnableIfSame<T>* = nullptr>
bool operator<=(const T& lhs, const T& rhs) { … }
template <typename T, DeferredRequest::EnableIfSame<T>* = nullptr>
bool operator>(const T& lhs, const T& rhs) { … }
template <typename T, DeferredRequest::EnableIfSame<T>* = nullptr>
bool operator>=(const T& lhs, const T& rhs) { … }
class GPU_EXPORT DeferredCommandBufferRequest { … };
template <typename T, DeferredCommandBufferRequest::EnableIfSame<T>* = nullptr>
bool operator<(const T& lhs, const T& rhs);
template <typename T, DeferredCommandBufferRequest::EnableIfSame<T>* = nullptr>
bool operator<=(const T& lhs, const T& rhs) { … }
template <typename T, DeferredCommandBufferRequest::EnableIfSame<T>* = nullptr>
bool operator>(const T& lhs, const T& rhs) { … }
template <typename T, DeferredCommandBufferRequest::EnableIfSame<T>* = nullptr>
bool operator>=(const T& lhs, const T& rhs) { … }
class GPU_EXPORT AsyncFlushParams { … };
template <typename T, AsyncFlushParams::EnableIfSame<T>* = nullptr>
bool operator<(const T& lhs, const T& rhs);
template <typename T, AsyncFlushParams::EnableIfSame<T>* = nullptr>
bool operator<=(const T& lhs, const T& rhs) { … }
template <typename T, AsyncFlushParams::EnableIfSame<T>* = nullptr>
bool operator>(const T& lhs, const T& rhs) { … }
template <typename T, AsyncFlushParams::EnableIfSame<T>* = nullptr>
bool operator>=(const T& lhs, const T& rhs) { … }
class GPU_EXPORT SetDefaultFramebufferSharedImageParams { … };
template <typename T, SetDefaultFramebufferSharedImageParams::EnableIfSame<T>* = nullptr>
bool operator<(const T& lhs, const T& rhs);
template <typename T, SetDefaultFramebufferSharedImageParams::EnableIfSame<T>* = nullptr>
bool operator<=(const T& lhs, const T& rhs) { … }
template <typename T, SetDefaultFramebufferSharedImageParams::EnableIfSame<T>* = nullptr>
bool operator>(const T& lhs, const T& rhs) { … }
template <typename T, SetDefaultFramebufferSharedImageParams::EnableIfSame<T>* = nullptr>
bool operator>=(const T& lhs, const T& rhs) { … }
class GPU_EXPORT SharedImageInfo { … };
template <typename T, SharedImageInfo::EnableIfSame<T>* = nullptr>
bool operator<(const T& lhs, const T& rhs);
template <typename T, SharedImageInfo::EnableIfSame<T>* = nullptr>
bool operator<=(const T& lhs, const T& rhs) { … }
template <typename T, SharedImageInfo::EnableIfSame<T>* = nullptr>
bool operator>(const T& lhs, const T& rhs) { … }
template <typename T, SharedImageInfo::EnableIfSame<T>* = nullptr>
bool operator>=(const T& lhs, const T& rhs) { … }
class GPU_EXPORT CreateSharedImageParams { … };
template <typename T, CreateSharedImageParams::EnableIfSame<T>* = nullptr>
bool operator<(const T& lhs, const T& rhs);
template <typename T, CreateSharedImageParams::EnableIfSame<T>* = nullptr>
bool operator<=(const T& lhs, const T& rhs) { … }
template <typename T, CreateSharedImageParams::EnableIfSame<T>* = nullptr>
bool operator>(const T& lhs, const T& rhs) { … }
template <typename T, CreateSharedImageParams::EnableIfSame<T>* = nullptr>
bool operator>=(const T& lhs, const T& rhs) { … }
class GPU_EXPORT CreateSharedImageWithDataParams { … };
template <typename T, CreateSharedImageWithDataParams::EnableIfSame<T>* = nullptr>
bool operator<(const T& lhs, const T& rhs);
template <typename T, CreateSharedImageWithDataParams::EnableIfSame<T>* = nullptr>
bool operator<=(const T& lhs, const T& rhs) { … }
template <typename T, CreateSharedImageWithDataParams::EnableIfSame<T>* = nullptr>
bool operator>(const T& lhs, const T& rhs) { … }
template <typename T, CreateSharedImageWithDataParams::EnableIfSame<T>* = nullptr>
bool operator>=(const T& lhs, const T& rhs) { … }
class GPU_EXPORT CreateSharedImageWithBufferParams { … };
template <typename T, CreateSharedImageWithBufferParams::EnableIfSame<T>* = nullptr>
bool operator<(const T& lhs, const T& rhs);
template <typename T, CreateSharedImageWithBufferParams::EnableIfSame<T>* = nullptr>
bool operator<=(const T& lhs, const T& rhs) { … }
template <typename T, CreateSharedImageWithBufferParams::EnableIfSame<T>* = nullptr>
bool operator>(const T& lhs, const T& rhs) { … }
template <typename T, CreateSharedImageWithBufferParams::EnableIfSame<T>* = nullptr>
bool operator>=(const T& lhs, const T& rhs) { … }
class GPU_EXPORT UpdateSharedImageParams { … };
template <typename T, UpdateSharedImageParams::EnableIfSame<T>* = nullptr>
bool operator<(const T& lhs, const T& rhs);
template <typename T, UpdateSharedImageParams::EnableIfSame<T>* = nullptr>
bool operator<=(const T& lhs, const T& rhs) { … }
template <typename T, UpdateSharedImageParams::EnableIfSame<T>* = nullptr>
bool operator>(const T& lhs, const T& rhs) { … }
template <typename T, UpdateSharedImageParams::EnableIfSame<T>* = nullptr>
bool operator>=(const T& lhs, const T& rhs) { … }
class GPU_EXPORT AddReferenceToSharedImageParams { … };
template <typename T, AddReferenceToSharedImageParams::EnableIfSame<T>* = nullptr>
bool operator<(const T& lhs, const T& rhs);
template <typename T, AddReferenceToSharedImageParams::EnableIfSame<T>* = nullptr>
bool operator<=(const T& lhs, const T& rhs) { … }
template <typename T, AddReferenceToSharedImageParams::EnableIfSame<T>* = nullptr>
bool operator>(const T& lhs, const T& rhs) { … }
template <typename T, AddReferenceToSharedImageParams::EnableIfSame<T>* = nullptr>
bool operator>=(const T& lhs, const T& rhs) { … }
class GPU_EXPORT CopyToGpuMemoryBufferParams { … };
template <typename T, CopyToGpuMemoryBufferParams::EnableIfSame<T>* = nullptr>
bool operator<(const T& lhs, const T& rhs);
template <typename T, CopyToGpuMemoryBufferParams::EnableIfSame<T>* = nullptr>
bool operator<=(const T& lhs, const T& rhs) { … }
template <typename T, CopyToGpuMemoryBufferParams::EnableIfSame<T>* = nullptr>
bool operator>(const T& lhs, const T& rhs) { … }
template <typename T, CopyToGpuMemoryBufferParams::EnableIfSame<T>* = nullptr>
bool operator>=(const T& lhs, const T& rhs) { … }
template <typename UnionPtrType>
DeferredRequestParamsPtr DeferredRequestParams::Clone() const { … }
template <typename T,
typename std::enable_if<std::is_same<
T, DeferredRequestParams>::value>::type*>
bool DeferredRequestParams::Equals(const T& other) const { … }
template <typename UnionPtrType>
DeferredCommandBufferRequestParamsPtr DeferredCommandBufferRequestParams::Clone() const { … }
template <typename T,
typename std::enable_if<std::is_same<
T, DeferredCommandBufferRequestParams>::value>::type*>
bool DeferredCommandBufferRequestParams::Equals(const T& other) const { … }
template <typename UnionPtrType>
DeferredSharedImageRequestPtr DeferredSharedImageRequest::Clone() const { … }
template <typename T,
typename std::enable_if<std::is_same<
T, DeferredSharedImageRequest>::value>::type*>
bool DeferredSharedImageRequest::Equals(const T& other) const { … }
template <typename StructPtrType>
ContextCreationAttribsPtr ContextCreationAttribs::Clone() const { … }
template <typename T, ContextCreationAttribs::EnableIfSame<T>*>
bool ContextCreationAttribs::Equals(const T& other_struct) const { … }
template <typename T, ContextCreationAttribs::EnableIfSame<T>*>
bool operator<(const T& lhs, const T& rhs) { … }
template <typename StructPtrType>
CreateCommandBufferParamsPtr CreateCommandBufferParams::Clone() const { … }
template <typename T, CreateCommandBufferParams::EnableIfSame<T>*>
bool CreateCommandBufferParams::Equals(const T& other_struct) const { … }
template <typename T, CreateCommandBufferParams::EnableIfSame<T>*>
bool operator<(const T& lhs, const T& rhs) { … }
template <typename StructPtrType>
CommandBufferStatePtr CommandBufferState::Clone() const { … }
template <typename T, CommandBufferState::EnableIfSame<T>*>
bool CommandBufferState::Equals(const T& other_struct) const { … }
template <typename T, CommandBufferState::EnableIfSame<T>*>
bool operator<(const T& lhs, const T& rhs) { … }
template <typename StructPtrType>
ScheduleImageDecodeParamsPtr ScheduleImageDecodeParams::Clone() const { … }
template <typename T, ScheduleImageDecodeParams::EnableIfSame<T>*>
bool ScheduleImageDecodeParams::Equals(const T& other_struct) const { … }
template <typename T, ScheduleImageDecodeParams::EnableIfSame<T>*>
bool operator<(const T& lhs, const T& rhs) { … }
template <typename StructPtrType>
DeferredRequestPtr DeferredRequest::Clone() const { … }
template <typename T, DeferredRequest::EnableIfSame<T>*>
bool DeferredRequest::Equals(const T& other_struct) const { … }
template <typename T, DeferredRequest::EnableIfSame<T>*>
bool operator<(const T& lhs, const T& rhs) { … }
template <typename StructPtrType>
DeferredCommandBufferRequestPtr DeferredCommandBufferRequest::Clone() const { … }
template <typename T, DeferredCommandBufferRequest::EnableIfSame<T>*>
bool DeferredCommandBufferRequest::Equals(const T& other_struct) const { … }
template <typename T, DeferredCommandBufferRequest::EnableIfSame<T>*>
bool operator<(const T& lhs, const T& rhs) { … }
template <typename StructPtrType>
AsyncFlushParamsPtr AsyncFlushParams::Clone() const { … }
template <typename T, AsyncFlushParams::EnableIfSame<T>*>
bool AsyncFlushParams::Equals(const T& other_struct) const { … }
template <typename T, AsyncFlushParams::EnableIfSame<T>*>
bool operator<(const T& lhs, const T& rhs) { … }
template <typename StructPtrType>
SetDefaultFramebufferSharedImageParamsPtr SetDefaultFramebufferSharedImageParams::Clone() const { … }
template <typename T, SetDefaultFramebufferSharedImageParams::EnableIfSame<T>*>
bool SetDefaultFramebufferSharedImageParams::Equals(const T& other_struct) const { … }
template <typename T, SetDefaultFramebufferSharedImageParams::EnableIfSame<T>*>
bool operator<(const T& lhs, const T& rhs) { … }
template <typename StructPtrType>
SharedImageInfoPtr SharedImageInfo::Clone() const { … }
template <typename T, SharedImageInfo::EnableIfSame<T>*>
bool SharedImageInfo::Equals(const T& other_struct) const { … }
template <typename T, SharedImageInfo::EnableIfSame<T>*>
bool operator<(const T& lhs, const T& rhs) { … }
template <typename StructPtrType>
CreateSharedImageParamsPtr CreateSharedImageParams::Clone() const { … }
template <typename T, CreateSharedImageParams::EnableIfSame<T>*>
bool CreateSharedImageParams::Equals(const T& other_struct) const { … }
template <typename T, CreateSharedImageParams::EnableIfSame<T>*>
bool operator<(const T& lhs, const T& rhs) { … }
template <typename StructPtrType>
CreateSharedImageWithDataParamsPtr CreateSharedImageWithDataParams::Clone() const { … }
template <typename T, CreateSharedImageWithDataParams::EnableIfSame<T>*>
bool CreateSharedImageWithDataParams::Equals(const T& other_struct) const { … }
template <typename T, CreateSharedImageWithDataParams::EnableIfSame<T>*>
bool operator<(const T& lhs, const T& rhs) { … }
template <typename StructPtrType>
CreateSharedImageWithBufferParamsPtr CreateSharedImageWithBufferParams::Clone() const { … }
template <typename T, CreateSharedImageWithBufferParams::EnableIfSame<T>*>
bool CreateSharedImageWithBufferParams::Equals(const T& other_struct) const { … }
template <typename T, CreateSharedImageWithBufferParams::EnableIfSame<T>*>
bool operator<(const T& lhs, const T& rhs) { … }
template <typename StructPtrType>
UpdateSharedImageParamsPtr UpdateSharedImageParams::Clone() const { … }
template <typename T, UpdateSharedImageParams::EnableIfSame<T>*>
bool UpdateSharedImageParams::Equals(const T& other_struct) const { … }
template <typename T, UpdateSharedImageParams::EnableIfSame<T>*>
bool operator<(const T& lhs, const T& rhs) { … }
template <typename StructPtrType>
AddReferenceToSharedImageParamsPtr AddReferenceToSharedImageParams::Clone() const { … }
template <typename T, AddReferenceToSharedImageParams::EnableIfSame<T>*>
bool AddReferenceToSharedImageParams::Equals(const T& other_struct) const { … }
template <typename T, AddReferenceToSharedImageParams::EnableIfSame<T>*>
bool operator<(const T& lhs, const T& rhs) { … }
template <typename StructPtrType>
CopyToGpuMemoryBufferParamsPtr CopyToGpuMemoryBufferParams::Clone() const { … }
template <typename T, CopyToGpuMemoryBufferParams::EnableIfSame<T>*>
bool CopyToGpuMemoryBufferParams::Equals(const T& other_struct) const { … }
template <typename T, CopyToGpuMemoryBufferParams::EnableIfSame<T>*>
bool operator<(const T& lhs, const T& rhs) { … }
}
namespace mojo {
template <>
struct GPU_EXPORT StructTraits<::gpu::mojom::ContextCreationAttribs::DataView,
::gpu::mojom::ContextCreationAttribsPtr> { … };
template <>
struct GPU_EXPORT StructTraits<::gpu::mojom::CreateCommandBufferParams::DataView,
::gpu::mojom::CreateCommandBufferParamsPtr> { … };
template <>
struct GPU_EXPORT StructTraits<::gpu::mojom::CommandBufferState::DataView,
::gpu::mojom::CommandBufferStatePtr> { … };
template <>
struct GPU_EXPORT StructTraits<::gpu::mojom::ScheduleImageDecodeParams::DataView,
::gpu::mojom::ScheduleImageDecodeParamsPtr> { … };
template <>
struct GPU_EXPORT StructTraits<::gpu::mojom::DeferredRequest::DataView,
::gpu::mojom::DeferredRequestPtr> { … };
template <>
struct GPU_EXPORT StructTraits<::gpu::mojom::DeferredCommandBufferRequest::DataView,
::gpu::mojom::DeferredCommandBufferRequestPtr> { … };
template <>
struct GPU_EXPORT StructTraits<::gpu::mojom::AsyncFlushParams::DataView,
::gpu::mojom::AsyncFlushParamsPtr> { … };
template <>
struct GPU_EXPORT StructTraits<::gpu::mojom::SetDefaultFramebufferSharedImageParams::DataView,
::gpu::mojom::SetDefaultFramebufferSharedImageParamsPtr> { … };
template <>
struct GPU_EXPORT StructTraits<::gpu::mojom::SharedImageInfo::DataView,
::gpu::mojom::SharedImageInfoPtr> { … };
template <>
struct GPU_EXPORT StructTraits<::gpu::mojom::CreateSharedImageParams::DataView,
::gpu::mojom::CreateSharedImageParamsPtr> { … };
template <>
struct GPU_EXPORT StructTraits<::gpu::mojom::CreateSharedImageWithDataParams::DataView,
::gpu::mojom::CreateSharedImageWithDataParamsPtr> { … };
template <>
struct GPU_EXPORT StructTraits<::gpu::mojom::CreateSharedImageWithBufferParams::DataView,
::gpu::mojom::CreateSharedImageWithBufferParamsPtr> { … };
template <>
struct GPU_EXPORT StructTraits<::gpu::mojom::UpdateSharedImageParams::DataView,
::gpu::mojom::UpdateSharedImageParamsPtr> { … };
template <>
struct GPU_EXPORT StructTraits<::gpu::mojom::AddReferenceToSharedImageParams::DataView,
::gpu::mojom::AddReferenceToSharedImageParamsPtr> { … };
template <>
struct GPU_EXPORT StructTraits<::gpu::mojom::CopyToGpuMemoryBufferParams::DataView,
::gpu::mojom::CopyToGpuMemoryBufferParamsPtr> { … };
template <>
struct GPU_EXPORT UnionTraits<::gpu::mojom::DeferredRequestParams::DataView,
::gpu::mojom::DeferredRequestParamsPtr> { … };
template <>
struct GPU_EXPORT UnionTraits<::gpu::mojom::DeferredCommandBufferRequestParams::DataView,
::gpu::mojom::DeferredCommandBufferRequestParamsPtr> { … };
template <>
struct GPU_EXPORT UnionTraits<::gpu::mojom::DeferredSharedImageRequest::DataView,
::gpu::mojom::DeferredSharedImageRequestPtr> { … };
}
#endif