#if defined(__clang__)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wunused-private-field"
#endif
#include "services/viz/public/mojom/compositing/compositor_frame_sink.mojom.h"
#include <math.h>
#include <stdint.h>
#include <utility>
#include "base/debug/alias.h"
#include "base/hash/md5_constexpr.h"
#include "base/run_loop.h"
#include "base/strings/string_number_conversions.h"
#include "base/task/thread_pool/thread_pool_instance.h"
#include "base/trace_event/trace_event.h"
#include "base/trace_event/typed_macros.h"
#include "mojo/public/cpp/bindings/features.h"
#include "mojo/public/cpp/bindings/lib/default_construct_tag_internal.h"
#include "mojo/public/cpp/bindings/lib/generated_code_util.h"
#include "mojo/public/cpp/bindings/lib/message_internal.h"
#include "mojo/public/cpp/bindings/lib/proxy_to_responder.h"
#include "mojo/public/cpp/bindings/lib/send_message_helper.h"
#include "mojo/public/cpp/bindings/lib/serialization_util.h"
#include "mojo/public/cpp/bindings/lib/unserialized_message_context.h"
#include "mojo/public/cpp/bindings/lib/validate_params.h"
#include "mojo/public/cpp/bindings/lib/validation_errors.h"
#include "mojo/public/cpp/bindings/mojo_buildflags.h"
#include "mojo/public/cpp/bindings/urgent_message_scope.h"
#include "mojo/public/interfaces/bindings/interface_control_messages.mojom.h"
#include "third_party/perfetto/include/perfetto/tracing/traced_value.h"
#include "services/viz/public/mojom/compositing/compositor_frame_sink.mojom-params-data.h"
#include "services/viz/public/mojom/compositing/compositor_frame_sink.mojom-shared-message-ids.h"
#include "services/viz/public/mojom/compositing/compositor_frame_sink.mojom-import-headers.h"
#include "services/viz/public/mojom/compositing/compositor_frame_sink.mojom-test-utils.h"
#include "services/viz/public/cpp/compositing/begin_frame_args_mojom_traits.h"
#include "services/viz/public/cpp/compositing/compositor_frame_mojom_traits.h"
namespace viz::mojom {
const char CompositorFrameSink::Name_[] = …;
CompositorFrameSink::IPCStableHashFunction CompositorFrameSink::MessageToMethodInfo_(mojo::Message& message) { … }
const char* CompositorFrameSink::MessageToMethodName_(mojo::Message& message) { … }
#if !BUILDFLAG(IS_FUCHSIA)
uint32_t CompositorFrameSink::SetNeedsBeginFrame_Sym::IPCStableHash() { … }
uint32_t CompositorFrameSink::SetWantsAnimateOnlyBeginFrames_Sym::IPCStableHash() { … }
uint32_t CompositorFrameSink::SetWantsBeginFrameAcks_Sym::IPCStableHash() { … }
uint32_t CompositorFrameSink::SetAutoNeedsBeginFrame_Sym::IPCStableHash() { … }
uint32_t CompositorFrameSink::SubmitCompositorFrame_Sym::IPCStableHash() { … }
uint32_t CompositorFrameSink::SubmitCompositorFrameSync_Sym::IPCStableHash() { … }
uint32_t CompositorFrameSink::DidNotProduceFrame_Sym::IPCStableHash() { … }
uint32_t CompositorFrameSink::DidAllocateSharedBitmap_Sym::IPCStableHash() { … }
uint32_t CompositorFrameSink::DidDeleteSharedBitmap_Sym::IPCStableHash() { … }
uint32_t CompositorFrameSink::InitializeCompositorFrameSinkType_Sym::IPCStableHash() { … }
uint32_t CompositorFrameSink::BindLayerContext_Sym::IPCStableHash() { … }
# endif
bool CompositorFrameSink::SubmitCompositorFrameSync(const ::viz::LocalSurfaceId& local_surface_id, ::viz::CompositorFrame frame, std::optional<::viz::HitTestRegionList> hit_test_region_list, uint64_t submit_time, std::vector<::viz::ReturnedResource>* out_resources) { … }
class CompositorFrameSink_SubmitCompositorFrameSync_HandleSyncResponse
: public mojo::MessageReceiver { … };
class CompositorFrameSink_SubmitCompositorFrameSync_ForwardToCallback
: public mojo::MessageReceiver { … };
CompositorFrameSinkProxy::CompositorFrameSinkProxy(mojo::MessageReceiverWithResponder* receiver)
: … { … }
void CompositorFrameSinkProxy::SetNeedsBeginFrame(
bool in_needs_begin_frame) { … }
void CompositorFrameSinkProxy::SetWantsAnimateOnlyBeginFrames(
) { … }
void CompositorFrameSinkProxy::SetWantsBeginFrameAcks(
) { … }
void CompositorFrameSinkProxy::SetAutoNeedsBeginFrame(
) { … }
void CompositorFrameSinkProxy::SubmitCompositorFrame(
const ::viz::LocalSurfaceId& in_local_surface_id, ::viz::CompositorFrame in_frame, std::optional<::viz::HitTestRegionList> in_hit_test_region_list, uint64_t in_submit_time) { … }
bool CompositorFrameSinkProxy::SubmitCompositorFrameSync(
const ::viz::LocalSurfaceId& param_local_surface_id, ::viz::CompositorFrame param_frame, std::optional<::viz::HitTestRegionList> param_hit_test_region_list, uint64_t param_submit_time, std::vector<::viz::ReturnedResource>* out_param_resources) { … }
void CompositorFrameSinkProxy::SubmitCompositorFrameSync(
const ::viz::LocalSurfaceId& in_local_surface_id, ::viz::CompositorFrame in_frame, std::optional<::viz::HitTestRegionList> in_hit_test_region_list, uint64_t in_submit_time, SubmitCompositorFrameSyncCallback callback) { … }
void CompositorFrameSinkProxy::DidNotProduceFrame(
const ::viz::BeginFrameAck& in_ack) { … }
void CompositorFrameSinkProxy::DidAllocateSharedBitmap(
::base::ReadOnlySharedMemoryRegion in_region, const ::viz::SharedBitmapId& in_id) { … }
void CompositorFrameSinkProxy::DidDeleteSharedBitmap(
const ::viz::SharedBitmapId& in_id) { … }
void CompositorFrameSinkProxy::InitializeCompositorFrameSinkType(
CompositorFrameSinkType in_type) { … }
void CompositorFrameSinkProxy::BindLayerContext(
::viz::mojom::PendingLayerContextPtr in_context) { … }
class CompositorFrameSink_SubmitCompositorFrameSync_ProxyToResponder : public ::mojo::internal::ProxyToResponder { … };
bool CompositorFrameSink_SubmitCompositorFrameSync_ForwardToCallback::Accept(
mojo::Message* message) { … }
void CompositorFrameSink_SubmitCompositorFrameSync_ProxyToResponder::Run(
std::vector<::viz::ReturnedResource> in_resources) { … }
bool CompositorFrameSink_SubmitCompositorFrameSync_HandleSyncResponse::Accept(
mojo::Message* message) { … }
bool CompositorFrameSinkStubDispatch::Accept(
CompositorFrameSink* impl,
mojo::Message* message) { … }
bool CompositorFrameSinkStubDispatch::AcceptWithResponder(
CompositorFrameSink* impl,
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder) { … }
namespace {
}
static const mojo::internal::GenericValidationInfo kCompositorFrameSinkValidationInfo[] = …;
bool CompositorFrameSinkRequestValidator::Accept(mojo::Message* message) { … }
bool CompositorFrameSinkResponseValidator::Accept(mojo::Message* message) { … }
const char CompositorFrameSinkClient::Name_[] = …;
CompositorFrameSinkClient::IPCStableHashFunction CompositorFrameSinkClient::MessageToMethodInfo_(mojo::Message& message) { … }
const char* CompositorFrameSinkClient::MessageToMethodName_(mojo::Message& message) { … }
#if !BUILDFLAG(IS_FUCHSIA)
uint32_t CompositorFrameSinkClient::DidReceiveCompositorFrameAck_Sym::IPCStableHash() { … }
uint32_t CompositorFrameSinkClient::OnBeginFrame_Sym::IPCStableHash() { … }
uint32_t CompositorFrameSinkClient::OnBeginFramePausedChanged_Sym::IPCStableHash() { … }
uint32_t CompositorFrameSinkClient::ReclaimResources_Sym::IPCStableHash() { … }
uint32_t CompositorFrameSinkClient::OnCompositorFrameTransitionDirectiveProcessed_Sym::IPCStableHash() { … }
uint32_t CompositorFrameSinkClient::OnSurfaceEvicted_Sym::IPCStableHash() { … }
# endif
CompositorFrameSinkClientProxy::CompositorFrameSinkClientProxy(mojo::MessageReceiverWithResponder* receiver)
: … { … }
void CompositorFrameSinkClientProxy::DidReceiveCompositorFrameAck(
std::vector<::viz::ReturnedResource> in_resources) { … }
void CompositorFrameSinkClientProxy::OnBeginFrame(
const ::viz::BeginFrameArgs& in_args, const base::flat_map<uint32_t, ::viz::FrameTimingDetails>& in_details, bool in_frame_ack, std::vector<::viz::ReturnedResource> in_resources) { … }
void CompositorFrameSinkClientProxy::OnBeginFramePausedChanged(
bool in_paused) { … }
void CompositorFrameSinkClientProxy::ReclaimResources(
std::vector<::viz::ReturnedResource> in_resources) { … }
void CompositorFrameSinkClientProxy::OnCompositorFrameTransitionDirectiveProcessed(
uint32_t in_sequence_id) { … }
void CompositorFrameSinkClientProxy::OnSurfaceEvicted(
const ::viz::LocalSurfaceId& in_local_surface_id) { … }
bool CompositorFrameSinkClientStubDispatch::Accept(
CompositorFrameSinkClient* impl,
mojo::Message* message) { … }
bool CompositorFrameSinkClientStubDispatch::AcceptWithResponder(
CompositorFrameSinkClient* impl,
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder) { … }
namespace {
}
static const mojo::internal::GenericValidationInfo kCompositorFrameSinkClientValidationInfo[] = …;
bool CompositorFrameSinkClientRequestValidator::Accept(mojo::Message* message) { … }
}
namespace mojo {
}
namespace viz::mojom {
void CompositorFrameSinkInterceptorForTesting::SetNeedsBeginFrame(bool needs_begin_frame) { … }
void CompositorFrameSinkInterceptorForTesting::SetWantsAnimateOnlyBeginFrames() { … }
void CompositorFrameSinkInterceptorForTesting::SetWantsBeginFrameAcks() { … }
void CompositorFrameSinkInterceptorForTesting::SetAutoNeedsBeginFrame() { … }
void CompositorFrameSinkInterceptorForTesting::SubmitCompositorFrame(const ::viz::LocalSurfaceId& local_surface_id, ::viz::CompositorFrame frame, std::optional<::viz::HitTestRegionList> hit_test_region_list, uint64_t submit_time) { … }
void CompositorFrameSinkInterceptorForTesting::SubmitCompositorFrameSync(const ::viz::LocalSurfaceId& local_surface_id, ::viz::CompositorFrame frame, std::optional<::viz::HitTestRegionList> hit_test_region_list, uint64_t submit_time, SubmitCompositorFrameSyncCallback callback) { … }
void CompositorFrameSinkInterceptorForTesting::DidNotProduceFrame(const ::viz::BeginFrameAck& ack) { … }
void CompositorFrameSinkInterceptorForTesting::DidAllocateSharedBitmap(::base::ReadOnlySharedMemoryRegion region, const ::viz::SharedBitmapId& id) { … }
void CompositorFrameSinkInterceptorForTesting::DidDeleteSharedBitmap(const ::viz::SharedBitmapId& id) { … }
void CompositorFrameSinkInterceptorForTesting::InitializeCompositorFrameSinkType(CompositorFrameSinkType type) { … }
void CompositorFrameSinkInterceptorForTesting::BindLayerContext(::viz::mojom::PendingLayerContextPtr context) { … }
CompositorFrameSinkAsyncWaiter::CompositorFrameSinkAsyncWaiter(
CompositorFrameSink* proxy) : … { … }
CompositorFrameSinkAsyncWaiter::~CompositorFrameSinkAsyncWaiter() = default;
void CompositorFrameSinkAsyncWaiter::SubmitCompositorFrameSync(
const ::viz::LocalSurfaceId& local_surface_id, ::viz::CompositorFrame frame, std::optional<::viz::HitTestRegionList> hit_test_region_list, uint64_t submit_time, std::vector<::viz::ReturnedResource>* out_resources) { … }
std::vector<::viz::ReturnedResource> CompositorFrameSinkAsyncWaiter::SubmitCompositorFrameSync(
const ::viz::LocalSurfaceId& local_surface_id, ::viz::CompositorFrame frame, std::optional<::viz::HitTestRegionList> hit_test_region_list, uint64_t submit_time) { … }
void CompositorFrameSinkClientInterceptorForTesting::DidReceiveCompositorFrameAck(std::vector<::viz::ReturnedResource> resources) { … }
void CompositorFrameSinkClientInterceptorForTesting::OnBeginFrame(const ::viz::BeginFrameArgs& args, const base::flat_map<uint32_t, ::viz::FrameTimingDetails>& details, bool frame_ack, std::vector<::viz::ReturnedResource> resources) { … }
void CompositorFrameSinkClientInterceptorForTesting::OnBeginFramePausedChanged(bool paused) { … }
void CompositorFrameSinkClientInterceptorForTesting::ReclaimResources(std::vector<::viz::ReturnedResource> resources) { … }
void CompositorFrameSinkClientInterceptorForTesting::OnCompositorFrameTransitionDirectiveProcessed(uint32_t sequence_id) { … }
void CompositorFrameSinkClientInterceptorForTesting::OnSurfaceEvicted(const ::viz::LocalSurfaceId& local_surface_id) { … }
CompositorFrameSinkClientAsyncWaiter::CompositorFrameSinkClientAsyncWaiter(
CompositorFrameSinkClient* proxy) : … { … }
CompositorFrameSinkClientAsyncWaiter::~CompositorFrameSinkClientAsyncWaiter() = default;
}
#if defined(__clang__)
#pragma clang diagnostic pop
#endif