1/****************************************************************************
2**
3** Copyright (C) 2016 The Qt Company Ltd.
4** Contact: https://www.qt.io/licensing/
5**
6** This file is part of the Qt Toolkit.
7**
8** $QT_BEGIN_LICENSE:LGPL$
9** Commercial License Usage
10** Licensees holding valid commercial Qt licenses may use this file in
11** accordance with the commercial license agreement provided with the
12** Software or, alternatively, in accordance with the terms contained in
13** a written agreement between you and The Qt Company. For licensing terms
14** and conditions see https://www.qt.io/terms-conditions. For further
15** information use the contact form at https://www.qt.io/contact-us.
16**
17** GNU Lesser General Public License Usage
18** Alternatively, this file may be used under the terms of the GNU Lesser
19** General Public License version 3 as published by the Free Software
20** Foundation and appearing in the file LICENSE.LGPL3 included in the
21** packaging of this file. Please review the following information to
22** ensure the GNU Lesser General Public License version 3 requirements
23** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
24**
25** GNU General Public License Usage
26** Alternatively, this file may be used under the terms of the GNU
27** General Public License version 2.0 or (at your option) the GNU General
28** Public license version 3 or any later version approved by the KDE Free
29** Qt Foundation. The licenses are as published by the Free Software
30** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
31** included in the packaging of this file. Please review the following
32** information to ensure the GNU General Public License requirements will
33** be met: https://www.gnu.org/licenses/gpl-2.0.html and
34** https://www.gnu.org/licenses/gpl-3.0.html.
35**
36** $QT_END_LICENSE$
37**
38****************************************************************************/
39
40#include <qcameraflashcontrol.h>
41#include "qmediacontrol_p.h"
42
43QT_BEGIN_NAMESPACE
44
45/*!
46 \class QCameraFlashControl
47
48 \brief The QCameraFlashControl class allows controlling a camera's flash.
49
50 \inmodule QtMultimedia
51
52
53 \ingroup multimedia_control
54
55 You can set the type of flash effect used when an image is captured, and test to see
56 if the flash hardware is ready to fire.
57
58 You can retrieve this control from the camera object in the usual way:
59
60 Some camera devices may not have flash hardware, or may not be configurable. In that
61 case, there will be no QCameraFlashControl available.
62
63 The interface name of QCameraFlashControl is \c org.qt-project.qt.cameraflashcontrol/5.0 as
64 defined in QCameraFlashControl_iid.
65
66 \sa QCamera
67*/
68
69/*!
70 \macro QCameraFlashControl_iid
71
72 \c org.qt-project.qt.cameraflashcontrol/5.0
73
74 Defines the interface name of the QCameraFlashControl class.
75
76 \relates QCameraFlashControl
77*/
78
79/*!
80 Constructs a camera flash control object with \a parent.
81*/
82QCameraFlashControl::QCameraFlashControl(QObject *parent):
83 QMediaControl(*new QMediaControlPrivate, parent)
84{
85}
86
87/*!
88 Destroys the camera control object.
89*/
90QCameraFlashControl::~QCameraFlashControl()
91{
92}
93
94/*!
95 \fn QCamera::FlashModes QCameraFlashControl::flashMode() const
96
97 Returns the current flash mode.
98*/
99
100/*!
101 \fn void QCameraFlashControl::setFlashMode(QCameraExposure::FlashModes mode)
102
103 Set the current flash \a mode.
104
105 Usually a single QCameraExposure::FlashMode flag is used,
106 but some non conflicting flags combination are also allowed,
107 like QCameraExposure::FlashManual | QCameraExposure::FlashSlowSyncRearCurtain.
108*/
109
110
111/*!
112 \fn QCameraFlashControl::isFlashModeSupported(QCameraExposure::FlashModes mode) const
113
114 Return true if the reqested flash \a mode is supported.
115 Some QCameraExposure::FlashMode values can be combined,
116 for example QCameraExposure::FlashManual | QCameraExposure::FlashSlowSyncRearCurtain
117*/
118
119/*!
120 \fn bool QCameraFlashControl::isFlashReady() const
121
122 Returns true if flash is charged.
123*/
124
125/*!
126 \fn void QCameraFlashControl::flashReady(bool ready)
127
128 Signal emitted when flash state changes to \a ready.
129*/
130
131#include "moc_qcameraflashcontrol.cpp"
132QT_END_NAMESPACE
133
134