// services/viz/privileged/mojom/compositing/frame_sink_manager.mojom-params-data.h is auto generated by mojom_bindings_generator.py, do not edit

// Copyright 2019 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef SERVICES_VIZ_PRIVILEGED_MOJOM_COMPOSITING_FRAME_SINK_MANAGER_MOJOM_PARAMS_DATA_H_
#define SERVICES_VIZ_PRIVILEGED_MOJOM_COMPOSITING_FRAME_SINK_MANAGER_MOJOM_PARAMS_DATA_H_
#include "mojo/public/cpp/bindings/array_data_view.h"
#include "mojo/public/cpp/bindings/map_data_view.h"
#include "mojo/public/cpp/bindings/string_data_view.h"

#if defined(__clang__)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wunused-private-field"
#endif

namespace mojo::internal {
class ValidationContext;
}


namespace viz::mojom {
namespace internal {
class  FrameSinkManager_RegisterFrameSinkId_Params_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;
  mojo::internal::Pointer<::viz::mojom::internal::FrameSinkId_Data> frame_sink_id;
  uint8_t report_activation : 1;
  uint8_t padfinal_[7];

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManager_RegisterFrameSinkId_Params_Data>;

  FrameSinkManager_RegisterFrameSinkId_Params_Data();
  ~FrameSinkManager_RegisterFrameSinkId_Params_Data() = delete;
};
static_assert(sizeof(FrameSinkManager_RegisterFrameSinkId_Params_Data) == 24,
              "Bad sizeof(FrameSinkManager_RegisterFrameSinkId_Params_Data)");
class  FrameSinkManager_InvalidateFrameSinkId_Params_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;
  mojo::internal::Pointer<::viz::mojom::internal::FrameSinkId_Data> frame_sink_id;

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManager_InvalidateFrameSinkId_Params_Data>;

  FrameSinkManager_InvalidateFrameSinkId_Params_Data();
  ~FrameSinkManager_InvalidateFrameSinkId_Params_Data() = delete;
};
static_assert(sizeof(FrameSinkManager_InvalidateFrameSinkId_Params_Data) == 16,
              "Bad sizeof(FrameSinkManager_InvalidateFrameSinkId_Params_Data)");
class  FrameSinkManager_InvalidateFrameSinkId_ResponseParams_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManager_InvalidateFrameSinkId_ResponseParams_Data>;

  FrameSinkManager_InvalidateFrameSinkId_ResponseParams_Data();
  ~FrameSinkManager_InvalidateFrameSinkId_ResponseParams_Data() = delete;
};
static_assert(sizeof(FrameSinkManager_InvalidateFrameSinkId_ResponseParams_Data) == 8,
              "Bad sizeof(FrameSinkManager_InvalidateFrameSinkId_ResponseParams_Data)");
class  FrameSinkManager_SetFrameSinkDebugLabel_Params_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;
  mojo::internal::Pointer<::viz::mojom::internal::FrameSinkId_Data> frame_sink_id;
  mojo::internal::Pointer<mojo::internal::String_Data> debug_label;

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManager_SetFrameSinkDebugLabel_Params_Data>;

  FrameSinkManager_SetFrameSinkDebugLabel_Params_Data();
  ~FrameSinkManager_SetFrameSinkDebugLabel_Params_Data() = delete;
};
static_assert(sizeof(FrameSinkManager_SetFrameSinkDebugLabel_Params_Data) == 24,
              "Bad sizeof(FrameSinkManager_SetFrameSinkDebugLabel_Params_Data)");
class  FrameSinkManager_CreateRootCompositorFrameSink_Params_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;
  mojo::internal::Pointer<internal::RootCompositorFrameSinkParams_Data> params;

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManager_CreateRootCompositorFrameSink_Params_Data>;

  FrameSinkManager_CreateRootCompositorFrameSink_Params_Data();
  ~FrameSinkManager_CreateRootCompositorFrameSink_Params_Data() = delete;
};
static_assert(sizeof(FrameSinkManager_CreateRootCompositorFrameSink_Params_Data) == 16,
              "Bad sizeof(FrameSinkManager_CreateRootCompositorFrameSink_Params_Data)");
class  FrameSinkManager_CreateFrameSinkBundle_Params_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;
  mojo::internal::Pointer<::viz::mojom::internal::FrameSinkBundleId_Data> bundle_id;
  mojo::internal::Handle_Data receiver;
  mojo::internal::Interface_Data client;
  uint8_t padfinal_[4];

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManager_CreateFrameSinkBundle_Params_Data>;

  FrameSinkManager_CreateFrameSinkBundle_Params_Data();
  ~FrameSinkManager_CreateFrameSinkBundle_Params_Data() = delete;
};
static_assert(sizeof(FrameSinkManager_CreateFrameSinkBundle_Params_Data) == 32,
              "Bad sizeof(FrameSinkManager_CreateFrameSinkBundle_Params_Data)");
class  FrameSinkManager_CreateCompositorFrameSink_Params_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;
  mojo::internal::Pointer<::viz::mojom::internal::FrameSinkId_Data> frame_sink_id;
  mojo::internal::Pointer<::viz::mojom::internal::FrameSinkBundleId_Data> bundle_id;
  mojo::internal::Handle_Data compositor_frame_sink;
  mojo::internal::Interface_Data compositor_frame_sink_client;
  uint8_t pad3_[4];
  mojo::internal::Pointer<::input::mojom::internal::RenderInputRouterConfig_Data> config;

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManager_CreateCompositorFrameSink_Params_Data>;

  FrameSinkManager_CreateCompositorFrameSink_Params_Data();
  ~FrameSinkManager_CreateCompositorFrameSink_Params_Data() = delete;
};
static_assert(sizeof(FrameSinkManager_CreateCompositorFrameSink_Params_Data) == 48,
              "Bad sizeof(FrameSinkManager_CreateCompositorFrameSink_Params_Data)");
class  FrameSinkManager_DestroyCompositorFrameSink_Params_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;
  mojo::internal::Pointer<::viz::mojom::internal::FrameSinkId_Data> frame_sink_id;

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManager_DestroyCompositorFrameSink_Params_Data>;

  FrameSinkManager_DestroyCompositorFrameSink_Params_Data();
  ~FrameSinkManager_DestroyCompositorFrameSink_Params_Data() = delete;
};
static_assert(sizeof(FrameSinkManager_DestroyCompositorFrameSink_Params_Data) == 16,
              "Bad sizeof(FrameSinkManager_DestroyCompositorFrameSink_Params_Data)");
class  FrameSinkManager_DestroyCompositorFrameSink_ResponseParams_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManager_DestroyCompositorFrameSink_ResponseParams_Data>;

  FrameSinkManager_DestroyCompositorFrameSink_ResponseParams_Data();
  ~FrameSinkManager_DestroyCompositorFrameSink_ResponseParams_Data() = delete;
};
static_assert(sizeof(FrameSinkManager_DestroyCompositorFrameSink_ResponseParams_Data) == 8,
              "Bad sizeof(FrameSinkManager_DestroyCompositorFrameSink_ResponseParams_Data)");
class  FrameSinkManager_RegisterFrameSinkHierarchy_Params_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;
  mojo::internal::Pointer<::viz::mojom::internal::FrameSinkId_Data> parent_frame_sink_id;
  mojo::internal::Pointer<::viz::mojom::internal::FrameSinkId_Data> child_frame_sink_id;

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManager_RegisterFrameSinkHierarchy_Params_Data>;

  FrameSinkManager_RegisterFrameSinkHierarchy_Params_Data();
  ~FrameSinkManager_RegisterFrameSinkHierarchy_Params_Data() = delete;
};
static_assert(sizeof(FrameSinkManager_RegisterFrameSinkHierarchy_Params_Data) == 24,
              "Bad sizeof(FrameSinkManager_RegisterFrameSinkHierarchy_Params_Data)");
class  FrameSinkManager_UnregisterFrameSinkHierarchy_Params_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;
  mojo::internal::Pointer<::viz::mojom::internal::FrameSinkId_Data> parent_frame_sink_id;
  mojo::internal::Pointer<::viz::mojom::internal::FrameSinkId_Data> child_frame_sink_id;

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManager_UnregisterFrameSinkHierarchy_Params_Data>;

  FrameSinkManager_UnregisterFrameSinkHierarchy_Params_Data();
  ~FrameSinkManager_UnregisterFrameSinkHierarchy_Params_Data() = delete;
};
static_assert(sizeof(FrameSinkManager_UnregisterFrameSinkHierarchy_Params_Data) == 24,
              "Bad sizeof(FrameSinkManager_UnregisterFrameSinkHierarchy_Params_Data)");
class  FrameSinkManager_AddVideoDetectorObserver_Params_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;
  mojo::internal::Interface_Data observer;

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManager_AddVideoDetectorObserver_Params_Data>;

  FrameSinkManager_AddVideoDetectorObserver_Params_Data();
  ~FrameSinkManager_AddVideoDetectorObserver_Params_Data() = delete;
};
static_assert(sizeof(FrameSinkManager_AddVideoDetectorObserver_Params_Data) == 16,
              "Bad sizeof(FrameSinkManager_AddVideoDetectorObserver_Params_Data)");
class  FrameSinkManager_CreateVideoCapturer_Params_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;
  mojo::internal::Handle_Data receiver;
  uint32_t capture_version_source;

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManager_CreateVideoCapturer_Params_Data>;

  FrameSinkManager_CreateVideoCapturer_Params_Data();
  ~FrameSinkManager_CreateVideoCapturer_Params_Data() = delete;
};
static_assert(sizeof(FrameSinkManager_CreateVideoCapturer_Params_Data) == 16,
              "Bad sizeof(FrameSinkManager_CreateVideoCapturer_Params_Data)");
class  FrameSinkManager_EvictSurfaces_Params_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;
  mojo::internal::Pointer<mojo::internal::Array_Data<mojo::internal::Pointer<::viz::mojom::internal::SurfaceId_Data>>> surface_ids;

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManager_EvictSurfaces_Params_Data>;

  FrameSinkManager_EvictSurfaces_Params_Data();
  ~FrameSinkManager_EvictSurfaces_Params_Data() = delete;
};
static_assert(sizeof(FrameSinkManager_EvictSurfaces_Params_Data) == 16,
              "Bad sizeof(FrameSinkManager_EvictSurfaces_Params_Data)");
class  FrameSinkManager_Throttle_Params_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;
  mojo::internal::Pointer<mojo::internal::Array_Data<mojo::internal::Pointer<::viz::mojom::internal::FrameSinkId_Data>>> frame_sink_ids;
  mojo::internal::Pointer<::mojo_base::mojom::internal::TimeDelta_Data> interval;

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManager_Throttle_Params_Data>;

  FrameSinkManager_Throttle_Params_Data();
  ~FrameSinkManager_Throttle_Params_Data() = delete;
};
static_assert(sizeof(FrameSinkManager_Throttle_Params_Data) == 24,
              "Bad sizeof(FrameSinkManager_Throttle_Params_Data)");
class  FrameSinkManager_StartThrottlingAllFrameSinks_Params_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;
  mojo::internal::Pointer<::mojo_base::mojom::internal::TimeDelta_Data> interval;

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManager_StartThrottlingAllFrameSinks_Params_Data>;

  FrameSinkManager_StartThrottlingAllFrameSinks_Params_Data();
  ~FrameSinkManager_StartThrottlingAllFrameSinks_Params_Data() = delete;
};
static_assert(sizeof(FrameSinkManager_StartThrottlingAllFrameSinks_Params_Data) == 16,
              "Bad sizeof(FrameSinkManager_StartThrottlingAllFrameSinks_Params_Data)");
class  FrameSinkManager_StopThrottlingAllFrameSinks_Params_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManager_StopThrottlingAllFrameSinks_Params_Data>;

  FrameSinkManager_StopThrottlingAllFrameSinks_Params_Data();
  ~FrameSinkManager_StopThrottlingAllFrameSinks_Params_Data() = delete;
};
static_assert(sizeof(FrameSinkManager_StopThrottlingAllFrameSinks_Params_Data) == 8,
              "Bad sizeof(FrameSinkManager_StopThrottlingAllFrameSinks_Params_Data)");
class  FrameSinkManager_RequestCopyOfOutput_Params_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;
  mojo::internal::Pointer<::viz::mojom::internal::SurfaceId_Data> surface_id;
  mojo::internal::Pointer<::viz::mojom::internal::CopyOutputRequest_Data> request;
  uint8_t capture_exact_surface_id : 1;
  uint8_t pad2_[7];
  mojo::internal::Pointer<::mojo_base::mojom::internal::TimeDelta_Data> timeout;

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManager_RequestCopyOfOutput_Params_Data>;

  FrameSinkManager_RequestCopyOfOutput_Params_Data();
  ~FrameSinkManager_RequestCopyOfOutput_Params_Data() = delete;
};
static_assert(sizeof(FrameSinkManager_RequestCopyOfOutput_Params_Data) == 40,
              "Bad sizeof(FrameSinkManager_RequestCopyOfOutput_Params_Data)");
class  FrameSinkManager_CacheBackBuffer_Params_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;
  uint32_t cache_id;
  uint8_t pad0_[4];
  mojo::internal::Pointer<::viz::mojom::internal::FrameSinkId_Data> root_frame_sink_id;

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManager_CacheBackBuffer_Params_Data>;

  FrameSinkManager_CacheBackBuffer_Params_Data();
  ~FrameSinkManager_CacheBackBuffer_Params_Data() = delete;
};
static_assert(sizeof(FrameSinkManager_CacheBackBuffer_Params_Data) == 24,
              "Bad sizeof(FrameSinkManager_CacheBackBuffer_Params_Data)");
class  FrameSinkManager_EvictBackBuffer_Params_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;
  uint32_t cache_id;
  uint8_t padfinal_[4];

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManager_EvictBackBuffer_Params_Data>;

  FrameSinkManager_EvictBackBuffer_Params_Data();
  ~FrameSinkManager_EvictBackBuffer_Params_Data() = delete;
};
static_assert(sizeof(FrameSinkManager_EvictBackBuffer_Params_Data) == 16,
              "Bad sizeof(FrameSinkManager_EvictBackBuffer_Params_Data)");
class  FrameSinkManager_EvictBackBuffer_ResponseParams_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManager_EvictBackBuffer_ResponseParams_Data>;

  FrameSinkManager_EvictBackBuffer_ResponseParams_Data();
  ~FrameSinkManager_EvictBackBuffer_ResponseParams_Data() = delete;
};
static_assert(sizeof(FrameSinkManager_EvictBackBuffer_ResponseParams_Data) == 8,
              "Bad sizeof(FrameSinkManager_EvictBackBuffer_ResponseParams_Data)");
class  FrameSinkManager_UpdateDebugRendererSettings_Params_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;
  mojo::internal::Pointer<::viz::mojom::internal::DebugRendererSettings_Data> debug_settings;

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManager_UpdateDebugRendererSettings_Params_Data>;

  FrameSinkManager_UpdateDebugRendererSettings_Params_Data();
  ~FrameSinkManager_UpdateDebugRendererSettings_Params_Data() = delete;
};
static_assert(sizeof(FrameSinkManager_UpdateDebugRendererSettings_Params_Data) == 16,
              "Bad sizeof(FrameSinkManager_UpdateDebugRendererSettings_Params_Data)");
class  FrameSinkManager_ClearUnclaimedViewTransitionResources_Params_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;
  mojo::internal::Pointer<::blink::mojom::internal::ViewTransitionToken_Data> transition_token;

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManager_ClearUnclaimedViewTransitionResources_Params_Data>;

  FrameSinkManager_ClearUnclaimedViewTransitionResources_Params_Data();
  ~FrameSinkManager_ClearUnclaimedViewTransitionResources_Params_Data() = delete;
};
static_assert(sizeof(FrameSinkManager_ClearUnclaimedViewTransitionResources_Params_Data) == 16,
              "Bad sizeof(FrameSinkManager_ClearUnclaimedViewTransitionResources_Params_Data)");
class  FrameSinkManager_CreateMetricsRecorderForTest_Params_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;
  mojo::internal::Handle_Data receiver;
  uint8_t padfinal_[4];

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManager_CreateMetricsRecorderForTest_Params_Data>;

  FrameSinkManager_CreateMetricsRecorderForTest_Params_Data();
  ~FrameSinkManager_CreateMetricsRecorderForTest_Params_Data() = delete;
};
static_assert(sizeof(FrameSinkManager_CreateMetricsRecorderForTest_Params_Data) == 16,
              "Bad sizeof(FrameSinkManager_CreateMetricsRecorderForTest_Params_Data)");
class  FrameSinkManager_EnableFrameSinkManagerTestApi_Params_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;
  mojo::internal::Handle_Data receiver;
  uint8_t padfinal_[4];

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManager_EnableFrameSinkManagerTestApi_Params_Data>;

  FrameSinkManager_EnableFrameSinkManagerTestApi_Params_Data();
  ~FrameSinkManager_EnableFrameSinkManagerTestApi_Params_Data() = delete;
};
static_assert(sizeof(FrameSinkManager_EnableFrameSinkManagerTestApi_Params_Data) == 16,
              "Bad sizeof(FrameSinkManager_EnableFrameSinkManagerTestApi_Params_Data)");
class  FrameSinkManager_SetupRendererInputRouterDelegateRegistry_Params_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;
  mojo::internal::Handle_Data receiver;
  uint8_t padfinal_[4];

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManager_SetupRendererInputRouterDelegateRegistry_Params_Data>;

  FrameSinkManager_SetupRendererInputRouterDelegateRegistry_Params_Data();
  ~FrameSinkManager_SetupRendererInputRouterDelegateRegistry_Params_Data() = delete;
};
static_assert(sizeof(FrameSinkManager_SetupRendererInputRouterDelegateRegistry_Params_Data) == 16,
              "Bad sizeof(FrameSinkManager_SetupRendererInputRouterDelegateRegistry_Params_Data)");
class  FrameSinkManager_NotifyRendererBlockStateChanged_Params_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;
  uint8_t blocked : 1;
  uint8_t pad0_[7];
  mojo::internal::Pointer<mojo::internal::Array_Data<mojo::internal::Pointer<::viz::mojom::internal::FrameSinkId_Data>>> render_input_routers;

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManager_NotifyRendererBlockStateChanged_Params_Data>;

  FrameSinkManager_NotifyRendererBlockStateChanged_Params_Data();
  ~FrameSinkManager_NotifyRendererBlockStateChanged_Params_Data() = delete;
};
static_assert(sizeof(FrameSinkManager_NotifyRendererBlockStateChanged_Params_Data) == 24,
              "Bad sizeof(FrameSinkManager_NotifyRendererBlockStateChanged_Params_Data)");
class  FrameSinkManager_RequestInputBack_Params_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManager_RequestInputBack_Params_Data>;

  FrameSinkManager_RequestInputBack_Params_Data();
  ~FrameSinkManager_RequestInputBack_Params_Data() = delete;
};
static_assert(sizeof(FrameSinkManager_RequestInputBack_Params_Data) == 8,
              "Bad sizeof(FrameSinkManager_RequestInputBack_Params_Data)");
class  FrameSinkManagerClient_OnFirstSurfaceActivation_Params_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;
  mojo::internal::Pointer<::viz::mojom::internal::SurfaceInfo_Data> surface_info;

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManagerClient_OnFirstSurfaceActivation_Params_Data>;

  FrameSinkManagerClient_OnFirstSurfaceActivation_Params_Data();
  ~FrameSinkManagerClient_OnFirstSurfaceActivation_Params_Data() = delete;
};
static_assert(sizeof(FrameSinkManagerClient_OnFirstSurfaceActivation_Params_Data) == 16,
              "Bad sizeof(FrameSinkManagerClient_OnFirstSurfaceActivation_Params_Data)");
class  FrameSinkManagerClient_OnAggregatedHitTestRegionListUpdated_Params_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;
  mojo::internal::Pointer<::viz::mojom::internal::FrameSinkId_Data> frame_sink_id;
  mojo::internal::Pointer<mojo::internal::Array_Data<mojo::internal::Pointer<::viz::mojom::internal::AggregatedHitTestRegion_Data>>> hit_test_data;

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManagerClient_OnAggregatedHitTestRegionListUpdated_Params_Data>;

  FrameSinkManagerClient_OnAggregatedHitTestRegionListUpdated_Params_Data();
  ~FrameSinkManagerClient_OnAggregatedHitTestRegionListUpdated_Params_Data() = delete;
};
static_assert(sizeof(FrameSinkManagerClient_OnAggregatedHitTestRegionListUpdated_Params_Data) == 24,
              "Bad sizeof(FrameSinkManagerClient_OnAggregatedHitTestRegionListUpdated_Params_Data)");
class  FrameSinkManagerClient_OnFrameTokenChanged_Params_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;
  mojo::internal::Pointer<::viz::mojom::internal::FrameSinkId_Data> frame_sink_id;
  uint32_t frame_token;
  uint8_t pad1_[4];
  mojo::internal::Pointer<::mojo_base::mojom::internal::TimeTicks_Data> activation_time;

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManagerClient_OnFrameTokenChanged_Params_Data>;

  FrameSinkManagerClient_OnFrameTokenChanged_Params_Data();
  ~FrameSinkManagerClient_OnFrameTokenChanged_Params_Data() = delete;
};
static_assert(sizeof(FrameSinkManagerClient_OnFrameTokenChanged_Params_Data) == 32,
              "Bad sizeof(FrameSinkManagerClient_OnFrameTokenChanged_Params_Data)");
class  FrameSinkManagerClient_VerifyThreadIdsDoNotBelongToHost_Params_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;
  mojo::internal::Pointer<mojo::internal::Array_Data<int32_t>> thread_ids;

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManagerClient_VerifyThreadIdsDoNotBelongToHost_Params_Data>;

  FrameSinkManagerClient_VerifyThreadIdsDoNotBelongToHost_Params_Data();
  ~FrameSinkManagerClient_VerifyThreadIdsDoNotBelongToHost_Params_Data() = delete;
};
static_assert(sizeof(FrameSinkManagerClient_VerifyThreadIdsDoNotBelongToHost_Params_Data) == 16,
              "Bad sizeof(FrameSinkManagerClient_VerifyThreadIdsDoNotBelongToHost_Params_Data)");
class  FrameSinkManagerClient_VerifyThreadIdsDoNotBelongToHost_ResponseParams_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;
  uint8_t passed_verification : 1;
  uint8_t padfinal_[7];

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManagerClient_VerifyThreadIdsDoNotBelongToHost_ResponseParams_Data>;

  FrameSinkManagerClient_VerifyThreadIdsDoNotBelongToHost_ResponseParams_Data();
  ~FrameSinkManagerClient_VerifyThreadIdsDoNotBelongToHost_ResponseParams_Data() = delete;
};
static_assert(sizeof(FrameSinkManagerClient_VerifyThreadIdsDoNotBelongToHost_ResponseParams_Data) == 16,
              "Bad sizeof(FrameSinkManagerClient_VerifyThreadIdsDoNotBelongToHost_ResponseParams_Data)");
class  FrameSinkManagerClient_OnScreenshotCaptured_Params_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;
  mojo::internal::Pointer<::blink::mojom::internal::SameDocNavigationScreenshotDestinationToken_Data> destination_token;
  mojo::internal::Pointer<::viz::mojom::internal::CopyOutputResult_Data> copy_output_result;

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManagerClient_OnScreenshotCaptured_Params_Data>;

  FrameSinkManagerClient_OnScreenshotCaptured_Params_Data();
  ~FrameSinkManagerClient_OnScreenshotCaptured_Params_Data() = delete;
};
static_assert(sizeof(FrameSinkManagerClient_OnScreenshotCaptured_Params_Data) == 24,
              "Bad sizeof(FrameSinkManagerClient_OnScreenshotCaptured_Params_Data)");
class  FrameSinkManagerClient_OnVizTouchStateAvailable_Params_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;
  mojo::internal::Pointer<::mojo_base::mojom::internal::ReadOnlySharedMemoryRegion_Data> region;

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManagerClient_OnVizTouchStateAvailable_Params_Data>;

  FrameSinkManagerClient_OnVizTouchStateAvailable_Params_Data();
  ~FrameSinkManagerClient_OnVizTouchStateAvailable_Params_Data() = delete;
};
static_assert(sizeof(FrameSinkManagerClient_OnVizTouchStateAvailable_Params_Data) == 16,
              "Bad sizeof(FrameSinkManagerClient_OnVizTouchStateAvailable_Params_Data)");
class  FrameSinkManagerClient_OnViewTransitionResourcesCaptured_Params_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;
  mojo::internal::Pointer<::blink::mojom::internal::ViewTransitionToken_Data> transition_token;

 private:
  friend class mojo::internal::MessageFragment<FrameSinkManagerClient_OnViewTransitionResourcesCaptured_Params_Data>;

  FrameSinkManagerClient_OnViewTransitionResourcesCaptured_Params_Data();
  ~FrameSinkManagerClient_OnViewTransitionResourcesCaptured_Params_Data() = delete;
};
static_assert(sizeof(FrameSinkManagerClient_OnViewTransitionResourcesCaptured_Params_Data) == 16,
              "Bad sizeof(FrameSinkManagerClient_OnViewTransitionResourcesCaptured_Params_Data)");
class  RendererInputRouterDelegateRegistry_SetupRenderInputRouterDelegateConnection_Params_Data {
 public:
  static bool Validate(const void* data,
                       mojo::internal::ValidationContext* validation_context);

  mojo::internal::StructHeader header_;
  mojo::internal::Pointer<::viz::mojom::internal::FrameSinkId_Data> id;
  mojo::internal::AssociatedInterface_Data rir_delegate_client_remote;
  mojo::internal::AssociatedEndpointHandle_Data rir_delegate_receiver;
  uint8_t padfinal_[4];

 private:
  friend class mojo::internal::MessageFragment<RendererInputRouterDelegateRegistry_SetupRenderInputRouterDelegateConnection_Params_Data>;

  RendererInputRouterDelegateRegistry_SetupRenderInputRouterDelegateConnection_Params_Data();
  ~RendererInputRouterDelegateRegistry_SetupRenderInputRouterDelegateConnection_Params_Data() = delete;
};
static_assert(sizeof(RendererInputRouterDelegateRegistry_SetupRenderInputRouterDelegateConnection_Params_Data) == 32,
              "Bad sizeof(RendererInputRouterDelegateRegistry_SetupRenderInputRouterDelegateConnection_Params_Data)");

}  // namespace internal


class FrameSinkManager_RegisterFrameSinkId_ParamsDataView {
 public:
  FrameSinkManager_RegisterFrameSinkId_ParamsDataView() = default;

  FrameSinkManager_RegisterFrameSinkId_ParamsDataView(
      internal::FrameSinkManager_RegisterFrameSinkId_Params_Data* data,
      mojo::Message* message)
      : data_(data), message_(message) {}

  bool is_null() const { return !data_; }
  inline void GetFrameSinkIdDataView(
      ::viz::mojom::FrameSinkIdDataView* output);

  template <typename UserType>
  [[nodiscard]] bool ReadFrameSinkId(UserType* output) {
    
    auto* pointer = data_->frame_sink_id.Get();
    return mojo::internal::Deserialize<::viz::mojom::FrameSinkIdDataView>(
        pointer, output, message_);
  }
  bool report_activation() const {
    return data_->report_activation;
  }
 private:
  internal::FrameSinkManager_RegisterFrameSinkId_Params_Data* data_ = nullptr;
  mojo::Message* message_ = nullptr;
};


class FrameSinkManager_InvalidateFrameSinkId_ParamsDataView {
 public:
  FrameSinkManager_InvalidateFrameSinkId_ParamsDataView() = default;

  FrameSinkManager_InvalidateFrameSinkId_ParamsDataView(
      internal::FrameSinkManager_InvalidateFrameSinkId_Params_Data* data,
      mojo::Message* message)
      : data_(data), message_(message) {}

  bool is_null() const { return !data_; }
  inline void GetFrameSinkIdDataView(
      ::viz::mojom::FrameSinkIdDataView* output);

  template <typename UserType>
  [[nodiscard]] bool ReadFrameSinkId(UserType* output) {
    
    auto* pointer = data_->frame_sink_id.Get();
    return mojo::internal::Deserialize<::viz::mojom::FrameSinkIdDataView>(
        pointer, output, message_);
  }
 private:
  internal::FrameSinkManager_InvalidateFrameSinkId_Params_Data* data_ = nullptr;
  mojo::Message* message_ = nullptr;
};


class FrameSinkManager_InvalidateFrameSinkId_ResponseParamsDataView {
 public:
  FrameSinkManager_InvalidateFrameSinkId_ResponseParamsDataView() = default;

  FrameSinkManager_InvalidateFrameSinkId_ResponseParamsDataView(
      internal::FrameSinkManager_InvalidateFrameSinkId_ResponseParams_Data* data,
      mojo::Message* message)
      : data_(data) {}

  bool is_null() const { return !data_; }
 private:
  internal::FrameSinkManager_InvalidateFrameSinkId_ResponseParams_Data* data_ = nullptr;
};


class FrameSinkManager_SetFrameSinkDebugLabel_ParamsDataView {
 public:
  FrameSinkManager_SetFrameSinkDebugLabel_ParamsDataView() = default;

  FrameSinkManager_SetFrameSinkDebugLabel_ParamsDataView(
      internal::FrameSinkManager_SetFrameSinkDebugLabel_Params_Data* data,
      mojo::Message* message)
      : data_(data), message_(message) {}

  bool is_null() const { return !data_; }
  inline void GetFrameSinkIdDataView(
      ::viz::mojom::FrameSinkIdDataView* output);

  template <typename UserType>
  [[nodiscard]] bool ReadFrameSinkId(UserType* output) {
    
    auto* pointer = data_->frame_sink_id.Get();
    return mojo::internal::Deserialize<::viz::mojom::FrameSinkIdDataView>(
        pointer, output, message_);
  }
  inline void GetDebugLabelDataView(
      mojo::StringDataView* output);

  template <typename UserType>
  [[nodiscard]] bool ReadDebugLabel(UserType* output) {
    
    auto* pointer = data_->debug_label.Get();
    return mojo::internal::Deserialize<mojo::StringDataView>(
        pointer, output, message_);
  }
 private:
  internal::FrameSinkManager_SetFrameSinkDebugLabel_Params_Data* data_ = nullptr;
  mojo::Message* message_ = nullptr;
};


class FrameSinkManager_CreateRootCompositorFrameSink_ParamsDataView {
 public:
  FrameSinkManager_CreateRootCompositorFrameSink_ParamsDataView() = default;

  FrameSinkManager_CreateRootCompositorFrameSink_ParamsDataView(
      internal::FrameSinkManager_CreateRootCompositorFrameSink_Params_Data* data,
      mojo::Message* message)
      : data_(data), message_(message) {}

  bool is_null() const { return !data_; }
  inline void GetParamsDataView(
      RootCompositorFrameSinkParamsDataView* output);

  template <typename UserType>
  [[nodiscard]] bool ReadParams(UserType* output) {
    
    auto* pointer = data_->params.Get();
    return mojo::internal::Deserialize<::viz::mojom::RootCompositorFrameSinkParamsDataView>(
        pointer, output, message_);
  }
 private:
  internal::FrameSinkManager_CreateRootCompositorFrameSink_Params_Data* data_ = nullptr;
  mojo::Message* message_ = nullptr;
};


class FrameSinkManager_CreateFrameSinkBundle_ParamsDataView {
 public:
  FrameSinkManager_CreateFrameSinkBundle_ParamsDataView() = default;

  FrameSinkManager_CreateFrameSinkBundle_ParamsDataView(
      internal::FrameSinkManager_CreateFrameSinkBundle_Params_Data* data,
      mojo::Message* message)
      : data_(data), message_(message) {}

  bool is_null() const { return !data_; }
  inline void GetBundleIdDataView(
      ::viz::mojom::FrameSinkBundleIdDataView* output);

  template <typename UserType>
  [[nodiscard]] bool ReadBundleId(UserType* output) {
    
    auto* pointer = data_->bundle_id.Get();
    return mojo::internal::Deserialize<::viz::mojom::FrameSinkBundleIdDataView>(
        pointer, output, message_);
  }
  template <typename UserType>
  UserType TakeReceiver() {
    UserType result;
    bool ret =
        mojo::internal::Deserialize<mojo::InterfaceRequestDataView<::viz::mojom::FrameSinkBundleInterfaceBase>>(
            &data_->receiver, &result, message_);
    DCHECK(ret);
    return result;
  }
  template <typename UserType>
  UserType TakeClient() {
    UserType result;
    bool ret =
        mojo::internal::Deserialize<mojo::InterfacePtrDataView<::viz::mojom::FrameSinkBundleClientInterfaceBase>>(
            &data_->client, &result, message_);
    DCHECK(ret);
    return result;
  }
 private:
  internal::FrameSinkManager_CreateFrameSinkBundle_Params_Data* data_ = nullptr;
  mojo::Message* message_ = nullptr;
};


class FrameSinkManager_CreateCompositorFrameSink_ParamsDataView {
 public:
  FrameSinkManager_CreateCompositorFrameSink_ParamsDataView() = default;

  FrameSinkManager_CreateCompositorFrameSink_ParamsDataView(
      internal::FrameSinkManager_CreateCompositorFrameSink_Params_Data* data,
      mojo::Message* message)
      : data_(data), message_(message) {}

  bool is_null() const { return !data_; }
  inline void GetFrameSinkIdDataView(
      ::viz::mojom::FrameSinkIdDataView* output);

  template <typename UserType>
  [[nodiscard]] bool ReadFrameSinkId(UserType* output) {
    
    auto* pointer = data_->frame_sink_id.Get();
    return mojo::internal::Deserialize<::viz::mojom::FrameSinkIdDataView>(
        pointer, output, message_);
  }
  inline void GetBundleIdDataView(
      ::viz::mojom::FrameSinkBundleIdDataView* output);

  template <typename UserType>
  [[nodiscard]] bool ReadBundleId(UserType* output) {
    
static_assert(
    mojo::internal::IsValidUserTypeForOptionalValue<
        ::viz::mojom::FrameSinkBundleIdDataView, UserType>(),
    "Attempting to read the optional `bundle_id` field into a type which "
    "cannot represent a null value. Either wrap the destination object "
    "with std::optional, ensure that any corresponding "
    "{Struct/Union/Array/String}Traits define the necessary IsNull and "
    "SetToNull methods, or use `MaybeReadBundleId` instead "
    "of `ReadBundleId if you're fine with null values being "
    "silently ignored in this case.");
    auto* pointer = data_->bundle_id.Get();
    return mojo::internal::Deserialize<::viz::mojom::FrameSinkBundleIdDataView>(
        pointer, output, message_);
  }
  template <typename UserType>
  UserType TakeCompositorFrameSink() {
    UserType result;
    bool ret =
        mojo::internal::Deserialize<mojo::InterfaceRequestDataView<::viz::mojom::CompositorFrameSinkInterfaceBase>>(
            &data_->compositor_frame_sink, &result, message_);
    DCHECK(ret);
    return result;
  }
  template <typename UserType>
  UserType TakeCompositorFrameSinkClient() {
    UserType result;
    bool ret =
        mojo::internal::Deserialize<mojo::InterfacePtrDataView<::viz::mojom::CompositorFrameSinkClientInterfaceBase>>(
            &data_->compositor_frame_sink_client, &result, message_);
    DCHECK(ret);
    return result;
  }
  inline void GetConfigDataView(
      ::input::mojom::RenderInputRouterConfigDataView* output);

  template <typename UserType>
  [[nodiscard]] bool ReadConfig(UserType* output) {
    
static_assert(
    mojo::internal::IsValidUserTypeForOptionalValue<
        ::input::mojom::RenderInputRouterConfigDataView, UserType>(),
    "Attempting to read the optional `config` field into a type which "
    "cannot represent a null value. Either wrap the destination object "
    "with std::optional, ensure that any corresponding "
    "{Struct/Union/Array/String}Traits define the necessary IsNull and "
    "SetToNull methods, or use `MaybeReadConfig` instead "
    "of `ReadConfig if you're fine with null values being "
    "silently ignored in this case.");
    auto* pointer = data_->config.Get();
    return mojo::internal::Deserialize<::input::mojom::RenderInputRouterConfigDataView>(
        pointer, output, message_);
  }
 private:
  internal::FrameSinkManager_CreateCompositorFrameSink_Params_Data* data_ = nullptr;
  mojo::Message* message_ = nullptr;
};


class FrameSinkManager_DestroyCompositorFrameSink_ParamsDataView {
 public:
  FrameSinkManager_DestroyCompositorFrameSink_ParamsDataView() = default;

  FrameSinkManager_DestroyCompositorFrameSink_ParamsDataView(
      internal::FrameSinkManager_DestroyCompositorFrameSink_Params_Data* data,
      mojo::Message* message)
      : data_(data), message_(message) {}

  bool is_null() const { return !data_; }
  inline void GetFrameSinkIdDataView(
      ::viz::mojom::FrameSinkIdDataView* output);

  template <typename UserType>
  [[nodiscard]] bool ReadFrameSinkId(UserType* output) {
    
    auto* pointer = data_->frame_sink_id.Get();
    return mojo::internal::Deserialize<::viz::mojom::FrameSinkIdDataView>(
        pointer, output, message_);
  }
 private:
  internal::FrameSinkManager_DestroyCompositorFrameSink_Params_Data* data_ = nullptr;
  mojo::Message* message_ = nullptr;
};


class FrameSinkManager_DestroyCompositorFrameSink_ResponseParamsDataView {
 public:
  FrameSinkManager_DestroyCompositorFrameSink_ResponseParamsDataView() = default;

  FrameSinkManager_DestroyCompositorFrameSink_ResponseParamsDataView(
      internal::FrameSinkManager_DestroyCompositorFrameSink_ResponseParams_Data* data,
      mojo::Message* message)
      : data_(data) {}

  bool is_null() const { return !data_; }
 private:
  internal::FrameSinkManager_DestroyCompositorFrameSink_ResponseParams_Data* data_ = nullptr;
};


class FrameSinkManager_RegisterFrameSinkHierarchy_ParamsDataView {
 public:
  FrameSinkManager_RegisterFrameSinkHierarchy_ParamsDataView() = default;

  FrameSinkManager_RegisterFrameSinkHierarchy_ParamsDataView(
      internal::FrameSinkManager_RegisterFrameSinkHierarchy_Params_Data* data,
      mojo::Message* message)
      : data_(data), message_(message) {}

  bool is_null() const { return !data_; }
  inline void GetParentFrameSinkIdDataView(
      ::viz::mojom::FrameSinkIdDataView* output);

  template <typename UserType>
  [[nodiscard]] bool ReadParentFrameSinkId(UserType* output) {
    
    auto* pointer = data_->parent_frame_sink_id.Get();
    return mojo::internal::Deserialize<::viz::mojom::FrameSinkIdDataView>(
        pointer, output, message_);
  }
  inline void GetChildFrameSinkIdDataView(
      ::viz::mojom::FrameSinkIdDataView* output);

  template <typename UserType>
  [[nodiscard]] bool ReadChildFrameSinkId(UserType* output) {
    
    auto* pointer = data_->child_frame_sink_id.Get();
    return mojo::internal::Deserialize<::viz::mojom::FrameSinkIdDataView>(
        pointer, output, message_);
  }
 private:
  internal::FrameSinkManager_RegisterFrameSinkHierarchy_Params_Data* data_ = nullptr;
  mojo::Message* message_ = nullptr;
};


class FrameSinkManager_UnregisterFrameSinkHierarchy_ParamsDataView {
 public:
  FrameSinkManager_UnregisterFrameSinkHierarchy_ParamsDataView() = default;

  FrameSinkManager_UnregisterFrameSinkHierarchy_ParamsDataView(
      internal::FrameSinkManager_UnregisterFrameSinkHierarchy_Params_Data* data,
      mojo::Message* message)
      : data_(data), message_(message) {}

  bool is_null() const { return !data_; }
  inline void GetParentFrameSinkIdDataView(
      ::viz::mojom::FrameSinkIdDataView* output);

  template <typename UserType>
  [[nodiscard]] bool ReadParentFrameSinkId(UserType* output) {
    
    auto* pointer = data_->parent_frame_sink_id.Get();
    return mojo::internal::Deserialize<::viz::mojom::FrameSinkIdDataView>(
        pointer, output, message_);
  }
  inline void GetChildFrameSinkIdDataView(
      ::viz::mojom::FrameSinkIdDataView* output);

  template <typename UserType>
  [[nodiscard]] bool ReadChildFrameSinkId(UserType* output) {
    
    auto* pointer = data_->child_frame_sink_id.Get();
    return mojo::internal::Deserialize<::viz::mojom::FrameSinkIdDataView>(
        pointer, output, message_);
  }
 private:
  internal::FrameSinkManager_UnregisterFrameSinkHierarchy_Params_Data* data_ = nullptr;
  mojo::Message* message_ = nullptr;
};


class FrameSinkManager_AddVideoDetectorObserver_ParamsDataView {
 public:
  FrameSinkManager_AddVideoDetectorObserver_ParamsDataView() = default;

  FrameSinkManager_AddVideoDetectorObserver_ParamsDataView(
      internal::FrameSinkManager_AddVideoDetectorObserver_Params_Data* data,
      mojo::Message* message)
      : data_(data), message_(message) {}

  bool is_null() const { return !data_; }
  template <typename UserType>
  UserType TakeObserver() {
    UserType result;
    bool ret =
        mojo::internal::Deserialize<mojo::InterfacePtrDataView<::viz::mojom::VideoDetectorObserverInterfaceBase>>(
            &data_->observer, &result, message_);
    DCHECK(ret);
    return result;
  }
 private:
  internal::FrameSinkManager_AddVideoDetectorObserver_Params_Data* data_ = nullptr;
  mojo::Message* message_ = nullptr;
};


class FrameSinkManager_CreateVideoCapturer_ParamsDataView {
 public:
  FrameSinkManager_CreateVideoCapturer_ParamsDataView() = default;

  FrameSinkManager_CreateVideoCapturer_ParamsDataView(
      internal::FrameSinkManager_CreateVideoCapturer_Params_Data* data,
      mojo::Message* message)
      : data_(data), message_(message) {}

  bool is_null() const { return !data_; }
  template <typename UserType>
  UserType TakeReceiver() {
    UserType result;
    bool ret =
        mojo::internal::Deserialize<mojo::InterfaceRequestDataView<::viz::mojom::FrameSinkVideoCapturerInterfaceBase>>(
            &data_->receiver, &result, message_);
    DCHECK(ret);
    return result;
  }
  uint32_t capture_version_source() const {
    return data_->capture_version_source;
  }
 private:
  internal::FrameSinkManager_CreateVideoCapturer_Params_Data* data_ = nullptr;
  mojo::Message* message_ = nullptr;
};


class FrameSinkManager_EvictSurfaces_ParamsDataView {
 public:
  FrameSinkManager_EvictSurfaces_ParamsDataView() = default;

  FrameSinkManager_EvictSurfaces_ParamsDataView(
      internal::FrameSinkManager_EvictSurfaces_Params_Data* data,
      mojo::Message* message)
      : data_(data), message_(message) {}

  bool is_null() const { return !data_; }
  inline void GetSurfaceIdsDataView(
      mojo::ArrayDataView<::viz::mojom::SurfaceIdDataView>* output);

  template <typename UserType>
  [[nodiscard]] bool ReadSurfaceIds(UserType* output) {
    
    auto* pointer = data_->surface_ids.Get();
    return mojo::internal::Deserialize<mojo::ArrayDataView<::viz::mojom::SurfaceIdDataView>>(
        pointer, output, message_);
  }
 private:
  internal::FrameSinkManager_EvictSurfaces_Params_Data* data_ = nullptr;
  mojo::Message* message_ = nullptr;
};


class FrameSinkManager_Throttle_ParamsDataView {
 public:
  FrameSinkManager_Throttle_ParamsDataView() = default;

  FrameSinkManager_Throttle_ParamsDataView(
      internal::FrameSinkManager_Throttle_Params_Data* data,
      mojo::Message* message)
      : data_(data), message_(message) {}

  bool is_null() const { return !data_; }
  inline void GetFrameSinkIdsDataView(
      mojo::ArrayDataView<::viz::mojom::FrameSinkIdDataView>* output);

  template <typename UserType>
  [[nodiscard]] bool ReadFrameSinkIds(UserType* output) {
    
    auto* pointer = data_->frame_sink_ids.Get();
    return mojo::internal::Deserialize<mojo::ArrayDataView<::viz::mojom::FrameSinkIdDataView>>(
        pointer, output, message_);
  }
  inline void GetIntervalDataView(
      ::mojo_base::mojom::TimeDeltaDataView* output);

  template <typename UserType>
  [[nodiscard]] bool ReadInterval(UserType* output) {
    
    auto* pointer = data_->interval.Get();
    return mojo::internal::Deserialize<::mojo_base::mojom::TimeDeltaDataView>(
        pointer, output, message_);
  }
 private:
  internal::FrameSinkManager_Throttle_Params_Data* data_ = nullptr;
  mojo::Message* message_ = nullptr;
};


class FrameSinkManager_StartThrottlingAllFrameSinks_ParamsDataView {
 public:
  FrameSinkManager_StartThrottlingAllFrameSinks_ParamsDataView() = default;

  FrameSinkManager_StartThrottlingAllFrameSinks_ParamsDataView(
      internal::FrameSinkManager_StartThrottlingAllFrameSinks_Params_Data* data,
      mojo::Message* message)
      : data_(data), message_(message) {}

  bool is_null() const { return !data_; }
  inline void GetIntervalDataView(
      ::mojo_base::mojom::TimeDeltaDataView* output);

  template <typename UserType>
  [[nodiscard]] bool ReadInterval(UserType* output) {
    
    auto* pointer = data_->interval.Get();
    return mojo::internal::Deserialize<::mojo_base::mojom::TimeDeltaDataView>(
        pointer, output, message_);
  }
 private:
  internal::FrameSinkManager_StartThrottlingAllFrameSinks_Params_Data* data_ = nullptr;
  mojo::Message* message_ = nullptr;
};


class FrameSinkManager_StopThrottlingAllFrameSinks_ParamsDataView {
 public:
  FrameSinkManager_StopThrottlingAllFrameSinks_ParamsDataView() = default;

  FrameSinkManager_StopThrottlingAllFrameSinks_ParamsDataView(
      internal::FrameSinkManager_StopThrottlingAllFrameSinks_Params_Data* data,
      mojo::Message* message)
      : data_(data) {}

  bool is_null() const { return !data_; }
 private:
  internal::FrameSinkManager_StopThrottlingAllFrameSinks_Params_Data* data_ = nullptr;
};


class FrameSinkManager_RequestCopyOfOutput_ParamsDataView {
 public:
  FrameSinkManager_RequestCopyOfOutput_ParamsDataView() = default;

  FrameSinkManager_RequestCopyOfOutput_ParamsDataView(
      internal::FrameSinkManager_RequestCopyOfOutput_Params_Data* data,
      mojo::Message* message)
      : data_(data), message_(message) {}

  bool is_null() const { return !data_; }
  inline void GetSurfaceIdDataView(
      ::viz::mojom::SurfaceIdDataView* output);

  template <typename UserType>
  [[nodiscard]] bool ReadSurfaceId(UserType* output) {
    
    auto* pointer = data_->surface_id.Get();
    return mojo::internal::Deserialize<::viz::mojom::SurfaceIdDataView>(
        pointer, output, message_);
  }
  inline void GetRequestDataView(
      ::viz::mojom::CopyOutputRequestDataView* output);

  template <typename UserType>
  [[nodiscard]] bool ReadRequest(UserType* output) {
    
    auto* pointer = data_->request.Get();
    return mojo::internal::Deserialize<::viz::mojom::CopyOutputRequestDataView>(
        pointer, output, message_);
  }
  bool capture_exact_surface_id() const {
    return data_->capture_exact_surface_id;
  }
  inline void GetTimeoutDataView(
      ::mojo_base::mojom::TimeDeltaDataView* output);

  template <typename UserType>
  [[nodiscard]] bool ReadTimeout(UserType* output) {
    
    auto* pointer = data_->timeout.Get();
    return mojo::internal::Deserialize<::mojo_base::mojom::TimeDeltaDataView>(
        pointer, output, message_);
  }
 private:
  internal::FrameSinkManager_RequestCopyOfOutput_Params_Data* data_ = nullptr;
  mojo::Message* message_ = nullptr;
};


class FrameSinkManager_CacheBackBuffer_ParamsDataView {
 public:
  FrameSinkManager_CacheBackBuffer_ParamsDataView() = default;

  FrameSinkManager_CacheBackBuffer_ParamsDataView(
      internal::FrameSinkManager_CacheBackBuffer_Params_Data* data,
      mojo::Message* message)
      : data_(data), message_(message) {}

  bool is_null() const { return !data_; }
  uint32_t cache_id() const {
    return data_->cache_id;
  }
  inline void GetRootFrameSinkIdDataView(
      ::viz::mojom::FrameSinkIdDataView* output);

  template <typename UserType>
  [[nodiscard]] bool ReadRootFrameSinkId(UserType* output) {
    
    auto* pointer = data_->root_frame_sink_id.Get();
    return mojo::internal::Deserialize<::viz::mojom::FrameSinkIdDataView>(
        pointer, output, message_);
  }
 private:
  internal::FrameSinkManager_CacheBackBuffer_Params_Data* data_ = nullptr;
  mojo::Message* message_ = nullptr;
};


class FrameSinkManager_EvictBackBuffer_ParamsDataView {
 public:
  FrameSinkManager_EvictBackBuffer_ParamsDataView() = default;

  FrameSinkManager_EvictBackBuffer_ParamsDataView(
      internal::FrameSinkManager_EvictBackBuffer_Params_Data* data,
      mojo::Message* message)
      : data_(data) {}

  bool is_null() const { return !data_; }
  uint32_t cache_id() const {
    return data_->cache_id;
  }
 private:
  internal::FrameSinkManager_EvictBackBuffer_Params_Data* data_ = nullptr;
};


class FrameSinkManager_EvictBackBuffer_ResponseParamsDataView {
 public:
  FrameSinkManager_EvictBackBuffer_ResponseParamsDataView() = default;

  FrameSinkManager_EvictBackBuffer_ResponseParamsDataView(
      internal::FrameSinkManager_EvictBackBuffer_ResponseParams_Data* data,
      mojo::Message* message)
      : data_(data) {}

  bool is_null() const { return !data_; }
 private:
  internal::FrameSinkManager_EvictBackBuffer_ResponseParams_Data* data_ = nullptr;
};


class FrameSinkManager_UpdateDebugRendererSettings_ParamsDataView {
 public:
  FrameSinkManager_UpdateDebugRendererSettings_ParamsDataView() = default;

  FrameSinkManager_UpdateDebugRendererSettings_ParamsDataView(
      internal::FrameSinkManager_UpdateDebugRendererSettings_Params_Data* data,
      mojo::Message* message)
      : data_(data), message_(message) {}

  bool is_null() const { return !data_; }
  inline void GetDebugSettingsDataView(
      ::viz::mojom::DebugRendererSettingsDataView* output);

  template <typename UserType>
  [[nodiscard]] bool ReadDebugSettings(UserType* output) {
    
    auto* pointer = data_->debug_settings.Get();
    return mojo::internal::Deserialize<::viz::mojom::DebugRendererSettingsDataView>(
        pointer, output, message_);
  }
 private:
  internal::FrameSinkManager_UpdateDebugRendererSettings_Params_Data* data_ = nullptr;
  mojo::Message* message_ = nullptr;
};


class FrameSinkManager_ClearUnclaimedViewTransitionResources_ParamsDataView {
 public:
  FrameSinkManager_ClearUnclaimedViewTransitionResources_ParamsDataView() = default;

  FrameSinkManager_ClearUnclaimedViewTransitionResources_ParamsDataView(
      internal::FrameSinkManager_ClearUnclaimedViewTransitionResources_Params_Data* data,
      mojo::Message* message)
      : data_(data), message_(message) {}

  bool is_null() const { return !data_; }
  inline void GetTransitionTokenDataView(
      ::blink::mojom::ViewTransitionTokenDataView* output);

  template <typename UserType>
  [[nodiscard]] bool ReadTransitionToken(UserType* output) {
    
    auto* pointer = data_->transition_token.Get();
    return mojo::internal::Deserialize<::blink::mojom::ViewTransitionTokenDataView>(
        pointer, output, message_);
  }
 private:
  internal::FrameSinkManager_ClearUnclaimedViewTransitionResources_Params_Data* data_ = nullptr;
  mojo::Message* message_ = nullptr;
};


class FrameSinkManager_CreateMetricsRecorderForTest_ParamsDataView {
 public:
  FrameSinkManager_CreateMetricsRecorderForTest_ParamsDataView() = default;

  FrameSinkManager_CreateMetricsRecorderForTest_ParamsDataView(
      internal::FrameSinkManager_CreateMetricsRecorderForTest_Params_Data* data,
      mojo::Message* message)
      : data_(data), message_(message) {}

  bool is_null() const { return !data_; }
  template <typename UserType>
  UserType TakeReceiver() {
    UserType result;
    bool ret =
        mojo::internal::Deserialize<mojo::InterfaceRequestDataView<::viz::mojom::FrameSinksMetricsRecorderInterfaceBase>>(
            &data_->receiver, &result, message_);
    DCHECK(ret);
    return result;
  }
 private:
  internal::FrameSinkManager_CreateMetricsRecorderForTest_Params_Data* data_ = nullptr;
  mojo::Message* message_ = nullptr;
};


class FrameSinkManager_EnableFrameSinkManagerTestApi_ParamsDataView {
 public:
  FrameSinkManager_EnableFrameSinkManagerTestApi_ParamsDataView() = default;

  FrameSinkManager_EnableFrameSinkManagerTestApi_ParamsDataView(
      internal::FrameSinkManager_EnableFrameSinkManagerTestApi_Params_Data* data,
      mojo::Message* message)
      : data_(data), message_(message) {}

  bool is_null() const { return !data_; }
  template <typename UserType>
  UserType TakeReceiver() {
    UserType result;
    bool ret =
        mojo::internal::Deserialize<mojo::InterfaceRequestDataView<::viz::mojom::FrameSinkManagerTestApiInterfaceBase>>(
            &data_->receiver, &result, message_);
    DCHECK(ret);
    return result;
  }
 private:
  internal::FrameSinkManager_EnableFrameSinkManagerTestApi_Params_Data* data_ = nullptr;
  mojo::Message* message_ = nullptr;
};


class FrameSinkManager_SetupRendererInputRouterDelegateRegistry_ParamsDataView {
 public:
  FrameSinkManager_SetupRendererInputRouterDelegateRegistry_ParamsDataView() = default;

  FrameSinkManager_SetupRendererInputRouterDelegateRegistry_ParamsDataView(
      internal::FrameSinkManager_SetupRendererInputRouterDelegateRegistry_Params_Data* data,
      mojo::Message* message)
      : data_(data), message_(message) {}

  bool is_null() const { return !data_; }
  template <typename UserType>
  UserType TakeReceiver() {
    UserType result;
    bool ret =
        mojo::internal::Deserialize<mojo::InterfaceRequestDataView<::viz::mojom::RendererInputRouterDelegateRegistryInterfaceBase>>(
            &data_->receiver, &result, message_);
    DCHECK(ret);
    return result;
  }
 private:
  internal::FrameSinkManager_SetupRendererInputRouterDelegateRegistry_Params_Data* data_ = nullptr;
  mojo::Message* message_ = nullptr;
};


class FrameSinkManager_NotifyRendererBlockStateChanged_ParamsDataView {
 public:
  FrameSinkManager_NotifyRendererBlockStateChanged_ParamsDataView() = default;

  FrameSinkManager_NotifyRendererBlockStateChanged_ParamsDataView(
      internal::FrameSinkManager_NotifyRendererBlockStateChanged_Params_Data* data,
      mojo::Message* message)
      : data_(data), message_(message) {}

  bool is_null() const { return !data_; }
  bool blocked() const {
    return data_->blocked;
  }
  inline void GetRenderInputRoutersDataView(
      mojo::ArrayDataView<::viz::mojom::FrameSinkIdDataView>* output);

  template <typename UserType>
  [[nodiscard]] bool ReadRenderInputRouters(UserType* output) {
    
    auto* pointer = data_->render_input_routers.Get();
    return mojo::internal::Deserialize<mojo::ArrayDataView<::viz::mojom::FrameSinkIdDataView>>(
        pointer, output, message_);
  }
 private:
  internal::FrameSinkManager_NotifyRendererBlockStateChanged_Params_Data* data_ = nullptr;
  mojo::Message* message_ = nullptr;
};


class FrameSinkManager_RequestInputBack_ParamsDataView {
 public:
  FrameSinkManager_RequestInputBack_ParamsDataView() = default;

  FrameSinkManager_RequestInputBack_ParamsDataView(
      internal::FrameSinkManager_RequestInputBack_Params_Data* data,
      mojo::Message* message)
      : data_(data) {}

  bool is_null() const { return !data_; }
 private:
  internal::FrameSinkManager_RequestInputBack_Params_Data* data_ = nullptr;
};


class FrameSinkManagerClient_OnFirstSurfaceActivation_ParamsDataView {
 public:
  FrameSinkManagerClient_OnFirstSurfaceActivation_ParamsDataView() = default;

  FrameSinkManagerClient_OnFirstSurfaceActivation_ParamsDataView(
      internal::FrameSinkManagerClient_OnFirstSurfaceActivation_Params_Data* data,
      mojo::Message* message)
      : data_(data), message_(message) {}

  bool is_null() const { return !data_; }
  inline void GetSurfaceInfoDataView(
      ::viz::mojom::SurfaceInfoDataView* output);

  template <typename UserType>
  [[nodiscard]] bool ReadSurfaceInfo(UserType* output) {
    
    auto* pointer = data_->surface_info.Get();
    return mojo::internal::Deserialize<::viz::mojom::SurfaceInfoDataView>(
        pointer, output, message_);
  }
 private:
  internal::FrameSinkManagerClient_OnFirstSurfaceActivation_Params_Data* data_ = nullptr;
  mojo::Message* message_ = nullptr;
};


class FrameSinkManagerClient_OnAggregatedHitTestRegionListUpdated_ParamsDataView {
 public:
  FrameSinkManagerClient_OnAggregatedHitTestRegionListUpdated_ParamsDataView() = default;

  FrameSinkManagerClient_OnAggregatedHitTestRegionListUpdated_ParamsDataView(
      internal::FrameSinkManagerClient_OnAggregatedHitTestRegionListUpdated_Params_Data* data,
      mojo::Message* message)
      : data_(data), message_(message) {}

  bool is_null() const { return !data_; }
  inline void GetFrameSinkIdDataView(
      ::viz::mojom::FrameSinkIdDataView* output);

  template <typename UserType>
  [[nodiscard]] bool ReadFrameSinkId(UserType* output) {
    
    auto* pointer = data_->frame_sink_id.Get();
    return mojo::internal::Deserialize<::viz::mojom::FrameSinkIdDataView>(
        pointer, output, message_);
  }
  inline void GetHitTestDataDataView(
      mojo::ArrayDataView<::viz::mojom::AggregatedHitTestRegionDataView>* output);

  template <typename UserType>
  [[nodiscard]] bool ReadHitTestData(UserType* output) {
    
    auto* pointer = data_->hit_test_data.Get();
    return mojo::internal::Deserialize<mojo::ArrayDataView<::viz::mojom::AggregatedHitTestRegionDataView>>(
        pointer, output, message_);
  }
 private:
  internal::FrameSinkManagerClient_OnAggregatedHitTestRegionListUpdated_Params_Data* data_ = nullptr;
  mojo::Message* message_ = nullptr;
};


class FrameSinkManagerClient_OnFrameTokenChanged_ParamsDataView {
 public:
  FrameSinkManagerClient_OnFrameTokenChanged_ParamsDataView() = default;

  FrameSinkManagerClient_OnFrameTokenChanged_ParamsDataView(
      internal::FrameSinkManagerClient_OnFrameTokenChanged_Params_Data* data,
      mojo::Message* message)
      : data_(data), message_(message) {}

  bool is_null() const { return !data_; }
  inline void GetFrameSinkIdDataView(
      ::viz::mojom::FrameSinkIdDataView* output);

  template <typename UserType>
  [[nodiscard]] bool ReadFrameSinkId(UserType* output) {
    
    auto* pointer = data_->frame_sink_id.Get();
    return mojo::internal::Deserialize<::viz::mojom::FrameSinkIdDataView>(
        pointer, output, message_);
  }
  uint32_t frame_token() const {
    return data_->frame_token;
  }
  inline void GetActivationTimeDataView(
      ::mojo_base::mojom::TimeTicksDataView* output);

  template <typename UserType>
  [[nodiscard]] bool ReadActivationTime(UserType* output) {
    
    auto* pointer = data_->activation_time.Get();
    return mojo::internal::Deserialize<::mojo_base::mojom::TimeTicksDataView>(
        pointer, output, message_);
  }
 private:
  internal::FrameSinkManagerClient_OnFrameTokenChanged_Params_Data* data_ = nullptr;
  mojo::Message* message_ = nullptr;
};


class FrameSinkManagerClient_VerifyThreadIdsDoNotBelongToHost_ParamsDataView {
 public:
  FrameSinkManagerClient_VerifyThreadIdsDoNotBelongToHost_ParamsDataView() = default;

  FrameSinkManagerClient_VerifyThreadIdsDoNotBelongToHost_ParamsDataView(
      internal::FrameSinkManagerClient_VerifyThreadIdsDoNotBelongToHost_Params_Data* data,
      mojo::Message* message)
      : data_(data), message_(message) {}

  bool is_null() const { return !data_; }
  inline void GetThreadIdsDataView(
      mojo::ArrayDataView<int32_t>* output);

  template <typename UserType>
  [[nodiscard]] bool ReadThreadIds(UserType* output) {
    
    auto* pointer = data_->thread_ids.Get();
    return mojo::internal::Deserialize<mojo::ArrayDataView<int32_t>>(
        pointer, output, message_);
  }
 private:
  internal::FrameSinkManagerClient_VerifyThreadIdsDoNotBelongToHost_Params_Data* data_ = nullptr;
  mojo::Message* message_ = nullptr;
};


class FrameSinkManagerClient_VerifyThreadIdsDoNotBelongToHost_ResponseParamsDataView {
 public:
  FrameSinkManagerClient_VerifyThreadIdsDoNotBelongToHost_ResponseParamsDataView() = default;

  FrameSinkManagerClient_VerifyThreadIdsDoNotBelongToHost_ResponseParamsDataView(
      internal::FrameSinkManagerClient_VerifyThreadIdsDoNotBelongToHost_ResponseParams_Data* data,
      mojo::Message* message)
      : data_(data) {}

  bool is_null() const { return !data_; }
  bool passed_verification() const {
    return data_->passed_verification;
  }
 private:
  internal::FrameSinkManagerClient_VerifyThreadIdsDoNotBelongToHost_ResponseParams_Data* data_ = nullptr;
};


class FrameSinkManagerClient_OnScreenshotCaptured_ParamsDataView {
 public:
  FrameSinkManagerClient_OnScreenshotCaptured_ParamsDataView() = default;

  FrameSinkManagerClient_OnScreenshotCaptured_ParamsDataView(
      internal::FrameSinkManagerClient_OnScreenshotCaptured_Params_Data* data,
      mojo::Message* message)
      : data_(data), message_(message) {}

  bool is_null() const { return !data_; }
  inline void GetDestinationTokenDataView(
      ::blink::mojom::SameDocNavigationScreenshotDestinationTokenDataView* output);

  template <typename UserType>
  [[nodiscard]] bool ReadDestinationToken(UserType* output) {
    
    auto* pointer = data_->destination_token.Get();
    return mojo::internal::Deserialize<::blink::mojom::SameDocNavigationScreenshotDestinationTokenDataView>(
        pointer, output, message_);
  }
  inline void GetCopyOutputResultDataView(
      ::viz::mojom::CopyOutputResultDataView* output);

  template <typename UserType>
  [[nodiscard]] bool ReadCopyOutputResult(UserType* output) {
    
    auto* pointer = data_->copy_output_result.Get();
    return mojo::internal::Deserialize<::viz::mojom::CopyOutputResultDataView>(
        pointer, output, message_);
  }
 private:
  internal::FrameSinkManagerClient_OnScreenshotCaptured_Params_Data* data_ = nullptr;
  mojo::Message* message_ = nullptr;
};


class FrameSinkManagerClient_OnVizTouchStateAvailable_ParamsDataView {
 public:
  FrameSinkManagerClient_OnVizTouchStateAvailable_ParamsDataView() = default;

  FrameSinkManagerClient_OnVizTouchStateAvailable_ParamsDataView(
      internal::FrameSinkManagerClient_OnVizTouchStateAvailable_Params_Data* data,
      mojo::Message* message)
      : data_(data), message_(message) {}

  bool is_null() const { return !data_; }
  inline void GetRegionDataView(
      ::mojo_base::mojom::ReadOnlySharedMemoryRegionDataView* output);

  template <typename UserType>
  [[nodiscard]] bool ReadRegion(UserType* output) {
    
    auto* pointer = data_->region.Get();
    return mojo::internal::Deserialize<::mojo_base::mojom::ReadOnlySharedMemoryRegionDataView>(
        pointer, output, message_);
  }
 private:
  internal::FrameSinkManagerClient_OnVizTouchStateAvailable_Params_Data* data_ = nullptr;
  mojo::Message* message_ = nullptr;
};


class FrameSinkManagerClient_OnViewTransitionResourcesCaptured_ParamsDataView {
 public:
  FrameSinkManagerClient_OnViewTransitionResourcesCaptured_ParamsDataView() = default;

  FrameSinkManagerClient_OnViewTransitionResourcesCaptured_ParamsDataView(
      internal::FrameSinkManagerClient_OnViewTransitionResourcesCaptured_Params_Data* data,
      mojo::Message* message)
      : data_(data), message_(message) {}

  bool is_null() const { return !data_; }
  inline void GetTransitionTokenDataView(
      ::blink::mojom::ViewTransitionTokenDataView* output);

  template <typename UserType>
  [[nodiscard]] bool ReadTransitionToken(UserType* output) {
    
    auto* pointer = data_->transition_token.Get();
    return mojo::internal::Deserialize<::blink::mojom::ViewTransitionTokenDataView>(
        pointer, output, message_);
  }
 private:
  internal::FrameSinkManagerClient_OnViewTransitionResourcesCaptured_Params_Data* data_ = nullptr;
  mojo::Message* message_ = nullptr;
};


class RendererInputRouterDelegateRegistry_SetupRenderInputRouterDelegateConnection_ParamsDataView {
 public:
  RendererInputRouterDelegateRegistry_SetupRenderInputRouterDelegateConnection_ParamsDataView() = default;

  RendererInputRouterDelegateRegistry_SetupRenderInputRouterDelegateConnection_ParamsDataView(
      internal::RendererInputRouterDelegateRegistry_SetupRenderInputRouterDelegateConnection_Params_Data* data,
      mojo::Message* message)
      : data_(data), message_(message) {}

  bool is_null() const { return !data_; }
  inline void GetIdDataView(
      ::viz::mojom::FrameSinkIdDataView* output);

  template <typename UserType>
  [[nodiscard]] bool ReadId(UserType* output) {
    
    auto* pointer = data_->id.Get();
    return mojo::internal::Deserialize<::viz::mojom::FrameSinkIdDataView>(
        pointer, output, message_);
  }
  template <typename UserType>
  UserType TakeRirDelegateClientRemote() {
    UserType result;
    bool ret =
        mojo::internal::Deserialize<::input::mojom::RenderInputRouterDelegateClientAssociatedPtrInfoDataView>(
            &data_->rir_delegate_client_remote, &result, message_);
    DCHECK(ret);
    return result;
  }
  template <typename UserType>
  UserType TakeRirDelegateReceiver() {
    UserType result;
    bool ret =
        mojo::internal::Deserialize<::input::mojom::RenderInputRouterDelegateAssociatedRequestDataView>(
            &data_->rir_delegate_receiver, &result, message_);
    DCHECK(ret);
    return result;
  }
 private:
  internal::RendererInputRouterDelegateRegistry_SetupRenderInputRouterDelegateConnection_Params_Data* data_ = nullptr;
  mojo::Message* message_ = nullptr;
};

inline void FrameSinkManager_RegisterFrameSinkId_ParamsDataView::GetFrameSinkIdDataView(
    ::viz::mojom::FrameSinkIdDataView* output) {
  auto pointer = data_->frame_sink_id.Get();
  *output = ::viz::mojom::FrameSinkIdDataView(pointer, message_);
}


inline void FrameSinkManager_InvalidateFrameSinkId_ParamsDataView::GetFrameSinkIdDataView(
    ::viz::mojom::FrameSinkIdDataView* output) {
  auto pointer = data_->frame_sink_id.Get();
  *output = ::viz::mojom::FrameSinkIdDataView(pointer, message_);
}




inline void FrameSinkManager_SetFrameSinkDebugLabel_ParamsDataView::GetFrameSinkIdDataView(
    ::viz::mojom::FrameSinkIdDataView* output) {
  auto pointer = data_->frame_sink_id.Get();
  *output = ::viz::mojom::FrameSinkIdDataView(pointer, message_);
}
inline void FrameSinkManager_SetFrameSinkDebugLabel_ParamsDataView::GetDebugLabelDataView(
    mojo::StringDataView* output) {
  auto pointer = data_->debug_label.Get();
  *output = mojo::StringDataView(pointer, message_);
}


inline void FrameSinkManager_CreateRootCompositorFrameSink_ParamsDataView::GetParamsDataView(
    RootCompositorFrameSinkParamsDataView* output) {
  auto pointer = data_->params.Get();
  *output = RootCompositorFrameSinkParamsDataView(pointer, message_);
}


inline void FrameSinkManager_CreateFrameSinkBundle_ParamsDataView::GetBundleIdDataView(
    ::viz::mojom::FrameSinkBundleIdDataView* output) {
  auto pointer = data_->bundle_id.Get();
  *output = ::viz::mojom::FrameSinkBundleIdDataView(pointer, message_);
}


inline void FrameSinkManager_CreateCompositorFrameSink_ParamsDataView::GetFrameSinkIdDataView(
    ::viz::mojom::FrameSinkIdDataView* output) {
  auto pointer = data_->frame_sink_id.Get();
  *output = ::viz::mojom::FrameSinkIdDataView(pointer, message_);
}
inline void FrameSinkManager_CreateCompositorFrameSink_ParamsDataView::GetBundleIdDataView(
    ::viz::mojom::FrameSinkBundleIdDataView* output) {
  auto pointer = data_->bundle_id.Get();
  *output = ::viz::mojom::FrameSinkBundleIdDataView(pointer, message_);
}
inline void FrameSinkManager_CreateCompositorFrameSink_ParamsDataView::GetConfigDataView(
    ::input::mojom::RenderInputRouterConfigDataView* output) {
  auto pointer = data_->config.Get();
  *output = ::input::mojom::RenderInputRouterConfigDataView(pointer, message_);
}


inline void FrameSinkManager_DestroyCompositorFrameSink_ParamsDataView::GetFrameSinkIdDataView(
    ::viz::mojom::FrameSinkIdDataView* output) {
  auto pointer = data_->frame_sink_id.Get();
  *output = ::viz::mojom::FrameSinkIdDataView(pointer, message_);
}




inline void FrameSinkManager_RegisterFrameSinkHierarchy_ParamsDataView::GetParentFrameSinkIdDataView(
    ::viz::mojom::FrameSinkIdDataView* output) {
  auto pointer = data_->parent_frame_sink_id.Get();
  *output = ::viz::mojom::FrameSinkIdDataView(pointer, message_);
}
inline void FrameSinkManager_RegisterFrameSinkHierarchy_ParamsDataView::GetChildFrameSinkIdDataView(
    ::viz::mojom::FrameSinkIdDataView* output) {
  auto pointer = data_->child_frame_sink_id.Get();
  *output = ::viz::mojom::FrameSinkIdDataView(pointer, message_);
}


inline void FrameSinkManager_UnregisterFrameSinkHierarchy_ParamsDataView::GetParentFrameSinkIdDataView(
    ::viz::mojom::FrameSinkIdDataView* output) {
  auto pointer = data_->parent_frame_sink_id.Get();
  *output = ::viz::mojom::FrameSinkIdDataView(pointer, message_);
}
inline void FrameSinkManager_UnregisterFrameSinkHierarchy_ParamsDataView::GetChildFrameSinkIdDataView(
    ::viz::mojom::FrameSinkIdDataView* output) {
  auto pointer = data_->child_frame_sink_id.Get();
  *output = ::viz::mojom::FrameSinkIdDataView(pointer, message_);
}






inline void FrameSinkManager_EvictSurfaces_ParamsDataView::GetSurfaceIdsDataView(
    mojo::ArrayDataView<::viz::mojom::SurfaceIdDataView>* output) {
  auto pointer = data_->surface_ids.Get();
  *output = mojo::ArrayDataView<::viz::mojom::SurfaceIdDataView>(pointer, message_);
}


inline void FrameSinkManager_Throttle_ParamsDataView::GetFrameSinkIdsDataView(
    mojo::ArrayDataView<::viz::mojom::FrameSinkIdDataView>* output) {
  auto pointer = data_->frame_sink_ids.Get();
  *output = mojo::ArrayDataView<::viz::mojom::FrameSinkIdDataView>(pointer, message_);
}
inline void FrameSinkManager_Throttle_ParamsDataView::GetIntervalDataView(
    ::mojo_base::mojom::TimeDeltaDataView* output) {
  auto pointer = data_->interval.Get();
  *output = ::mojo_base::mojom::TimeDeltaDataView(pointer, message_);
}


inline void FrameSinkManager_StartThrottlingAllFrameSinks_ParamsDataView::GetIntervalDataView(
    ::mojo_base::mojom::TimeDeltaDataView* output) {
  auto pointer = data_->interval.Get();
  *output = ::mojo_base::mojom::TimeDeltaDataView(pointer, message_);
}




inline void FrameSinkManager_RequestCopyOfOutput_ParamsDataView::GetSurfaceIdDataView(
    ::viz::mojom::SurfaceIdDataView* output) {
  auto pointer = data_->surface_id.Get();
  *output = ::viz::mojom::SurfaceIdDataView(pointer, message_);
}
inline void FrameSinkManager_RequestCopyOfOutput_ParamsDataView::GetRequestDataView(
    ::viz::mojom::CopyOutputRequestDataView* output) {
  auto pointer = data_->request.Get();
  *output = ::viz::mojom::CopyOutputRequestDataView(pointer, message_);
}
inline void FrameSinkManager_RequestCopyOfOutput_ParamsDataView::GetTimeoutDataView(
    ::mojo_base::mojom::TimeDeltaDataView* output) {
  auto pointer = data_->timeout.Get();
  *output = ::mojo_base::mojom::TimeDeltaDataView(pointer, message_);
}


inline void FrameSinkManager_CacheBackBuffer_ParamsDataView::GetRootFrameSinkIdDataView(
    ::viz::mojom::FrameSinkIdDataView* output) {
  auto pointer = data_->root_frame_sink_id.Get();
  *output = ::viz::mojom::FrameSinkIdDataView(pointer, message_);
}






inline void FrameSinkManager_UpdateDebugRendererSettings_ParamsDataView::GetDebugSettingsDataView(
    ::viz::mojom::DebugRendererSettingsDataView* output) {
  auto pointer = data_->debug_settings.Get();
  *output = ::viz::mojom::DebugRendererSettingsDataView(pointer, message_);
}


inline void FrameSinkManager_ClearUnclaimedViewTransitionResources_ParamsDataView::GetTransitionTokenDataView(
    ::blink::mojom::ViewTransitionTokenDataView* output) {
  auto pointer = data_->transition_token.Get();
  *output = ::blink::mojom::ViewTransitionTokenDataView(pointer, message_);
}








inline void FrameSinkManager_NotifyRendererBlockStateChanged_ParamsDataView::GetRenderInputRoutersDataView(
    mojo::ArrayDataView<::viz::mojom::FrameSinkIdDataView>* output) {
  auto pointer = data_->render_input_routers.Get();
  *output = mojo::ArrayDataView<::viz::mojom::FrameSinkIdDataView>(pointer, message_);
}




inline void FrameSinkManagerClient_OnFirstSurfaceActivation_ParamsDataView::GetSurfaceInfoDataView(
    ::viz::mojom::SurfaceInfoDataView* output) {
  auto pointer = data_->surface_info.Get();
  *output = ::viz::mojom::SurfaceInfoDataView(pointer, message_);
}


inline void FrameSinkManagerClient_OnAggregatedHitTestRegionListUpdated_ParamsDataView::GetFrameSinkIdDataView(
    ::viz::mojom::FrameSinkIdDataView* output) {
  auto pointer = data_->frame_sink_id.Get();
  *output = ::viz::mojom::FrameSinkIdDataView(pointer, message_);
}
inline void FrameSinkManagerClient_OnAggregatedHitTestRegionListUpdated_ParamsDataView::GetHitTestDataDataView(
    mojo::ArrayDataView<::viz::mojom::AggregatedHitTestRegionDataView>* output) {
  auto pointer = data_->hit_test_data.Get();
  *output = mojo::ArrayDataView<::viz::mojom::AggregatedHitTestRegionDataView>(pointer, message_);
}


inline void FrameSinkManagerClient_OnFrameTokenChanged_ParamsDataView::GetFrameSinkIdDataView(
    ::viz::mojom::FrameSinkIdDataView* output) {
  auto pointer = data_->frame_sink_id.Get();
  *output = ::viz::mojom::FrameSinkIdDataView(pointer, message_);
}
inline void FrameSinkManagerClient_OnFrameTokenChanged_ParamsDataView::GetActivationTimeDataView(
    ::mojo_base::mojom::TimeTicksDataView* output) {
  auto pointer = data_->activation_time.Get();
  *output = ::mojo_base::mojom::TimeTicksDataView(pointer, message_);
}


inline void FrameSinkManagerClient_VerifyThreadIdsDoNotBelongToHost_ParamsDataView::GetThreadIdsDataView(
    mojo::ArrayDataView<int32_t>* output) {
  auto pointer = data_->thread_ids.Get();
  *output = mojo::ArrayDataView<int32_t>(pointer, message_);
}




inline void FrameSinkManagerClient_OnScreenshotCaptured_ParamsDataView::GetDestinationTokenDataView(
    ::blink::mojom::SameDocNavigationScreenshotDestinationTokenDataView* output) {
  auto pointer = data_->destination_token.Get();
  *output = ::blink::mojom::SameDocNavigationScreenshotDestinationTokenDataView(pointer, message_);
}
inline void FrameSinkManagerClient_OnScreenshotCaptured_ParamsDataView::GetCopyOutputResultDataView(
    ::viz::mojom::CopyOutputResultDataView* output) {
  auto pointer = data_->copy_output_result.Get();
  *output = ::viz::mojom::CopyOutputResultDataView(pointer, message_);
}


inline void FrameSinkManagerClient_OnVizTouchStateAvailable_ParamsDataView::GetRegionDataView(
    ::mojo_base::mojom::ReadOnlySharedMemoryRegionDataView* output) {
  auto pointer = data_->region.Get();
  *output = ::mojo_base::mojom::ReadOnlySharedMemoryRegionDataView(pointer, message_);
}


inline void FrameSinkManagerClient_OnViewTransitionResourcesCaptured_ParamsDataView::GetTransitionTokenDataView(
    ::blink::mojom::ViewTransitionTokenDataView* output) {
  auto pointer = data_->transition_token.Get();
  *output = ::blink::mojom::ViewTransitionTokenDataView(pointer, message_);
}


inline void RendererInputRouterDelegateRegistry_SetupRenderInputRouterDelegateConnection_ParamsDataView::GetIdDataView(
    ::viz::mojom::FrameSinkIdDataView* output) {
  auto pointer = data_->id.Get();
  *output = ::viz::mojom::FrameSinkIdDataView(pointer, message_);
}



}  // viz::mojom

#if defined(__clang__)
#pragma clang diagnostic pop
#endif

#endif  // SERVICES_VIZ_PRIVILEGED_MOJOM_COMPOSITING_FRAME_SINK_MANAGER_MOJOM_PARAMS_DATA_H_