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

Object that describes which renditions should be recorded for a * stream.

See Also:

AWS * API Reference

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

Indicates which set of renditions are recorded for a stream. For * BASIC channels, the CUSTOM value has no effect. If * CUSTOM is specified, a set of renditions must be specified in the * renditions field. Default: ALL.

*/ inline const RenditionConfigurationRenditionSelection& GetRenditionSelection() const{ return m_renditionSelection; } /** *

Indicates which set of renditions are recorded for a stream. For * BASIC channels, the CUSTOM value has no effect. If * CUSTOM is specified, a set of renditions must be specified in the * renditions field. Default: ALL.

*/ inline bool RenditionSelectionHasBeenSet() const { return m_renditionSelectionHasBeenSet; } /** *

Indicates which set of renditions are recorded for a stream. For * BASIC channels, the CUSTOM value has no effect. If * CUSTOM is specified, a set of renditions must be specified in the * renditions field. Default: ALL.

*/ inline void SetRenditionSelection(const RenditionConfigurationRenditionSelection& value) { m_renditionSelectionHasBeenSet = true; m_renditionSelection = value; } /** *

Indicates which set of renditions are recorded for a stream. For * BASIC channels, the CUSTOM value has no effect. If * CUSTOM is specified, a set of renditions must be specified in the * renditions field. Default: ALL.

*/ inline void SetRenditionSelection(RenditionConfigurationRenditionSelection&& value) { m_renditionSelectionHasBeenSet = true; m_renditionSelection = std::move(value); } /** *

Indicates which set of renditions are recorded for a stream. For * BASIC channels, the CUSTOM value has no effect. If * CUSTOM is specified, a set of renditions must be specified in the * renditions field. Default: ALL.

*/ inline RenditionConfiguration& WithRenditionSelection(const RenditionConfigurationRenditionSelection& value) { SetRenditionSelection(value); return *this;} /** *

Indicates which set of renditions are recorded for a stream. For * BASIC channels, the CUSTOM value has no effect. If * CUSTOM is specified, a set of renditions must be specified in the * renditions field. Default: ALL.

*/ inline RenditionConfiguration& WithRenditionSelection(RenditionConfigurationRenditionSelection&& value) { SetRenditionSelection(std::move(value)); return *this;} /** *

Indicates which renditions are recorded for a stream, if * renditionSelection is CUSTOM; otherwise, this field is * irrelevant. The selected renditions are recorded if they are available during * the stream. If a selected rendition is unavailable, the best available rendition * is recorded. For details on the resolution dimensions of each rendition, see Auto-Record * to Amazon S3.

*/ inline const Aws::Vector& GetRenditions() const{ return m_renditions; } /** *

Indicates which renditions are recorded for a stream, if * renditionSelection is CUSTOM; otherwise, this field is * irrelevant. The selected renditions are recorded if they are available during * the stream. If a selected rendition is unavailable, the best available rendition * is recorded. For details on the resolution dimensions of each rendition, see Auto-Record * to Amazon S3.

*/ inline bool RenditionsHasBeenSet() const { return m_renditionsHasBeenSet; } /** *

Indicates which renditions are recorded for a stream, if * renditionSelection is CUSTOM; otherwise, this field is * irrelevant. The selected renditions are recorded if they are available during * the stream. If a selected rendition is unavailable, the best available rendition * is recorded. For details on the resolution dimensions of each rendition, see Auto-Record * to Amazon S3.

*/ inline void SetRenditions(const Aws::Vector& value) { m_renditionsHasBeenSet = true; m_renditions = value; } /** *

Indicates which renditions are recorded for a stream, if * renditionSelection is CUSTOM; otherwise, this field is * irrelevant. The selected renditions are recorded if they are available during * the stream. If a selected rendition is unavailable, the best available rendition * is recorded. For details on the resolution dimensions of each rendition, see Auto-Record * to Amazon S3.

*/ inline void SetRenditions(Aws::Vector&& value) { m_renditionsHasBeenSet = true; m_renditions = std::move(value); } /** *

Indicates which renditions are recorded for a stream, if * renditionSelection is CUSTOM; otherwise, this field is * irrelevant. The selected renditions are recorded if they are available during * the stream. If a selected rendition is unavailable, the best available rendition * is recorded. For details on the resolution dimensions of each rendition, see Auto-Record * to Amazon S3.

*/ inline RenditionConfiguration& WithRenditions(const Aws::Vector& value) { SetRenditions(value); return *this;} /** *

Indicates which renditions are recorded for a stream, if * renditionSelection is CUSTOM; otherwise, this field is * irrelevant. The selected renditions are recorded if they are available during * the stream. If a selected rendition is unavailable, the best available rendition * is recorded. For details on the resolution dimensions of each rendition, see Auto-Record * to Amazon S3.

*/ inline RenditionConfiguration& WithRenditions(Aws::Vector&& value) { SetRenditions(std::move(value)); return *this;} /** *

Indicates which renditions are recorded for a stream, if * renditionSelection is CUSTOM; otherwise, this field is * irrelevant. The selected renditions are recorded if they are available during * the stream. If a selected rendition is unavailable, the best available rendition * is recorded. For details on the resolution dimensions of each rendition, see Auto-Record * to Amazon S3.

*/ inline RenditionConfiguration& AddRenditions(const RenditionConfigurationRendition& value) { m_renditionsHasBeenSet = true; m_renditions.push_back(value); return *this; } /** *

Indicates which renditions are recorded for a stream, if * renditionSelection is CUSTOM; otherwise, this field is * irrelevant. The selected renditions are recorded if they are available during * the stream. If a selected rendition is unavailable, the best available rendition * is recorded. For details on the resolution dimensions of each rendition, see Auto-Record * to Amazon S3.

*/ inline RenditionConfiguration& AddRenditions(RenditionConfigurationRendition&& value) { m_renditionsHasBeenSet = true; m_renditions.push_back(std::move(value)); return *this; } private: RenditionConfigurationRenditionSelection m_renditionSelection; bool m_renditionSelectionHasBeenSet = false; Aws::Vector m_renditions; bool m_renditionsHasBeenSet = false; }; } // namespace Model } // namespace IVS } // namespace Aws