Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
QCameraPrivate Class Reference

#include <qcamera_p.h>

+ Inheritance diagram for QCameraPrivate:
+ Collaboration diagram for QCameraPrivate:

Public Member Functions

void init (const QCameraDevice &device)
 
void _q_error (int error, const QString &errorString)
 \qmltype Camera \instantiates QCamera \inqmlmodule QtMultimedia
 
void unsetError ()
 
- Public Member Functions inherited from QObjectPrivate
void ensureExtraData ()
 
 QObjectPrivate (int version=QObjectPrivateVersion)
 
virtual ~QObjectPrivate ()
 
void deleteChildren ()
 
void clearBindingStorage ()
 
void checkForIncompatibleLibraryVersion (int version) const
 
void setParent_helper (QObject *)
 
void moveToThread_helper ()
 
void setThreadData_helper (QThreadData *currentData, QThreadData *targetData, QBindingStatus *status)
 
QObjectList receiverList (const char *signal) const
 
void ensureConnectionData ()
 
void addConnection (int signal, Connection *c)
 
int signalIndex (const char *signalName, const QMetaObject **meta=nullptr) const
 
bool isSignalConnected (uint signalIdx, bool checkDeclarative=true) const
 
bool maybeSignalConnected (uint signalIndex) const
 
bool isDeclarativeSignalConnected (uint signalIdx) const
 
void connectNotify (const QMetaMethod &signal)
 
void disconnectNotify (const QMetaMethod &signal)
 
void reinitBindingStorageAfterThreadMove ()
 
virtual std::string flagsForDumping () const
 
virtual void writeToDebugStream (QDebug &) const
 
QtPrivate::QPropertyAdaptorSlotObjectgetPropertyAdaptorSlotObject (const QMetaProperty &property)
 
- Public Member Functions inherited from QObjectData
 QObjectData ()=default
 
virtual ~QObjectData ()=0
 
QMetaObjectdynamicMetaObject () const
 

Public Attributes

QMediaCaptureSessioncaptureSession = nullptr
 
QPlatformCameracontrol = nullptr
 
QErrorInfo< QCamera::Errorerror
 
QCameraDevice cameraDevice
 
QCameraFormat cameraFormat
 
- Public Attributes inherited from QObjectPrivate
ExtraDataextraData
 
QAtomicPointer< QThreadDatathreadData
 
QAtomicPointer< ConnectionDataconnections
 
union { 
 
   QObject *   currentChildBeingDeleted 
 
   QAbstractDeclarativeData *   declarativeData 
 
};  
 
QAtomicPointer< QtSharedPointer::ExternalRefCountDatasharedRefcount
 
- Public Attributes inherited from QObjectData
QObjectq_ptr
 
QObjectparent
 
QObjectList children
 
uint isWidget: 1
 
uint blockSig: 1
 
uint wasDeleted: 1
 
uint isDeletingChildren: 1
 
uint sendChildEvents: 1
 
uint receiveChildEvents: 1
 
uint isWindow: 1
 
uint deleteLaterCalled: 1
 
uint isQuickItem: 1
 
uint willBeWidget: 1
 
uint wasWidget: 1
 
uint receiveParentEvents: 1
 
uint unused: 20
 
QAtomicInt postedEvents
 
QDynamicMetaObjectDatametaObject
 
QBindingStorage bindingStorage
 

Additional Inherited Members

- Public Types inherited from QObjectPrivate
typedef void(* StaticMetaCallFunction) (QObject *, QMetaObject::Call, int, void **)
 
using ConnectionDataPointer = QExplicitlySharedDataPointer<ConnectionData>
 
- Static Public Member Functions inherited from QObjectPrivate
static bool removeConnection (Connection *c)
 
static QObjectPrivateget (QObject *o)
 
static const QObjectPrivateget (const QObject *o)
 
template<typename Func1 , typename Func2 >
static QMetaObject::Connection connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::FunctionPointer< Func2 >::Object *receiverPrivate, Func2 slot, Qt::ConnectionType type=Qt::AutoConnection)
 
template<typename Func1 , typename Func2 >
static bool disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::FunctionPointer< Func2 >::Object *receiverPrivate, Func2 slot)
 
static QMetaObject::Connection connectImpl (const QObject *sender, int signal_index, const QObject *receiver, void **slot, QtPrivate::QSlotObjectBase *slotObj, int type, const int *types, const QMetaObject *senderMetaObject)
 
static QMetaObject::Connection connect (const QObject *sender, int signal_index, QtPrivate::QSlotObjectBase *slotObj, Qt::ConnectionType type)
 
static QMetaObject::Connection connect (const QObject *sender, int signal_index, const QObject *receiver, QtPrivate::QSlotObjectBase *slotObj, Qt::ConnectionType type)
 
static bool disconnect (const QObject *sender, int signal_index, void **slot)
 
static bool disconnect (const QObject *sender, int signal_index, const QObject *receiver, void **slot)
 

Detailed Description

Definition at line 28 of file qcamera_p.h.

Member Function Documentation

◆ _q_error()

void QCameraPrivate::_q_error ( int error,
const QString & errorString )

\qmltype Camera \instantiates QCamera \inqmlmodule QtMultimedia

An interface for camera settings related to focus and zoom.

The Camera element can be used within a \l CaptureSession for video recording and image taking.

You can use \l MediaDevices to list available cameras and choose which one to use.

\qml MediaDevices { id: mediaDevices } CaptureSession { camera: Camera { cameraDevice: mediaDevices.defaultVideoInput } } \endqml

On hardware that supports it, QCamera lets you adjust the focus and zoom. This also includes functionality such as a "Macro" mode for close up work (e.g. reading barcodes, or recognizing letters), or "touch to focus" - indicating an interesting area of the image for the hardware to attempt to focus on.

\qml

Item { width: 640 height: 360

CaptureSession { camera: Camera { id: camera

focusMode: Camera.FocusModeAutoNear customFocusPoint: Qt.point(0.2, 0.2) // Focus relative to top-left corner } videoOutput: videoOutput }

VideoOutput { id: videoOutput anchors.fill: parent } }

\endqml

The \l minimumZoomFactor and \l maximumZoomFactor properties provide the range of supported zoom factors. The \l zoomFactor property allows changing the zoom factor.

\qml Camera { zoomFactor: maximumZoomFactor // zoom in as much as possible } \endqml

After capturing the raw data for a camera frame, the camera hardware and software performs various image processing tasks to produce the final image. This includes compensating for ambient light color, reducing noise, as well as making some other adjustments to the image.

You can control many of these processing steps through the Camera properties. For example, you can set the white balance (or color temperature) used for processing images:

\qml Camera { whiteBalanceMode: Camera.WhiteBalanceManual colorTemperature: 5600 } \endqml

For more information on image processing of camera frames, see \l {camera_image_processing}{Camera Image Processing}.

See the \l{Camera Overview}{camera overview} for more information.

Definition at line 156 of file qcamera.cpp.

References error.

Referenced by init().

+ Here is the caller graph for this function:

◆ init()

void QCameraPrivate::init ( const QCameraDevice & device)

Definition at line 163 of file qcamera.cpp.

References _q_error(), QCamera::activeChanged(), QPlatformVideoSource::activeChanged(), cameraDevice, QCamera::CameraError, control, QMediaDevices::defaultVideoInput, device, error, QPlatformMediaIntegration::instance(), QCameraDevice::isNull(), QStringLiteral, qWarning, QPlatformCamera::setCamera(), SIGNAL, and SLOT.

+ Here is the call graph for this function:

◆ unsetError()

void QCameraPrivate::unsetError ( )
inline

Definition at line 43 of file qcamera_p.h.

References error.

Member Data Documentation

◆ cameraDevice

QCameraDevice QCameraPrivate::cameraDevice

Definition at line 39 of file qcamera_p.h.

Referenced by init().

◆ cameraFormat

QCameraFormat QCameraPrivate::cameraFormat

Definition at line 40 of file qcamera_p.h.

◆ captureSession

QMediaCaptureSession* QCameraPrivate::captureSession = nullptr

Definition at line 34 of file qcamera_p.h.

◆ control

QPlatformCamera* QCameraPrivate::control = nullptr

Definition at line 35 of file qcamera_p.h.

Referenced by init().

◆ error

QErrorInfo<QCamera::Error> QCameraPrivate::error

Definition at line 37 of file qcamera_p.h.

Referenced by _q_error(), init(), and unsetError().


The documentation for this class was generated from the following files: