/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace Rekognition { namespace Model { /** *

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

See Also:

* AWS * API Reference

*/ class StreamProcessingStartSelector { public: AWS_REKOGNITION_API StreamProcessingStartSelector(); AWS_REKOGNITION_API StreamProcessingStartSelector(Aws::Utils::Json::JsonView jsonValue); AWS_REKOGNITION_API StreamProcessingStartSelector& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_REKOGNITION_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

Specifies the starting point in the stream to start processing. This can be * done with a producer timestamp or a fragment number in a Kinesis stream.

*/ inline const KinesisVideoStreamStartSelector& GetKVSStreamStartSelector() const{ return m_kVSStreamStartSelector; } /** *

Specifies the starting point in the stream to start processing. This can be * done with a producer timestamp or a fragment number in a Kinesis stream.

*/ inline bool KVSStreamStartSelectorHasBeenSet() const { return m_kVSStreamStartSelectorHasBeenSet; } /** *

Specifies the starting point in the stream to start processing. This can be * done with a producer timestamp or a fragment number in a Kinesis stream.

*/ inline void SetKVSStreamStartSelector(const KinesisVideoStreamStartSelector& value) { m_kVSStreamStartSelectorHasBeenSet = true; m_kVSStreamStartSelector = value; } /** *

Specifies the starting point in the stream to start processing. This can be * done with a producer timestamp or a fragment number in a Kinesis stream.

*/ inline void SetKVSStreamStartSelector(KinesisVideoStreamStartSelector&& value) { m_kVSStreamStartSelectorHasBeenSet = true; m_kVSStreamStartSelector = std::move(value); } /** *

Specifies the starting point in the stream to start processing. This can be * done with a producer timestamp or a fragment number in a Kinesis stream.

*/ inline StreamProcessingStartSelector& WithKVSStreamStartSelector(const KinesisVideoStreamStartSelector& value) { SetKVSStreamStartSelector(value); return *this;} /** *

Specifies the starting point in the stream to start processing. This can be * done with a producer timestamp or a fragment number in a Kinesis stream.

*/ inline StreamProcessingStartSelector& WithKVSStreamStartSelector(KinesisVideoStreamStartSelector&& value) { SetKVSStreamStartSelector(std::move(value)); return *this;} private: KinesisVideoStreamStartSelector m_kVSStreamStartSelector; bool m_kVSStreamStartSelectorHasBeenSet = false; }; } // namespace Model } // namespace Rekognition } // namespace Aws