/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the mediatailor-2018-04-23.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.MediaTailor.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.
///
///
public partial class SegmentationDescriptor
{
private int? _segmentationEventId;
private int? _segmentationTypeId;
private string _segmentationUpid;
private int? _segmentationUpidType;
private int? _segmentNum;
private int? _segmentsExpected;
private int? _subSegmentNum;
private int? _subSegmentsExpected;
///
/// Gets and sets the property 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.
///
///
public int SegmentationEventId
{
get { return this._segmentationEventId.GetValueOrDefault(); }
set { this._segmentationEventId = value; }
}
// Check to see if SegmentationEventId property is set
internal bool IsSetSegmentationEventId()
{
return this._segmentationEventId.HasValue;
}
///
/// Gets and sets the property 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.
///
///
public int SegmentationTypeId
{
get { return this._segmentationTypeId.GetValueOrDefault(); }
set { this._segmentationTypeId = value; }
}
// Check to see if SegmentationTypeId property is set
internal bool IsSetSegmentationTypeId()
{
return this._segmentationTypeId.HasValue;
}
///
/// Gets and sets the property 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).
///
///
public string SegmentationUpid
{
get { return this._segmentationUpid; }
set { this._segmentationUpid = value; }
}
// Check to see if SegmentationUpid property is set
internal bool IsSetSegmentationUpid()
{
return this._segmentationUpid != null;
}
///
/// Gets and sets the property 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.
///
///
public int SegmentationUpidType
{
get { return this._segmentationUpidType.GetValueOrDefault(); }
set { this._segmentationUpidType = value; }
}
// Check to see if SegmentationUpidType property is set
internal bool IsSetSegmentationUpidType()
{
return this._segmentationUpidType.HasValue;
}
///
/// Gets and sets the property 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.
///
///
public int SegmentNum
{
get { return this._segmentNum.GetValueOrDefault(); }
set { this._segmentNum = value; }
}
// Check to see if SegmentNum property is set
internal bool IsSetSegmentNum()
{
return this._segmentNum.HasValue;
}
///
/// Gets and sets the property 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.
///
///
public int SegmentsExpected
{
get { return this._segmentsExpected.GetValueOrDefault(); }
set { this._segmentsExpected = value; }
}
// Check to see if SegmentsExpected property is set
internal bool IsSetSegmentsExpected()
{
return this._segmentsExpected.HasValue;
}
///
/// Gets and sets the property 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.
///
///
public int SubSegmentNum
{
get { return this._subSegmentNum.GetValueOrDefault(); }
set { this._subSegmentNum = value; }
}
// Check to see if SubSegmentNum property is set
internal bool IsSetSubSegmentNum()
{
return this._subSegmentNum.HasValue;
}
///
/// Gets and sets the property 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.
///
///
public int SubSegmentsExpected
{
get { return this._subSegmentsExpected.GetValueOrDefault(); }
set { this._subSegmentsExpected = value; }
}
// Check to see if SubSegmentsExpected property is set
internal bool IsSetSubSegmentsExpected()
{
return this._subSegmentsExpected.HasValue;
}
}
}