/// /// HybridCameraFactorySpec.kt /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE. /// https://github.com/mrousavy/nitro /// Copyright © Marc Rousavy @ Margelo /// package com.margelo.nitro.camera import androidx.annotation.Keep import com.facebook.jni.HybridData import com.facebook.proguard.annotations.DoNotStrip import com.margelo.nitro.core.Promise import com.margelo.nitro.core.HybridObject /** * A Kotlin class representing the CameraFactory HybridObject. * Implement this abstract class to create Kotlin-based instances of CameraFactory. */ @DoNotStrip @Keep @Suppress( "KotlinJniMissingFunction", "unused", "RedundantSuppression", "RedundantUnitReturnType", "SimpleRedundantLet", "LocalVariableName", "PropertyName", "PrivatePropertyName", "FunctionName" ) abstract class HybridCameraFactorySpec: HybridObject() { // Properties @get:DoNotStrip @get:Keep abstract val cameraPermissionStatus: PermissionStatus @get:DoNotStrip @get:Keep abstract val microphonePermissionStatus: PermissionStatus @get:DoNotStrip @get:Keep abstract val supportsMultiCamSessions: Boolean // Methods @DoNotStrip @Keep abstract fun requestCameraPermission(): Promise @DoNotStrip @Keep abstract fun requestMicrophonePermission(): Promise @DoNotStrip @Keep abstract fun createCameraSession(enableMultiCam: Boolean): Promise @DoNotStrip @Keep abstract fun resolveConstraints(device: HybridCameraDeviceSpec, outputConfigurations: Array, constraints: Array, requiresMultiCam: Boolean?): Promise @DoNotStrip @Keep abstract fun createDeviceFactory(): Promise @DoNotStrip @Keep abstract fun createPhotoOutput(options: PhotoOutputOptions): HybridCameraPhotoOutputSpec @DoNotStrip @Keep abstract fun createVideoOutput(options: VideoOutputOptions): HybridCameraVideoOutputSpec @DoNotStrip @Keep abstract fun createFrameOutput(options: FrameOutputOptions): HybridCameraFrameOutputSpec @DoNotStrip @Keep abstract fun createDepthFrameOutput(options: DepthFrameOutputOptions): HybridCameraDepthFrameOutputSpec @DoNotStrip @Keep abstract fun createPreviewOutput(): HybridCameraPreviewOutputSpec @DoNotStrip @Keep abstract fun createObjectOutput(options: ObjectOutputOptions): HybridCameraObjectOutputSpec @DoNotStrip @Keep abstract fun createOutputSynchronizer(outputs: Array): HybridCameraOutputSynchronizerSpec @DoNotStrip @Keep abstract fun createZoomGestureController(): HybridZoomGestureControllerSpec @DoNotStrip @Keep abstract fun createTapToFocusGestureController(): HybridTapToFocusGestureControllerSpec @DoNotStrip @Keep abstract fun createOrientationManager(orientationSource: OrientationSource): HybridOrientationManagerSpec @DoNotStrip @Keep abstract fun createFrameRenderer(): HybridFrameRendererSpec @DoNotStrip @Keep abstract fun createNormalizedMeteringPoint(x: Double, y: Double, size: Double?): HybridMeteringPointSpec // Default implementation of `HybridObject.toString()` override fun toString(): String { return "[HybridObject CameraFactory]" } // C++ backing class @DoNotStrip @Keep protected open class CxxPart(javaPart: HybridCameraFactorySpec): HybridObject.CxxPart(javaPart) { // C++ JHybridCameraFactorySpec::CxxPart::initHybrid(...) external override fun initHybrid(): HybridData } override fun createCxxPart(): CxxPart { return CxxPart(this) } companion object { protected const val TAG = "HybridCameraFactorySpec" } }