| // chromeos/services/machine_learning/public/mojom/soda.mojom-shared-internal.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 CHROMEOS_SERVICES_MACHINE_LEARNING_PUBLIC_MOJOM_SODA_MOJOM_SHARED_INTERNAL_H_ |
| #define CHROMEOS_SERVICES_MACHINE_LEARNING_PUBLIC_MOJOM_SODA_MOJOM_SHARED_INTERNAL_H_ |
| #include "mojo/public/cpp/bindings/lib/array_internal.h" |
| #include "mojo/public/cpp/bindings/lib/bindings_internal.h" |
| #include "mojo/public/cpp/bindings/lib/map_data_internal.h" |
| #include "mojo/public/cpp/bindings/lib/buffer.h" |
| #include "mojo/public/mojom/base/time.mojom-shared-internal.h" |
| #include "mojo/public/cpp/bindings/lib/native_enum_data.h" |
| #include "mojo/public/interfaces/bindings/native_struct.mojom-shared-internal.h" |
| #include "base/component_export.h" |
| |
| |
| |
| namespace mojo { |
| namespace internal { |
| class ValidationContext; |
| } |
| } |
| |
| |
| namespace chromeos::machine_learning::mojom { |
| namespace internal { |
| class SodaMultilangConfig_Data; |
| class SodaConfig_Data; |
| class TimingInfo_Data; |
| class EndpointerEvent_Data; |
| class PartialResult_Data; |
| class HypothesisPartInResult_Data; |
| class FinalResult_Data; |
| class AudioLevelEvent_Data; |
| class LangIdEvent_Data; |
| class SpeechRecognizerEvent_Data; |
| |
| struct OptionalBool_Data { |
| public: |
| static bool constexpr kIsExtensible = true; |
| |
| static bool IsKnownValue(int32_t value) { |
| switch (value) { |
| case 0: |
| case 1: |
| case 2: |
| return true; |
| } |
| return false; |
| } |
| |
| static bool Validate(int32_t value, |
| mojo::internal::ValidationContext* validation_context) { |
| if (kIsExtensible || IsKnownValue(value)) |
| return true; |
| |
| ReportValidationError(validation_context, |
| mojo::internal::VALIDATION_ERROR_UNKNOWN_ENUM_VALUE); |
| return false; |
| } |
| }; |
| |
| struct SodaRecognitionMode_Data { |
| public: |
| static bool constexpr kIsExtensible = true; |
| |
| static bool IsKnownValue(int32_t value) { |
| switch (value) { |
| case 0: |
| case 1: |
| return true; |
| } |
| return false; |
| } |
| |
| static bool Validate(int32_t value, |
| mojo::internal::ValidationContext* validation_context) { |
| if (kIsExtensible || IsKnownValue(value)) |
| return true; |
| |
| ReportValidationError(validation_context, |
| mojo::internal::VALIDATION_ERROR_UNKNOWN_ENUM_VALUE); |
| return false; |
| } |
| }; |
| |
| struct EndpointerType_Data { |
| public: |
| static bool constexpr kIsExtensible = true; |
| |
| static bool IsKnownValue(int32_t value) { |
| switch (value) { |
| case 0: |
| case 1: |
| case 2: |
| case 3: |
| return true; |
| } |
| return false; |
| } |
| |
| static bool Validate(int32_t value, |
| mojo::internal::ValidationContext* validation_context) { |
| if (kIsExtensible || IsKnownValue(value)) |
| return true; |
| |
| ReportValidationError(validation_context, |
| mojo::internal::VALIDATION_ERROR_UNKNOWN_ENUM_VALUE); |
| return false; |
| } |
| }; |
| |
| struct EndpointReason_Data { |
| public: |
| static bool constexpr kIsExtensible = true; |
| |
| static bool IsKnownValue(int32_t value) { |
| switch (value) { |
| case 0: |
| case 1: |
| case 2: |
| case 3: |
| return true; |
| } |
| return false; |
| } |
| |
| static bool Validate(int32_t value, |
| mojo::internal::ValidationContext* validation_context) { |
| if (kIsExtensible || IsKnownValue(value)) |
| return true; |
| |
| ReportValidationError(validation_context, |
| mojo::internal::VALIDATION_ERROR_UNKNOWN_ENUM_VALUE); |
| return false; |
| } |
| }; |
| |
| struct AsrSwitchResult_Data { |
| public: |
| static bool constexpr kIsExtensible = true; |
| |
| static bool IsKnownValue(int32_t value) { |
| switch (value) { |
| case 0: |
| case 1: |
| case 2: |
| case 3: |
| return true; |
| } |
| return false; |
| } |
| |
| static bool Validate(int32_t value, |
| mojo::internal::ValidationContext* validation_context) { |
| if (kIsExtensible || IsKnownValue(value)) |
| return true; |
| |
| ReportValidationError(validation_context, |
| mojo::internal::VALIDATION_ERROR_UNKNOWN_ENUM_VALUE); |
| return false; |
| } |
| }; |
| |
| #pragma pack(push, 1) |
| |
| |
| class COMPONENT_EXPORT(MLSERVICE_MOJOM_SHARED) SpeechRecognizerEvent_Data { |
| public: |
| // Used to identify Mojom Union Data Classes. |
| typedef void MojomUnionDataType; |
| |
| SpeechRecognizerEvent_Data() = default; |
| // Do nothing in the destructor since it won't be called when it is a |
| // non-inlined union. |
| ~SpeechRecognizerEvent_Data() = default; |
| |
| static bool Validate(const void* data, |
| mojo::internal::ValidationContext* validation_context, |
| bool inlined); |
| |
| bool is_null() const { return size == 0; } |
| |
| void set_null() { |
| size = 0U; |
| tag = static_cast<SpeechRecognizerEvent_Tag>(0); |
| data.unknown = 0U; |
| } |
| |
| // TODO(crbug.com/40731316): SHOUTY_CASE values are being deprecated per C++ code style |
| // guidelines (https://google.github.io/styleguide/cppguide.html#Enumerator_Names), |
| // please use kCamelCase values instead. Cleanup NULL_VALUE, BOOL_VALUE, INT_VALUE, etc. |
| // generation once codebase is transitioned to kNullValue, kBoolValue, kIntValue, etc. |
| enum class SpeechRecognizerEvent_Tag : uint32_t { |
| |
| |
| kAudioEvent, |
| |
| kPartialResult, |
| |
| kEndpointerEvent, |
| |
| kFinalResult, |
| |
| kLangidEvent, |
| }; |
| |
| // A note on layout: |
| // "Each non-static data member is allocated as if it were the sole member of |
| // a struct." - Section 9.5.2 ISO/IEC 14882:2011 (The C++ Spec) |
| union MOJO_ALIGNAS(8) Union_ { |
| Union_() : unknown(0) {} |
| mojo::internal::Pointer<internal::AudioLevelEvent_Data> f_audio_event; |
| mojo::internal::Pointer<internal::PartialResult_Data> f_partial_result; |
| mojo::internal::Pointer<internal::EndpointerEvent_Data> f_endpointer_event; |
| mojo::internal::Pointer<internal::FinalResult_Data> f_final_result; |
| mojo::internal::Pointer<internal::LangIdEvent_Data> f_langid_event; |
| uint64_t unknown; |
| }; |
| |
| uint32_t size; |
| SpeechRecognizerEvent_Tag tag; |
| Union_ data; |
| }; |
| static_assert(sizeof(SpeechRecognizerEvent_Data) == mojo::internal::kUnionDataSize, |
| "Bad sizeof(SpeechRecognizerEvent_Data)"); |
| class COMPONENT_EXPORT(MLSERVICE_MOJOM_SHARED) SodaMultilangConfig_Data { |
| public: |
| static bool Validate(const void* data, |
| mojo::internal::ValidationContext* validation_context); |
| |
| mojo::internal::StructHeader header_; |
| uint8_t rewind_when_switching_language : 1; |
| uint8_t pad0_[7]; |
| mojo::internal::Pointer<mojo::internal::Map_Data<mojo::internal::Pointer<mojo::internal::String_Data>, mojo::internal::Pointer<mojo::internal::String_Data>>> locale_to_language_pack_map; |
| |
| private: |
| friend class mojo::internal::MessageFragment<SodaMultilangConfig_Data>; |
| |
| SodaMultilangConfig_Data(); |
| ~SodaMultilangConfig_Data() = delete; |
| }; |
| static_assert(sizeof(SodaMultilangConfig_Data) == 24, |
| "Bad sizeof(SodaMultilangConfig_Data)"); |
| // Used by SodaMultilangConfig::WrapAsMessage to lazily serialize the struct. |
| template <typename UserType, typename DataView> |
| struct SodaMultilangConfig_UnserializedMessageContext |
| : public mojo::internal::UnserializedMessageContext { |
| public: |
| static const mojo::internal::UnserializedMessageContext::Tag kMessageTag; |
| |
| SodaMultilangConfig_UnserializedMessageContext( |
| uint32_t message_name, |
| uint32_t message_flags, |
| UserType input) |
| : mojo::internal::UnserializedMessageContext(&kMessageTag, message_name, message_flags) |
| , user_data_(std::move(input)) {} |
| ~SodaMultilangConfig_UnserializedMessageContext() override = default; |
| |
| UserType TakeData() { |
| return std::move(user_data_); |
| } |
| |
| private: |
| // mojo::internal::UnserializedMessageContext: |
| void Serialize(mojo::Message& message) override { |
| mojo::internal::MessageFragment<SodaMultilangConfig_Data> fragment(message); |
| mojo::internal::Serialize<DataView>(user_data_, fragment); |
| } |
| |
| UserType user_data_; |
| }; |
| |
| template <typename UserType, typename DataView> |
| const mojo::internal::UnserializedMessageContext::Tag |
| SodaMultilangConfig_UnserializedMessageContext<UserType, DataView>::kMessageTag = {}; |
| class COMPONENT_EXPORT(MLSERVICE_MOJOM_SHARED) SodaConfig_Data { |
| public: |
| static bool Validate(const void* data, |
| mojo::internal::ValidationContext* validation_context); |
| |
| mojo::internal::StructHeader header_; |
| uint32_t channel_count; |
| uint32_t sample_rate; |
| mojo::internal::Pointer<mojo::internal::String_Data> api_key; |
| mojo::internal::Pointer<mojo::internal::String_Data> library_dlc_path; |
| mojo::internal::Pointer<mojo::internal::String_Data> language_dlc_path; |
| int32_t enable_formatting; |
| int32_t recognition_mode; |
| uint8_t mask_offensive_words : 1; |
| uint8_t speaker_change_detection : 1; |
| uint8_t include_logging_output : 1; |
| uint8_t pad9_[7]; |
| mojo::internal::Pointer<internal::SodaMultilangConfig_Data> multi_lang_config; |
| |
| private: |
| friend class mojo::internal::MessageFragment<SodaConfig_Data>; |
| |
| SodaConfig_Data(); |
| ~SodaConfig_Data() = delete; |
| }; |
| static_assert(sizeof(SodaConfig_Data) == 64, |
| "Bad sizeof(SodaConfig_Data)"); |
| // Used by SodaConfig::WrapAsMessage to lazily serialize the struct. |
| template <typename UserType, typename DataView> |
| struct SodaConfig_UnserializedMessageContext |
| : public mojo::internal::UnserializedMessageContext { |
| public: |
| static const mojo::internal::UnserializedMessageContext::Tag kMessageTag; |
| |
| SodaConfig_UnserializedMessageContext( |
| uint32_t message_name, |
| uint32_t message_flags, |
| UserType input) |
| : mojo::internal::UnserializedMessageContext(&kMessageTag, message_name, message_flags) |
| , user_data_(std::move(input)) {} |
| ~SodaConfig_UnserializedMessageContext() override = default; |
| |
| UserType TakeData() { |
| return std::move(user_data_); |
| } |
| |
| private: |
| // mojo::internal::UnserializedMessageContext: |
| void Serialize(mojo::Message& message) override { |
| mojo::internal::MessageFragment<SodaConfig_Data> fragment(message); |
| mojo::internal::Serialize<DataView>(user_data_, fragment); |
| } |
| |
| UserType user_data_; |
| }; |
| |
| template <typename UserType, typename DataView> |
| const mojo::internal::UnserializedMessageContext::Tag |
| SodaConfig_UnserializedMessageContext<UserType, DataView>::kMessageTag = {}; |
| class COMPONENT_EXPORT(MLSERVICE_MOJOM_SHARED) TimingInfo_Data { |
| public: |
| static bool Validate(const void* data, |
| mojo::internal::ValidationContext* validation_context); |
| |
| mojo::internal::StructHeader header_; |
| mojo::internal::Pointer<::mojo_base::mojom::internal::Time_Data> audio_start_epoch; |
| mojo::internal::Pointer<::mojo_base::mojom::internal::TimeDelta_Data> audio_start_time; |
| mojo::internal::Pointer<::mojo_base::mojom::internal::TimeDelta_Data> elapsed_wall_time; |
| mojo::internal::Pointer<::mojo_base::mojom::internal::TimeDelta_Data> event_end_time; |
| mojo::internal::Pointer<::mojo_base::mojom::internal::TimeDelta_Data> latency; |
| float normalized_latency; |
| uint8_t pad5_[4]; |
| mojo::internal::Pointer<mojo::internal::Array_Data<mojo::internal::Pointer<::mojo_base::mojom::internal::TimeDelta_Data>>> word_alignments; |
| |
| private: |
| friend class mojo::internal::MessageFragment<TimingInfo_Data>; |
| |
| TimingInfo_Data(); |
| ~TimingInfo_Data() = delete; |
| }; |
| static_assert(sizeof(TimingInfo_Data) == 64, |
| "Bad sizeof(TimingInfo_Data)"); |
| // Used by TimingInfo::WrapAsMessage to lazily serialize the struct. |
| template <typename UserType, typename DataView> |
| struct TimingInfo_UnserializedMessageContext |
| : public mojo::internal::UnserializedMessageContext { |
| public: |
| static const mojo::internal::UnserializedMessageContext::Tag kMessageTag; |
| |
| TimingInfo_UnserializedMessageContext( |
| uint32_t message_name, |
| uint32_t message_flags, |
| UserType input) |
| : mojo::internal::UnserializedMessageContext(&kMessageTag, message_name, message_flags) |
| , user_data_(std::move(input)) {} |
| ~TimingInfo_UnserializedMessageContext() override = default; |
| |
| UserType TakeData() { |
| return std::move(user_data_); |
| } |
| |
| private: |
| // mojo::internal::UnserializedMessageContext: |
| void Serialize(mojo::Message& message) override { |
| mojo::internal::MessageFragment<TimingInfo_Data> fragment(message); |
| mojo::internal::Serialize<DataView>(user_data_, fragment); |
| } |
| |
| UserType user_data_; |
| }; |
| |
| template <typename UserType, typename DataView> |
| const mojo::internal::UnserializedMessageContext::Tag |
| TimingInfo_UnserializedMessageContext<UserType, DataView>::kMessageTag = {}; |
| class COMPONENT_EXPORT(MLSERVICE_MOJOM_SHARED) EndpointerEvent_Data { |
| public: |
| static bool Validate(const void* data, |
| mojo::internal::ValidationContext* validation_context); |
| |
| mojo::internal::StructHeader header_; |
| int32_t endpointer_type; |
| uint8_t pad0_[4]; |
| mojo::internal::Pointer<internal::TimingInfo_Data> timing_event; |
| |
| private: |
| friend class mojo::internal::MessageFragment<EndpointerEvent_Data>; |
| |
| EndpointerEvent_Data(); |
| ~EndpointerEvent_Data() = delete; |
| }; |
| static_assert(sizeof(EndpointerEvent_Data) == 24, |
| "Bad sizeof(EndpointerEvent_Data)"); |
| // Used by EndpointerEvent::WrapAsMessage to lazily serialize the struct. |
| template <typename UserType, typename DataView> |
| struct EndpointerEvent_UnserializedMessageContext |
| : public mojo::internal::UnserializedMessageContext { |
| public: |
| static const mojo::internal::UnserializedMessageContext::Tag kMessageTag; |
| |
| EndpointerEvent_UnserializedMessageContext( |
| uint32_t message_name, |
| uint32_t message_flags, |
| UserType input) |
| : mojo::internal::UnserializedMessageContext(&kMessageTag, message_name, message_flags) |
| , user_data_(std::move(input)) {} |
| ~EndpointerEvent_UnserializedMessageContext() override = default; |
| |
| UserType TakeData() { |
| return std::move(user_data_); |
| } |
| |
| private: |
| // mojo::internal::UnserializedMessageContext: |
| void Serialize(mojo::Message& message) override { |
| mojo::internal::MessageFragment<EndpointerEvent_Data> fragment(message); |
| mojo::internal::Serialize<DataView>(user_data_, fragment); |
| } |
| |
| UserType user_data_; |
| }; |
| |
| template <typename UserType, typename DataView> |
| const mojo::internal::UnserializedMessageContext::Tag |
| EndpointerEvent_UnserializedMessageContext<UserType, DataView>::kMessageTag = {}; |
| class COMPONENT_EXPORT(MLSERVICE_MOJOM_SHARED) PartialResult_Data { |
| public: |
| static bool Validate(const void* data, |
| mojo::internal::ValidationContext* validation_context); |
| |
| mojo::internal::StructHeader header_; |
| mojo::internal::Pointer<mojo::internal::Array_Data<mojo::internal::Pointer<mojo::internal::String_Data>>> partial_text; |
| mojo::internal::Pointer<internal::TimingInfo_Data> timing_event; |
| |
| private: |
| friend class mojo::internal::MessageFragment<PartialResult_Data>; |
| |
| PartialResult_Data(); |
| ~PartialResult_Data() = delete; |
| }; |
| static_assert(sizeof(PartialResult_Data) == 24, |
| "Bad sizeof(PartialResult_Data)"); |
| // Used by PartialResult::WrapAsMessage to lazily serialize the struct. |
| template <typename UserType, typename DataView> |
| struct PartialResult_UnserializedMessageContext |
| : public mojo::internal::UnserializedMessageContext { |
| public: |
| static const mojo::internal::UnserializedMessageContext::Tag kMessageTag; |
| |
| PartialResult_UnserializedMessageContext( |
| uint32_t message_name, |
| uint32_t message_flags, |
| UserType input) |
| : mojo::internal::UnserializedMessageContext(&kMessageTag, message_name, message_flags) |
| , user_data_(std::move(input)) {} |
| ~PartialResult_UnserializedMessageContext() override = default; |
| |
| UserType TakeData() { |
| return std::move(user_data_); |
| } |
| |
| private: |
| // mojo::internal::UnserializedMessageContext: |
| void Serialize(mojo::Message& message) override { |
| mojo::internal::MessageFragment<PartialResult_Data> fragment(message); |
| mojo::internal::Serialize<DataView>(user_data_, fragment); |
| } |
| |
| UserType user_data_; |
| }; |
| |
| template <typename UserType, typename DataView> |
| const mojo::internal::UnserializedMessageContext::Tag |
| PartialResult_UnserializedMessageContext<UserType, DataView>::kMessageTag = {}; |
| class COMPONENT_EXPORT(MLSERVICE_MOJOM_SHARED) HypothesisPartInResult_Data { |
| public: |
| static bool Validate(const void* data, |
| mojo::internal::ValidationContext* validation_context); |
| |
| mojo::internal::StructHeader header_; |
| mojo::internal::Pointer<mojo::internal::Array_Data<mojo::internal::Pointer<mojo::internal::String_Data>>> text; |
| mojo::internal::Pointer<::mojo_base::mojom::internal::TimeDelta_Data> alignment; |
| |
| private: |
| friend class mojo::internal::MessageFragment<HypothesisPartInResult_Data>; |
| |
| HypothesisPartInResult_Data(); |
| ~HypothesisPartInResult_Data() = delete; |
| }; |
| static_assert(sizeof(HypothesisPartInResult_Data) == 24, |
| "Bad sizeof(HypothesisPartInResult_Data)"); |
| // Used by HypothesisPartInResult::WrapAsMessage to lazily serialize the struct. |
| template <typename UserType, typename DataView> |
| struct HypothesisPartInResult_UnserializedMessageContext |
| : public mojo::internal::UnserializedMessageContext { |
| public: |
| static const mojo::internal::UnserializedMessageContext::Tag kMessageTag; |
| |
| HypothesisPartInResult_UnserializedMessageContext( |
| uint32_t message_name, |
| uint32_t message_flags, |
| UserType input) |
| : mojo::internal::UnserializedMessageContext(&kMessageTag, message_name, message_flags) |
| , user_data_(std::move(input)) {} |
| ~HypothesisPartInResult_UnserializedMessageContext() override = default; |
| |
| UserType TakeData() { |
| return std::move(user_data_); |
| } |
| |
| private: |
| // mojo::internal::UnserializedMessageContext: |
| void Serialize(mojo::Message& message) override { |
| mojo::internal::MessageFragment<HypothesisPartInResult_Data> fragment(message); |
| mojo::internal::Serialize<DataView>(user_data_, fragment); |
| } |
| |
| UserType user_data_; |
| }; |
| |
| template <typename UserType, typename DataView> |
| const mojo::internal::UnserializedMessageContext::Tag |
| HypothesisPartInResult_UnserializedMessageContext<UserType, DataView>::kMessageTag = {}; |
| class COMPONENT_EXPORT(MLSERVICE_MOJOM_SHARED) FinalResult_Data { |
| public: |
| static bool Validate(const void* data, |
| mojo::internal::ValidationContext* validation_context); |
| |
| mojo::internal::StructHeader header_; |
| mojo::internal::Pointer<mojo::internal::Array_Data<mojo::internal::Pointer<mojo::internal::String_Data>>> final_hypotheses; |
| int32_t endpoint_reason; |
| uint8_t pad1_[4]; |
| mojo::internal::Pointer<internal::TimingInfo_Data> timing_event; |
| mojo::internal::Pointer<mojo::internal::Array_Data<mojo::internal::Pointer<internal::HypothesisPartInResult_Data>>> hypothesis_part; |
| |
| private: |
| friend class mojo::internal::MessageFragment<FinalResult_Data>; |
| |
| FinalResult_Data(); |
| ~FinalResult_Data() = delete; |
| }; |
| static_assert(sizeof(FinalResult_Data) == 40, |
| "Bad sizeof(FinalResult_Data)"); |
| // Used by FinalResult::WrapAsMessage to lazily serialize the struct. |
| template <typename UserType, typename DataView> |
| struct FinalResult_UnserializedMessageContext |
| : public mojo::internal::UnserializedMessageContext { |
| public: |
| static const mojo::internal::UnserializedMessageContext::Tag kMessageTag; |
| |
| FinalResult_UnserializedMessageContext( |
| uint32_t message_name, |
| uint32_t message_flags, |
| UserType input) |
| : mojo::internal::UnserializedMessageContext(&kMessageTag, message_name, message_flags) |
| , user_data_(std::move(input)) {} |
| ~FinalResult_UnserializedMessageContext() override = default; |
| |
| UserType TakeData() { |
| return std::move(user_data_); |
| } |
| |
| private: |
| // mojo::internal::UnserializedMessageContext: |
| void Serialize(mojo::Message& message) override { |
| mojo::internal::MessageFragment<FinalResult_Data> fragment(message); |
| mojo::internal::Serialize<DataView>(user_data_, fragment); |
| } |
| |
| UserType user_data_; |
| }; |
| |
| template <typename UserType, typename DataView> |
| const mojo::internal::UnserializedMessageContext::Tag |
| FinalResult_UnserializedMessageContext<UserType, DataView>::kMessageTag = {}; |
| class COMPONENT_EXPORT(MLSERVICE_MOJOM_SHARED) AudioLevelEvent_Data { |
| public: |
| static bool Validate(const void* data, |
| mojo::internal::ValidationContext* validation_context); |
| |
| mojo::internal::StructHeader header_; |
| float rms; |
| float audio_level; |
| |
| private: |
| friend class mojo::internal::MessageFragment<AudioLevelEvent_Data>; |
| |
| AudioLevelEvent_Data(); |
| ~AudioLevelEvent_Data() = delete; |
| }; |
| static_assert(sizeof(AudioLevelEvent_Data) == 16, |
| "Bad sizeof(AudioLevelEvent_Data)"); |
| // Used by AudioLevelEvent::WrapAsMessage to lazily serialize the struct. |
| template <typename UserType, typename DataView> |
| struct AudioLevelEvent_UnserializedMessageContext |
| : public mojo::internal::UnserializedMessageContext { |
| public: |
| static const mojo::internal::UnserializedMessageContext::Tag kMessageTag; |
| |
| AudioLevelEvent_UnserializedMessageContext( |
| uint32_t message_name, |
| uint32_t message_flags, |
| UserType input) |
| : mojo::internal::UnserializedMessageContext(&kMessageTag, message_name, message_flags) |
| , user_data_(std::move(input)) {} |
| ~AudioLevelEvent_UnserializedMessageContext() override = default; |
| |
| UserType TakeData() { |
| return std::move(user_data_); |
| } |
| |
| private: |
| // mojo::internal::UnserializedMessageContext: |
| void Serialize(mojo::Message& message) override { |
| mojo::internal::MessageFragment<AudioLevelEvent_Data> fragment(message); |
| mojo::internal::Serialize<DataView>(user_data_, fragment); |
| } |
| |
| UserType user_data_; |
| }; |
| |
| template <typename UserType, typename DataView> |
| const mojo::internal::UnserializedMessageContext::Tag |
| AudioLevelEvent_UnserializedMessageContext<UserType, DataView>::kMessageTag = {}; |
| class COMPONENT_EXPORT(MLSERVICE_MOJOM_SHARED) LangIdEvent_Data { |
| public: |
| static bool Validate(const void* data, |
| mojo::internal::ValidationContext* validation_context); |
| |
| mojo::internal::StructHeader header_; |
| mojo::internal::Pointer<mojo::internal::String_Data> language; |
| int32_t confidence_level; |
| int32_t asr_switch_result; |
| |
| private: |
| friend class mojo::internal::MessageFragment<LangIdEvent_Data>; |
| |
| LangIdEvent_Data(); |
| ~LangIdEvent_Data() = delete; |
| }; |
| static_assert(sizeof(LangIdEvent_Data) == 24, |
| "Bad sizeof(LangIdEvent_Data)"); |
| // Used by LangIdEvent::WrapAsMessage to lazily serialize the struct. |
| template <typename UserType, typename DataView> |
| struct LangIdEvent_UnserializedMessageContext |
| : public mojo::internal::UnserializedMessageContext { |
| public: |
| static const mojo::internal::UnserializedMessageContext::Tag kMessageTag; |
| |
| LangIdEvent_UnserializedMessageContext( |
| uint32_t message_name, |
| uint32_t message_flags, |
| UserType input) |
| : mojo::internal::UnserializedMessageContext(&kMessageTag, message_name, message_flags) |
| , user_data_(std::move(input)) {} |
| ~LangIdEvent_UnserializedMessageContext() override = default; |
| |
| UserType TakeData() { |
| return std::move(user_data_); |
| } |
| |
| private: |
| // mojo::internal::UnserializedMessageContext: |
| void Serialize(mojo::Message& message) override { |
| mojo::internal::MessageFragment<LangIdEvent_Data> fragment(message); |
| mojo::internal::Serialize<DataView>(user_data_, fragment); |
| } |
| |
| UserType user_data_; |
| }; |
| |
| template <typename UserType, typename DataView> |
| const mojo::internal::UnserializedMessageContext::Tag |
| LangIdEvent_UnserializedMessageContext<UserType, DataView>::kMessageTag = {}; |
| |
| #pragma pack(pop) |
| |
| } // namespace internal |
| |
| } // chromeos::machine_learning::mojom |
| |
| #endif // CHROMEOS_SERVICES_MACHINE_LEARNING_PUBLIC_MOJOM_SODA_MOJOM_SHARED_INTERNAL_H_ |