036856aed5
* Move everything into package * Remove .DS_Store * Move scripts and eslintrc to package * Create CODE_OF_CONDUCT.md * fix some links * Update all links (I think) * Update generated docs * Update notice-yarn-changes.yml * Update validate-android.yml * Update validate-cpp.yml * Delete notice-yarn-changes.yml * Update validate-cpp.yml * Update validate-cpp.yml * Update validate-js.yml * Update validate-cpp.yml * Update validate-cpp.yml * wrong c++ style * Revert "wrong c++ style" This reverts commit 55a3575589c6f13f8b05134d83384f55e0601ab2.
36 lines
912 B
Kotlin
36 lines
912 B
Kotlin
package com.mrousavy.camera
|
|
|
|
import android.os.Handler
|
|
import android.os.HandlerThread
|
|
import kotlinx.coroutines.CoroutineDispatcher
|
|
import kotlinx.coroutines.android.asCoroutineDispatcher
|
|
import kotlinx.coroutines.asExecutor
|
|
import java.util.concurrent.Executor
|
|
|
|
class CameraQueues {
|
|
companion object {
|
|
val cameraQueue = CameraQueue("mrousavy/VisionCamera.main")
|
|
val videoQueue = CameraQueue("mrousavy/VisionCamera.video")
|
|
}
|
|
|
|
class CameraQueue(name: String) {
|
|
val handler: Handler
|
|
private val thread: HandlerThread
|
|
val executor: Executor
|
|
val coroutineDispatcher: CoroutineDispatcher
|
|
|
|
init {
|
|
thread = HandlerThread(name)
|
|
thread.start()
|
|
handler = Handler(thread.looper)
|
|
coroutineDispatcher = handler.asCoroutineDispatcher(name)
|
|
executor = coroutineDispatcher.asExecutor()
|
|
}
|
|
|
|
protected fun finalize() {
|
|
thread.quitSafely()
|
|
}
|
|
}
|
|
}
|
|
|