#ifndef COMPONENTS_PRINTING_COMMON_PRINT_MOJOM_SHARED_H_
#define COMPONENTS_PRINTING_COMMON_PRINT_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 "components/printing/common/print.mojom-shared-internal.h"
#include "mojo/public/mojom/base/shared_memory.mojom-shared.h"
#include "mojo/public/mojom/base/string16.mojom-shared.h"
#include "mojo/public/mojom/base/values.mojom-shared.h"
#include "mojo/public/mojom/base/unguessable_token.mojom-shared.h"
#include "printing/mojom/print.mojom-shared.h"
#include "ui/accessibility/mojom/ax_tree_update.mojom-shared.h"
#include "ui/gfx/geometry/mojom/geometry.mojom-shared.h"
#include "mojo/public/cpp/bindings/lib/interface_serialization.h"
#include "mojo/public/cpp/system/data_pipe.h"
namespace printing::mojom {
class PreviewIdsDataView;
class RequestPrintPreviewParamsDataView;
class PrintFrameContentParamsDataView;
class OptionsFromDocumentParamsDataView;
class DidPrintContentParamsDataView;
class DidStartPreviewParamsDataView;
class DidPreviewPageParamsDataView;
class DidPreviewDocumentParamsDataView;
class PrintParamsDataView;
class PrintPagesParamsDataView;
class DidPrintDocumentParamsDataView;
class ScriptedPrintParamsDataView;
class PrintWithParamsResultDataDataView;
class PrintWithParamsResultDataView;
}
namespace mojo {
namespace internal {
template <>
struct MojomTypeTraits<::printing::mojom::PreviewIdsDataView> { … };
template <>
struct MojomTypeTraits<::printing::mojom::RequestPrintPreviewParamsDataView> { … };
template <>
struct MojomTypeTraits<::printing::mojom::PrintFrameContentParamsDataView> { … };
template <>
struct MojomTypeTraits<::printing::mojom::OptionsFromDocumentParamsDataView> { … };
template <>
struct MojomTypeTraits<::printing::mojom::DidPrintContentParamsDataView> { … };
template <>
struct MojomTypeTraits<::printing::mojom::DidStartPreviewParamsDataView> { … };
template <>
struct MojomTypeTraits<::printing::mojom::DidPreviewPageParamsDataView> { … };
template <>
struct MojomTypeTraits<::printing::mojom::DidPreviewDocumentParamsDataView> { … };
template <>
struct MojomTypeTraits<::printing::mojom::PrintParamsDataView> { … };
template <>
struct MojomTypeTraits<::printing::mojom::PrintPagesParamsDataView> { … };
template <>
struct MojomTypeTraits<::printing::mojom::DidPrintDocumentParamsDataView> { … };
template <>
struct MojomTypeTraits<::printing::mojom::ScriptedPrintParamsDataView> { … };
template <>
struct MojomTypeTraits<::printing::mojom::PrintWithParamsResultDataDataView> { … };
template <>
struct MojomTypeTraits<::printing::mojom::PrintWithParamsResultDataView> { … };
}
}
namespace printing::mojom {
enum class PrintFailureReason : int32_t { … };
std::ostream& operator<<(std::ostream& os, PrintFailureReason value);
inline bool IsKnownEnumValue(PrintFailureReason value) { … }
class PrintPreviewUIInterfaceBase { … };
PrintPreviewUIPtrDataView;
PrintPreviewUIRequestDataView;
PrintPreviewUIAssociatedPtrInfoDataView;
PrintPreviewUIAssociatedRequestDataView;
class PrintRenderFrameInterfaceBase { … };
PrintRenderFramePtrDataView;
PrintRenderFrameRequestDataView;
PrintRenderFrameAssociatedPtrInfoDataView;
PrintRenderFrameAssociatedRequestDataView;
class PrintManagerHostInterfaceBase { … };
PrintManagerHostPtrDataView;
PrintManagerHostRequestDataView;
PrintManagerHostAssociatedPtrInfoDataView;
PrintManagerHostAssociatedRequestDataView;
class PreviewIdsDataView { … };
class RequestPrintPreviewParamsDataView { … };
class PrintFrameContentParamsDataView { … };
class OptionsFromDocumentParamsDataView { … };
class DidPrintContentParamsDataView { … };
class DidStartPreviewParamsDataView { … };
class DidPreviewPageParamsDataView { … };
class DidPreviewDocumentParamsDataView { … };
class PrintParamsDataView { … };
class PrintPagesParamsDataView { … };
class DidPrintDocumentParamsDataView { … };
class ScriptedPrintParamsDataView { … };
class PrintWithParamsResultDataDataView { … };
class PrintWithParamsResultDataView { … };
}
namespace std {
template <>
struct hash<::printing::mojom::PrintFailureReason>
: public mojo::internal::EnumHashImpl<::printing::mojom::PrintFailureReason> { … };
}
namespace mojo {
namespace internal {
Serializer< ::printing::mojom::PrintFailureReason, MaybeConstUserType>;
}
namespace internal {
Serializer< ::printing::mojom::PreviewIdsDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::printing::mojom::RequestPrintPreviewParamsDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::printing::mojom::PrintFrameContentParamsDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::printing::mojom::OptionsFromDocumentParamsDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::printing::mojom::DidPrintContentParamsDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::printing::mojom::DidStartPreviewParamsDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::printing::mojom::DidPreviewPageParamsDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::printing::mojom::DidPreviewDocumentParamsDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::printing::mojom::PrintParamsDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::printing::mojom::PrintPagesParamsDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::printing::mojom::DidPrintDocumentParamsDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::printing::mojom::ScriptedPrintParamsDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::printing::mojom::PrintWithParamsResultDataDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::printing::mojom::PrintWithParamsResultDataView, MaybeConstUserType>;
}
}
namespace printing::mojom {
inline void PrintFrameContentParamsDataView::GetPrintableAreaDataView(
::gfx::mojom::RectDataView* output) { … }
inline void DidPrintContentParamsDataView::GetMetafileDataRegionDataView(
::mojo_base::mojom::ReadOnlySharedMemoryRegionDataView* output) { … }
inline void DidPrintContentParamsDataView::GetSubframeContentInfoDataView(
mojo::MapDataView<uint32_t, ::mojo_base::mojom::UnguessableTokenDataView>* output) { … }
inline void DidStartPreviewParamsDataView::GetPagesToRenderDataView(
mojo::ArrayDataView<uint32_t>* output) { … }
inline void DidStartPreviewParamsDataView::GetPageSizeDataView(
::gfx::mojom::SizeFDataView* output) { … }
inline void DidPreviewPageParamsDataView::GetContentDataView(
DidPrintContentParamsDataView* output) { … }
inline void DidPreviewDocumentParamsDataView::GetContentDataView(
DidPrintContentParamsDataView* output) { … }
inline void PrintParamsDataView::GetPageSizeDataView(
::gfx::mojom::SizeFDataView* output) { … }
inline void PrintParamsDataView::GetContentSizeDataView(
::gfx::mojom::SizeFDataView* output) { … }
inline void PrintParamsDataView::GetPrintableAreaDataView(
::gfx::mojom::RectFDataView* output) { … }
inline void PrintParamsDataView::GetDpiDataView(
::gfx::mojom::SizeDataView* output) { … }
inline void PrintParamsDataView::GetTitleDataView(
::mojo_base::mojom::String16DataView* output) { … }
inline void PrintParamsDataView::GetUrlDataView(
::mojo_base::mojom::String16DataView* output) { … }
inline void PrintParamsDataView::GetHeaderTemplateDataView(
::mojo_base::mojom::String16DataView* output) { … }
inline void PrintParamsDataView::GetFooterTemplateDataView(
::mojo_base::mojom::String16DataView* output) { … }
inline void PrintPagesParamsDataView::GetParamsDataView(
PrintParamsDataView* output) { … }
inline void PrintPagesParamsDataView::GetPagesDataView(
mojo::ArrayDataView<::printing::mojom::PageRangeDataView>* output) { … }
inline void DidPrintDocumentParamsDataView::GetContentDataView(
DidPrintContentParamsDataView* output) { … }
inline void DidPrintDocumentParamsDataView::GetPageSizeDataView(
::gfx::mojom::SizeDataView* output) { … }
inline void DidPrintDocumentParamsDataView::GetContentAreaDataView(
::gfx::mojom::RectDataView* output) { … }
inline void DidPrintDocumentParamsDataView::GetPhysicalOffsetsDataView(
::gfx::mojom::PointDataView* output) { … }
inline void PrintWithParamsResultDataDataView::GetParamsDataView(
DidPrintDocumentParamsDataView* output) { … }
inline void PrintWithParamsResultDataDataView::GetAccessibilityTreeDataView(
::ax::mojom::AXTreeUpdateDataView* output) { … }
inline void PrintWithParamsResultDataView::GetDataDataView(
PrintWithParamsResultDataDataView* output) const { … }
}
namespace perfetto {
template <>
struct TraceFormatTraits<::printing::mojom::PrintFailureReason> { … };
}
#endif