/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { namespace Rekognition { namespace Model { /** */ class StartStreamProcessorRequest : public RekognitionRequest { public: AWS_REKOGNITION_API StartStreamProcessorRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "StartStreamProcessor"; } AWS_REKOGNITION_API Aws::String SerializePayload() const override; AWS_REKOGNITION_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The name of the stream processor to start processing.

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

The name of the stream processor to start processing.

*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *

The name of the stream processor to start processing.

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

The name of the stream processor to start processing.

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

The name of the stream processor to start processing.

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

The name of the stream processor to start processing.

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

The name of the stream processor to start processing.

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

The name of the stream processor to start processing.

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

Specifies the starting point in the Kinesis stream to start processing. You * can use the producer timestamp or the fragment number. If you use the producer * timestamp, you must put the time in milliseconds. For more information about * fragment numbers, see Fragment. *

This is a required parameter for label detection stream processors and * should not be used to start a face search stream processor.

*/ inline const StreamProcessingStartSelector& GetStartSelector() const{ return m_startSelector; } /** *

Specifies the starting point in the Kinesis stream to start processing. You * can use the producer timestamp or the fragment number. If you use the producer * timestamp, you must put the time in milliseconds. For more information about * fragment numbers, see Fragment. *

This is a required parameter for label detection stream processors and * should not be used to start a face search stream processor.

*/ inline bool StartSelectorHasBeenSet() const { return m_startSelectorHasBeenSet; } /** *

Specifies the starting point in the Kinesis stream to start processing. You * can use the producer timestamp or the fragment number. If you use the producer * timestamp, you must put the time in milliseconds. For more information about * fragment numbers, see Fragment. *

This is a required parameter for label detection stream processors and * should not be used to start a face search stream processor.

*/ inline void SetStartSelector(const StreamProcessingStartSelector& value) { m_startSelectorHasBeenSet = true; m_startSelector = value; } /** *

Specifies the starting point in the Kinesis stream to start processing. You * can use the producer timestamp or the fragment number. If you use the producer * timestamp, you must put the time in milliseconds. For more information about * fragment numbers, see Fragment. *

This is a required parameter for label detection stream processors and * should not be used to start a face search stream processor.

*/ inline void SetStartSelector(StreamProcessingStartSelector&& value) { m_startSelectorHasBeenSet = true; m_startSelector = std::move(value); } /** *

Specifies the starting point in the Kinesis stream to start processing. You * can use the producer timestamp or the fragment number. If you use the producer * timestamp, you must put the time in milliseconds. For more information about * fragment numbers, see Fragment. *

This is a required parameter for label detection stream processors and * should not be used to start a face search stream processor.

*/ inline StartStreamProcessorRequest& WithStartSelector(const StreamProcessingStartSelector& value) { SetStartSelector(value); return *this;} /** *

Specifies the starting point in the Kinesis stream to start processing. You * can use the producer timestamp or the fragment number. If you use the producer * timestamp, you must put the time in milliseconds. For more information about * fragment numbers, see Fragment. *

This is a required parameter for label detection stream processors and * should not be used to start a face search stream processor.

*/ inline StartStreamProcessorRequest& WithStartSelector(StreamProcessingStartSelector&& value) { SetStartSelector(std::move(value)); return *this;} /** *

Specifies when to stop processing the stream. You can specify a maximum * amount of time to process the video.

This is a required parameter for * label detection stream processors and should not be used to start a face search * stream processor.

*/ inline const StreamProcessingStopSelector& GetStopSelector() const{ return m_stopSelector; } /** *

Specifies when to stop processing the stream. You can specify a maximum * amount of time to process the video.

This is a required parameter for * label detection stream processors and should not be used to start a face search * stream processor.

*/ inline bool StopSelectorHasBeenSet() const { return m_stopSelectorHasBeenSet; } /** *

Specifies when to stop processing the stream. You can specify a maximum * amount of time to process the video.

This is a required parameter for * label detection stream processors and should not be used to start a face search * stream processor.

*/ inline void SetStopSelector(const StreamProcessingStopSelector& value) { m_stopSelectorHasBeenSet = true; m_stopSelector = value; } /** *

Specifies when to stop processing the stream. You can specify a maximum * amount of time to process the video.

This is a required parameter for * label detection stream processors and should not be used to start a face search * stream processor.

*/ inline void SetStopSelector(StreamProcessingStopSelector&& value) { m_stopSelectorHasBeenSet = true; m_stopSelector = std::move(value); } /** *

Specifies when to stop processing the stream. You can specify a maximum * amount of time to process the video.

This is a required parameter for * label detection stream processors and should not be used to start a face search * stream processor.

*/ inline StartStreamProcessorRequest& WithStopSelector(const StreamProcessingStopSelector& value) { SetStopSelector(value); return *this;} /** *

Specifies when to stop processing the stream. You can specify a maximum * amount of time to process the video.

This is a required parameter for * label detection stream processors and should not be used to start a face search * stream processor.

*/ inline StartStreamProcessorRequest& WithStopSelector(StreamProcessingStopSelector&& value) { SetStopSelector(std::move(value)); return *this;} private: Aws::String m_name; bool m_nameHasBeenSet = false; StreamProcessingStartSelector m_startSelector; bool m_startSelectorHasBeenSet = false; StreamProcessingStopSelector m_stopSelector; bool m_stopSelectorHasBeenSet = false; }; } // namespace Model } // namespace Rekognition } // namespace Aws