| // chromeos/services/machine_learning/public/mojom/machine_learning_service.mojom-shared.h is auto generated by mojom_bindings_generator.py, do not edit |
| |
| // Copyright 2016 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef CHROMEOS_SERVICES_MACHINE_LEARNING_PUBLIC_MOJOM_MACHINE_LEARNING_SERVICE_MOJOM_SHARED_H_ |
| #define CHROMEOS_SERVICES_MACHINE_LEARNING_PUBLIC_MOJOM_MACHINE_LEARNING_SERVICE_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 "chromeos/services/machine_learning/public/mojom/machine_learning_service.mojom-shared-internal.h" |
| #include "chromeos/services/machine_learning/public/mojom/document_scanner.mojom-shared.h" |
| #include "chromeos/services/machine_learning/public/mojom/grammar_checker.mojom-shared.h" |
| #include "chromeos/services/machine_learning/public/mojom/handwriting_recognizer.mojom-shared.h" |
| #include "chromeos/services/machine_learning/public/mojom/model.mojom-shared.h" |
| #include "chromeos/services/machine_learning/public/mojom/soda.mojom-shared.h" |
| #include "chromeos/services/machine_learning/public/mojom/text_classifier.mojom-shared.h" |
| #include "chromeos/services/machine_learning/public/mojom/text_suggester.mojom-shared.h" |
| #include "chromeos/services/machine_learning/public/mojom/web_platform_handwriting.mojom-shared.h" |
| #include "components/ml/mojom/web_platform_model.mojom-shared.h" |
| #include "mojo/public/cpp/bindings/lib/interface_serialization.h" |
| |
| |
| #include "base/component_export.h" |
| |
| #ifdef KYTHE_IS_RUNNING |
| #pragma kythe_inline_metadata "Metadata comment" |
| #endif |
| |
| |
| namespace chromeos { |
| namespace machine_learning { |
| namespace mojom { |
| |
| |
| } // namespace mojom |
| } // namespace machine_learning |
| } // namespace chromeos |
| |
| namespace mojo { |
| namespace internal { |
| |
| } // namespace internal |
| } // namespace mojo |
| |
| |
| namespace chromeos { |
| namespace machine_learning { |
| namespace mojom { |
| |
| |
| // @generated_from: chromeos.machine_learning.mojom.LoadModelResult |
| enum class LoadModelResult : int32_t { |
| |
| // @generated_from: chromeos.machine_learning.mojom.LoadModelResult.OK |
| OK = 0, |
| |
| // @generated_from: chromeos.machine_learning.mojom.LoadModelResult.MODEL_SPEC_ERROR |
| MODEL_SPEC_ERROR = 1, |
| |
| // @generated_from: chromeos.machine_learning.mojom.LoadModelResult.LOAD_MODEL_ERROR |
| LOAD_MODEL_ERROR = 2, |
| |
| // @generated_from: chromeos.machine_learning.mojom.LoadModelResult.FEATURE_NOT_SUPPORTED_ERROR |
| FEATURE_NOT_SUPPORTED_ERROR = 3, |
| |
| // @generated_from: chromeos.machine_learning.mojom.LoadModelResult.LANGUAGE_NOT_SUPPORTED_ERROR |
| LANGUAGE_NOT_SUPPORTED_ERROR = 4, |
| kMinValue = 0, |
| kMaxValue = 4, |
| }; |
| |
| COMPONENT_EXPORT(MLSERVICE_MOJOM_SHARED) std::ostream& operator<<(std::ostream& os, LoadModelResult value); |
| inline bool IsKnownEnumValue(LoadModelResult value) { |
| return internal::LoadModelResult_Data::IsKnownValue( |
| static_cast<int32_t>(value)); |
| } |
| // Interface base classes. They are used for type safety check. |
| class MachineLearningServiceInterfaceBase {}; |
| |
| using MachineLearningServicePtrDataView = |
| mojo::InterfacePtrDataView<MachineLearningServiceInterfaceBase>; |
| using MachineLearningServiceRequestDataView = |
| mojo::InterfaceRequestDataView<MachineLearningServiceInterfaceBase>; |
| using MachineLearningServiceAssociatedPtrInfoDataView = |
| mojo::AssociatedInterfacePtrInfoDataView<MachineLearningServiceInterfaceBase>; |
| using MachineLearningServiceAssociatedRequestDataView = |
| mojo::AssociatedInterfaceRequestDataView<MachineLearningServiceInterfaceBase>; |
| |
| |
| } // namespace mojom |
| } // namespace machine_learning |
| } // namespace chromeos |
| |
| namespace std { |
| |
| template <> |
| struct hash<::chromeos::machine_learning::mojom::LoadModelResult> |
| : public mojo::internal::EnumHashImpl<::chromeos::machine_learning::mojom::LoadModelResult> {}; |
| |
| } // namespace std |
| |
| namespace mojo { |
| |
| |
| namespace internal { |
| |
| template <typename MaybeConstUserType> |
| struct Serializer<::chromeos::machine_learning::mojom::LoadModelResult, MaybeConstUserType> { |
| using UserType = typename std::remove_const<MaybeConstUserType>::type; |
| using Traits = EnumTraits<::chromeos::machine_learning::mojom::LoadModelResult, UserType>; |
| |
| static void Serialize(UserType input, int32_t* output) { |
| *output = static_cast<int32_t>(Traits::ToMojom(input)); |
| } |
| |
| static bool Deserialize(int32_t input, UserType* output) { |
| return Traits::FromMojom(::mojo::internal::ToKnownEnumValueHelper( |
| static_cast<::chromeos::machine_learning::mojom::LoadModelResult>(input)), output); |
| } |
| }; |
| |
| } // namespace internal |
| |
| } // namespace mojo |
| |
| |
| namespace chromeos { |
| namespace machine_learning { |
| namespace mojom { |
| |
| |
| } // namespace mojom |
| } // namespace machine_learning |
| } // namespace chromeos |
| |
| // Declare TraceFormatTraits for enums, which should be defined in ::perfetto |
| // namespace. |
| |
| namespace perfetto { |
| |
| template <> |
| struct COMPONENT_EXPORT(MLSERVICE_MOJOM_SHARED) TraceFormatTraits<::chromeos::machine_learning::mojom::LoadModelResult> { |
| static void WriteIntoTrace(perfetto::TracedValue context, ::chromeos::machine_learning::mojom::LoadModelResult value); |
| }; |
| |
| } // namespace perfetto |
| |
| #endif // CHROMEOS_SERVICES_MACHINE_LEARNING_PUBLIC_MOJOM_MACHINE_LEARNING_SERVICE_MOJOM_SHARED_H_ |
| |
| /* Metadata comment |
| eyJtZXRhIjogW3siZW5kIjogMjU2MSwgImJlZ2luIjogMjU0NiwgImVkZ2UiOiAiJS9reXRoZS9l |
| ZGdlL2dlbmVyYXRlcyIsICJ0eXBlIjogImFuY2hvcl9kZWZpbmVzIiwgInZuYW1lIjogeyJjb3Jw |
| dXMiOiAiY2hyb21pdW0uZ29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9zcmMiLCAibGFuZ3VhZ2Ui |
| OiAibW9qb20iLCAic2lnbmF0dXJlIjogImNocm9tZW9zLm1hY2hpbmVfbGVhcm5pbmcubW9qb20u |
| TG9hZE1vZGVsUmVzdWx0In19LCB7ImVuZCI6IDI2NTIsICJiZWdpbiI6IDI2NTAsICJlZGdlIjog |
| IiUva3l0aGUvZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFt |
| ZSI6IHsiY29ycHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwg |
| Imxhbmd1YWdlIjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJjaHJvbWVvcy5tYWNoaW5lX2xlYXJu |
| aW5nLm1vam9tLkxvYWRNb2RlbFJlc3VsdC5PSyJ9fSwgeyJlbmQiOiAyNzY0LCAiYmVnaW4iOiAy |
| NzQ4LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2Rl |
| ZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2No |
| cm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiY2hyb21lb3Mu |
| bWFjaGluZV9sZWFybmluZy5tb2pvbS5Mb2FkTW9kZWxSZXN1bHQuTU9ERUxfU1BFQ19FUlJPUiJ9 |
| fSwgeyJlbmQiOiAyODc2LCAiYmVnaW4iOiAyODYwLCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2Vu |
| ZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmluZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJj |
| aHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pv |
| bSIsICJzaWduYXR1cmUiOiAiY2hyb21lb3MubWFjaGluZV9sZWFybmluZy5tb2pvbS5Mb2FkTW9k |
| ZWxSZXN1bHQuTE9BRF9NT0RFTF9FUlJPUiJ9fSwgeyJlbmQiOiAzMDEwLCAiYmVnaW4iOiAyOTgz |
| LCAiZWRnZSI6ICIlL2t5dGhlL2VkZ2UvZ2VuZXJhdGVzIiwgInR5cGUiOiAiYW5jaG9yX2RlZmlu |
| ZXMiLCAidm5hbWUiOiB7ImNvcnB1cyI6ICJjaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9t |
| aXVtL3NyYyIsICJsYW5ndWFnZSI6ICJtb2pvbSIsICJzaWduYXR1cmUiOiAiY2hyb21lb3MubWFj |
| aGluZV9sZWFybmluZy5tb2pvbS5Mb2FkTW9kZWxSZXN1bHQuRkVBVFVSRV9OT1RfU1VQUE9SVEVE |
| X0VSUk9SIn19LCB7ImVuZCI6IDMxNDYsICJiZWdpbiI6IDMxMTgsICJlZGdlIjogIiUva3l0aGUv |
| ZWRnZS9nZW5lcmF0ZXMiLCAidHlwZSI6ICJhbmNob3JfZGVmaW5lcyIsICJ2bmFtZSI6IHsiY29y |
| cHVzIjogImNocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vc3JjIiwgImxhbmd1YWdl |
| IjogIm1vam9tIiwgInNpZ25hdHVyZSI6ICJjaHJvbWVvcy5tYWNoaW5lX2xlYXJuaW5nLm1vam9t |
| LkxvYWRNb2RlbFJlc3VsdC5MQU5HVUFHRV9OT1RfU1VQUE9SVEVEX0VSUk9SIn19XSwgInR5cGUi |
| OiAia3l0aGUwIn0= |
| */ |