/** * 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 segmentation_descriptor message can contain advanced * metadata fields, like content identifiers, to convey a wide range of information * about the ad break. MediaTailor writes the ad metadata in the egress manifest as * part of the EXT-X-DATERANGE or EventStream ad marker's * SCTE-35 data.

segmentation_descriptor messages must be sent * with the time_signal message type.

See the * segmentation_descriptor() table of the 2022 SCTE-35 specification * for more information.

See Also:

AWS * API Reference

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

The segment number to assign to the * segmentation_descriptor.segment_num message, as defined in section * 10.3.3.1 of the 2022 SCTE-35 specification Values must be between 0 and 256, * inclusive. The default value is 0.

*/ inline int GetSegmentNum() const{ return m_segmentNum; } /** *

The segment number to assign to the * segmentation_descriptor.segment_num message, as defined in section * 10.3.3.1 of the 2022 SCTE-35 specification Values must be between 0 and 256, * inclusive. The default value is 0.

*/ inline bool SegmentNumHasBeenSet() const { return m_segmentNumHasBeenSet; } /** *

The segment number to assign to the * segmentation_descriptor.segment_num message, as defined in section * 10.3.3.1 of the 2022 SCTE-35 specification Values must be between 0 and 256, * inclusive. The default value is 0.

*/ inline void SetSegmentNum(int value) { m_segmentNumHasBeenSet = true; m_segmentNum = value; } /** *

The segment number to assign to the * segmentation_descriptor.segment_num message, as defined in section * 10.3.3.1 of the 2022 SCTE-35 specification Values must be between 0 and 256, * inclusive. The default value is 0.

*/ inline SegmentationDescriptor& WithSegmentNum(int value) { SetSegmentNum(value); return *this;} /** *

The Event Identifier to assign to the * segmentation_descriptor.segmentation_event_id message, as defined * in section 10.3.3.1 of the 2022 SCTE-35 specification. The default value is * 1.

*/ inline int GetSegmentationEventId() const{ return m_segmentationEventId; } /** *

The Event Identifier to assign to the * segmentation_descriptor.segmentation_event_id message, as defined * in section 10.3.3.1 of the 2022 SCTE-35 specification. The default value is * 1.

*/ inline bool SegmentationEventIdHasBeenSet() const { return m_segmentationEventIdHasBeenSet; } /** *

The Event Identifier to assign to the * segmentation_descriptor.segmentation_event_id message, as defined * in section 10.3.3.1 of the 2022 SCTE-35 specification. The default value is * 1.

*/ inline void SetSegmentationEventId(int value) { m_segmentationEventIdHasBeenSet = true; m_segmentationEventId = value; } /** *

The Event Identifier to assign to the * segmentation_descriptor.segmentation_event_id message, as defined * in section 10.3.3.1 of the 2022 SCTE-35 specification. The default value is * 1.

*/ inline SegmentationDescriptor& WithSegmentationEventId(int value) { SetSegmentationEventId(value); return *this;} /** *

The Type Identifier to assign to the * segmentation_descriptor.segmentation_type_id message, as defined in * section 10.3.3.1 of the 2022 SCTE-35 specification. Values must be between 0 and * 256, inclusive. The default value is 48.

*/ inline int GetSegmentationTypeId() const{ return m_segmentationTypeId; } /** *

The Type Identifier to assign to the * segmentation_descriptor.segmentation_type_id message, as defined in * section 10.3.3.1 of the 2022 SCTE-35 specification. Values must be between 0 and * 256, inclusive. The default value is 48.

*/ inline bool SegmentationTypeIdHasBeenSet() const { return m_segmentationTypeIdHasBeenSet; } /** *

The Type Identifier to assign to the * segmentation_descriptor.segmentation_type_id message, as defined in * section 10.3.3.1 of the 2022 SCTE-35 specification. Values must be between 0 and * 256, inclusive. The default value is 48.

*/ inline void SetSegmentationTypeId(int value) { m_segmentationTypeIdHasBeenSet = true; m_segmentationTypeId = value; } /** *

The Type Identifier to assign to the * segmentation_descriptor.segmentation_type_id message, as defined in * section 10.3.3.1 of the 2022 SCTE-35 specification. Values must be between 0 and * 256, inclusive. The default value is 48.

*/ inline SegmentationDescriptor& WithSegmentationTypeId(int value) { SetSegmentationTypeId(value); return *this;} /** *

The Upid to assign to the * segmentation_descriptor.segmentation_upid message, as defined in * section 10.3.3.1 of the 2022 SCTE-35 specification. The value must be a * hexadecimal string containing only the characters 0 though 9 and A through F. * The default value is "" (an empty string).

*/ inline const Aws::String& GetSegmentationUpid() const{ return m_segmentationUpid; } /** *

The Upid to assign to the * segmentation_descriptor.segmentation_upid message, as defined in * section 10.3.3.1 of the 2022 SCTE-35 specification. The value must be a * hexadecimal string containing only the characters 0 though 9 and A through F. * The default value is "" (an empty string).

*/ inline bool SegmentationUpidHasBeenSet() const { return m_segmentationUpidHasBeenSet; } /** *

The Upid to assign to the * segmentation_descriptor.segmentation_upid message, as defined in * section 10.3.3.1 of the 2022 SCTE-35 specification. The value must be a * hexadecimal string containing only the characters 0 though 9 and A through F. * The default value is "" (an empty string).

*/ inline void SetSegmentationUpid(const Aws::String& value) { m_segmentationUpidHasBeenSet = true; m_segmentationUpid = value; } /** *

The Upid to assign to the * segmentation_descriptor.segmentation_upid message, as defined in * section 10.3.3.1 of the 2022 SCTE-35 specification. The value must be a * hexadecimal string containing only the characters 0 though 9 and A through F. * The default value is "" (an empty string).

*/ inline void SetSegmentationUpid(Aws::String&& value) { m_segmentationUpidHasBeenSet = true; m_segmentationUpid = std::move(value); } /** *

The Upid to assign to the * segmentation_descriptor.segmentation_upid message, as defined in * section 10.3.3.1 of the 2022 SCTE-35 specification. The value must be a * hexadecimal string containing only the characters 0 though 9 and A through F. * The default value is "" (an empty string).

*/ inline void SetSegmentationUpid(const char* value) { m_segmentationUpidHasBeenSet = true; m_segmentationUpid.assign(value); } /** *

The Upid to assign to the * segmentation_descriptor.segmentation_upid message, as defined in * section 10.3.3.1 of the 2022 SCTE-35 specification. The value must be a * hexadecimal string containing only the characters 0 though 9 and A through F. * The default value is "" (an empty string).

*/ inline SegmentationDescriptor& WithSegmentationUpid(const Aws::String& value) { SetSegmentationUpid(value); return *this;} /** *

The Upid to assign to the * segmentation_descriptor.segmentation_upid message, as defined in * section 10.3.3.1 of the 2022 SCTE-35 specification. The value must be a * hexadecimal string containing only the characters 0 though 9 and A through F. * The default value is "" (an empty string).

*/ inline SegmentationDescriptor& WithSegmentationUpid(Aws::String&& value) { SetSegmentationUpid(std::move(value)); return *this;} /** *

The Upid to assign to the * segmentation_descriptor.segmentation_upid message, as defined in * section 10.3.3.1 of the 2022 SCTE-35 specification. The value must be a * hexadecimal string containing only the characters 0 though 9 and A through F. * The default value is "" (an empty string).

*/ inline SegmentationDescriptor& WithSegmentationUpid(const char* value) { SetSegmentationUpid(value); return *this;} /** *

The Upid Type to assign to the * segmentation_descriptor.segmentation_upid_type message, as defined * in section 10.3.3.1 of the 2022 SCTE-35 specification. Values must be between 0 * and 256, inclusive. The default value is 14.

*/ inline int GetSegmentationUpidType() const{ return m_segmentationUpidType; } /** *

The Upid Type to assign to the * segmentation_descriptor.segmentation_upid_type message, as defined * in section 10.3.3.1 of the 2022 SCTE-35 specification. Values must be between 0 * and 256, inclusive. The default value is 14.

*/ inline bool SegmentationUpidTypeHasBeenSet() const { return m_segmentationUpidTypeHasBeenSet; } /** *

The Upid Type to assign to the * segmentation_descriptor.segmentation_upid_type message, as defined * in section 10.3.3.1 of the 2022 SCTE-35 specification. Values must be between 0 * and 256, inclusive. The default value is 14.

*/ inline void SetSegmentationUpidType(int value) { m_segmentationUpidTypeHasBeenSet = true; m_segmentationUpidType = value; } /** *

The Upid Type to assign to the * segmentation_descriptor.segmentation_upid_type message, as defined * in section 10.3.3.1 of the 2022 SCTE-35 specification. Values must be between 0 * and 256, inclusive. The default value is 14.

*/ inline SegmentationDescriptor& WithSegmentationUpidType(int value) { SetSegmentationUpidType(value); return *this;} /** *

The number of segments expected, which is assigned to the * segmentation_descriptor.segments_expectedS message, as defined in * section 10.3.3.1 of the 2022 SCTE-35 specification Values must be between 0 and * 256, inclusive. The default value is 0.

*/ inline int GetSegmentsExpected() const{ return m_segmentsExpected; } /** *

The number of segments expected, which is assigned to the * segmentation_descriptor.segments_expectedS message, as defined in * section 10.3.3.1 of the 2022 SCTE-35 specification Values must be between 0 and * 256, inclusive. The default value is 0.

*/ inline bool SegmentsExpectedHasBeenSet() const { return m_segmentsExpectedHasBeenSet; } /** *

The number of segments expected, which is assigned to the * segmentation_descriptor.segments_expectedS message, as defined in * section 10.3.3.1 of the 2022 SCTE-35 specification Values must be between 0 and * 256, inclusive. The default value is 0.

*/ inline void SetSegmentsExpected(int value) { m_segmentsExpectedHasBeenSet = true; m_segmentsExpected = value; } /** *

The number of segments expected, which is assigned to the * segmentation_descriptor.segments_expectedS message, as defined in * section 10.3.3.1 of the 2022 SCTE-35 specification Values must be between 0 and * 256, inclusive. The default value is 0.

*/ inline SegmentationDescriptor& WithSegmentsExpected(int value) { SetSegmentsExpected(value); return *this;} /** *

The sub-segment number to assign to the * segmentation_descriptor.sub_segment_num message, as defined in * section 10.3.3.1 of the 2022 SCTE-35 specification. Values must be between 0 and * 256, inclusive. The defualt value is null.

*/ inline int GetSubSegmentNum() const{ return m_subSegmentNum; } /** *

The sub-segment number to assign to the * segmentation_descriptor.sub_segment_num message, as defined in * section 10.3.3.1 of the 2022 SCTE-35 specification. Values must be between 0 and * 256, inclusive. The defualt value is null.

*/ inline bool SubSegmentNumHasBeenSet() const { return m_subSegmentNumHasBeenSet; } /** *

The sub-segment number to assign to the * segmentation_descriptor.sub_segment_num message, as defined in * section 10.3.3.1 of the 2022 SCTE-35 specification. Values must be between 0 and * 256, inclusive. The defualt value is null.

*/ inline void SetSubSegmentNum(int value) { m_subSegmentNumHasBeenSet = true; m_subSegmentNum = value; } /** *

The sub-segment number to assign to the * segmentation_descriptor.sub_segment_num message, as defined in * section 10.3.3.1 of the 2022 SCTE-35 specification. Values must be between 0 and * 256, inclusive. The defualt value is null.

*/ inline SegmentationDescriptor& WithSubSegmentNum(int value) { SetSubSegmentNum(value); return *this;} /** *

The number of sub-segments expected, which is assigned to the * segmentation_descriptor.sub_segments_expected message, as defined * in section 10.3.3.1 of the 2022 SCTE-35 specification. Values must be between 0 * and 256, inclusive. The default value is null.

*/ inline int GetSubSegmentsExpected() const{ return m_subSegmentsExpected; } /** *

The number of sub-segments expected, which is assigned to the * segmentation_descriptor.sub_segments_expected message, as defined * in section 10.3.3.1 of the 2022 SCTE-35 specification. Values must be between 0 * and 256, inclusive. The default value is null.

*/ inline bool SubSegmentsExpectedHasBeenSet() const { return m_subSegmentsExpectedHasBeenSet; } /** *

The number of sub-segments expected, which is assigned to the * segmentation_descriptor.sub_segments_expected message, as defined * in section 10.3.3.1 of the 2022 SCTE-35 specification. Values must be between 0 * and 256, inclusive. The default value is null.

*/ inline void SetSubSegmentsExpected(int value) { m_subSegmentsExpectedHasBeenSet = true; m_subSegmentsExpected = value; } /** *

The number of sub-segments expected, which is assigned to the * segmentation_descriptor.sub_segments_expected message, as defined * in section 10.3.3.1 of the 2022 SCTE-35 specification. Values must be between 0 * and 256, inclusive. The default value is null.

*/ inline SegmentationDescriptor& WithSubSegmentsExpected(int value) { SetSubSegmentsExpected(value); return *this;} private: int m_segmentNum; bool m_segmentNumHasBeenSet = false; int m_segmentationEventId; bool m_segmentationEventIdHasBeenSet = false; int m_segmentationTypeId; bool m_segmentationTypeIdHasBeenSet = false; Aws::String m_segmentationUpid; bool m_segmentationUpidHasBeenSet = false; int m_segmentationUpidType; bool m_segmentationUpidTypeHasBeenSet = false; int m_segmentsExpected; bool m_segmentsExpectedHasBeenSet = false; int m_subSegmentNum; bool m_subSegmentNumHasBeenSet = false; int m_subSegmentsExpected; bool m_subSegmentsExpectedHasBeenSet = false; }; } // namespace Model } // namespace MediaTailor } // namespace Aws