chromium/out/Default/gen/content/common/frame.mojom-shared.h

// content/common/frame.mojom-shared.h is auto generated by mojom_bindings_generator.py, do not edit

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

#ifndef CONTENT_COMMON_FRAME_MOJOM_SHARED_H_
#define CONTENT_COMMON_FRAME_MOJOM_SHARED_H_

#include <stdint.h>

#include <functional>
#include <iosfwd>
#include <type_traits>
#include <utility>
#include "mojo/public/cpp/bindings/array_data_view.h"
#include "mojo/public/cpp/bindings/enum_traits.h"
#include "mojo/public/cpp/bindings/interface_data_view.h"
#include "mojo/public/cpp/bindings/lib/bindings_internal.h"
#include "mojo/public/cpp/bindings/lib/serialization.h"
#include "mojo/public/cpp/bindings/map_data_view.h"
#include "mojo/public/cpp/bindings/string_data_view.h"

#include "third_party/perfetto/include/perfetto/tracing/traced_value_forward.h"

#include "content/common/frame.mojom-shared-internal.h"
#include "cc/mojom/browser_controls_state.mojom-shared.h"
#include "content/common/frame_messages.mojom-shared.h"
#include "content/common/navigation_client.mojom-shared.h"
#include "content/common/web_ui.mojom-shared.h"
#include "content/public/common/extra_mojo_js_features.mojom-shared.h"
#include "content/public/common/window_container_type.mojom-shared.h"
#include "ipc/constants.mojom-shared.h"
#include "mojo/public/mojom/base/file_path.mojom-shared.h"
#include "mojo/public/mojom/base/time.mojom-shared.h"
#include "mojo/public/mojom/base/unguessable_token.mojom-shared.h"
#include "skia/public/mojom/skcolor.mojom-shared.h"
#include "services/network/public/mojom/attribution.mojom-shared.h"
#include "services/network/public/mojom/content_security_policy.mojom-shared.h"
#include "services/network/public/mojom/url_loader.mojom-shared.h"
#include "services/network/public/mojom/url_loader_completion_status.mojom-shared.h"
#include "services/network/public/mojom/url_loader_factory.mojom-shared.h"
#include "services/network/public/mojom/url_request.mojom-shared.h"
#include "services/network/public/mojom/url_response_head.mojom-shared.h"
#include "services/service_manager/public/mojom/interface_provider.mojom-shared.h"
#include "services/viz/public/mojom/compositing/surface_id.mojom-shared.h"
#include "third_party/blink/public/mojom/associated_interfaces/associated_interfaces.mojom-shared.h"
#include "third_party/blink/public/mojom/blob/blob_url_store.mojom-shared.h"
#include "third_party/blink/public/mojom/browser_interface_broker.mojom-shared.h"
#include "third_party/blink/public/mojom/commit_result/commit_result.mojom-shared.h"
#include "third_party/blink/public/mojom/conversions/conversions.mojom-shared.h"
#include "third_party/blink/public/mojom/devtools/console_message.mojom-shared.h"
#include "third_party/blink/public/mojom/fenced_frame/fenced_frame.mojom-shared.h"
#include "third_party/blink/public/mojom/fenced_frame/fenced_frame_config.mojom-shared.h"
#include "third_party/blink/public/mojom/frame/frame_owner_properties.mojom-shared.h"
#include "third_party/blink/public/mojom/frame/frame_policy.mojom-shared.h"
#include "third_party/blink/public/mojom/frame/frame_replication_state.mojom-shared.h"
#include "third_party/blink/public/mojom/frame/lifecycle.mojom-shared.h"
#include "third_party/blink/public/mojom/frame/policy_container.mojom-shared.h"
#include "third_party/blink/public/mojom/frame/remote_frame.mojom-shared.h"
#include "third_party/blink/public/mojom/frame/tree_scope_type.mojom-shared.h"
#include "third_party/blink/public/mojom/loader/referrer.mojom-shared.h"
#include "third_party/blink/public/mojom/navigation/navigation_policy.mojom-shared.h"
#include "third_party/blink/public/mojom/loader/resource_load_info.mojom-shared.h"
#include "third_party/blink/public/mojom/loader/url_loader_factory_bundle.mojom-shared.h"
#include "third_party/blink/public/mojom/messaging/transferable_message.mojom-shared.h"
#include "third_party/blink/public/mojom/navigation/navigation_params.mojom-shared.h"
#include "third_party/blink/public/mojom/navigation/navigation_initiator_activation_and_ad_status.mojom-shared.h"
#include "third_party/blink/public/mojom/page/browsing_context_group_info.mojom-shared.h"
#include "third_party/blink/public/mojom/page/page.mojom-shared.h"
#include "third_party/blink/public/mojom/page/prerender_page_param.mojom-shared.h"
#include "third_party/blink/public/mojom/partitioned_popins/partitioned_popin_params.mojom-shared.h"
#include "third_party/blink/public/mojom/picture_in_picture_window_options/picture_in_picture_window_options.mojom-shared.h"
#include "third_party/blink/public/mojom/widget/platform_widget.mojom-shared.h"
#include "third_party/blink/public/mojom/page/widget.mojom-shared.h"
#include "third_party/blink/public/mojom/renderer_preferences.mojom-shared.h"
#include "third_party/blink/public/mojom/service_worker/controller_service_worker.mojom-shared.h"
#include "third_party/blink/public/mojom/service_worker/service_worker_container.mojom-shared.h"
#include "third_party/blink/public/mojom/tokens/tokens.mojom-shared.h"
#include "third_party/blink/public/mojom/webpreferences/web_preferences.mojom-shared.h"
#include "third_party/blink/public/mojom/widget/visual_properties.mojom-shared.h"
#include "third_party/blink/public/mojom/window_features/window_features.mojom-shared.h"
#include "ui/accessibility/mojom/ax_tree_update.mojom-shared.h"
#include "ui/base/mojom/window_open_disposition.mojom-shared.h"
#include "url/mojom/origin.mojom-shared.h"
#include "url/mojom/scheme_host_port.mojom-shared.h"
#include "url/mojom/url.mojom-shared.h"
#include "mojo/public/cpp/bindings/lib/interface_serialization.h"
#include "mojo/public/cpp/system/data_pipe.h"


#include "mojo/public/cpp/bindings/native_enum.h"
#include "mojo/public/cpp/bindings/lib/native_struct_serialization.h"
#include "base/component_export.h"




namespace content::mojom {
class CreateViewParamsDataView;

class CreateLocalMainFrameParamsDataView;

class CreateRemoteMainFrameParamsDataView;

class CreateFrameWidgetParamsDataView;

class CreateFrameParamsDataView;

class SnapshotAccessibilityTreeParamsDataView;

class CreateNewWindowParamsDataView;

class CreateNewWindowReplyDataView;

class CreateMainFrameUnionDataView;


}  // content::mojom

namespace mojo {
namespace internal {

template <>
struct MojomTypeTraits<::content::mojom::CreateViewParamsDataView> {};

template <>
struct MojomTypeTraits<::content::mojom::CreateLocalMainFrameParamsDataView> {};

template <>
struct MojomTypeTraits<::content::mojom::CreateRemoteMainFrameParamsDataView> {};

template <>
struct MojomTypeTraits<::content::mojom::CreateFrameWidgetParamsDataView> {};

template <>
struct MojomTypeTraits<::content::mojom::CreateFrameParamsDataView> {};

template <>
struct MojomTypeTraits<::content::mojom::SnapshotAccessibilityTreeParamsDataView> {};

template <>
struct MojomTypeTraits<::content::mojom::CreateNewWindowParamsDataView> {};

template <>
struct MojomTypeTraits<::content::mojom::CreateNewWindowReplyDataView> {};

template <>
struct MojomTypeTraits<::content::mojom::CreateMainFrameUnionDataView> {};

}  // namespace internal
}  // namespace mojo


namespace contentmojom  // content::mojom

namespace std {

template <>
struct hash<::content::mojom::ViewWidgetType>
    : public mojo::internal::EnumHashImpl<::content::mojom::ViewWidgetType> {};

template <>
struct hash<::content::mojom::ChildFrameOwnerElementType>
    : public mojo::internal::EnumHashImpl<::content::mojom::ChildFrameOwnerElementType> {};

template <>
struct hash<::content::mojom::FrameDeleteIntention>
    : public mojo::internal::EnumHashImpl<::content::mojom::FrameDeleteIntention> {};

template <>
struct hash<::content::mojom::CreateNewWindowStatus>
    : public mojo::internal::EnumHashImpl<::content::mojom::CreateNewWindowStatus> {};

}  // namespace std

namespace mojo {


namespace internal {

Serializer< ::content::mojom::ViewWidgetType, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::content::mojom::ChildFrameOwnerElementType, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::content::mojom::FrameDeleteIntention, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::content::mojom::CreateNewWindowStatus, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::content::mojom::CreateViewParamsDataView, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::content::mojom::CreateLocalMainFrameParamsDataView, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::content::mojom::CreateRemoteMainFrameParamsDataView, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::content::mojom::CreateFrameWidgetParamsDataView, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::content::mojom::CreateFrameParamsDataView, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::content::mojom::SnapshotAccessibilityTreeParamsDataView, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::content::mojom::CreateNewWindowParamsDataView, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::content::mojom::CreateNewWindowReplyDataView, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::content::mojom::CreateMainFrameUnionDataView, MaybeConstUserType>;

}  // namespace internal

}  // namespace mojo


namespace content::mojom {

inline void CreateViewParamsDataView::GetRendererPreferencesDataView(
    ::blink::mojom::RendererPreferencesDataView* output) {}
inline void CreateViewParamsDataView::GetWebPreferencesDataView(
    ::blink::mojom::WebPreferencesDataView* output) {}
inline void CreateViewParamsDataView::GetSessionStorageNamespaceIdDataView(
    mojo::StringDataView* output) {}
inline void CreateViewParamsDataView::GetOpenerFrameTokenDataView(
    ::blink::mojom::FrameTokenDataView* output) {}
inline void CreateViewParamsDataView::GetReplicationStateDataView(
    ::blink::mojom::FrameReplicationStateDataView* output) {}
inline void CreateViewParamsDataView::GetDevtoolsMainFrameTokenDataView(
    ::mojo_base::mojom::UnguessableTokenDataView* output) {}
inline void CreateViewParamsDataView::GetMainFrameDataView(
    CreateMainFrameUnionDataView* output) {}
inline void CreateViewParamsDataView::GetPrerenderParamDataView(
    ::blink::mojom::PrerenderParamDataView* output) {}
inline void CreateViewParamsDataView::GetOutermostOriginDataView(
    ::url::mojom::OriginDataView* output) {}
inline void CreateViewParamsDataView::GetBaseBackgroundColorDataView(
    ::skia::mojom::SkColorDataView* output) {}
inline void CreateViewParamsDataView::GetColorProviderColorsDataView(
    ::blink::mojom::ColorProviderColorMapsDataView* output) {}
inline void CreateViewParamsDataView::GetBrowsingContextGroupInfoDataView(
    ::blink::mojom::BrowsingContextGroupInfoDataView* output) {}
inline void CreateViewParamsDataView::GetPartitionedPopinParamsDataView(
    ::blink::mojom::PartitionedPopinParamsDataView* output) {}


inline void CreateLocalMainFrameParamsDataView::GetFrameTokenDataView(
    ::blink::mojom::LocalFrameTokenDataView* output) {}
inline void CreateLocalMainFrameParamsDataView::GetDocumentTokenDataView(
    ::blink::mojom::DocumentTokenDataView* output) {}
inline void CreateLocalMainFrameParamsDataView::GetPolicyContainerDataView(
    ::blink::mojom::PolicyContainerDataView* output) {}
inline void CreateLocalMainFrameParamsDataView::GetWidgetParamsDataView(
    CreateFrameWidgetParamsDataView* output) {}
inline void CreateLocalMainFrameParamsDataView::GetSubresourceLoaderFactoriesDataView(
    ::blink::mojom::URLLoaderFactoryBundleDataView* output) {}
inline void CreateLocalMainFrameParamsDataView::GetPreviousFrameTokenDataView(
    ::blink::mojom::FrameTokenDataView* output) {}


inline void CreateRemoteMainFrameParamsDataView::GetTokenDataView(
    ::blink::mojom::RemoteFrameTokenDataView* output) {}
inline void CreateRemoteMainFrameParamsDataView::GetFrameInterfacesDataView(
    ::blink::mojom::RemoteFrameInterfacesFromBrowserDataView* output) {}
inline void CreateRemoteMainFrameParamsDataView::GetMainFrameInterfacesDataView(
    ::blink::mojom::RemoteMainFrameInterfacesDataView* output) {}


inline void CreateFrameWidgetParamsDataView::GetVisualPropertiesDataView(
    ::blink::mojom::VisualPropertiesDataView* output) {}
inline void CreateFrameWidgetParamsDataView::GetPreviousFrameTokenForCompositorReuseDataView(
    ::blink::mojom::FrameTokenDataView* output) {}


inline void CreateFrameParamsDataView::GetFrameTokenDataView(
    ::blink::mojom::LocalFrameTokenDataView* output) {}
inline void CreateFrameParamsDataView::GetPreviousFrameTokenDataView(
    ::blink::mojom::FrameTokenDataView* output) {}
inline void CreateFrameParamsDataView::GetOpenerFrameTokenDataView(
    ::blink::mojom::FrameTokenDataView* output) {}
inline void CreateFrameParamsDataView::GetParentFrameTokenDataView(
    ::blink::mojom::FrameTokenDataView* output) {}
inline void CreateFrameParamsDataView::GetPreviousSiblingFrameTokenDataView(
    ::blink::mojom::FrameTokenDataView* output) {}
inline void CreateFrameParamsDataView::GetReplicationStateDataView(
    ::blink::mojom::FrameReplicationStateDataView* output) {}
inline void CreateFrameParamsDataView::GetDevtoolsFrameTokenDataView(
    ::mojo_base::mojom::UnguessableTokenDataView* output) {}
inline void CreateFrameParamsDataView::GetFrameOwnerPropertiesDataView(
    ::blink::mojom::FrameOwnerPropertiesDataView* output) {}
inline void CreateFrameParamsDataView::GetWidgetParamsDataView(
    CreateFrameWidgetParamsDataView* output) {}
inline void CreateFrameParamsDataView::GetDocumentTokenDataView(
    ::blink::mojom::DocumentTokenDataView* output) {}
inline void CreateFrameParamsDataView::GetPolicyContainerDataView(
    ::blink::mojom::PolicyContainerDataView* output) {}


inline void SnapshotAccessibilityTreeParamsDataView::GetTimeoutDataView(
    ::mojo_base::mojom::TimeDeltaDataView* output) {}


inline void CreateNewWindowParamsDataView::GetSessionStorageNamespaceIdDataView(
    mojo::StringDataView* output) {}
inline void CreateNewWindowParamsDataView::GetCloneFromSessionStorageNamespaceIdDataView(
    mojo::StringDataView* output) {}
inline void CreateNewWindowParamsDataView::GetFrameNameDataView(
    mojo::StringDataView* output) {}
inline void CreateNewWindowParamsDataView::GetFormSubmissionPostDataDataView(
    ::network::mojom::URLRequestBodyDataView* output) {}
inline void CreateNewWindowParamsDataView::GetFormSubmissionPostContentTypeDataView(
    mojo::StringDataView* output) {}
inline void CreateNewWindowParamsDataView::GetTargetUrlDataView(
    ::url::mojom::UrlDataView* output) {}
inline void CreateNewWindowParamsDataView::GetReferrerDataView(
    ::blink::mojom::ReferrerDataView* output) {}
inline void CreateNewWindowParamsDataView::GetFeaturesDataView(
    ::blink::mojom::WindowFeaturesDataView* output) {}
inline void CreateNewWindowParamsDataView::GetImpressionDataView(
    ::blink::mojom::ImpressionDataView* output) {}
inline void CreateNewWindowParamsDataView::GetDownloadPolicyDataView(
    ::blink::mojom::NavigationDownloadPolicyDataView* output) {}
inline void CreateNewWindowParamsDataView::GetPipOptionsDataView(
    ::blink::mojom::PictureInPictureWindowOptionsDataView* output) {}


inline void CreateNewWindowReplyDataView::GetMainFrameTokenDataView(
    ::blink::mojom::LocalFrameTokenDataView* output) {}
inline void CreateNewWindowReplyDataView::GetWidgetParamsDataView(
    CreateFrameWidgetParamsDataView* output) {}
inline void CreateNewWindowReplyDataView::GetClonedSessionStorageNamespaceIdDataView(
    mojo::StringDataView* output) {}
inline void CreateNewWindowReplyDataView::GetDevtoolsMainFrameTokenDataView(
    ::mojo_base::mojom::UnguessableTokenDataView* output) {}
inline void CreateNewWindowReplyDataView::GetDocumentTokenDataView(
    ::blink::mojom::DocumentTokenDataView* output) {}
inline void CreateNewWindowReplyDataView::GetPolicyContainerDataView(
    ::blink::mojom::PolicyContainerDataView* output) {}
inline void CreateNewWindowReplyDataView::GetBrowsingContextGroupInfoDataView(
    ::blink::mojom::BrowsingContextGroupInfoDataView* output) {}
inline void CreateNewWindowReplyDataView::GetColorProviderColorsDataView(
    ::blink::mojom::ColorProviderColorMapsDataView* output) {}
inline void CreateNewWindowReplyDataView::GetPartitionedPopinParamsDataView(
    ::blink::mojom::PartitionedPopinParamsDataView* output) {}


inline void CreateMainFrameUnionDataView::GetLocalParamsDataView(
    CreateLocalMainFrameParamsDataView* output) const {}
inline void CreateMainFrameUnionDataView::GetRemoteParamsDataView(
    CreateRemoteMainFrameParamsDataView* output) const {}


}  // content::mojom

// Declare TraceFormatTraits for enums, which should be defined in ::perfetto
// namespace.

namespace perfetto {

template <>
struct COMPONENT_EXPORT(MOJOM_SHARED_CONTENT_EXPORT) TraceFormatTraits<::content::mojom::ViewWidgetType> {};

} // namespace perfetto

namespace perfetto {

template <>
struct COMPONENT_EXPORT(MOJOM_SHARED_CONTENT_EXPORT) TraceFormatTraits<::content::mojom::ChildFrameOwnerElementType> {};

} // namespace perfetto

namespace perfetto {

template <>
struct COMPONENT_EXPORT(MOJOM_SHARED_CONTENT_EXPORT) TraceFormatTraits<::content::mojom::FrameDeleteIntention> {};

} // namespace perfetto

namespace perfetto {

template <>
struct COMPONENT_EXPORT(MOJOM_SHARED_CONTENT_EXPORT) TraceFormatTraits<::content::mojom::CreateNewWindowStatus> {};

} // namespace perfetto

#endif  // CONTENT_COMMON_FRAME_MOJOM_SHARED_H_