/// /// HybridCameraControllerSpec.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 CameraController HybridObject. * Implement this abstract class to create Kotlin-based instances of CameraController. */ @DoNotStrip @Keep @Suppress( "KotlinJniMissingFunction", "unused", "RedundantSuppression", "RedundantUnitReturnType", "SimpleRedundantLet", "LocalVariableName", "PropertyName", "PrivatePropertyName", "FunctionName" ) abstract class HybridCameraControllerSpec: HybridObject() { // Properties @get:DoNotStrip @get:Keep abstract val device: HybridCameraDeviceSpec @get:DoNotStrip @get:Keep abstract val isConnected: Boolean @get:DoNotStrip @get:Keep abstract val isSuspended: Boolean @get:DoNotStrip @get:Keep abstract val isUsedByAnotherApp: Boolean @get:DoNotStrip @get:Keep abstract val isLowLightBoostEnabled: Boolean @get:DoNotStrip @get:Keep abstract val isSmoothAutoFocusEnabled: Boolean @get:DoNotStrip @get:Keep abstract val isDistortionCorrectionEnabled: Boolean @get:DoNotStrip @get:Keep abstract val zoom: Double @get:DoNotStrip @get:Keep abstract val minZoom: Double @get:DoNotStrip @get:Keep abstract val maxZoom: Double @get:DoNotStrip @get:Keep abstract val displayableZoomFactor: Double @get:DoNotStrip @get:Keep abstract val torchStrength: Double @get:DoNotStrip @get:Keep abstract val torchMode: TorchMode @get:DoNotStrip @get:Keep abstract val exposureBias: Double @get:DoNotStrip @get:Keep abstract val focusMode: FocusMode @get:DoNotStrip @get:Keep abstract val lensPosition: Double @get:DoNotStrip @get:Keep abstract val exposureMode: ExposureMode @get:DoNotStrip @get:Keep abstract val minExposureDuration: Double @get:DoNotStrip @get:Keep abstract val maxExposureDuration: Double @get:DoNotStrip @get:Keep abstract val minISO: Double @get:DoNotStrip @get:Keep abstract val maxISO: Double @get:DoNotStrip @get:Keep abstract val exposureDuration: Double @get:DoNotStrip @get:Keep abstract val iso: Double @get:DoNotStrip @get:Keep abstract val whiteBalanceMode: WhiteBalanceMode @get:DoNotStrip @get:Keep abstract val whiteBalanceGains: WhiteBalanceGains // Methods @DoNotStrip @Keep abstract fun configure(config: CameraControllerConfiguration): Promise @DoNotStrip @Keep abstract fun focusTo(point: HybridMeteringPointSpec, options: FocusOptions): Promise @DoNotStrip @Keep abstract fun resetFocus(): Promise abstract fun addSubjectAreaChangedListener(onSubjectAreaChanged: () -> Unit): ListenerSubscription @DoNotStrip @Keep private fun addSubjectAreaChangedListener_cxx(onSubjectAreaChanged: Func_void): ListenerSubscription { val __result = addSubjectAreaChangedListener(onSubjectAreaChanged) return __result } @DoNotStrip @Keep abstract fun setZoom(zoom: Double): Promise @DoNotStrip @Keep abstract fun startZoomAnimation(zoom: Double, rate: Double): Promise @DoNotStrip @Keep abstract fun cancelZoomAnimation(): Promise @DoNotStrip @Keep abstract fun setTorchMode(mode: TorchMode): Promise @DoNotStrip @Keep abstract fun enableTorchWithStrength(strength: Double): Promise @DoNotStrip @Keep abstract fun setExposureBias(exposure: Double): Promise @DoNotStrip @Keep abstract fun setFocusLocked(lensPosition: Double): Promise @DoNotStrip @Keep abstract fun lockCurrentFocus(): Promise @DoNotStrip @Keep abstract fun setExposureLocked(duration: Double, iso: Double): Promise @DoNotStrip @Keep abstract fun lockCurrentExposure(): Promise @DoNotStrip @Keep abstract fun convertWhiteBalanceTemperatureAndTintValues(whiteBalanceTemperatureAndTint: WhiteBalanceTemperatureAndTint): WhiteBalanceGains @DoNotStrip @Keep abstract fun setWhiteBalanceLocked(whiteBalanceGains: WhiteBalanceGains): Promise @DoNotStrip @Keep abstract fun lockCurrentWhiteBalance(): Promise // Default implementation of `HybridObject.toString()` override fun toString(): String { return "[HybridObject CameraController]" } // C++ backing class @DoNotStrip @Keep protected open class CxxPart(javaPart: HybridCameraControllerSpec): HybridObject.CxxPart(javaPart) { // C++ JHybridCameraControllerSpec::CxxPart::initHybrid(...) external override fun initHybrid(): HybridData } override fun createCxxPart(): CxxPart { return CxxPart(this) } companion object { protected const val TAG = "HybridCameraControllerSpec" } }