Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
CameraCaptureSessionStateCallback.java
Go to the documentation of this file.
1// Copyright (C) 2026 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3package org.qtproject.qt.android.multimedia.qffmpeg;
4
5import android.hardware.camera2.CameraCaptureSession;
6
7// The events on this object are invoked from the background processing threads.
8class CameraCaptureSessionStateCallback extends CameraCaptureSession.StateCallback {
9 private QtCamera2 mMainCameraObject = null;
10
11 CameraCaptureSessionStateCallback(QtCamera2 mainCameraObject) {
12 assert(mainCameraObject != null);
13 mMainCameraObject = mainCameraObject;
14 }
15
16 private boolean isSuperseded() {
17 return mMainCameraObject.mCurrentSessionCallback != this;
18 }
19
20 @Override
21 public void onConfigured(CameraCaptureSession cameraCaptureSession) {
22 if (isSuperseded())
23 return;
24 mMainCameraObject.mCaptureSession = cameraCaptureSession;
25 mMainCameraObject.onCaptureSessionConfigured(mMainCameraObject.getQAndroidCameraPtr());
26 mMainCameraObject.onSessionReconfigured(true);
27 }
28
29 @Override
30 public void onConfigureFailed(CameraCaptureSession cameraCaptureSession) {
31 if (isSuperseded())
32 return;
33 mMainCameraObject.onSessionConfigureFailed();
34 }
35
36 @Override
37 public void onActive(CameraCaptureSession cameraCaptureSession) {
38 super.onActive(cameraCaptureSession);
39 if (isSuperseded())
40 return;
41 mMainCameraObject.onSessionActive(mMainCameraObject.getQAndroidCameraPtr());
42 }
43
44 @Override
45 public void onClosed(CameraCaptureSession cameraCaptureSession) {
46 super.onClosed(cameraCaptureSession);
47 if (isSuperseded())
48 return;
49 mMainCameraObject.onSessionClosed(mMainCameraObject.getQAndroidCameraPtr());
50 }
51}
#define assert