#ifndef SERVICES_WEBNN_PUBLIC_MOJOM_WEBNN_GRAPH_MOJOM_SHARED_H_
#define SERVICES_WEBNN_PUBLIC_MOJOM_WEBNN_GRAPH_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 "services/webnn/public/mojom/webnn_graph.mojom-shared-internal.h"
#include "mojo/public/mojom/base/big_buffer.mojom-shared.h"
#include "services/webnn/public/mojom/webnn_context_properties.mojom-shared.h"
#include "services/webnn/public/mojom/webnn_error.mojom-shared.h"
#include "third_party/blink/public/mojom/tokens/tokens.mojom-shared.h"
#include "mojo/public/cpp/bindings/lib/interface_serialization.h"
#include "mojo/public/cpp/system/data_pipe.h"
#include "base/component_export.h"
namespace webnn::mojom {
class OperandDescriptorDataView;
class OperandDataView;
class ArgMinMaxDataView;
class BatchNormalizationDataView;
class ClampDataView;
class ConcatDataView;
class Size2dDataView;
class Padding2dDataView;
class Conv2dDataView;
class ElementWiseBinaryDataView;
class ElementWiseUnaryDataView;
class ExpandDataView;
class ConstantPaddingDataView;
class EdgePaddingDataView;
class ReflectionPaddingDataView;
class SymmetricPaddingDataView;
class InstanceNormalizationDataView;
class MatmulDataView;
class PadDataView;
class ReduceDataView;
class Pool2dDataView;
class StartAndSizeDataView;
class SliceDataView;
class EluDataView;
class GatherDataView;
class GatherElementsDataView;
class GeluDataView;
class GruDataView;
class GruCellDataView;
class GemmDataView;
class HardSigmoidDataView;
class HardSwishDataView;
class LayerNormalizationDataView;
class LeakyReluDataView;
class LinearDataView;
class LstmDataView;
class LstmCellDataView;
class PreluDataView;
class ReluDataView;
class ReshapeDataView;
class SigmoidDataView;
class SoftmaxDataView;
class SoftplusDataView;
class SoftsignDataView;
class SplitDataView;
class TanhDataView;
class TransposeDataView;
class TriangularDataView;
class Resample2dDataView;
class WhereDataView;
class GraphInfoDataView;
class PaddingModeDataView;
class OperationDataView;
class ComputeResultDataView;
}
namespace mojo {
namespace internal {
template <>
struct MojomTypeTraits<::webnn::mojom::OperandDescriptorDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::OperandDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::ArgMinMaxDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::BatchNormalizationDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::ClampDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::ConcatDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::Size2dDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::Padding2dDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::Conv2dDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::ElementWiseBinaryDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::ElementWiseUnaryDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::ExpandDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::ConstantPaddingDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::EdgePaddingDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::ReflectionPaddingDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::SymmetricPaddingDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::InstanceNormalizationDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::MatmulDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::PadDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::ReduceDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::Pool2dDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::StartAndSizeDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::SliceDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::EluDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::GatherDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::GatherElementsDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::GeluDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::GruDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::GruCellDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::GemmDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::HardSigmoidDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::HardSwishDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::LayerNormalizationDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::LeakyReluDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::LinearDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::LstmDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::LstmCellDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::PreluDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::ReluDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::ReshapeDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::SigmoidDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::SoftmaxDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::SoftplusDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::SoftsignDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::SplitDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::TanhDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::TransposeDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::TriangularDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::Resample2dDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::WhereDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::GraphInfoDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::PaddingModeDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::OperationDataView> { … };
template <>
struct MojomTypeTraits<::webnn::mojom::ComputeResultDataView> { … };
}
}
namespace webnnmojom
namespace std {
template <>
struct hash<::webnn::mojom::DataType>
: public mojo::internal::EnumHashImpl<::webnn::mojom::DataType> { … };
template <>
struct hash<::webnn::mojom::RecurrentNetworkActivation>
: public mojo::internal::EnumHashImpl<::webnn::mojom::RecurrentNetworkActivation> { … };
template <>
struct hash<::webnn::mojom::RecurrentNetworkDirection>
: public mojo::internal::EnumHashImpl<::webnn::mojom::RecurrentNetworkDirection> { … };
template <>
struct hash<::webnn::mojom::GruWeightLayout>
: public mojo::internal::EnumHashImpl<::webnn::mojom::GruWeightLayout> { … };
template <>
struct hash<::webnn::mojom::LstmWeightLayout>
: public mojo::internal::EnumHashImpl<::webnn::mojom::LstmWeightLayout> { … };
template <>
struct hash<::webnn::mojom::Operand_Kind>
: public mojo::internal::EnumHashImpl<::webnn::mojom::Operand_Kind> { … };
template <>
struct hash<::webnn::mojom::ArgMinMax_Kind>
: public mojo::internal::EnumHashImpl<::webnn::mojom::ArgMinMax_Kind> { … };
template <>
struct hash<::webnn::mojom::Conv2d_Kind>
: public mojo::internal::EnumHashImpl<::webnn::mojom::Conv2d_Kind> { … };
template <>
struct hash<::webnn::mojom::ElementWiseBinary_Kind>
: public mojo::internal::EnumHashImpl<::webnn::mojom::ElementWiseBinary_Kind> { … };
template <>
struct hash<::webnn::mojom::ElementWiseUnary_Kind>
: public mojo::internal::EnumHashImpl<::webnn::mojom::ElementWiseUnary_Kind> { … };
template <>
struct hash<::webnn::mojom::Reduce_Kind>
: public mojo::internal::EnumHashImpl<::webnn::mojom::Reduce_Kind> { … };
template <>
struct hash<::webnn::mojom::Pool2d_Kind>
: public mojo::internal::EnumHashImpl<::webnn::mojom::Pool2d_Kind> { … };
template <>
struct hash<::webnn::mojom::Resample2d_InterpolationMode>
: public mojo::internal::EnumHashImpl<::webnn::mojom::Resample2d_InterpolationMode> { … };
}
namespace mojo {
namespace internal {
Serializer< ::webnn::mojom::DataType, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::RecurrentNetworkActivation, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::RecurrentNetworkDirection, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::GruWeightLayout, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::LstmWeightLayout, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::Operand_Kind, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::ArgMinMax_Kind, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::Conv2d_Kind, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::ElementWiseBinary_Kind, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::ElementWiseUnary_Kind, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::Reduce_Kind, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::Pool2d_Kind, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::Resample2d_InterpolationMode, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::OperandDescriptorDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::OperandDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::ArgMinMaxDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::BatchNormalizationDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::ClampDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::ConcatDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::Size2dDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::Padding2dDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::Conv2dDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::ElementWiseBinaryDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::ElementWiseUnaryDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::ExpandDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::ConstantPaddingDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::EdgePaddingDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::ReflectionPaddingDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::SymmetricPaddingDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::InstanceNormalizationDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::MatmulDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::PadDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::ReduceDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::Pool2dDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::StartAndSizeDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::SliceDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::EluDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::GatherDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::GatherElementsDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::GeluDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::GruDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::GruCellDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::GemmDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::HardSigmoidDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::HardSwishDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::LayerNormalizationDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::LeakyReluDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::LinearDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::LstmDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::LstmCellDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::PreluDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::ReluDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::ReshapeDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::SigmoidDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::SoftmaxDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::SoftplusDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::SoftsignDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::SplitDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::TanhDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::TransposeDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::TriangularDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::Resample2dDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::WhereDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::GraphInfoDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::PaddingModeDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::OperationDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::webnn::mojom::ComputeResultDataView, MaybeConstUserType>;
}
}
namespace webnn::mojom {
inline void OperandDescriptorDataView::GetShapeDataView(
mojo::ArrayDataView<uint32_t>* output) { … }
inline void OperandDataView::GetDescriptorDataView(
OperandDescriptorDataView* output) { … }
inline void OperandDataView::GetNameDataView(
mojo::StringDataView* output) { … }
inline void ArgMinMaxDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void BatchNormalizationDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void ClampDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void ConcatDataView::GetInputOperandIdsDataView(
mojo::ArrayDataView<uint64_t>* output) { … }
inline void ConcatDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void Padding2dDataView::GetBeginningDataView(
Size2dDataView* output) { … }
inline void Padding2dDataView::GetEndingDataView(
Size2dDataView* output) { … }
inline void Conv2dDataView::GetPaddingDataView(
Padding2dDataView* output) { … }
inline void Conv2dDataView::GetStridesDataView(
Size2dDataView* output) { … }
inline void Conv2dDataView::GetDilationsDataView(
Size2dDataView* output) { … }
inline void Conv2dDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void ElementWiseBinaryDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void ElementWiseUnaryDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void ExpandDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void InstanceNormalizationDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void MatmulDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void PadDataView::GetBeginningPaddingDataView(
mojo::ArrayDataView<uint32_t>* output) { … }
inline void PadDataView::GetEndingPaddingDataView(
mojo::ArrayDataView<uint32_t>* output) { … }
inline void PadDataView::GetModeDataView(
PaddingModeDataView* output) { … }
inline void PadDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void ReduceDataView::GetAxesDataView(
mojo::ArrayDataView<uint32_t>* output) { … }
inline void ReduceDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void Pool2dDataView::GetWindowDimensionsDataView(
Size2dDataView* output) { … }
inline void Pool2dDataView::GetPaddingDataView(
Padding2dDataView* output) { … }
inline void Pool2dDataView::GetStridesDataView(
Size2dDataView* output) { … }
inline void Pool2dDataView::GetDilationsDataView(
Size2dDataView* output) { … }
inline void Pool2dDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void SliceDataView::GetStartsAndSizesDataView(
mojo::ArrayDataView<StartAndSizeDataView>* output) { … }
inline void SliceDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void EluDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void GatherDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void GatherElementsDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void GeluDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void GruDataView::GetOutputOperandIdsDataView(
mojo::ArrayDataView<uint64_t>* output) { … }
inline void GruDataView::GetActivationsDataView(
mojo::ArrayDataView<RecurrentNetworkActivation>* output) { … }
inline void GruDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void GruCellDataView::GetActivationsDataView(
mojo::ArrayDataView<RecurrentNetworkActivation>* output) { … }
inline void GruCellDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void GemmDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void HardSigmoidDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void HardSwishDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void LayerNormalizationDataView::GetAxesDataView(
mojo::ArrayDataView<uint32_t>* output) { … }
inline void LayerNormalizationDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void LeakyReluDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void LinearDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void LstmDataView::GetOutputOperandIdsDataView(
mojo::ArrayDataView<uint64_t>* output) { … }
inline void LstmDataView::GetActivationsDataView(
mojo::ArrayDataView<RecurrentNetworkActivation>* output) { … }
inline void LstmDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void LstmCellDataView::GetOutputOperandIdsDataView(
mojo::ArrayDataView<uint64_t>* output) { … }
inline void LstmCellDataView::GetActivationsDataView(
mojo::ArrayDataView<RecurrentNetworkActivation>* output) { … }
inline void LstmCellDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void PreluDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void ReluDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void ReshapeDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void SigmoidDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void SoftmaxDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void SoftplusDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void SoftsignDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void SplitDataView::GetOutputOperandIdsDataView(
mojo::ArrayDataView<uint64_t>* output) { … }
inline void SplitDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void TanhDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void TransposeDataView::GetPermutationDataView(
mojo::ArrayDataView<uint32_t>* output) { … }
inline void TransposeDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void TriangularDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void Resample2dDataView::GetScalesDataView(
mojo::ArrayDataView<float>* output) { … }
inline void Resample2dDataView::GetAxesDataView(
mojo::ArrayDataView<uint32_t>* output) { … }
inline void Resample2dDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void WhereDataView::GetLabelDataView(
mojo::StringDataView* output) { … }
inline void GraphInfoDataView::GetIdToOperandMapDataView(
mojo::MapDataView<uint64_t, OperandDataView>* output) { … }
inline void GraphInfoDataView::GetInputOperandsDataView(
mojo::ArrayDataView<uint64_t>* output) { … }
inline void GraphInfoDataView::GetOutputOperandsDataView(
mojo::ArrayDataView<uint64_t>* output) { … }
inline void GraphInfoDataView::GetOperationsDataView(
mojo::ArrayDataView<OperationDataView>* output) { … }
inline void GraphInfoDataView::GetConstantIdToBufferMapDataView(
mojo::MapDataView<uint64_t, ::mojo_base::mojom::BigBufferDataView>* output) { … }
inline void PaddingModeDataView::GetConstantDataView(
ConstantPaddingDataView* output) const { … }
inline void PaddingModeDataView::GetEdgeDataView(
EdgePaddingDataView* output) const { … }
inline void PaddingModeDataView::GetReflectionDataView(
ReflectionPaddingDataView* output) const { … }
inline void PaddingModeDataView::GetSymmetricDataView(
SymmetricPaddingDataView* output) const { … }
inline void OperationDataView::GetArgMinMaxDataView(
ArgMinMaxDataView* output) const { … }
inline void OperationDataView::GetBatchNormalizationDataView(
BatchNormalizationDataView* output) const { … }
inline void OperationDataView::GetClampDataView(
ClampDataView* output) const { … }
inline void OperationDataView::GetConcatDataView(
ConcatDataView* output) const { … }
inline void OperationDataView::GetConv2dDataView(
Conv2dDataView* output) const { … }
inline void OperationDataView::GetElementWiseBinaryDataView(
ElementWiseBinaryDataView* output) const { … }
inline void OperationDataView::GetEluDataView(
EluDataView* output) const { … }
inline void OperationDataView::GetElementWiseUnaryDataView(
ElementWiseUnaryDataView* output) const { … }
inline void OperationDataView::GetExpandDataView(
ExpandDataView* output) const { … }
inline void OperationDataView::GetGatherDataView(
GatherDataView* output) const { … }
inline void OperationDataView::GetGatherElementsDataView(
GatherElementsDataView* output) const { … }
inline void OperationDataView::GetGeluDataView(
GeluDataView* output) const { … }
inline void OperationDataView::GetGemmDataView(
GemmDataView* output) const { … }
inline void OperationDataView::GetGruDataView(
GruDataView* output) const { … }
inline void OperationDataView::GetGruCellDataView(
GruCellDataView* output) const { … }
inline void OperationDataView::GetHardSigmoidDataView(
HardSigmoidDataView* output) const { … }
inline void OperationDataView::GetHardSwishDataView(
HardSwishDataView* output) const { … }
inline void OperationDataView::GetLayerNormalizationDataView(
LayerNormalizationDataView* output) const { … }
inline void OperationDataView::GetInstanceNormalizationDataView(
InstanceNormalizationDataView* output) const { … }
inline void OperationDataView::GetLeakyReluDataView(
LeakyReluDataView* output) const { … }
inline void OperationDataView::GetLinearDataView(
LinearDataView* output) const { … }
inline void OperationDataView::GetLstmDataView(
LstmDataView* output) const { … }
inline void OperationDataView::GetLstmCellDataView(
LstmCellDataView* output) const { … }
inline void OperationDataView::GetMatmulDataView(
MatmulDataView* output) const { … }
inline void OperationDataView::GetPadDataView(
PadDataView* output) const { … }
inline void OperationDataView::GetPool2dDataView(
Pool2dDataView* output) const { … }
inline void OperationDataView::GetPreluDataView(
PreluDataView* output) const { … }
inline void OperationDataView::GetReduceDataView(
ReduceDataView* output) const { … }
inline void OperationDataView::GetReluDataView(
ReluDataView* output) const { … }
inline void OperationDataView::GetResample2dDataView(
Resample2dDataView* output) const { … }
inline void OperationDataView::GetReshapeDataView(
ReshapeDataView* output) const { … }
inline void OperationDataView::GetSigmoidDataView(
SigmoidDataView* output) const { … }
inline void OperationDataView::GetSliceDataView(
SliceDataView* output) const { … }
inline void OperationDataView::GetSoftmaxDataView(
SoftmaxDataView* output) const { … }
inline void OperationDataView::GetSoftplusDataView(
SoftplusDataView* output) const { … }
inline void OperationDataView::GetSoftsignDataView(
SoftsignDataView* output) const { … }
inline void OperationDataView::GetSplitDataView(
SplitDataView* output) const { … }
inline void OperationDataView::GetTanhDataView(
TanhDataView* output) const { … }
inline void OperationDataView::GetTransposeDataView(
TransposeDataView* output) const { … }
inline void OperationDataView::GetTriangularDataView(
TriangularDataView* output) const { … }
inline void OperationDataView::GetWhereDataView(
WhereDataView* output) const { … }
inline void ComputeResultDataView::GetNamedOutputsDataView(
mojo::MapDataView<mojo::StringDataView, ::mojo_base::mojom::BigBufferDataView>* output) const { … }
inline void ComputeResultDataView::GetErrorDataView(
::webnn::mojom::ErrorDataView* output) const { … }
}
namespace perfetto {
template <>
struct COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) TraceFormatTraits<::webnn::mojom::DataType> { … };
}
namespace perfetto {
template <>
struct COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) TraceFormatTraits<::webnn::mojom::RecurrentNetworkActivation> { … };
}
namespace perfetto {
template <>
struct COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) TraceFormatTraits<::webnn::mojom::RecurrentNetworkDirection> { … };
}
namespace perfetto {
template <>
struct COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) TraceFormatTraits<::webnn::mojom::GruWeightLayout> { … };
}
namespace perfetto {
template <>
struct COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) TraceFormatTraits<::webnn::mojom::LstmWeightLayout> { … };
}
namespace perfetto {
template <>
struct COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) TraceFormatTraits<::webnn::mojom::Operand_Kind> { … };
}
namespace perfetto {
template <>
struct COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) TraceFormatTraits<::webnn::mojom::ArgMinMax_Kind> { … };
}
namespace perfetto {
template <>
struct COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) TraceFormatTraits<::webnn::mojom::Conv2d_Kind> { … };
}
namespace perfetto {
template <>
struct COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) TraceFormatTraits<::webnn::mojom::ElementWiseBinary_Kind> { … };
}
namespace perfetto {
template <>
struct COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) TraceFormatTraits<::webnn::mojom::ElementWiseUnary_Kind> { … };
}
namespace perfetto {
template <>
struct COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) TraceFormatTraits<::webnn::mojom::Reduce_Kind> { … };
}
namespace perfetto {
template <>
struct COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) TraceFormatTraits<::webnn::mojom::Pool2d_Kind> { … };
}
namespace perfetto {
template <>
struct COMPONENT_EXPORT(WEBNN_MOJOM_SHARED) TraceFormatTraits<::webnn::mojom::Resample2d_InterpolationMode> { … };
}
#endif