/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace Polly { namespace Model { /** *

Description of the voice.

See Also:

AWS API * Reference

*/ class Voice { public: AWS_POLLY_API Voice(); AWS_POLLY_API Voice(Aws::Utils::Json::JsonView jsonValue); AWS_POLLY_API Voice& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_POLLY_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

Gender of the voice.

*/ inline const Gender& GetGender() const{ return m_gender; } /** *

Gender of the voice.

*/ inline bool GenderHasBeenSet() const { return m_genderHasBeenSet; } /** *

Gender of the voice.

*/ inline void SetGender(const Gender& value) { m_genderHasBeenSet = true; m_gender = value; } /** *

Gender of the voice.

*/ inline void SetGender(Gender&& value) { m_genderHasBeenSet = true; m_gender = std::move(value); } /** *

Gender of the voice.

*/ inline Voice& WithGender(const Gender& value) { SetGender(value); return *this;} /** *

Gender of the voice.

*/ inline Voice& WithGender(Gender&& value) { SetGender(std::move(value)); return *this;} /** *

Amazon Polly assigned voice ID. This is the ID that you specify when calling * the SynthesizeSpeech operation.

*/ inline const VoiceId& GetId() const{ return m_id; } /** *

Amazon Polly assigned voice ID. This is the ID that you specify when calling * the SynthesizeSpeech operation.

*/ inline bool IdHasBeenSet() const { return m_idHasBeenSet; } /** *

Amazon Polly assigned voice ID. This is the ID that you specify when calling * the SynthesizeSpeech operation.

*/ inline void SetId(const VoiceId& value) { m_idHasBeenSet = true; m_id = value; } /** *

Amazon Polly assigned voice ID. This is the ID that you specify when calling * the SynthesizeSpeech operation.

*/ inline void SetId(VoiceId&& value) { m_idHasBeenSet = true; m_id = std::move(value); } /** *

Amazon Polly assigned voice ID. This is the ID that you specify when calling * the SynthesizeSpeech operation.

*/ inline Voice& WithId(const VoiceId& value) { SetId(value); return *this;} /** *

Amazon Polly assigned voice ID. This is the ID that you specify when calling * the SynthesizeSpeech operation.

*/ inline Voice& WithId(VoiceId&& value) { SetId(std::move(value)); return *this;} /** *

Language code of the voice.

*/ inline const LanguageCode& GetLanguageCode() const{ return m_languageCode; } /** *

Language code of the voice.

*/ inline bool LanguageCodeHasBeenSet() const { return m_languageCodeHasBeenSet; } /** *

Language code of the voice.

*/ inline void SetLanguageCode(const LanguageCode& value) { m_languageCodeHasBeenSet = true; m_languageCode = value; } /** *

Language code of the voice.

*/ inline void SetLanguageCode(LanguageCode&& value) { m_languageCodeHasBeenSet = true; m_languageCode = std::move(value); } /** *

Language code of the voice.

*/ inline Voice& WithLanguageCode(const LanguageCode& value) { SetLanguageCode(value); return *this;} /** *

Language code of the voice.

*/ inline Voice& WithLanguageCode(LanguageCode&& value) { SetLanguageCode(std::move(value)); return *this;} /** *

Human readable name of the language in English.

*/ inline const Aws::String& GetLanguageName() const{ return m_languageName; } /** *

Human readable name of the language in English.

*/ inline bool LanguageNameHasBeenSet() const { return m_languageNameHasBeenSet; } /** *

Human readable name of the language in English.

*/ inline void SetLanguageName(const Aws::String& value) { m_languageNameHasBeenSet = true; m_languageName = value; } /** *

Human readable name of the language in English.

*/ inline void SetLanguageName(Aws::String&& value) { m_languageNameHasBeenSet = true; m_languageName = std::move(value); } /** *

Human readable name of the language in English.

*/ inline void SetLanguageName(const char* value) { m_languageNameHasBeenSet = true; m_languageName.assign(value); } /** *

Human readable name of the language in English.

*/ inline Voice& WithLanguageName(const Aws::String& value) { SetLanguageName(value); return *this;} /** *

Human readable name of the language in English.

*/ inline Voice& WithLanguageName(Aws::String&& value) { SetLanguageName(std::move(value)); return *this;} /** *

Human readable name of the language in English.

*/ inline Voice& WithLanguageName(const char* value) { SetLanguageName(value); return *this;} /** *

Name of the voice (for example, Salli, Kendra, etc.). This provides a human * readable voice name that you might display in your application.

*/ inline const Aws::String& GetName() const{ return m_name; } /** *

Name of the voice (for example, Salli, Kendra, etc.). This provides a human * readable voice name that you might display in your application.

*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *

Name of the voice (for example, Salli, Kendra, etc.). This provides a human * readable voice name that you might display in your application.

*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *

Name of the voice (for example, Salli, Kendra, etc.). This provides a human * readable voice name that you might display in your application.

*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *

Name of the voice (for example, Salli, Kendra, etc.). This provides a human * readable voice name that you might display in your application.

*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *

Name of the voice (for example, Salli, Kendra, etc.). This provides a human * readable voice name that you might display in your application.

*/ inline Voice& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

Name of the voice (for example, Salli, Kendra, etc.). This provides a human * readable voice name that you might display in your application.

*/ inline Voice& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *

Name of the voice (for example, Salli, Kendra, etc.). This provides a human * readable voice name that you might display in your application.

*/ inline Voice& WithName(const char* value) { SetName(value); return *this;} /** *

Additional codes for languages available for the specified voice in addition * to its default language.

For example, the default language for Aditi is * Indian English (en-IN) because it was first used for that language. Since Aditi * is bilingual and fluent in both Indian English and Hindi, this parameter would * show the code hi-IN.

*/ inline const Aws::Vector& GetAdditionalLanguageCodes() const{ return m_additionalLanguageCodes; } /** *

Additional codes for languages available for the specified voice in addition * to its default language.

For example, the default language for Aditi is * Indian English (en-IN) because it was first used for that language. Since Aditi * is bilingual and fluent in both Indian English and Hindi, this parameter would * show the code hi-IN.

*/ inline bool AdditionalLanguageCodesHasBeenSet() const { return m_additionalLanguageCodesHasBeenSet; } /** *

Additional codes for languages available for the specified voice in addition * to its default language.

For example, the default language for Aditi is * Indian English (en-IN) because it was first used for that language. Since Aditi * is bilingual and fluent in both Indian English and Hindi, this parameter would * show the code hi-IN.

*/ inline void SetAdditionalLanguageCodes(const Aws::Vector& value) { m_additionalLanguageCodesHasBeenSet = true; m_additionalLanguageCodes = value; } /** *

Additional codes for languages available for the specified voice in addition * to its default language.

For example, the default language for Aditi is * Indian English (en-IN) because it was first used for that language. Since Aditi * is bilingual and fluent in both Indian English and Hindi, this parameter would * show the code hi-IN.

*/ inline void SetAdditionalLanguageCodes(Aws::Vector&& value) { m_additionalLanguageCodesHasBeenSet = true; m_additionalLanguageCodes = std::move(value); } /** *

Additional codes for languages available for the specified voice in addition * to its default language.

For example, the default language for Aditi is * Indian English (en-IN) because it was first used for that language. Since Aditi * is bilingual and fluent in both Indian English and Hindi, this parameter would * show the code hi-IN.

*/ inline Voice& WithAdditionalLanguageCodes(const Aws::Vector& value) { SetAdditionalLanguageCodes(value); return *this;} /** *

Additional codes for languages available for the specified voice in addition * to its default language.

For example, the default language for Aditi is * Indian English (en-IN) because it was first used for that language. Since Aditi * is bilingual and fluent in both Indian English and Hindi, this parameter would * show the code hi-IN.

*/ inline Voice& WithAdditionalLanguageCodes(Aws::Vector&& value) { SetAdditionalLanguageCodes(std::move(value)); return *this;} /** *

Additional codes for languages available for the specified voice in addition * to its default language.

For example, the default language for Aditi is * Indian English (en-IN) because it was first used for that language. Since Aditi * is bilingual and fluent in both Indian English and Hindi, this parameter would * show the code hi-IN.

*/ inline Voice& AddAdditionalLanguageCodes(const LanguageCode& value) { m_additionalLanguageCodesHasBeenSet = true; m_additionalLanguageCodes.push_back(value); return *this; } /** *

Additional codes for languages available for the specified voice in addition * to its default language.

For example, the default language for Aditi is * Indian English (en-IN) because it was first used for that language. Since Aditi * is bilingual and fluent in both Indian English and Hindi, this parameter would * show the code hi-IN.

*/ inline Voice& AddAdditionalLanguageCodes(LanguageCode&& value) { m_additionalLanguageCodesHasBeenSet = true; m_additionalLanguageCodes.push_back(std::move(value)); return *this; } /** *

Specifies which engines (standard or neural) that * are supported by a given voice.

*/ inline const Aws::Vector& GetSupportedEngines() const{ return m_supportedEngines; } /** *

Specifies which engines (standard or neural) that * are supported by a given voice.

*/ inline bool SupportedEnginesHasBeenSet() const { return m_supportedEnginesHasBeenSet; } /** *

Specifies which engines (standard or neural) that * are supported by a given voice.

*/ inline void SetSupportedEngines(const Aws::Vector& value) { m_supportedEnginesHasBeenSet = true; m_supportedEngines = value; } /** *

Specifies which engines (standard or neural) that * are supported by a given voice.

*/ inline void SetSupportedEngines(Aws::Vector&& value) { m_supportedEnginesHasBeenSet = true; m_supportedEngines = std::move(value); } /** *

Specifies which engines (standard or neural) that * are supported by a given voice.

*/ inline Voice& WithSupportedEngines(const Aws::Vector& value) { SetSupportedEngines(value); return *this;} /** *

Specifies which engines (standard or neural) that * are supported by a given voice.

*/ inline Voice& WithSupportedEngines(Aws::Vector&& value) { SetSupportedEngines(std::move(value)); return *this;} /** *

Specifies which engines (standard or neural) that * are supported by a given voice.

*/ inline Voice& AddSupportedEngines(const Engine& value) { m_supportedEnginesHasBeenSet = true; m_supportedEngines.push_back(value); return *this; } /** *

Specifies which engines (standard or neural) that * are supported by a given voice.

*/ inline Voice& AddSupportedEngines(Engine&& value) { m_supportedEnginesHasBeenSet = true; m_supportedEngines.push_back(std::move(value)); return *this; } private: Gender m_gender; bool m_genderHasBeenSet = false; VoiceId m_id; bool m_idHasBeenSet = false; LanguageCode m_languageCode; bool m_languageCodeHasBeenSet = false; Aws::String m_languageName; bool m_languageNameHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; Aws::Vector m_additionalLanguageCodes; bool m_additionalLanguageCodesHasBeenSet = false; Aws::Vector m_supportedEngines; bool m_supportedEnginesHasBeenSet = false; }; } // namespace Model } // namespace Polly } // namespace Aws