"""
PySide stub files generated by **IceSpringPySideStubs**

Home: https://baijifeilong.github.io/2022/01/06/ice-spring-pyside-stubs/index.html

Github: https://github.com/baijifeilong/IceSpringPySideStubs

PyPI(PySide2): https://pypi.org/project/IceSpringPySideStubs-PySide2

PyPI(PySide6): https://pypi.org/project/IceSpringPySideStubs-PySide6

PyPI(PyQt5): https://pypi.org/project/IceSpringPySideStubs-PyQt5

PyPI(PyQt6): https://pypi.org/project/IceSpringPySideStubs-PyQt6

Generated by BaiJiFeiLong@gmail.com

License: MIT
"""
import typing
from PyQt5 import QtCore
from PyQt5.QtMultimedia import *


class QCameraViewfinderSettingsControl2(QMediaControl):
    """
    https://doc.qt.io/qt-5/qcameraviewfindersettingscontrol2.html

    **Detailed Description**

    The functionality provided by this control is exposed to application code
    through the **QCamera**  class.

    The interface name of QCameraViewfinderSettingsControl2 is `org.qt-
    project.qt.cameraviewfindersettingscontrol2/5.5` as defined in
    **QCameraViewfinderSettingsControl2_iid** .

    **See also** **QMediaService::requestControl** (),
    **QCameraViewfinderSettings** , and **QCamera** .
    """

    def __init__(self, parent: typing.Optional[QtCore.QObject] = ...) -> None:
        """
        https://doc.qt.io/qt-5/qcameraviewfindersettingscontrol2.html#QCameraVie
        wfinderSettingsControl2

        **[protected] QCameraViewfinderSettingsControl2::QCameraViewfinderSettin
        gsControl2(QObject * parent = nullptr)**

        Constructs a camera viewfinder settings control object with **parent**.
        """
        ...

    def setViewfinderSettings(self, settings: QCameraViewfinderSettings) -> None:
        """
        https://doc.qt.io/qt-5/qcameraviewfindersettingscontrol2.html#setViewfin
        derSettings

        **[pure virtual] void
        QCameraViewfinderSettingsControl2::setViewfinderSettings(const
        QCameraViewfinderSettings & settings )**

        Sets the camera viewfinder **settings**.

        **See also** **viewfinderSettings** ().
        """
        ...

    def viewfinderSettings(self) -> QCameraViewfinderSettings:
        """
        https://doc.qt.io/qt-5/qcameraviewfindersettingscontrol2.html#viewfinder
        Settings

        **[pure virtual] QCameraViewfinderSettings
        QCameraViewfinderSettingsControl2::viewfinderSettings() const**

        Returns the viewfinder settings.

        If undefined or unsupported values are passed to
        **QCameraViewfinderSettingsControl2::setViewfinderSettings** (), this
        function returns the actual settings used by the camera viewfinder.
        These may be available only once the camera is active.

        **See also** **setViewfinderSettings** ().
        """
        ...

    def supportedViewfinderSettings(self) -> typing.List[QCameraViewfinderSettings]:
        """
        https://doc.qt.io/qt-5/qcameraviewfindersettingscontrol2.html#supportedV
        iewfinderSettings

        **[pure virtual] QList<QCameraViewfinderSettings>
        QCameraViewfinderSettingsControl2::supportedViewfinderSettings() const**

        Returns a list of supported camera viewfinder settings.

        The list is ordered by preference; preferred settings come first.
        """
        ...
