chromium/out/Default/gen/third_party/blink/public/mojom/input/input_handler.mojom-shared.h

// third_party/blink/public/mojom/input/input_handler.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 THIRD_PARTY_BLINK_PUBLIC_MOJOM_INPUT_INPUT_HANDLER_MOJOM_SHARED_H_
#define THIRD_PARTY_BLINK_PUBLIC_MOJOM_INPUT_INPUT_HANDLER_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 "third_party/blink/public/mojom/input/input_handler.mojom-shared-internal.h"
#include "cc/mojom/browser_controls_offset_tags_info.mojom-shared.h"
#include "cc/mojom/browser_controls_state.mojom-shared.h"
#include "cc/mojom/overscroll_behavior.mojom-shared.h"
#include "cc/mojom/touch_action.mojom-shared.h"
#include "mojo/public/mojom/base/string16.mojom-shared.h"
#include "mojo/public/mojom/base/time.mojom-shared.h"
#include "third_party/blink/public/mojom/input/gesture_event.mojom-shared.h"
#include "third_party/blink/public/mojom/input/handwriting_gesture_result.mojom-shared.h"
#include "third_party/blink/public/mojom/input/input_event_result.mojom-shared.h"
#include "third_party/blink/public/mojom/input/input_event.mojom-shared.h"
#include "third_party/blink/public/mojom/input/pointer_lock_context.mojom-shared.h"
#include "third_party/blink/public/mojom/input/pointer_lock_result.mojom-shared.h"
#include "third_party/blink/public/mojom/input/stylus_writing_gesture.mojom-shared.h"
#include "third_party/blink/public/mojom/input/touch_event.mojom-shared.h"
#include "third_party/blink/public/mojom/selection_menu/selection_menu_behavior.mojom-shared.h"
#include "ui/base/ime/mojom/ime_types.mojom-shared.h"
#include "ui/events/mojom/event_constants.mojom-shared.h"
#include "ui/events/mojom/event_latency_metadata.mojom-shared.h"
#include "ui/events/mojom/event.mojom-shared.h"
#include "ui/events/mojom/scroll_granularity.mojom-shared.h"
#include "ui/gfx/geometry/mojom/geometry.mojom-shared.h"
#include "ui/gfx/range/mojom/range.mojom-shared.h"
#include "ui/latency/mojom/latency_info.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 blink::mojom {
class KeyDataDataView;

class PointerDataDataView;

class WheelDataDataView;

class MouseDataDataView;

class ScrollDataDataView;

class PinchBeginDataDataView;

class PinchUpdateDataDataView;

class PinchEndDataDataView;

class FlingDataDataView;

class TapDataDataView;

class TapDownDataDataView;

class GestureDataDataView;

class TouchPointDataView;

class TouchDataDataView;

class EventDataView;

class DidOverscrollParamsDataView;

class TouchActionOptionalDataView;

class EditCommandDataView;

class SelectAroundCaretResultDataView;



}  // blink::mojom

namespace mojo {
namespace internal {

template <>
struct MojomTypeTraits<::blink::mojom::KeyDataDataView> {};

template <>
struct MojomTypeTraits<::blink::mojom::PointerDataDataView> {};

template <>
struct MojomTypeTraits<::blink::mojom::WheelDataDataView> {};

template <>
struct MojomTypeTraits<::blink::mojom::MouseDataDataView> {};

template <>
struct MojomTypeTraits<::blink::mojom::ScrollDataDataView> {};

template <>
struct MojomTypeTraits<::blink::mojom::PinchBeginDataDataView> {};

template <>
struct MojomTypeTraits<::blink::mojom::PinchUpdateDataDataView> {};

template <>
struct MojomTypeTraits<::blink::mojom::PinchEndDataDataView> {};

template <>
struct MojomTypeTraits<::blink::mojom::FlingDataDataView> {};

template <>
struct MojomTypeTraits<::blink::mojom::TapDataDataView> {};

template <>
struct MojomTypeTraits<::blink::mojom::TapDownDataDataView> {};

template <>
struct MojomTypeTraits<::blink::mojom::GestureDataDataView> {};

template <>
struct MojomTypeTraits<::blink::mojom::TouchPointDataView> {};

template <>
struct MojomTypeTraits<::blink::mojom::TouchDataDataView> {};

template <>
struct MojomTypeTraits<::blink::mojom::EventDataView> {};

template <>
struct MojomTypeTraits<::blink::mojom::DidOverscrollParamsDataView> {};

template <>
struct MojomTypeTraits<::blink::mojom::TouchActionOptionalDataView> {};

template <>
struct MojomTypeTraits<::blink::mojom::EditCommandDataView> {};

template <>
struct MojomTypeTraits<::blink::mojom::SelectAroundCaretResultDataView> {};

}  // namespace internal
}  // namespace mojo


namespace blinkmojom  // blink::mojom

namespace std {

template <>
struct hash<::blink::mojom::SelectionGranularity>
    : public mojo::internal::EnumHashImpl<::blink::mojom::SelectionGranularity> {};

template <>
struct hash<::blink::mojom::PanAction>
    : public mojo::internal::EnumHashImpl<::blink::mojom::PanAction> {};

template <>
struct hash<::blink::mojom::FocusState>
    : public mojo::internal::EnumHashImpl<::blink::mojom::FocusState> {};

}  // namespace std

namespace mojo {


namespace internal {

Serializer< ::blink::mojom::SelectionGranularity, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::blink::mojom::PanAction, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::blink::mojom::FocusState, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::blink::mojom::KeyDataDataView, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::blink::mojom::PointerDataDataView, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::blink::mojom::WheelDataDataView, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::blink::mojom::MouseDataDataView, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::blink::mojom::ScrollDataDataView, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::blink::mojom::PinchBeginDataDataView, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::blink::mojom::PinchUpdateDataDataView, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::blink::mojom::PinchEndDataDataView, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::blink::mojom::FlingDataDataView, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::blink::mojom::TapDataDataView, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::blink::mojom::TapDownDataDataView, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::blink::mojom::GestureDataDataView, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::blink::mojom::TouchPointDataView, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::blink::mojom::TouchDataDataView, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::blink::mojom::EventDataView, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::blink::mojom::DidOverscrollParamsDataView, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::blink::mojom::TouchActionOptionalDataView, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::blink::mojom::EditCommandDataView, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::blink::mojom::SelectAroundCaretResultDataView, MaybeConstUserType>;

}  // namespace internal

}  // namespace mojo


namespace blink::mojom {

inline void KeyDataDataView::GetTextDataView(
    ::mojo_base::mojom::String16DataView* output) {}
inline void KeyDataDataView::GetUnmodifiedTextDataView(
    ::mojo_base::mojom::String16DataView* output) {}


inline void PointerDataDataView::GetWidgetPositionDataView(
    ::gfx::mojom::PointFDataView* output) {}
inline void PointerDataDataView::GetScreenPositionDataView(
    ::gfx::mojom::PointFDataView* output) {}
inline void PointerDataDataView::GetMouseDataDataView(
    MouseDataDataView* output) {}




inline void MouseDataDataView::GetWheelDataDataView(
    WheelDataDataView* output) {}
















inline void GestureDataDataView::GetScreenPositionDataView(
    ::gfx::mojom::PointFDataView* output) {}
inline void GestureDataDataView::GetWidgetPositionDataView(
    ::gfx::mojom::PointFDataView* output) {}
inline void GestureDataDataView::GetContactSizeDataView(
    ::gfx::mojom::SizeDataView* output) {}
inline void GestureDataDataView::GetScrollDataDataView(
    ScrollDataDataView* output) {}
inline void GestureDataDataView::GetPinchBeginDataDataView(
    PinchBeginDataDataView* output) {}
inline void GestureDataDataView::GetPinchUpdateDataDataView(
    PinchUpdateDataDataView* output) {}
inline void GestureDataDataView::GetPinchEndDataDataView(
    PinchEndDataDataView* output) {}
inline void GestureDataDataView::GetTapDataDataView(
    TapDataDataView* output) {}
inline void GestureDataDataView::GetTapDownDataDataView(
    TapDownDataDataView* output) {}
inline void GestureDataDataView::GetFlingDataDataView(
    FlingDataDataView* output) {}


inline void TouchPointDataView::GetPointerDataDataView(
    PointerDataDataView* output) {}


inline void TouchDataDataView::GetTouchesDataView(
    mojo::ArrayDataView<TouchPointDataView>* output) {}


inline void EventDataView::GetTimestampDataView(
    ::mojo_base::mojom::TimeTicksDataView* output) {}
inline void EventDataView::GetLatencyDataView(
    ::ui::mojom::LatencyInfoDataView* output) {}
inline void EventDataView::GetEventLatencyMetadataDataView(
    ::ui::mojom::EventLatencyMetadataDataView* output) {}
inline void EventDataView::GetKeyDataDataView(
    KeyDataDataView* output) {}
inline void EventDataView::GetPointerDataDataView(
    PointerDataDataView* output) {}
inline void EventDataView::GetGestureDataDataView(
    GestureDataDataView* output) {}
inline void EventDataView::GetTouchDataDataView(
    TouchDataDataView* output) {}


inline void DidOverscrollParamsDataView::GetAccumulatedOverscrollDataView(
    ::gfx::mojom::Vector2dFDataView* output) {}
inline void DidOverscrollParamsDataView::GetLatestOverscrollDeltaDataView(
    ::gfx::mojom::Vector2dFDataView* output) {}
inline void DidOverscrollParamsDataView::GetCurrentFlingVelocityDataView(
    ::gfx::mojom::Vector2dFDataView* output) {}
inline void DidOverscrollParamsDataView::GetCausalEventViewportPointDataView(
    ::gfx::mojom::PointFDataView* output) {}
inline void DidOverscrollParamsDataView::GetOverscrollBehaviorDataView(
    ::cc::mojom::OverscrollBehaviorDataView* output) {}




inline void EditCommandDataView::GetNameDataView(
    mojo::StringDataView* output) {}
inline void EditCommandDataView::GetValueDataView(
    mojo::StringDataView* output) {}





}  // blink::mojom

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

namespace perfetto {

template <>
struct COMPONENT_EXPORT(MOJOM_SHARED_BLINK_COMMON_EXPORT) TraceFormatTraits<::blink::mojom::SelectionGranularity> {};

} // namespace perfetto

namespace perfetto {

template <>
struct COMPONENT_EXPORT(MOJOM_SHARED_BLINK_COMMON_EXPORT) TraceFormatTraits<::blink::mojom::PanAction> {};

} // namespace perfetto

namespace perfetto {

template <>
struct COMPONENT_EXPORT(MOJOM_SHARED_BLINK_COMMON_EXPORT) TraceFormatTraits<::blink::mojom::FocusState> {};

} // namespace perfetto

#endif  // THIRD_PARTY_BLINK_PUBLIC_MOJOM_INPUT_INPUT_HANDLER_MOJOM_SHARED_H_