/** * 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 #include #include namespace Aws { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace Rekognition { namespace Model { class DescribeStreamProcessorResult { public: AWS_REKOGNITION_API DescribeStreamProcessorResult(); AWS_REKOGNITION_API DescribeStreamProcessorResult(const Aws::AmazonWebServiceResult& result); AWS_REKOGNITION_API DescribeStreamProcessorResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

Name of the stream processor.

*/ inline const Aws::String& GetName() const{ return m_name; } /** *

Name of the stream processor.

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

Name of the stream processor.

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

Name of the stream processor.

*/ inline void SetName(const char* value) { m_name.assign(value); } /** *

Name of the stream processor.

*/ inline DescribeStreamProcessorResult& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

Name of the stream processor.

*/ inline DescribeStreamProcessorResult& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *

Name of the stream processor.

*/ inline DescribeStreamProcessorResult& WithName(const char* value) { SetName(value); return *this;} /** *

ARN of the stream processor.

*/ inline const Aws::String& GetStreamProcessorArn() const{ return m_streamProcessorArn; } /** *

ARN of the stream processor.

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

ARN of the stream processor.

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

ARN of the stream processor.

*/ inline void SetStreamProcessorArn(const char* value) { m_streamProcessorArn.assign(value); } /** *

ARN of the stream processor.

*/ inline DescribeStreamProcessorResult& WithStreamProcessorArn(const Aws::String& value) { SetStreamProcessorArn(value); return *this;} /** *

ARN of the stream processor.

*/ inline DescribeStreamProcessorResult& WithStreamProcessorArn(Aws::String&& value) { SetStreamProcessorArn(std::move(value)); return *this;} /** *

ARN of the stream processor.

*/ inline DescribeStreamProcessorResult& WithStreamProcessorArn(const char* value) { SetStreamProcessorArn(value); return *this;} /** *

Current status of the stream processor.

*/ inline const StreamProcessorStatus& GetStatus() const{ return m_status; } /** *

Current status of the stream processor.

*/ inline void SetStatus(const StreamProcessorStatus& value) { m_status = value; } /** *

Current status of the stream processor.

*/ inline void SetStatus(StreamProcessorStatus&& value) { m_status = std::move(value); } /** *

Current status of the stream processor.

*/ inline DescribeStreamProcessorResult& WithStatus(const StreamProcessorStatus& value) { SetStatus(value); return *this;} /** *

Current status of the stream processor.

*/ inline DescribeStreamProcessorResult& WithStatus(StreamProcessorStatus&& value) { SetStatus(std::move(value)); return *this;} /** *

Detailed status message about the stream processor.

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

Detailed status message about the stream processor.

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

Detailed status message about the stream processor.

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

Detailed status message about the stream processor.

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

Detailed status message about the stream processor.

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

Detailed status message about the stream processor.

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

Detailed status message about the stream processor.

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

Date and time the stream processor was created

*/ inline const Aws::Utils::DateTime& GetCreationTimestamp() const{ return m_creationTimestamp; } /** *

Date and time the stream processor was created

*/ inline void SetCreationTimestamp(const Aws::Utils::DateTime& value) { m_creationTimestamp = value; } /** *

Date and time the stream processor was created

*/ inline void SetCreationTimestamp(Aws::Utils::DateTime&& value) { m_creationTimestamp = std::move(value); } /** *

Date and time the stream processor was created

*/ inline DescribeStreamProcessorResult& WithCreationTimestamp(const Aws::Utils::DateTime& value) { SetCreationTimestamp(value); return *this;} /** *

Date and time the stream processor was created

*/ inline DescribeStreamProcessorResult& WithCreationTimestamp(Aws::Utils::DateTime&& value) { SetCreationTimestamp(std::move(value)); return *this;} /** *

The time, in Unix format, the stream processor was last updated. For example, * when the stream processor moves from a running state to a failed state, or when * the user starts or stops the stream processor.

*/ inline const Aws::Utils::DateTime& GetLastUpdateTimestamp() const{ return m_lastUpdateTimestamp; } /** *

The time, in Unix format, the stream processor was last updated. For example, * when the stream processor moves from a running state to a failed state, or when * the user starts or stops the stream processor.

*/ inline void SetLastUpdateTimestamp(const Aws::Utils::DateTime& value) { m_lastUpdateTimestamp = value; } /** *

The time, in Unix format, the stream processor was last updated. For example, * when the stream processor moves from a running state to a failed state, or when * the user starts or stops the stream processor.

*/ inline void SetLastUpdateTimestamp(Aws::Utils::DateTime&& value) { m_lastUpdateTimestamp = std::move(value); } /** *

The time, in Unix format, the stream processor was last updated. For example, * when the stream processor moves from a running state to a failed state, or when * the user starts or stops the stream processor.

*/ inline DescribeStreamProcessorResult& WithLastUpdateTimestamp(const Aws::Utils::DateTime& value) { SetLastUpdateTimestamp(value); return *this;} /** *

The time, in Unix format, the stream processor was last updated. For example, * when the stream processor moves from a running state to a failed state, or when * the user starts or stops the stream processor.

*/ inline DescribeStreamProcessorResult& WithLastUpdateTimestamp(Aws::Utils::DateTime&& value) { SetLastUpdateTimestamp(std::move(value)); return *this;} /** *

Kinesis video stream that provides the source streaming video.

*/ inline const StreamProcessorInput& GetInput() const{ return m_input; } /** *

Kinesis video stream that provides the source streaming video.

*/ inline void SetInput(const StreamProcessorInput& value) { m_input = value; } /** *

Kinesis video stream that provides the source streaming video.

*/ inline void SetInput(StreamProcessorInput&& value) { m_input = std::move(value); } /** *

Kinesis video stream that provides the source streaming video.

*/ inline DescribeStreamProcessorResult& WithInput(const StreamProcessorInput& value) { SetInput(value); return *this;} /** *

Kinesis video stream that provides the source streaming video.

*/ inline DescribeStreamProcessorResult& WithInput(StreamProcessorInput&& value) { SetInput(std::move(value)); return *this;} /** *

Kinesis data stream to which Amazon Rekognition Video puts the analysis * results.

*/ inline const StreamProcessorOutput& GetOutput() const{ return m_output; } /** *

Kinesis data stream to which Amazon Rekognition Video puts the analysis * results.

*/ inline void SetOutput(const StreamProcessorOutput& value) { m_output = value; } /** *

Kinesis data stream to which Amazon Rekognition Video puts the analysis * results.

*/ inline void SetOutput(StreamProcessorOutput&& value) { m_output = std::move(value); } /** *

Kinesis data stream to which Amazon Rekognition Video puts the analysis * results.

*/ inline DescribeStreamProcessorResult& WithOutput(const StreamProcessorOutput& value) { SetOutput(value); return *this;} /** *

Kinesis data stream to which Amazon Rekognition Video puts the analysis * results.

*/ inline DescribeStreamProcessorResult& WithOutput(StreamProcessorOutput&& value) { SetOutput(std::move(value)); return *this;} /** *

ARN of the IAM role that allows access to the stream processor.

*/ inline const Aws::String& GetRoleArn() const{ return m_roleArn; } /** *

ARN of the IAM role that allows access to the stream processor.

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

ARN of the IAM role that allows access to the stream processor.

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

ARN of the IAM role that allows access to the stream processor.

*/ inline void SetRoleArn(const char* value) { m_roleArn.assign(value); } /** *

ARN of the IAM role that allows access to the stream processor.

*/ inline DescribeStreamProcessorResult& WithRoleArn(const Aws::String& value) { SetRoleArn(value); return *this;} /** *

ARN of the IAM role that allows access to the stream processor.

*/ inline DescribeStreamProcessorResult& WithRoleArn(Aws::String&& value) { SetRoleArn(std::move(value)); return *this;} /** *

ARN of the IAM role that allows access to the stream processor.

*/ inline DescribeStreamProcessorResult& WithRoleArn(const char* value) { SetRoleArn(value); return *this;} /** *

Input parameters used in a streaming video analyzed by a stream processor. * You can use FaceSearch to recognize faces in a streaming video, or * you can use ConnectedHome to detect labels.

*/ inline const StreamProcessorSettings& GetSettings() const{ return m_settings; } /** *

Input parameters used in a streaming video analyzed by a stream processor. * You can use FaceSearch to recognize faces in a streaming video, or * you can use ConnectedHome to detect labels.

*/ inline void SetSettings(const StreamProcessorSettings& value) { m_settings = value; } /** *

Input parameters used in a streaming video analyzed by a stream processor. * You can use FaceSearch to recognize faces in a streaming video, or * you can use ConnectedHome to detect labels.

*/ inline void SetSettings(StreamProcessorSettings&& value) { m_settings = std::move(value); } /** *

Input parameters used in a streaming video analyzed by a stream processor. * You can use FaceSearch to recognize faces in a streaming video, or * you can use ConnectedHome to detect labels.

*/ inline DescribeStreamProcessorResult& WithSettings(const StreamProcessorSettings& value) { SetSettings(value); return *this;} /** *

Input parameters used in a streaming video analyzed by a stream processor. * You can use FaceSearch to recognize faces in a streaming video, or * you can use ConnectedHome to detect labels.

*/ inline DescribeStreamProcessorResult& WithSettings(StreamProcessorSettings&& value) { SetSettings(std::move(value)); return *this;} inline const StreamProcessorNotificationChannel& GetNotificationChannel() const{ return m_notificationChannel; } inline void SetNotificationChannel(const StreamProcessorNotificationChannel& value) { m_notificationChannel = value; } inline void SetNotificationChannel(StreamProcessorNotificationChannel&& value) { m_notificationChannel = std::move(value); } inline DescribeStreamProcessorResult& WithNotificationChannel(const StreamProcessorNotificationChannel& value) { SetNotificationChannel(value); return *this;} inline DescribeStreamProcessorResult& WithNotificationChannel(StreamProcessorNotificationChannel&& value) { SetNotificationChannel(std::move(value)); return *this;} /** *

The identifier for your AWS Key Management Service key (AWS KMS key). This * is an optional parameter for label detection stream processors.

*/ inline const Aws::String& GetKmsKeyId() const{ return m_kmsKeyId; } /** *

The identifier for your AWS Key Management Service key (AWS KMS key). This * is an optional parameter for label detection stream processors.

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

The identifier for your AWS Key Management Service key (AWS KMS key). This * is an optional parameter for label detection stream processors.

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

The identifier for your AWS Key Management Service key (AWS KMS key). This * is an optional parameter for label detection stream processors.

*/ inline void SetKmsKeyId(const char* value) { m_kmsKeyId.assign(value); } /** *

The identifier for your AWS Key Management Service key (AWS KMS key). This * is an optional parameter for label detection stream processors.

*/ inline DescribeStreamProcessorResult& WithKmsKeyId(const Aws::String& value) { SetKmsKeyId(value); return *this;} /** *

The identifier for your AWS Key Management Service key (AWS KMS key). This * is an optional parameter for label detection stream processors.

*/ inline DescribeStreamProcessorResult& WithKmsKeyId(Aws::String&& value) { SetKmsKeyId(std::move(value)); return *this;} /** *

The identifier for your AWS Key Management Service key (AWS KMS key). This * is an optional parameter for label detection stream processors.

*/ inline DescribeStreamProcessorResult& WithKmsKeyId(const char* value) { SetKmsKeyId(value); return *this;} /** *

Specifies locations in the frames where Amazon Rekognition checks for * objects or people. This is an optional parameter for label detection stream * processors.

*/ inline const Aws::Vector& GetRegionsOfInterest() const{ return m_regionsOfInterest; } /** *

Specifies locations in the frames where Amazon Rekognition checks for * objects or people. This is an optional parameter for label detection stream * processors.

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

Specifies locations in the frames where Amazon Rekognition checks for * objects or people. This is an optional parameter for label detection stream * processors.

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

Specifies locations in the frames where Amazon Rekognition checks for * objects or people. This is an optional parameter for label detection stream * processors.

*/ inline DescribeStreamProcessorResult& WithRegionsOfInterest(const Aws::Vector& value) { SetRegionsOfInterest(value); return *this;} /** *

Specifies locations in the frames where Amazon Rekognition checks for * objects or people. This is an optional parameter for label detection stream * processors.

*/ inline DescribeStreamProcessorResult& WithRegionsOfInterest(Aws::Vector&& value) { SetRegionsOfInterest(std::move(value)); return *this;} /** *

Specifies locations in the frames where Amazon Rekognition checks for * objects or people. This is an optional parameter for label detection stream * processors.

*/ inline DescribeStreamProcessorResult& AddRegionsOfInterest(const RegionOfInterest& value) { m_regionsOfInterest.push_back(value); return *this; } /** *

Specifies locations in the frames where Amazon Rekognition checks for * objects or people. This is an optional parameter for label detection stream * processors.

*/ inline DescribeStreamProcessorResult& AddRegionsOfInterest(RegionOfInterest&& value) { m_regionsOfInterest.push_back(std::move(value)); return *this; } /** *

Shows whether you are sharing data with Rekognition to improve model * performance. You can choose this option at the account level or on a per-stream * basis. Note that if you opt out at the account level this setting is ignored on * individual streams.

*/ inline const StreamProcessorDataSharingPreference& GetDataSharingPreference() const{ return m_dataSharingPreference; } /** *

Shows whether you are sharing data with Rekognition to improve model * performance. You can choose this option at the account level or on a per-stream * basis. Note that if you opt out at the account level this setting is ignored on * individual streams.

*/ inline void SetDataSharingPreference(const StreamProcessorDataSharingPreference& value) { m_dataSharingPreference = value; } /** *

Shows whether you are sharing data with Rekognition to improve model * performance. You can choose this option at the account level or on a per-stream * basis. Note that if you opt out at the account level this setting is ignored on * individual streams.

*/ inline void SetDataSharingPreference(StreamProcessorDataSharingPreference&& value) { m_dataSharingPreference = std::move(value); } /** *

Shows whether you are sharing data with Rekognition to improve model * performance. You can choose this option at the account level or on a per-stream * basis. Note that if you opt out at the account level this setting is ignored on * individual streams.

*/ inline DescribeStreamProcessorResult& WithDataSharingPreference(const StreamProcessorDataSharingPreference& value) { SetDataSharingPreference(value); return *this;} /** *

Shows whether you are sharing data with Rekognition to improve model * performance. You can choose this option at the account level or on a per-stream * basis. Note that if you opt out at the account level this setting is ignored on * individual streams.

*/ inline DescribeStreamProcessorResult& WithDataSharingPreference(StreamProcessorDataSharingPreference&& value) { SetDataSharingPreference(std::move(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 DescribeStreamProcessorResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline DescribeStreamProcessorResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline DescribeStreamProcessorResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::String m_name; Aws::String m_streamProcessorArn; StreamProcessorStatus m_status; Aws::String m_statusMessage; Aws::Utils::DateTime m_creationTimestamp; Aws::Utils::DateTime m_lastUpdateTimestamp; StreamProcessorInput m_input; StreamProcessorOutput m_output; Aws::String m_roleArn; StreamProcessorSettings m_settings; StreamProcessorNotificationChannel m_notificationChannel; Aws::String m_kmsKeyId; Aws::Vector m_regionsOfInterest; StreamProcessorDataSharingPreference m_dataSharingPreference; Aws::String m_requestId; }; } // namespace Model } // namespace Rekognition } // namespace Aws