/** * 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 namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace ChimeSDKMediaPipelines { namespace Model { /** *

Specifies the type of grid layout.

See Also:

AWS * API Reference

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

Defines the layout of the video tiles when content sharing is enabled.

*/ inline const ContentShareLayoutOption& GetContentShareLayout() const{ return m_contentShareLayout; } /** *

Defines the layout of the video tiles when content sharing is enabled.

*/ inline bool ContentShareLayoutHasBeenSet() const { return m_contentShareLayoutHasBeenSet; } /** *

Defines the layout of the video tiles when content sharing is enabled.

*/ inline void SetContentShareLayout(const ContentShareLayoutOption& value) { m_contentShareLayoutHasBeenSet = true; m_contentShareLayout = value; } /** *

Defines the layout of the video tiles when content sharing is enabled.

*/ inline void SetContentShareLayout(ContentShareLayoutOption&& value) { m_contentShareLayoutHasBeenSet = true; m_contentShareLayout = std::move(value); } /** *

Defines the layout of the video tiles when content sharing is enabled.

*/ inline GridViewConfiguration& WithContentShareLayout(const ContentShareLayoutOption& value) { SetContentShareLayout(value); return *this;} /** *

Defines the layout of the video tiles when content sharing is enabled.

*/ inline GridViewConfiguration& WithContentShareLayout(ContentShareLayoutOption&& value) { SetContentShareLayout(std::move(value)); return *this;} /** *

Defines the configuration options for a presenter only video tile.

*/ inline const PresenterOnlyConfiguration& GetPresenterOnlyConfiguration() const{ return m_presenterOnlyConfiguration; } /** *

Defines the configuration options for a presenter only video tile.

*/ inline bool PresenterOnlyConfigurationHasBeenSet() const { return m_presenterOnlyConfigurationHasBeenSet; } /** *

Defines the configuration options for a presenter only video tile.

*/ inline void SetPresenterOnlyConfiguration(const PresenterOnlyConfiguration& value) { m_presenterOnlyConfigurationHasBeenSet = true; m_presenterOnlyConfiguration = value; } /** *

Defines the configuration options for a presenter only video tile.

*/ inline void SetPresenterOnlyConfiguration(PresenterOnlyConfiguration&& value) { m_presenterOnlyConfigurationHasBeenSet = true; m_presenterOnlyConfiguration = std::move(value); } /** *

Defines the configuration options for a presenter only video tile.

*/ inline GridViewConfiguration& WithPresenterOnlyConfiguration(const PresenterOnlyConfiguration& value) { SetPresenterOnlyConfiguration(value); return *this;} /** *

Defines the configuration options for a presenter only video tile.

*/ inline GridViewConfiguration& WithPresenterOnlyConfiguration(PresenterOnlyConfiguration&& value) { SetPresenterOnlyConfiguration(std::move(value)); return *this;} /** *

The configuration settings for an ActiveSpeakerOnly video * tile.

*/ inline const ActiveSpeakerOnlyConfiguration& GetActiveSpeakerOnlyConfiguration() const{ return m_activeSpeakerOnlyConfiguration; } /** *

The configuration settings for an ActiveSpeakerOnly video * tile.

*/ inline bool ActiveSpeakerOnlyConfigurationHasBeenSet() const { return m_activeSpeakerOnlyConfigurationHasBeenSet; } /** *

The configuration settings for an ActiveSpeakerOnly video * tile.

*/ inline void SetActiveSpeakerOnlyConfiguration(const ActiveSpeakerOnlyConfiguration& value) { m_activeSpeakerOnlyConfigurationHasBeenSet = true; m_activeSpeakerOnlyConfiguration = value; } /** *

The configuration settings for an ActiveSpeakerOnly video * tile.

*/ inline void SetActiveSpeakerOnlyConfiguration(ActiveSpeakerOnlyConfiguration&& value) { m_activeSpeakerOnlyConfigurationHasBeenSet = true; m_activeSpeakerOnlyConfiguration = std::move(value); } /** *

The configuration settings for an ActiveSpeakerOnly video * tile.

*/ inline GridViewConfiguration& WithActiveSpeakerOnlyConfiguration(const ActiveSpeakerOnlyConfiguration& value) { SetActiveSpeakerOnlyConfiguration(value); return *this;} /** *

The configuration settings for an ActiveSpeakerOnly video * tile.

*/ inline GridViewConfiguration& WithActiveSpeakerOnlyConfiguration(ActiveSpeakerOnlyConfiguration&& value) { SetActiveSpeakerOnlyConfiguration(std::move(value)); return *this;} /** *

The configuration settings for a horizontal layout.

*/ inline const HorizontalLayoutConfiguration& GetHorizontalLayoutConfiguration() const{ return m_horizontalLayoutConfiguration; } /** *

The configuration settings for a horizontal layout.

*/ inline bool HorizontalLayoutConfigurationHasBeenSet() const { return m_horizontalLayoutConfigurationHasBeenSet; } /** *

The configuration settings for a horizontal layout.

*/ inline void SetHorizontalLayoutConfiguration(const HorizontalLayoutConfiguration& value) { m_horizontalLayoutConfigurationHasBeenSet = true; m_horizontalLayoutConfiguration = value; } /** *

The configuration settings for a horizontal layout.

*/ inline void SetHorizontalLayoutConfiguration(HorizontalLayoutConfiguration&& value) { m_horizontalLayoutConfigurationHasBeenSet = true; m_horizontalLayoutConfiguration = std::move(value); } /** *

The configuration settings for a horizontal layout.

*/ inline GridViewConfiguration& WithHorizontalLayoutConfiguration(const HorizontalLayoutConfiguration& value) { SetHorizontalLayoutConfiguration(value); return *this;} /** *

The configuration settings for a horizontal layout.

*/ inline GridViewConfiguration& WithHorizontalLayoutConfiguration(HorizontalLayoutConfiguration&& value) { SetHorizontalLayoutConfiguration(std::move(value)); return *this;} /** *

The configuration settings for a vertical layout.

*/ inline const VerticalLayoutConfiguration& GetVerticalLayoutConfiguration() const{ return m_verticalLayoutConfiguration; } /** *

The configuration settings for a vertical layout.

*/ inline bool VerticalLayoutConfigurationHasBeenSet() const { return m_verticalLayoutConfigurationHasBeenSet; } /** *

The configuration settings for a vertical layout.

*/ inline void SetVerticalLayoutConfiguration(const VerticalLayoutConfiguration& value) { m_verticalLayoutConfigurationHasBeenSet = true; m_verticalLayoutConfiguration = value; } /** *

The configuration settings for a vertical layout.

*/ inline void SetVerticalLayoutConfiguration(VerticalLayoutConfiguration&& value) { m_verticalLayoutConfigurationHasBeenSet = true; m_verticalLayoutConfiguration = std::move(value); } /** *

The configuration settings for a vertical layout.

*/ inline GridViewConfiguration& WithVerticalLayoutConfiguration(const VerticalLayoutConfiguration& value) { SetVerticalLayoutConfiguration(value); return *this;} /** *

The configuration settings for a vertical layout.

*/ inline GridViewConfiguration& WithVerticalLayoutConfiguration(VerticalLayoutConfiguration&& value) { SetVerticalLayoutConfiguration(std::move(value)); return *this;} /** *

The attribute settings for the video tiles.

*/ inline const VideoAttribute& GetVideoAttribute() const{ return m_videoAttribute; } /** *

The attribute settings for the video tiles.

*/ inline bool VideoAttributeHasBeenSet() const { return m_videoAttributeHasBeenSet; } /** *

The attribute settings for the video tiles.

*/ inline void SetVideoAttribute(const VideoAttribute& value) { m_videoAttributeHasBeenSet = true; m_videoAttribute = value; } /** *

The attribute settings for the video tiles.

*/ inline void SetVideoAttribute(VideoAttribute&& value) { m_videoAttributeHasBeenSet = true; m_videoAttribute = std::move(value); } /** *

The attribute settings for the video tiles.

*/ inline GridViewConfiguration& WithVideoAttribute(const VideoAttribute& value) { SetVideoAttribute(value); return *this;} /** *

The attribute settings for the video tiles.

*/ inline GridViewConfiguration& WithVideoAttribute(VideoAttribute&& value) { SetVideoAttribute(std::move(value)); return *this;} /** *

The orientation setting, horizontal or vertical.

*/ inline const CanvasOrientation& GetCanvasOrientation() const{ return m_canvasOrientation; } /** *

The orientation setting, horizontal or vertical.

*/ inline bool CanvasOrientationHasBeenSet() const { return m_canvasOrientationHasBeenSet; } /** *

The orientation setting, horizontal or vertical.

*/ inline void SetCanvasOrientation(const CanvasOrientation& value) { m_canvasOrientationHasBeenSet = true; m_canvasOrientation = value; } /** *

The orientation setting, horizontal or vertical.

*/ inline void SetCanvasOrientation(CanvasOrientation&& value) { m_canvasOrientationHasBeenSet = true; m_canvasOrientation = std::move(value); } /** *

The orientation setting, horizontal or vertical.

*/ inline GridViewConfiguration& WithCanvasOrientation(const CanvasOrientation& value) { SetCanvasOrientation(value); return *this;} /** *

The orientation setting, horizontal or vertical.

*/ inline GridViewConfiguration& WithCanvasOrientation(CanvasOrientation&& value) { SetCanvasOrientation(std::move(value)); return *this;} private: ContentShareLayoutOption m_contentShareLayout; bool m_contentShareLayoutHasBeenSet = false; PresenterOnlyConfiguration m_presenterOnlyConfiguration; bool m_presenterOnlyConfigurationHasBeenSet = false; ActiveSpeakerOnlyConfiguration m_activeSpeakerOnlyConfiguration; bool m_activeSpeakerOnlyConfigurationHasBeenSet = false; HorizontalLayoutConfiguration m_horizontalLayoutConfiguration; bool m_horizontalLayoutConfigurationHasBeenSet = false; VerticalLayoutConfiguration m_verticalLayoutConfiguration; bool m_verticalLayoutConfigurationHasBeenSet = false; VideoAttribute m_videoAttribute; bool m_videoAttributeHasBeenSet = false; CanvasOrientation m_canvasOrientation; bool m_canvasOrientationHasBeenSet = false; }; } // namespace Model } // namespace ChimeSDKMediaPipelines } // namespace Aws