#if defined(__clang__)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wunused-private-field"
#endif
#include "services/viz/public/mojom/compositing/layer.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/layer.mojom-params-data.h"
#include "services/viz/public/mojom/compositing/layer.mojom-shared-message-ids.h"
#include "services/viz/public/mojom/compositing/layer.mojom-import-headers.h"
#include "services/viz/public/mojom/compositing/layer.mojom-test-utils.h"
namespace viz::mojom {
Layer::Layer()
: … { … }
Layer::Layer(
int64_t id_in,
::cc::mojom::LayerType type_in,
const ::gfx::Size& bounds_in,
bool contents_opaque_in,
bool contents_opaque_for_text_in,
bool is_drawable_in,
const ::SkColor4f& background_color_in,
const ::SkColor4f& safe_opaque_background_color_in,
::cc::ElementId element_id_in,
const ::gfx::Rect& update_rect_in,
const ::gfx::Vector2dF& offset_to_transform_parent_in,
int32_t transform_tree_index_in,
int32_t clip_tree_index_in,
int32_t effect_tree_index_in,
int32_t scroll_tree_index_in)
: … { … }
Layer::~Layer() = default;
void Layer::WriteIntoTrace(
perfetto::TracedValue traced_context) const { … }
bool Layer::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
AnchorPositionScrollData::AnchorPositionScrollData()
: … { … }
AnchorPositionScrollData::AnchorPositionScrollData(
std::vector<::cc::ElementId> adjustment_container_ids_in,
const ::gfx::Vector2d& accumulated_scroll_origin_in,
bool needs_scroll_adjustment_in_x_in,
bool needs_scroll_adjustment_in_y_in)
: … { … }
AnchorPositionScrollData::~AnchorPositionScrollData() = default;
void AnchorPositionScrollData::WriteIntoTrace(
perfetto::TracedValue traced_context) const { … }
bool AnchorPositionScrollData::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
StickyPositionNodeData::StickyPositionNodeData()
: … { … }
StickyPositionNodeData::StickyPositionNodeData(
int32_t scroll_ancestor_in,
bool is_anchored_left_in,
bool is_anchored_right_in,
bool is_anchored_top_in,
bool is_anchored_bottom_in,
float left_offset_in,
float right_offset_in,
float top_offset_in,
float bottom_offset_in,
const ::gfx::RectF& constraint_box_rect_in,
const ::gfx::RectF& scroll_container_relative_sticky_box_rect_in,
const ::gfx::RectF& scroll_container_relative_containing_block_rect_in,
int32_t nearest_node_shifting_sticky_box_in,
int32_t nearest_node_shifting_containing_block_in,
const ::gfx::Vector2dF& total_sticky_box_sticky_offset_in,
const ::gfx::Vector2dF& total_containing_block_sticky_offset_in)
: … { … }
StickyPositionNodeData::~StickyPositionNodeData() = default;
void StickyPositionNodeData::WriteIntoTrace(
perfetto::TracedValue traced_context) const { … }
bool StickyPositionNodeData::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
TransformTreeUpdate::TransformTreeUpdate()
: … { … }
TransformTreeUpdate::TransformTreeUpdate(
float page_scale_factor_in,
float device_scale_factor_in,
float device_transform_scale_factor_in,
std::vector<int32_t> nodes_affected_by_outer_viewport_bounds_delta_in,
std::vector<StickyPositionNodeDataPtr> sticky_position_data_in,
std::vector<AnchorPositionScrollDataPtr> anchor_position_scroll_data_in)
: … { … }
TransformTreeUpdate::~TransformTreeUpdate() = default;
void TransformTreeUpdate::WriteIntoTrace(
perfetto::TracedValue traced_context) const { … }
bool TransformTreeUpdate::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
TransformNode::TransformNode()
: … { … }
TransformNode::TransformNode(
int32_t id_in,
int32_t parent_id_in,
int32_t parent_frame_id_in,
::cc::ElementId element_id_in,
const ::gfx::Transform& local_in,
const ::gfx::Point3F& origin_in,
const ::gfx::Vector2dF& post_translation_in,
const ::gfx::PointF& scroll_offset_in,
const ::gfx::Vector2dF& snap_amount_in,
std::optional<uint32_t> sticky_position_constraint_id_in,
std::optional<uint32_t> anchor_position_scroll_data_id_in,
int32_t sorting_context_id_in,
bool needs_local_transform_update_in,
bool has_potential_animation_in,
bool is_currently_animating_in,
bool flattens_inherited_transform_in,
bool scrolls_in,
bool should_undo_overscroll_in,
bool should_be_snapped_in,
bool moved_by_outer_viewport_bounds_delta_y_in,
bool in_subtree_of_page_scale_layer_in,
bool transform_changed_in,
bool delegates_to_parent_for_backface_in,
bool will_change_transform_in,
::cc::ElementId visible_frame_element_id_in)
: … { … }
TransformNode::~TransformNode() = default;
void TransformNode::WriteIntoTrace(
perfetto::TracedValue traced_context) const { … }
bool TransformNode::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
ClipNode::ClipNode()
: … { … }
ClipNode::ClipNode(
int32_t id_in,
int32_t parent_id_in,
int32_t transform_id_in,
const ::gfx::RectF& clip_in,
int32_t pixel_moving_filter_id_in)
: … { … }
ClipNode::~ClipNode() = default;
void ClipNode::WriteIntoTrace(
perfetto::TracedValue traced_context) const { … }
bool ClipNode::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
EffectNode::EffectNode()
: … { … }
EffectNode::EffectNode(
int32_t id_in,
int32_t parent_id_in,
int32_t transform_id_in,
int32_t clip_id_in,
::cc::ElementId element_id_in,
float opacity_in,
bool has_render_surface_in,
const ::gfx::Vector2dF& surface_contents_scale_in,
uint32_t blend_mode_in,
int32_t target_id_in)
: … { … }
EffectNode::~EffectNode() = default;
void EffectNode::WriteIntoTrace(
perfetto::TracedValue traced_context) const { … }
bool EffectNode::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
ScrollNode::ScrollNode()
: … { … }
ScrollNode::ScrollNode(
int32_t id_in,
int32_t parent_id_in,
int32_t transform_id_in,
const ::gfx::Size& container_bounds_in,
const ::gfx::Size& bounds_in,
::cc::ElementId element_id_in,
bool max_scroll_offset_affected_by_page_scale_in,
bool scrolls_inner_viewport_in,
bool scrolls_outer_viewport_in,
bool prevent_viewport_scrolling_from_inner_in,
bool user_scrollable_horizontal_in,
bool user_scrollable_vertical_in,
bool is_composited_in)
: … { … }
ScrollNode::~ScrollNode() = default;
void ScrollNode::WriteIntoTrace(
perfetto::TracedValue traced_context) const { … }
bool ScrollNode::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
}
namespace mojo {
bool StructTraits<::viz::mojom::Layer::DataView, ::viz::mojom::LayerPtr>::Read(
::viz::mojom::Layer::DataView input,
::viz::mojom::LayerPtr* output) { … }
bool StructTraits<::viz::mojom::AnchorPositionScrollData::DataView, ::viz::mojom::AnchorPositionScrollDataPtr>::Read(
::viz::mojom::AnchorPositionScrollData::DataView input,
::viz::mojom::AnchorPositionScrollDataPtr* output) { … }
bool StructTraits<::viz::mojom::StickyPositionNodeData::DataView, ::viz::mojom::StickyPositionNodeDataPtr>::Read(
::viz::mojom::StickyPositionNodeData::DataView input,
::viz::mojom::StickyPositionNodeDataPtr* output) { … }
bool StructTraits<::viz::mojom::TransformTreeUpdate::DataView, ::viz::mojom::TransformTreeUpdatePtr>::Read(
::viz::mojom::TransformTreeUpdate::DataView input,
::viz::mojom::TransformTreeUpdatePtr* output) { … }
bool StructTraits<::viz::mojom::TransformNode::DataView, ::viz::mojom::TransformNodePtr>::Read(
::viz::mojom::TransformNode::DataView input,
::viz::mojom::TransformNodePtr* output) { … }
bool StructTraits<::viz::mojom::ClipNode::DataView, ::viz::mojom::ClipNodePtr>::Read(
::viz::mojom::ClipNode::DataView input,
::viz::mojom::ClipNodePtr* output) { … }
bool StructTraits<::viz::mojom::EffectNode::DataView, ::viz::mojom::EffectNodePtr>::Read(
::viz::mojom::EffectNode::DataView input,
::viz::mojom::EffectNodePtr* output) { … }
bool StructTraits<::viz::mojom::ScrollNode::DataView, ::viz::mojom::ScrollNodePtr>::Read(
::viz::mojom::ScrollNode::DataView input,
::viz::mojom::ScrollNodePtr* output) { … }
}
namespace viz::mojom {
}
#if defined(__clang__)
#pragma clang diagnostic pop
#endif