From dae9e7b87005ba5210d683d7f5195bf115fbb47d Mon Sep 17 00:00:00 2001 From: MRSa Date: Tue, 31 Aug 2021 23:43:00 +0900 Subject: [PATCH] =?utf8?q?Flash=E3=83=A2=E3=83=BC=E3=83=89=E3=81=AE?= =?utf8?q?=E3=82=B9=E3=83=86=E3=83=BC=E3=82=BF=E3=82=B9=E3=82=92=E8=A1=A8?= =?utf8?q?=E7=A4=BA=E3=81=99=E3=82=8B=E3=82=88=E3=81=86=E3=81=AB=E3=81=97?= =?utf8?q?=E3=81=9F=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- .../pixpro/wrapper/status/PixproStatusChecker.kt | 27 +++++++++++++++++++++- .../pixpro/wrapper/status/PixproStatusHolder.kt | 25 +++++++++++++++++++- 2 files changed, 50 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/jp/osdn/gokigen/gokigenassets/camera/vendor/pixpro/wrapper/status/PixproStatusChecker.kt b/app/src/main/java/jp/osdn/gokigen/gokigenassets/camera/vendor/pixpro/wrapper/status/PixproStatusChecker.kt index 4b42c70..5bff20e 100644 --- a/app/src/main/java/jp/osdn/gokigen/gokigenassets/camera/vendor/pixpro/wrapper/status/PixproStatusChecker.kt +++ b/app/src/main/java/jp/osdn/gokigen/gokigenassets/camera/vendor/pixpro/wrapper/status/PixproStatusChecker.kt @@ -22,7 +22,7 @@ class PixproStatusChecker : IPixproCommandCallback, ICameraStatusWatcher, ICamer companion object { private val TAG = PixproStatusChecker::class.java.simpleName - private const val EVENT_POLL_QUEUE_MS = 1500 + private const val EVENT_POLL_QUEUE_MS = 1000 } fun setCommandPublisher(commandPublisher : IPixproCommandPublisher) @@ -140,5 +140,30 @@ class PixproStatusChecker : IPixproCommandCallback, ICameraStatusWatcher, ICamer { Log.v(TAG, " RECEIVED EVENT : ${rx_body?.size} bytes.") SimpleLogDumper.dumpBytes("EVT[${rx_body?.size}]", rx_body) + try + { + val length = rx_body?.size ?: 0 + if (length == 2744) + { + // FLASH Mode + val flashMode = when (rx_body?.get(16 * 127 + 8)) + { + 0x01.toByte() -> "OFF" + 0x02.toByte() -> "AUTO" + 0x04.toByte() -> "ON" + else -> "" + } + statusHolder.updateValue(ICameraStatus.TORCH_MODE, flashMode) + + } + + } + catch (e: Exception) + { + e.printStackTrace() + } + + + } } diff --git a/app/src/main/java/jp/osdn/gokigen/gokigenassets/camera/vendor/pixpro/wrapper/status/PixproStatusHolder.kt b/app/src/main/java/jp/osdn/gokigen/gokigenassets/camera/vendor/pixpro/wrapper/status/PixproStatusHolder.kt index f9cc170..2337e4b 100644 --- a/app/src/main/java/jp/osdn/gokigen/gokigenassets/camera/vendor/pixpro/wrapper/status/PixproStatusHolder.kt +++ b/app/src/main/java/jp/osdn/gokigen/gokigenassets/camera/vendor/pixpro/wrapper/status/PixproStatusHolder.kt @@ -28,6 +28,8 @@ class PixproStatusHolder private var statusConvert = PixproStatusConvert(this) private lateinit var commandPublisher : IPixproCommandPublisher + private var currentFlashMode = "" + fun setCommandPublisher(commandPublisher : IPixproCommandPublisher) { this.commandPublisher = commandPublisher @@ -98,6 +100,27 @@ class PixproStatusHolder } } + fun updateValue(key: String, value: String) + { + when (key) + { + ICameraStatus.TAKE_MODE -> { } + ICameraStatus.SHUTTER_SPEED -> { } + //ICameraStatus.APERTURE -> { } + ICameraStatus.EXPREV -> { } + //ICameraStatus.CAPTURE_MODE -> { } + ICameraStatus.ISO_SENSITIVITY -> { } + ICameraStatus.WHITE_BALANCE -> { } + //ICameraStatus.AE -> { } + //ICameraStatus.EFFECT -> { } + ICameraStatus.BATTERY -> { } + ICameraStatus.TORCH_MODE -> { currentFlashMode = value } + //ICameraStatus.FOCUS_STATUS -> { } + else -> { } + } + } + + fun getAvailableItemList(key: String?): List { try @@ -248,7 +271,7 @@ class PixproStatusHolder var status = "" try { - status = "Flash: " + status = "Flash: $currentFlashMode" } catch (e: Exception) { -- 2.11.0