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

Presets are templates that contain most of the settings for transcoding media * files from one format to another. Elastic Transcoder includes some default * presets for common formats, for example, several iPod and iPhone versions. You * can also create your own presets for formats that aren't included among the * default presets. You specify which preset you want to use when you create a * job.

See Also:

AWS * API Reference

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

Identifier for the new preset. You use this value to get settings for the * preset or to delete it.

*/ inline const Aws::String& GetId() const{ return m_id; } /** *

Identifier for the new preset. You use this value to get settings for the * preset or to delete it.

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

Identifier for the new preset. You use this value to get settings for the * preset or to delete it.

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

Identifier for the new preset. You use this value to get settings for the * preset or to delete it.

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

Identifier for the new preset. You use this value to get settings for the * preset or to delete it.

*/ inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); } /** *

Identifier for the new preset. You use this value to get settings for the * preset or to delete it.

*/ inline Preset& WithId(const Aws::String& value) { SetId(value); return *this;} /** *

Identifier for the new preset. You use this value to get settings for the * preset or to delete it.

*/ inline Preset& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} /** *

Identifier for the new preset. You use this value to get settings for the * preset or to delete it.

*/ inline Preset& WithId(const char* value) { SetId(value); return *this;} /** *

The Amazon Resource Name (ARN) for the preset.

*/ inline const Aws::String& GetArn() const{ return m_arn; } /** *

The Amazon Resource Name (ARN) for the preset.

*/ inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; } /** *

The Amazon Resource Name (ARN) for the preset.

*/ inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; } /** *

The Amazon Resource Name (ARN) for the preset.

*/ inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = std::move(value); } /** *

The Amazon Resource Name (ARN) for the preset.

*/ inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); } /** *

The Amazon Resource Name (ARN) for the preset.

*/ inline Preset& WithArn(const Aws::String& value) { SetArn(value); return *this;} /** *

The Amazon Resource Name (ARN) for the preset.

*/ inline Preset& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) for the preset.

*/ inline Preset& WithArn(const char* value) { SetArn(value); return *this;} /** *

The name of the preset.

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

The name of the preset.

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

The name of the preset.

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

The name of the preset.

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

The name of the preset.

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

The name of the preset.

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

The name of the preset.

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

The name of the preset.

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

A description of the preset.

*/ inline const Aws::String& GetDescription() const{ return m_description; } /** *

A description of the preset.

*/ inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } /** *

A description of the preset.

*/ inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; } /** *

A description of the preset.

*/ inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); } /** *

A description of the preset.

*/ inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); } /** *

A description of the preset.

*/ inline Preset& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} /** *

A description of the preset.

*/ inline Preset& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} /** *

A description of the preset.

*/ inline Preset& WithDescription(const char* value) { SetDescription(value); return *this;} /** *

The container type for the output file. Valid values include * flac, flv, fmp4, gif, * mp3, mp4, mpg, mxf, * oga, ogg, ts, and webm.

*/ inline const Aws::String& GetContainer() const{ return m_container; } /** *

The container type for the output file. Valid values include * flac, flv, fmp4, gif, * mp3, mp4, mpg, mxf, * oga, ogg, ts, and webm.

*/ inline bool ContainerHasBeenSet() const { return m_containerHasBeenSet; } /** *

The container type for the output file. Valid values include * flac, flv, fmp4, gif, * mp3, mp4, mpg, mxf, * oga, ogg, ts, and webm.

*/ inline void SetContainer(const Aws::String& value) { m_containerHasBeenSet = true; m_container = value; } /** *

The container type for the output file. Valid values include * flac, flv, fmp4, gif, * mp3, mp4, mpg, mxf, * oga, ogg, ts, and webm.

*/ inline void SetContainer(Aws::String&& value) { m_containerHasBeenSet = true; m_container = std::move(value); } /** *

The container type for the output file. Valid values include * flac, flv, fmp4, gif, * mp3, mp4, mpg, mxf, * oga, ogg, ts, and webm.

*/ inline void SetContainer(const char* value) { m_containerHasBeenSet = true; m_container.assign(value); } /** *

The container type for the output file. Valid values include * flac, flv, fmp4, gif, * mp3, mp4, mpg, mxf, * oga, ogg, ts, and webm.

*/ inline Preset& WithContainer(const Aws::String& value) { SetContainer(value); return *this;} /** *

The container type for the output file. Valid values include * flac, flv, fmp4, gif, * mp3, mp4, mpg, mxf, * oga, ogg, ts, and webm.

*/ inline Preset& WithContainer(Aws::String&& value) { SetContainer(std::move(value)); return *this;} /** *

The container type for the output file. Valid values include * flac, flv, fmp4, gif, * mp3, mp4, mpg, mxf, * oga, ogg, ts, and webm.

*/ inline Preset& WithContainer(const char* value) { SetContainer(value); return *this;} /** *

A section of the response body that provides information about the audio * preset values.

*/ inline const AudioParameters& GetAudio() const{ return m_audio; } /** *

A section of the response body that provides information about the audio * preset values.

*/ inline bool AudioHasBeenSet() const { return m_audioHasBeenSet; } /** *

A section of the response body that provides information about the audio * preset values.

*/ inline void SetAudio(const AudioParameters& value) { m_audioHasBeenSet = true; m_audio = value; } /** *

A section of the response body that provides information about the audio * preset values.

*/ inline void SetAudio(AudioParameters&& value) { m_audioHasBeenSet = true; m_audio = std::move(value); } /** *

A section of the response body that provides information about the audio * preset values.

*/ inline Preset& WithAudio(const AudioParameters& value) { SetAudio(value); return *this;} /** *

A section of the response body that provides information about the audio * preset values.

*/ inline Preset& WithAudio(AudioParameters&& value) { SetAudio(std::move(value)); return *this;} /** *

A section of the response body that provides information about the video * preset values.

*/ inline const VideoParameters& GetVideo() const{ return m_video; } /** *

A section of the response body that provides information about the video * preset values.

*/ inline bool VideoHasBeenSet() const { return m_videoHasBeenSet; } /** *

A section of the response body that provides information about the video * preset values.

*/ inline void SetVideo(const VideoParameters& value) { m_videoHasBeenSet = true; m_video = value; } /** *

A section of the response body that provides information about the video * preset values.

*/ inline void SetVideo(VideoParameters&& value) { m_videoHasBeenSet = true; m_video = std::move(value); } /** *

A section of the response body that provides information about the video * preset values.

*/ inline Preset& WithVideo(const VideoParameters& value) { SetVideo(value); return *this;} /** *

A section of the response body that provides information about the video * preset values.

*/ inline Preset& WithVideo(VideoParameters&& value) { SetVideo(std::move(value)); return *this;} /** *

A section of the response body that provides information about the thumbnail * preset values, if any.

*/ inline const Thumbnails& GetThumbnails() const{ return m_thumbnails; } /** *

A section of the response body that provides information about the thumbnail * preset values, if any.

*/ inline bool ThumbnailsHasBeenSet() const { return m_thumbnailsHasBeenSet; } /** *

A section of the response body that provides information about the thumbnail * preset values, if any.

*/ inline void SetThumbnails(const Thumbnails& value) { m_thumbnailsHasBeenSet = true; m_thumbnails = value; } /** *

A section of the response body that provides information about the thumbnail * preset values, if any.

*/ inline void SetThumbnails(Thumbnails&& value) { m_thumbnailsHasBeenSet = true; m_thumbnails = std::move(value); } /** *

A section of the response body that provides information about the thumbnail * preset values, if any.

*/ inline Preset& WithThumbnails(const Thumbnails& value) { SetThumbnails(value); return *this;} /** *

A section of the response body that provides information about the thumbnail * preset values, if any.

*/ inline Preset& WithThumbnails(Thumbnails&& value) { SetThumbnails(std::move(value)); return *this;} /** *

Whether the preset is a default preset provided by Elastic Transcoder * (System) or a preset that you have defined * (Custom).

*/ inline const Aws::String& GetType() const{ return m_type; } /** *

Whether the preset is a default preset provided by Elastic Transcoder * (System) or a preset that you have defined * (Custom).

*/ inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; } /** *

Whether the preset is a default preset provided by Elastic Transcoder * (System) or a preset that you have defined * (Custom).

*/ inline void SetType(const Aws::String& value) { m_typeHasBeenSet = true; m_type = value; } /** *

Whether the preset is a default preset provided by Elastic Transcoder * (System) or a preset that you have defined * (Custom).

*/ inline void SetType(Aws::String&& value) { m_typeHasBeenSet = true; m_type = std::move(value); } /** *

Whether the preset is a default preset provided by Elastic Transcoder * (System) or a preset that you have defined * (Custom).

*/ inline void SetType(const char* value) { m_typeHasBeenSet = true; m_type.assign(value); } /** *

Whether the preset is a default preset provided by Elastic Transcoder * (System) or a preset that you have defined * (Custom).

*/ inline Preset& WithType(const Aws::String& value) { SetType(value); return *this;} /** *

Whether the preset is a default preset provided by Elastic Transcoder * (System) or a preset that you have defined * (Custom).

*/ inline Preset& WithType(Aws::String&& value) { SetType(std::move(value)); return *this;} /** *

Whether the preset is a default preset provided by Elastic Transcoder * (System) or a preset that you have defined * (Custom).

*/ inline Preset& WithType(const char* value) { SetType(value); return *this;} private: Aws::String m_id; bool m_idHasBeenSet = false; Aws::String m_arn; bool m_arnHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; Aws::String m_description; bool m_descriptionHasBeenSet = false; Aws::String m_container; bool m_containerHasBeenSet = false; AudioParameters m_audio; bool m_audioHasBeenSet = false; VideoParameters m_video; bool m_videoHasBeenSet = false; Thumbnails m_thumbnails; bool m_thumbnailsHasBeenSet = false; Aws::String m_type; bool m_typeHasBeenSet = false; }; } // namespace Model } // namespace ElasticTranscoder } // namespace Aws