/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include #include #include namespace Aws { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace Rekognition { namespace Model { class GetSegmentDetectionResult { public: AWS_REKOGNITION_API GetSegmentDetectionResult(); AWS_REKOGNITION_API GetSegmentDetectionResult(const Aws::AmazonWebServiceResult& result); AWS_REKOGNITION_API GetSegmentDetectionResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

Current status of the segment detection job.

*/ inline const VideoJobStatus& GetJobStatus() const{ return m_jobStatus; } /** *

Current status of the segment detection job.

*/ inline void SetJobStatus(const VideoJobStatus& value) { m_jobStatus = value; } /** *

Current status of the segment detection job.

*/ inline void SetJobStatus(VideoJobStatus&& value) { m_jobStatus = std::move(value); } /** *

Current status of the segment detection job.

*/ inline GetSegmentDetectionResult& WithJobStatus(const VideoJobStatus& value) { SetJobStatus(value); return *this;} /** *

Current status of the segment detection job.

*/ inline GetSegmentDetectionResult& WithJobStatus(VideoJobStatus&& value) { SetJobStatus(std::move(value)); return *this;} /** *

If the job fails, StatusMessage provides a descriptive error * message.

*/ inline const Aws::String& GetStatusMessage() const{ return m_statusMessage; } /** *

If the job fails, StatusMessage provides a descriptive error * message.

*/ inline void SetStatusMessage(const Aws::String& value) { m_statusMessage = value; } /** *

If the job fails, StatusMessage provides a descriptive error * message.

*/ inline void SetStatusMessage(Aws::String&& value) { m_statusMessage = std::move(value); } /** *

If the job fails, StatusMessage provides a descriptive error * message.

*/ inline void SetStatusMessage(const char* value) { m_statusMessage.assign(value); } /** *

If the job fails, StatusMessage provides a descriptive error * message.

*/ inline GetSegmentDetectionResult& WithStatusMessage(const Aws::String& value) { SetStatusMessage(value); return *this;} /** *

If the job fails, StatusMessage provides a descriptive error * message.

*/ inline GetSegmentDetectionResult& WithStatusMessage(Aws::String&& value) { SetStatusMessage(std::move(value)); return *this;} /** *

If the job fails, StatusMessage provides a descriptive error * message.

*/ inline GetSegmentDetectionResult& WithStatusMessage(const char* value) { SetStatusMessage(value); return *this;} /** *

Currently, Amazon Rekognition Video returns a single object in the * VideoMetadata array. The object contains information about the * video stream in the input file that Amazon Rekognition Video chose to analyze. * The VideoMetadata object includes the video codec, video format and * other information. Video metadata is returned in each page of information * returned by GetSegmentDetection.

*/ inline const Aws::Vector& GetVideoMetadata() const{ return m_videoMetadata; } /** *

Currently, Amazon Rekognition Video returns a single object in the * VideoMetadata array. The object contains information about the * video stream in the input file that Amazon Rekognition Video chose to analyze. * The VideoMetadata object includes the video codec, video format and * other information. Video metadata is returned in each page of information * returned by GetSegmentDetection.

*/ inline void SetVideoMetadata(const Aws::Vector& value) { m_videoMetadata = value; } /** *

Currently, Amazon Rekognition Video returns a single object in the * VideoMetadata array. The object contains information about the * video stream in the input file that Amazon Rekognition Video chose to analyze. * The VideoMetadata object includes the video codec, video format and * other information. Video metadata is returned in each page of information * returned by GetSegmentDetection.

*/ inline void SetVideoMetadata(Aws::Vector&& value) { m_videoMetadata = std::move(value); } /** *

Currently, Amazon Rekognition Video returns a single object in the * VideoMetadata array. The object contains information about the * video stream in the input file that Amazon Rekognition Video chose to analyze. * The VideoMetadata object includes the video codec, video format and * other information. Video metadata is returned in each page of information * returned by GetSegmentDetection.

*/ inline GetSegmentDetectionResult& WithVideoMetadata(const Aws::Vector& value) { SetVideoMetadata(value); return *this;} /** *

Currently, Amazon Rekognition Video returns a single object in the * VideoMetadata array. The object contains information about the * video stream in the input file that Amazon Rekognition Video chose to analyze. * The VideoMetadata object includes the video codec, video format and * other information. Video metadata is returned in each page of information * returned by GetSegmentDetection.

*/ inline GetSegmentDetectionResult& WithVideoMetadata(Aws::Vector&& value) { SetVideoMetadata(std::move(value)); return *this;} /** *

Currently, Amazon Rekognition Video returns a single object in the * VideoMetadata array. The object contains information about the * video stream in the input file that Amazon Rekognition Video chose to analyze. * The VideoMetadata object includes the video codec, video format and * other information. Video metadata is returned in each page of information * returned by GetSegmentDetection.

*/ inline GetSegmentDetectionResult& AddVideoMetadata(const VideoMetadata& value) { m_videoMetadata.push_back(value); return *this; } /** *

Currently, Amazon Rekognition Video returns a single object in the * VideoMetadata array. The object contains information about the * video stream in the input file that Amazon Rekognition Video chose to analyze. * The VideoMetadata object includes the video codec, video format and * other information. Video metadata is returned in each page of information * returned by GetSegmentDetection.

*/ inline GetSegmentDetectionResult& AddVideoMetadata(VideoMetadata&& value) { m_videoMetadata.push_back(std::move(value)); return *this; } /** *

An array of objects. There can be multiple audio streams. Each * AudioMetadata object contains metadata for a single audio stream. * Audio information in an AudioMetadata objects includes the audio * codec, the number of audio channels, the duration of the audio stream, and the * sample rate. Audio metadata is returned in each page of information returned by * GetSegmentDetection.

*/ inline const Aws::Vector& GetAudioMetadata() const{ return m_audioMetadata; } /** *

An array of objects. There can be multiple audio streams. Each * AudioMetadata object contains metadata for a single audio stream. * Audio information in an AudioMetadata objects includes the audio * codec, the number of audio channels, the duration of the audio stream, and the * sample rate. Audio metadata is returned in each page of information returned by * GetSegmentDetection.

*/ inline void SetAudioMetadata(const Aws::Vector& value) { m_audioMetadata = value; } /** *

An array of objects. There can be multiple audio streams. Each * AudioMetadata object contains metadata for a single audio stream. * Audio information in an AudioMetadata objects includes the audio * codec, the number of audio channels, the duration of the audio stream, and the * sample rate. Audio metadata is returned in each page of information returned by * GetSegmentDetection.

*/ inline void SetAudioMetadata(Aws::Vector&& value) { m_audioMetadata = std::move(value); } /** *

An array of objects. There can be multiple audio streams. Each * AudioMetadata object contains metadata for a single audio stream. * Audio information in an AudioMetadata objects includes the audio * codec, the number of audio channels, the duration of the audio stream, and the * sample rate. Audio metadata is returned in each page of information returned by * GetSegmentDetection.

*/ inline GetSegmentDetectionResult& WithAudioMetadata(const Aws::Vector& value) { SetAudioMetadata(value); return *this;} /** *

An array of objects. There can be multiple audio streams. Each * AudioMetadata object contains metadata for a single audio stream. * Audio information in an AudioMetadata objects includes the audio * codec, the number of audio channels, the duration of the audio stream, and the * sample rate. Audio metadata is returned in each page of information returned by * GetSegmentDetection.

*/ inline GetSegmentDetectionResult& WithAudioMetadata(Aws::Vector&& value) { SetAudioMetadata(std::move(value)); return *this;} /** *

An array of objects. There can be multiple audio streams. Each * AudioMetadata object contains metadata for a single audio stream. * Audio information in an AudioMetadata objects includes the audio * codec, the number of audio channels, the duration of the audio stream, and the * sample rate. Audio metadata is returned in each page of information returned by * GetSegmentDetection.

*/ inline GetSegmentDetectionResult& AddAudioMetadata(const AudioMetadata& value) { m_audioMetadata.push_back(value); return *this; } /** *

An array of objects. There can be multiple audio streams. Each * AudioMetadata object contains metadata for a single audio stream. * Audio information in an AudioMetadata objects includes the audio * codec, the number of audio channels, the duration of the audio stream, and the * sample rate. Audio metadata is returned in each page of information returned by * GetSegmentDetection.

*/ inline GetSegmentDetectionResult& AddAudioMetadata(AudioMetadata&& value) { m_audioMetadata.push_back(std::move(value)); return *this; } /** *

If the previous response was incomplete (because there are more labels to * retrieve), Amazon Rekognition Video returns a pagination token in the response. * You can use this pagination token to retrieve the next set of text.

*/ inline const Aws::String& GetNextToken() const{ return m_nextToken; } /** *

If the previous response was incomplete (because there are more labels to * retrieve), Amazon Rekognition Video returns a pagination token in the response. * You can use this pagination token to retrieve the next set of text.

*/ inline void SetNextToken(const Aws::String& value) { m_nextToken = value; } /** *

If the previous response was incomplete (because there are more labels to * retrieve), Amazon Rekognition Video returns a pagination token in the response. * You can use this pagination token to retrieve the next set of text.

*/ inline void SetNextToken(Aws::String&& value) { m_nextToken = std::move(value); } /** *

If the previous response was incomplete (because there are more labels to * retrieve), Amazon Rekognition Video returns a pagination token in the response. * You can use this pagination token to retrieve the next set of text.

*/ inline void SetNextToken(const char* value) { m_nextToken.assign(value); } /** *

If the previous response was incomplete (because there are more labels to * retrieve), Amazon Rekognition Video returns a pagination token in the response. * You can use this pagination token to retrieve the next set of text.

*/ inline GetSegmentDetectionResult& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;} /** *

If the previous response was incomplete (because there are more labels to * retrieve), Amazon Rekognition Video returns a pagination token in the response. * You can use this pagination token to retrieve the next set of text.

*/ inline GetSegmentDetectionResult& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;} /** *

If the previous response was incomplete (because there are more labels to * retrieve), Amazon Rekognition Video returns a pagination token in the response. * You can use this pagination token to retrieve the next set of text.

*/ inline GetSegmentDetectionResult& WithNextToken(const char* value) { SetNextToken(value); return *this;} /** *

An array of segments detected in a video. The array is sorted by the segment * types (TECHNICAL_CUE or SHOT) specified in the SegmentTypes input * parameter of StartSegmentDetection. Within each segment type the * array is sorted by timestamp values.

*/ inline const Aws::Vector& GetSegments() const{ return m_segments; } /** *

An array of segments detected in a video. The array is sorted by the segment * types (TECHNICAL_CUE or SHOT) specified in the SegmentTypes input * parameter of StartSegmentDetection. Within each segment type the * array is sorted by timestamp values.

*/ inline void SetSegments(const Aws::Vector& value) { m_segments = value; } /** *

An array of segments detected in a video. The array is sorted by the segment * types (TECHNICAL_CUE or SHOT) specified in the SegmentTypes input * parameter of StartSegmentDetection. Within each segment type the * array is sorted by timestamp values.

*/ inline void SetSegments(Aws::Vector&& value) { m_segments = std::move(value); } /** *

An array of segments detected in a video. The array is sorted by the segment * types (TECHNICAL_CUE or SHOT) specified in the SegmentTypes input * parameter of StartSegmentDetection. Within each segment type the * array is sorted by timestamp values.

*/ inline GetSegmentDetectionResult& WithSegments(const Aws::Vector& value) { SetSegments(value); return *this;} /** *

An array of segments detected in a video. The array is sorted by the segment * types (TECHNICAL_CUE or SHOT) specified in the SegmentTypes input * parameter of StartSegmentDetection. Within each segment type the * array is sorted by timestamp values.

*/ inline GetSegmentDetectionResult& WithSegments(Aws::Vector&& value) { SetSegments(std::move(value)); return *this;} /** *

An array of segments detected in a video. The array is sorted by the segment * types (TECHNICAL_CUE or SHOT) specified in the SegmentTypes input * parameter of StartSegmentDetection. Within each segment type the * array is sorted by timestamp values.

*/ inline GetSegmentDetectionResult& AddSegments(const SegmentDetection& value) { m_segments.push_back(value); return *this; } /** *

An array of segments detected in a video. The array is sorted by the segment * types (TECHNICAL_CUE or SHOT) specified in the SegmentTypes input * parameter of StartSegmentDetection. Within each segment type the * array is sorted by timestamp values.

*/ inline GetSegmentDetectionResult& AddSegments(SegmentDetection&& value) { m_segments.push_back(std::move(value)); return *this; } /** *

An array containing the segment types requested in the call to * StartSegmentDetection.

*/ inline const Aws::Vector& GetSelectedSegmentTypes() const{ return m_selectedSegmentTypes; } /** *

An array containing the segment types requested in the call to * StartSegmentDetection.

*/ inline void SetSelectedSegmentTypes(const Aws::Vector& value) { m_selectedSegmentTypes = value; } /** *

An array containing the segment types requested in the call to * StartSegmentDetection.

*/ inline void SetSelectedSegmentTypes(Aws::Vector&& value) { m_selectedSegmentTypes = std::move(value); } /** *

An array containing the segment types requested in the call to * StartSegmentDetection.

*/ inline GetSegmentDetectionResult& WithSelectedSegmentTypes(const Aws::Vector& value) { SetSelectedSegmentTypes(value); return *this;} /** *

An array containing the segment types requested in the call to * StartSegmentDetection.

*/ inline GetSegmentDetectionResult& WithSelectedSegmentTypes(Aws::Vector&& value) { SetSelectedSegmentTypes(std::move(value)); return *this;} /** *

An array containing the segment types requested in the call to * StartSegmentDetection.

*/ inline GetSegmentDetectionResult& AddSelectedSegmentTypes(const SegmentTypeInfo& value) { m_selectedSegmentTypes.push_back(value); return *this; } /** *

An array containing the segment types requested in the call to * StartSegmentDetection.

*/ inline GetSegmentDetectionResult& AddSelectedSegmentTypes(SegmentTypeInfo&& value) { m_selectedSegmentTypes.push_back(std::move(value)); return *this; } /** *

Job identifier for the segment detection operation for which you want to * obtain results. The job identifer is returned by an initial call to * StartSegmentDetection.

*/ inline const Aws::String& GetJobId() const{ return m_jobId; } /** *

Job identifier for the segment detection operation for which you want to * obtain results. The job identifer is returned by an initial call to * StartSegmentDetection.

*/ inline void SetJobId(const Aws::String& value) { m_jobId = value; } /** *

Job identifier for the segment detection operation for which you want to * obtain results. The job identifer is returned by an initial call to * StartSegmentDetection.

*/ inline void SetJobId(Aws::String&& value) { m_jobId = std::move(value); } /** *

Job identifier for the segment detection operation for which you want to * obtain results. The job identifer is returned by an initial call to * StartSegmentDetection.

*/ inline void SetJobId(const char* value) { m_jobId.assign(value); } /** *

Job identifier for the segment detection operation for which you want to * obtain results. The job identifer is returned by an initial call to * StartSegmentDetection.

*/ inline GetSegmentDetectionResult& WithJobId(const Aws::String& value) { SetJobId(value); return *this;} /** *

Job identifier for the segment detection operation for which you want to * obtain results. The job identifer is returned by an initial call to * StartSegmentDetection.

*/ inline GetSegmentDetectionResult& WithJobId(Aws::String&& value) { SetJobId(std::move(value)); return *this;} /** *

Job identifier for the segment detection operation for which you want to * obtain results. The job identifer is returned by an initial call to * StartSegmentDetection.

*/ inline GetSegmentDetectionResult& WithJobId(const char* value) { SetJobId(value); return *this;} inline const Video& GetVideo() const{ return m_video; } inline void SetVideo(const Video& value) { m_video = value; } inline void SetVideo(Video&& value) { m_video = std::move(value); } inline GetSegmentDetectionResult& WithVideo(const Video& value) { SetVideo(value); return *this;} inline GetSegmentDetectionResult& WithVideo(Video&& value) { SetVideo(std::move(value)); return *this;} /** *

A job identifier specified in the call to StartSegmentDetection and returned * in the job completion notification sent to your Amazon Simple Notification * Service topic.

*/ inline const Aws::String& GetJobTag() const{ return m_jobTag; } /** *

A job identifier specified in the call to StartSegmentDetection and returned * in the job completion notification sent to your Amazon Simple Notification * Service topic.

*/ inline void SetJobTag(const Aws::String& value) { m_jobTag = value; } /** *

A job identifier specified in the call to StartSegmentDetection and returned * in the job completion notification sent to your Amazon Simple Notification * Service topic.

*/ inline void SetJobTag(Aws::String&& value) { m_jobTag = std::move(value); } /** *

A job identifier specified in the call to StartSegmentDetection and returned * in the job completion notification sent to your Amazon Simple Notification * Service topic.

*/ inline void SetJobTag(const char* value) { m_jobTag.assign(value); } /** *

A job identifier specified in the call to StartSegmentDetection and returned * in the job completion notification sent to your Amazon Simple Notification * Service topic.

*/ inline GetSegmentDetectionResult& WithJobTag(const Aws::String& value) { SetJobTag(value); return *this;} /** *

A job identifier specified in the call to StartSegmentDetection and returned * in the job completion notification sent to your Amazon Simple Notification * Service topic.

*/ inline GetSegmentDetectionResult& WithJobTag(Aws::String&& value) { SetJobTag(std::move(value)); return *this;} /** *

A job identifier specified in the call to StartSegmentDetection and returned * in the job completion notification sent to your Amazon Simple Notification * Service topic.

*/ inline GetSegmentDetectionResult& WithJobTag(const char* value) { SetJobTag(value); return *this;} inline const Aws::String& GetRequestId() const{ return m_requestId; } inline void SetRequestId(const Aws::String& value) { m_requestId = value; } inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } inline void SetRequestId(const char* value) { m_requestId.assign(value); } inline GetSegmentDetectionResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline GetSegmentDetectionResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline GetSegmentDetectionResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: VideoJobStatus m_jobStatus; Aws::String m_statusMessage; Aws::Vector m_videoMetadata; Aws::Vector m_audioMetadata; Aws::String m_nextToken; Aws::Vector m_segments; Aws::Vector m_selectedSegmentTypes; Aws::String m_jobId; Video m_video; Aws::String m_jobTag; Aws::String m_requestId; }; } // namespace Model } // namespace Rekognition } // namespace Aws