blob: aee481e3b8ab97e23cb3945931dd8f6462249035 [file] [log] [blame]
// 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_