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

The configuration for manifest processing rules. Manifest processing rules * enable customization of the personalized manifests created by * MediaTailor.

See Also:

AWS * API Reference

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

For HLS, when set to true, MediaTailor passes through * EXT-X-CUE-IN, EXT-X-CUE-OUT, and * EXT-X-SPLICEPOINT-SCTE35 ad markers from the origin manifest to the * MediaTailor personalized manifest.

No logic is applied to these ad * markers. For example, if EXT-X-CUE-OUT has a value of * 60, but no ads are filled for that ad break, MediaTailor will not * set the value to 0.

*/ inline const AdMarkerPassthrough& GetAdMarkerPassthrough() const{ return m_adMarkerPassthrough; } /** *

For HLS, when set to true, MediaTailor passes through * EXT-X-CUE-IN, EXT-X-CUE-OUT, and * EXT-X-SPLICEPOINT-SCTE35 ad markers from the origin manifest to the * MediaTailor personalized manifest.

No logic is applied to these ad * markers. For example, if EXT-X-CUE-OUT has a value of * 60, but no ads are filled for that ad break, MediaTailor will not * set the value to 0.

*/ inline bool AdMarkerPassthroughHasBeenSet() const { return m_adMarkerPassthroughHasBeenSet; } /** *

For HLS, when set to true, MediaTailor passes through * EXT-X-CUE-IN, EXT-X-CUE-OUT, and * EXT-X-SPLICEPOINT-SCTE35 ad markers from the origin manifest to the * MediaTailor personalized manifest.

No logic is applied to these ad * markers. For example, if EXT-X-CUE-OUT has a value of * 60, but no ads are filled for that ad break, MediaTailor will not * set the value to 0.

*/ inline void SetAdMarkerPassthrough(const AdMarkerPassthrough& value) { m_adMarkerPassthroughHasBeenSet = true; m_adMarkerPassthrough = value; } /** *

For HLS, when set to true, MediaTailor passes through * EXT-X-CUE-IN, EXT-X-CUE-OUT, and * EXT-X-SPLICEPOINT-SCTE35 ad markers from the origin manifest to the * MediaTailor personalized manifest.

No logic is applied to these ad * markers. For example, if EXT-X-CUE-OUT has a value of * 60, but no ads are filled for that ad break, MediaTailor will not * set the value to 0.

*/ inline void SetAdMarkerPassthrough(AdMarkerPassthrough&& value) { m_adMarkerPassthroughHasBeenSet = true; m_adMarkerPassthrough = std::move(value); } /** *

For HLS, when set to true, MediaTailor passes through * EXT-X-CUE-IN, EXT-X-CUE-OUT, and * EXT-X-SPLICEPOINT-SCTE35 ad markers from the origin manifest to the * MediaTailor personalized manifest.

No logic is applied to these ad * markers. For example, if EXT-X-CUE-OUT has a value of * 60, but no ads are filled for that ad break, MediaTailor will not * set the value to 0.

*/ inline ManifestProcessingRules& WithAdMarkerPassthrough(const AdMarkerPassthrough& value) { SetAdMarkerPassthrough(value); return *this;} /** *

For HLS, when set to true, MediaTailor passes through * EXT-X-CUE-IN, EXT-X-CUE-OUT, and * EXT-X-SPLICEPOINT-SCTE35 ad markers from the origin manifest to the * MediaTailor personalized manifest.

No logic is applied to these ad * markers. For example, if EXT-X-CUE-OUT has a value of * 60, but no ads are filled for that ad break, MediaTailor will not * set the value to 0.

*/ inline ManifestProcessingRules& WithAdMarkerPassthrough(AdMarkerPassthrough&& value) { SetAdMarkerPassthrough(std::move(value)); return *this;} private: AdMarkerPassthrough m_adMarkerPassthrough; bool m_adMarkerPassthroughHasBeenSet = false; }; } // namespace Model } // namespace MediaTailor } // namespace Aws