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

The video artifact configuration object.

See Also:

AWS * API Reference

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

Indicates whether the video artifact is enabled or disabled.

*/ inline const ArtifactsState& GetState() const{ return m_state; } /** *

Indicates whether the video artifact is enabled or disabled.

*/ inline bool StateHasBeenSet() const { return m_stateHasBeenSet; } /** *

Indicates whether the video artifact is enabled or disabled.

*/ inline void SetState(const ArtifactsState& value) { m_stateHasBeenSet = true; m_state = value; } /** *

Indicates whether the video artifact is enabled or disabled.

*/ inline void SetState(ArtifactsState&& value) { m_stateHasBeenSet = true; m_state = std::move(value); } /** *

Indicates whether the video artifact is enabled or disabled.

*/ inline VideoArtifactsConfiguration& WithState(const ArtifactsState& value) { SetState(value); return *this;} /** *

Indicates whether the video artifact is enabled or disabled.

*/ inline VideoArtifactsConfiguration& WithState(ArtifactsState&& value) { SetState(std::move(value)); return *this;} /** *

The MUX type of the video artifact configuration object.

*/ inline const VideoMuxType& GetMuxType() const{ return m_muxType; } /** *

The MUX type of the video artifact configuration object.

*/ inline bool MuxTypeHasBeenSet() const { return m_muxTypeHasBeenSet; } /** *

The MUX type of the video artifact configuration object.

*/ inline void SetMuxType(const VideoMuxType& value) { m_muxTypeHasBeenSet = true; m_muxType = value; } /** *

The MUX type of the video artifact configuration object.

*/ inline void SetMuxType(VideoMuxType&& value) { m_muxTypeHasBeenSet = true; m_muxType = std::move(value); } /** *

The MUX type of the video artifact configuration object.

*/ inline VideoArtifactsConfiguration& WithMuxType(const VideoMuxType& value) { SetMuxType(value); return *this;} /** *

The MUX type of the video artifact configuration object.

*/ inline VideoArtifactsConfiguration& WithMuxType(VideoMuxType&& value) { SetMuxType(std::move(value)); return *this;} private: ArtifactsState m_state; bool m_stateHasBeenSet = false; VideoMuxType m_muxType; bool m_muxTypeHasBeenSet = false; }; } // namespace Model } // namespace Chime } // namespace Aws