1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 #include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSString.h> 9 #include <utility> 10 11 namespace Aws 12 { 13 namespace Utils 14 { 15 namespace Json 16 { 17 class JsonValue; 18 class JsonView; 19 } // namespace Json 20 } // namespace Utils 21 namespace ElasticTranscoder 22 { 23 namespace Model 24 { 25 26 /** 27 * <p>Settings that determine when a clip begins and how long it 28 * lasts.</p><p><h3>See Also:</h3> <a 29 * href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/TimeSpan">AWS 30 * API Reference</a></p> 31 */ 32 class AWS_ELASTICTRANSCODER_API TimeSpan 33 { 34 public: 35 TimeSpan(); 36 TimeSpan(Aws::Utils::Json::JsonView jsonValue); 37 TimeSpan& operator=(Aws::Utils::Json::JsonView jsonValue); 38 Aws::Utils::Json::JsonValue Jsonize() const; 39 40 41 /** 42 * <p>The place in the input file where you want a clip to start. The format can be 43 * either HH:mm:ss.SSS (maximum value: 23:59:59.999; SSS is thousandths of a 44 * second) or sssss.SSS (maximum value: 86399.999). If you don't specify a value, 45 * Elastic Transcoder starts at the beginning of the input file.</p> 46 */ GetStartTime()47 inline const Aws::String& GetStartTime() const{ return m_startTime; } 48 49 /** 50 * <p>The place in the input file where you want a clip to start. The format can be 51 * either HH:mm:ss.SSS (maximum value: 23:59:59.999; SSS is thousandths of a 52 * second) or sssss.SSS (maximum value: 86399.999). If you don't specify a value, 53 * Elastic Transcoder starts at the beginning of the input file.</p> 54 */ StartTimeHasBeenSet()55 inline bool StartTimeHasBeenSet() const { return m_startTimeHasBeenSet; } 56 57 /** 58 * <p>The place in the input file where you want a clip to start. The format can be 59 * either HH:mm:ss.SSS (maximum value: 23:59:59.999; SSS is thousandths of a 60 * second) or sssss.SSS (maximum value: 86399.999). If you don't specify a value, 61 * Elastic Transcoder starts at the beginning of the input file.</p> 62 */ SetStartTime(const Aws::String & value)63 inline void SetStartTime(const Aws::String& value) { m_startTimeHasBeenSet = true; m_startTime = value; } 64 65 /** 66 * <p>The place in the input file where you want a clip to start. The format can be 67 * either HH:mm:ss.SSS (maximum value: 23:59:59.999; SSS is thousandths of a 68 * second) or sssss.SSS (maximum value: 86399.999). If you don't specify a value, 69 * Elastic Transcoder starts at the beginning of the input file.</p> 70 */ SetStartTime(Aws::String && value)71 inline void SetStartTime(Aws::String&& value) { m_startTimeHasBeenSet = true; m_startTime = std::move(value); } 72 73 /** 74 * <p>The place in the input file where you want a clip to start. The format can be 75 * either HH:mm:ss.SSS (maximum value: 23:59:59.999; SSS is thousandths of a 76 * second) or sssss.SSS (maximum value: 86399.999). If you don't specify a value, 77 * Elastic Transcoder starts at the beginning of the input file.</p> 78 */ SetStartTime(const char * value)79 inline void SetStartTime(const char* value) { m_startTimeHasBeenSet = true; m_startTime.assign(value); } 80 81 /** 82 * <p>The place in the input file where you want a clip to start. The format can be 83 * either HH:mm:ss.SSS (maximum value: 23:59:59.999; SSS is thousandths of a 84 * second) or sssss.SSS (maximum value: 86399.999). If you don't specify a value, 85 * Elastic Transcoder starts at the beginning of the input file.</p> 86 */ WithStartTime(const Aws::String & value)87 inline TimeSpan& WithStartTime(const Aws::String& value) { SetStartTime(value); return *this;} 88 89 /** 90 * <p>The place in the input file where you want a clip to start. The format can be 91 * either HH:mm:ss.SSS (maximum value: 23:59:59.999; SSS is thousandths of a 92 * second) or sssss.SSS (maximum value: 86399.999). If you don't specify a value, 93 * Elastic Transcoder starts at the beginning of the input file.</p> 94 */ WithStartTime(Aws::String && value)95 inline TimeSpan& WithStartTime(Aws::String&& value) { SetStartTime(std::move(value)); return *this;} 96 97 /** 98 * <p>The place in the input file where you want a clip to start. The format can be 99 * either HH:mm:ss.SSS (maximum value: 23:59:59.999; SSS is thousandths of a 100 * second) or sssss.SSS (maximum value: 86399.999). If you don't specify a value, 101 * Elastic Transcoder starts at the beginning of the input file.</p> 102 */ WithStartTime(const char * value)103 inline TimeSpan& WithStartTime(const char* value) { SetStartTime(value); return *this;} 104 105 106 /** 107 * <p>The duration of the clip. The format can be either HH:mm:ss.SSS (maximum 108 * value: 23:59:59.999; SSS is thousandths of a second) or sssss.SSS (maximum 109 * value: 86399.999). If you don't specify a value, Elastic Transcoder creates an 110 * output file from StartTime to the end of the file.</p> <p>If you specify a value 111 * longer than the duration of the input file, Elastic Transcoder transcodes the 112 * file and returns a warning message.</p> 113 */ GetDuration()114 inline const Aws::String& GetDuration() const{ return m_duration; } 115 116 /** 117 * <p>The duration of the clip. The format can be either HH:mm:ss.SSS (maximum 118 * value: 23:59:59.999; SSS is thousandths of a second) or sssss.SSS (maximum 119 * value: 86399.999). If you don't specify a value, Elastic Transcoder creates an 120 * output file from StartTime to the end of the file.</p> <p>If you specify a value 121 * longer than the duration of the input file, Elastic Transcoder transcodes the 122 * file and returns a warning message.</p> 123 */ DurationHasBeenSet()124 inline bool DurationHasBeenSet() const { return m_durationHasBeenSet; } 125 126 /** 127 * <p>The duration of the clip. The format can be either HH:mm:ss.SSS (maximum 128 * value: 23:59:59.999; SSS is thousandths of a second) or sssss.SSS (maximum 129 * value: 86399.999). If you don't specify a value, Elastic Transcoder creates an 130 * output file from StartTime to the end of the file.</p> <p>If you specify a value 131 * longer than the duration of the input file, Elastic Transcoder transcodes the 132 * file and returns a warning message.</p> 133 */ SetDuration(const Aws::String & value)134 inline void SetDuration(const Aws::String& value) { m_durationHasBeenSet = true; m_duration = value; } 135 136 /** 137 * <p>The duration of the clip. The format can be either HH:mm:ss.SSS (maximum 138 * value: 23:59:59.999; SSS is thousandths of a second) or sssss.SSS (maximum 139 * value: 86399.999). If you don't specify a value, Elastic Transcoder creates an 140 * output file from StartTime to the end of the file.</p> <p>If you specify a value 141 * longer than the duration of the input file, Elastic Transcoder transcodes the 142 * file and returns a warning message.</p> 143 */ SetDuration(Aws::String && value)144 inline void SetDuration(Aws::String&& value) { m_durationHasBeenSet = true; m_duration = std::move(value); } 145 146 /** 147 * <p>The duration of the clip. The format can be either HH:mm:ss.SSS (maximum 148 * value: 23:59:59.999; SSS is thousandths of a second) or sssss.SSS (maximum 149 * value: 86399.999). If you don't specify a value, Elastic Transcoder creates an 150 * output file from StartTime to the end of the file.</p> <p>If you specify a value 151 * longer than the duration of the input file, Elastic Transcoder transcodes the 152 * file and returns a warning message.</p> 153 */ SetDuration(const char * value)154 inline void SetDuration(const char* value) { m_durationHasBeenSet = true; m_duration.assign(value); } 155 156 /** 157 * <p>The duration of the clip. The format can be either HH:mm:ss.SSS (maximum 158 * value: 23:59:59.999; SSS is thousandths of a second) or sssss.SSS (maximum 159 * value: 86399.999). If you don't specify a value, Elastic Transcoder creates an 160 * output file from StartTime to the end of the file.</p> <p>If you specify a value 161 * longer than the duration of the input file, Elastic Transcoder transcodes the 162 * file and returns a warning message.</p> 163 */ WithDuration(const Aws::String & value)164 inline TimeSpan& WithDuration(const Aws::String& value) { SetDuration(value); return *this;} 165 166 /** 167 * <p>The duration of the clip. The format can be either HH:mm:ss.SSS (maximum 168 * value: 23:59:59.999; SSS is thousandths of a second) or sssss.SSS (maximum 169 * value: 86399.999). If you don't specify a value, Elastic Transcoder creates an 170 * output file from StartTime to the end of the file.</p> <p>If you specify a value 171 * longer than the duration of the input file, Elastic Transcoder transcodes the 172 * file and returns a warning message.</p> 173 */ WithDuration(Aws::String && value)174 inline TimeSpan& WithDuration(Aws::String&& value) { SetDuration(std::move(value)); return *this;} 175 176 /** 177 * <p>The duration of the clip. The format can be either HH:mm:ss.SSS (maximum 178 * value: 23:59:59.999; SSS is thousandths of a second) or sssss.SSS (maximum 179 * value: 86399.999). If you don't specify a value, Elastic Transcoder creates an 180 * output file from StartTime to the end of the file.</p> <p>If you specify a value 181 * longer than the duration of the input file, Elastic Transcoder transcodes the 182 * file and returns a warning message.</p> 183 */ WithDuration(const char * value)184 inline TimeSpan& WithDuration(const char* value) { SetDuration(value); return *this;} 185 186 private: 187 188 Aws::String m_startTime; 189 bool m_startTimeHasBeenSet; 190 191 Aws::String m_duration; 192 bool m_durationHasBeenSet; 193 }; 194 195 } // namespace Model 196 } // namespace ElasticTranscoder 197 } // namespace Aws 198