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)
 \qmltype Camera \instantiates QCamera \inqmlmodule QtMultimedia
 
- 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
 
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 27 of file qcamera_p.h.

Member Function Documentation

◆ init()

void QCameraPrivate::init ( const QCameraDevice & device)

\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 155 of file qcamera.cpp.

References QCamera::activeChanged(), QPlatformVideoSource::activeChanged(), cameraDevice, QCamera::CameraError, control, QMediaDevices::defaultVideoInput, device, QCamera::errorChanged(), QPlatformVideoSource::errorChanged(), QCamera::errorOccurred(), QPlatformCamera::errorOccurred(), QPlatformMediaIntegration::instance(), QCameraDevice::isNull(), QStringLiteral, qWarning, QPlatformCamera::setCamera(), and QPlatformCamera::updateError().

+ Here is the call graph for this function:

Member Data Documentation

◆ cameraDevice

QCameraDevice QCameraPrivate::cameraDevice

Definition at line 36 of file qcamera_p.h.

Referenced by init().

◆ cameraFormat

QCameraFormat QCameraPrivate::cameraFormat

Definition at line 37 of file qcamera_p.h.

◆ captureSession

QMediaCaptureSession* QCameraPrivate::captureSession = nullptr

Definition at line 33 of file qcamera_p.h.

◆ control

QPlatformCamera* QCameraPrivate::control = nullptr

Definition at line 34 of file qcamera_p.h.

Referenced by init().


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