From 814a836c5a98531ddac3bbc8f09e8faecc50b32c Mon Sep 17 00:00:00 2001 From: Jacquin Antoine Date: Sun, 12 Jul 2026 15:18:56 +0200 Subject: [PATCH] Reverse-engineer DWARF II telescope API and build open-source Go client MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Complete reverse-engineering of the DWARFLAB Android app (v3.4.0) protocol and implementation of a working CLI tool to control DWARF II telescopes. Analysis (from APK decompilation with jadx): - Extracted 17 protobuf definitions (382 messages) from embedded descriptors - Mapped all 323 WebSocket command IDs across 16 modules - Documented the full protocol: BLE discovery, WebSocket control (port 9900), RTSP preview, WsPacket envelope (proto v2.3) - Documented the Android UI structure (screens, navigation, shooting modes) - Key discovery: telescope responds with type=3 (reply), not type=1 (response), and several commands are fire-and-forget (RGB, camera open/close) dwarfctl Go client: - Protobuf bindings generated from extracted .proto files (397 messages) - WebSocket transport layer with request-response matching and notification fan-out - Typed API covering cameras, motors, astrophotography, focus, tracking, system, power - Cobra CLI with 30+ subcommands and --debug traffic logging - 57 unit tests (transport round-trip, command routing, proto encoding) - Validated on real hardware: state, photo, motor slew (all directions/speeds), focus, RGB, time/location sync all confirmed working πŸ’˜ Generated with Crush Assisted-by: Crush:glm-5.2 --- .gitignore | 25 + AGENTS.md | 109 + analysis/API_REFERENCE.md | 323 + analysis/CMD_TABLE.md | 330 + analysis/UI_REFERENCE.md | 502 + analysis/extract_protos.py | 150 + analysis/protos/Astro.proto | 368 + analysis/protos/Base.proto | 52 + analysis/protos/Ble.proto | 203 + analysis/protos/Camera.proto | 217 + analysis/protos/Device.proto | 18 + analysis/protos/Focus.proto | 39 + analysis/protos/ITips.proto | 30 + analysis/protos/MotorControl.proto | 81 + analysis/protos/Notify.proto | 518 + analysis/protos/Panorama.proto | 108 + analysis/protos/Param.proto | 52 + analysis/protos/RGB.proto | 21 + analysis/protos/Schedule.proto | 157 + analysis/protos/System.proto | 72 + analysis/protos/TaskCenter.proto | 204 + analysis/protos/Track.proto | 41 + analysis/protos/VoiceAssistant.proto | 140 + dwarfctl/Makefile | 25 + dwarfctl/README.md | 122 + dwarfctl/TEST_RESULTS.md | 161 + dwarfctl/cmd/dwarfctl/main.go | 596 + dwarfctl/go.mod | 14 + dwarfctl/go.sum | 16 + dwarfctl/internal/api/client.go | 395 + dwarfctl/internal/api/client_test.go | 231 + dwarfctl/internal/api/commands.go | 243 + dwarfctl/internal/transport/client.go | 219 + dwarfctl/internal/transport/client_test.go | 223 + dwarfctl/proto/astro.proto | 367 + dwarfctl/proto/base.proto | 51 + dwarfctl/proto/ble.proto | 202 + dwarfctl/proto/camera.proto | 216 + dwarfctl/proto/device.proto | 17 + dwarfctl/proto/dwarf.pb.go | 24948 +++++++++++++++++++ dwarfctl/proto/dwarf.proto | 2653 ++ dwarfctl/proto/focus.proto | 38 + dwarfctl/proto/itips.proto | 29 + dwarfctl/proto/merge.py | 63 + dwarfctl/proto/motor_control.proto | 80 + dwarfctl/proto/notify.proto | 517 + dwarfctl/proto/panorama.proto | 107 + dwarfctl/proto/param.proto | 51 + dwarfctl/proto/rgb.proto | 20 + dwarfctl/proto/schedule.proto | 156 + dwarfctl/proto/system.proto | 71 + dwarfctl/proto/task_center.proto | 203 + dwarfctl/proto/track.proto | 40 + dwarfctl/proto/voiceassistant.proto | 139 + 54 files changed, 35973 insertions(+) create mode 100644 .gitignore create mode 100644 AGENTS.md create mode 100644 analysis/API_REFERENCE.md create mode 100644 analysis/CMD_TABLE.md create mode 100644 analysis/UI_REFERENCE.md create mode 100644 analysis/extract_protos.py create mode 100644 analysis/protos/Astro.proto create mode 100644 analysis/protos/Base.proto create mode 100644 analysis/protos/Ble.proto create mode 100644 analysis/protos/Camera.proto create mode 100644 analysis/protos/Device.proto create mode 100644 analysis/protos/Focus.proto create mode 100644 analysis/protos/ITips.proto create mode 100644 analysis/protos/MotorControl.proto create mode 100644 analysis/protos/Notify.proto create mode 100644 analysis/protos/Panorama.proto create mode 100644 analysis/protos/Param.proto create mode 100644 analysis/protos/RGB.proto create mode 100644 analysis/protos/Schedule.proto create mode 100644 analysis/protos/System.proto create mode 100644 analysis/protos/TaskCenter.proto create mode 100644 analysis/protos/Track.proto create mode 100644 analysis/protos/VoiceAssistant.proto create mode 100644 dwarfctl/Makefile create mode 100644 dwarfctl/README.md create mode 100644 dwarfctl/TEST_RESULTS.md create mode 100644 dwarfctl/cmd/dwarfctl/main.go create mode 100644 dwarfctl/go.mod create mode 100644 dwarfctl/go.sum create mode 100644 dwarfctl/internal/api/client.go create mode 100644 dwarfctl/internal/api/client_test.go create mode 100644 dwarfctl/internal/api/commands.go create mode 100644 dwarfctl/internal/transport/client.go create mode 100644 dwarfctl/internal/transport/client_test.go create mode 100644 dwarfctl/proto/astro.proto create mode 100644 dwarfctl/proto/base.proto create mode 100644 dwarfctl/proto/ble.proto create mode 100644 dwarfctl/proto/camera.proto create mode 100644 dwarfctl/proto/device.proto create mode 100644 dwarfctl/proto/dwarf.pb.go create mode 100644 dwarfctl/proto/dwarf.proto create mode 100644 dwarfctl/proto/focus.proto create mode 100644 dwarfctl/proto/itips.proto create mode 100644 dwarfctl/proto/merge.py create mode 100644 dwarfctl/proto/motor_control.proto create mode 100644 dwarfctl/proto/notify.proto create mode 100644 dwarfctl/proto/panorama.proto create mode 100644 dwarfctl/proto/param.proto create mode 100644 dwarfctl/proto/rgb.proto create mode 100644 dwarfctl/proto/schedule.proto create mode 100644 dwarfctl/proto/system.proto create mode 100644 dwarfctl/proto/task_center.proto create mode 100644 dwarfctl/proto/track.proto create mode 100644 dwarfctl/proto/voiceassistant.proto diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e83655e --- /dev/null +++ b/.gitignore @@ -0,0 +1,25 @@ +# Binaries +DWARFLAB.apk +*.apk +dwarfctl/dwarfctl + +# Large extracted/decompiled artifacts (regenerable) +extracted/ +tools/ + +# Python +__pycache__/ +*.pyc + +# Go +*.test +*.out + +# OS +.DS_Store +Thumbs.db + +# IDE +.idea/ +.vscode/ +*.swp diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 0000000..98adcbe --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,109 @@ +# AGENTS.md β€” DWARFLAB APK reverse-engineering workspace + +This directory reverse-engineers the DWARFLAB Android app to document the +DWARF II telescope control protocol for an open-source client. + +## What's here + +``` +DWARFLAB.apk original APK (v3.4.0, com.convergence.dwarflab) +tools/jadx/ jadx 1.5.6 decompiler (run tools/jadx/bin/jadx) +extracted/raw/ unzip of the APK (dex, assets, lib/*.so, manifest) +extracted/jadx/ jadx decompiled Java sources (23968 classes) +analysis/ + extract_protos.py regenerates clean .proto from jadx *Proto.java + protos/ 17 recovered .proto files (382 messages) ← THE API + CMD_TABLE.md all 323 command ids ↔ modules (auto-generated) + API_REFERENCE.md full protocol spec (read this first) +``` + +**Start with `analysis/API_REFERENCE.md`** β€” it explains BLE discovery β†’ +WebSocket control (port 9900) β†’ RTSP preview, the `WsPacket` envelope, and how +command routing works. + +## The protocol in one paragraph + +Phone discovers telescope over **BLE** (`ble.proto`, gets IP/SSID/PSK via +`DwarfEcho`), joins its Wi-Fi, opens `ws://:9900/?client_id=`, then sends +**binary protobuf `WsPacket`** frames `{major=2, minor=3, device_id, module_id, +cmd, type, data, client_id}`. `cmd` (10000–17099) selects the operation; +`module_id` is *derived* from `cmd` by range; `data` is a serialized inner proto +(`Req*`/`Res*`). Live preview is a separate **RTSP** stream (`stream0`). + +## Commands for working here + +```bash +# Re-decompile (only if APK changes) +tools/jadx/bin/jadx --show-bad-code --deobf -d extracted/jadx DWARFLAB.apk + +# Regenerate .proto files after re-decompile +python3 analysis/extract_protos.py \ + extracted/jadx/sources/com/convergence/dwarflab/proto analysis/protos + +# Regenerate the command table +python3 -c "…" # see the inline script that built analysis/CMD_TABLE.md +``` + +Both extractors are deterministic β€” re-running after a new APK version produces a +clean diff for tracking protocol changes. + +## Where things live in the decompiled source + +All paths relative to `extracted/jadx/sources/`. + +| Looking for… | Go to… | +|---|---| +| Protobuf message definitions | `com/convergence/dwarflab/proto/*Proto.java` β†’ run extractor β†’ `analysis/protos/` | +| All command IDs | `com/convergence/dwarflab/data/bean/p021ws/WsCmd.java` | +| Module enum (camera/astro/motor…) | `…/p021ws/WsModuleId.java` | +| Message type enum (req/resp/notify) | `…/p021ws/WsMessageType.java` | +| Request interface + sender | `…/p021ws/request/WsMessageReq.java`, `p000/d49.java` | +| WsPacket envelope builder | `p000/e49.java` (`C9312a.m36361a`) | +| WebSocket connection / URL / port | `p000/v55.java` (field `f43155b`, method `m55420t`) | +| OkHttp WebSocket wrapper | `p000/b49.java` | +| Inbound dispatch / req-resp matching | `com/convergence/dwarflab/data/websocket/WsRequestHandle.java`, `WsResponseHandle.java` | +| Per-module handlers | `com/convergence/dwarflab/data/websocket//*WsResponseHandle.java` | +| RTSP preview player | `com/convergence/dwarflab/media/RtspPlayerView.java`, `…/activity/capture/CaptureActivity.java` | +| BLE handshake | `com/convergence/dwarflab/data/bluetooth/`, `…/data/bean/ble/` | +| Camera param value maps | APK `assets/params_range.json`, `assets/shoot_plan_config.json` | + +## Gotchas + +- **`p000/` is the obfuscated package.** R8 minification collapsed most app + internals into 1–4 char names there (`v55`, `b49`, `e49`, `d49`, `jc0`…). + Kotlin metadata comments (`@Metadata(d2={…})`) often still carry the original + readable names β€” read them when a class is opaque. +- **`module_id` is never stored** on a command β€” it is computed by range checks + in `WsCmd.getModuleId()`. Don't grep for "set module id"; read that method. +- **Some command IDs appear as symbolic constants** in `WsCmd.java` (jadx didn't + inline them). Resolved values: `IMediaPlayer.MEDIA_INFO_*` = 10004/10006/10008/10009, + `RequestManager.NOTIFY_CONNECT_*` = 10011/10012/10013, `ComposeVersion.version` + = 13000, `FirebaseError.ERROR_INVALID_CUSTOM_TOKEN` = 17000, + `ERROR_CUSTOM_TOKEN_MISMATCH` = 17002. These are already resolved in + `CMD_TABLE.md`. +- **Notifications outnumber requests.** ~130 of the 323 cmds are `CMD_NOTIFY_*` + (15200–15303). They are server-pushed (`type=2`), not requestable. An OSS + client must subscribe to them for live state. +- **Two telescopes share one app.** "DWARF II" (current, id 1) and "Bilbo" + (codename for the next model, likely DWARF III) appear in `shoot_plan_config.json` + and `www/modules/eq/indexBilbo.html`. Capability detection should key off + `StationModel` from `DwarfEcho`, not hardcode. +- **`type` field (WsMessageType):** request=0, response=1, notification=2, + reply=3. Responses usually reuse the request's `cmd`; match on `cmd`. +- **RTSP uses TCP.** The app sets `rtsp_transport=tcp` (`RtspPlayerView.java:195`). + Path is `rtsp:////stream0`. +- **jadx reports ~294 decompile errors** out of ~24k classes β€” expected and + irrelevant for the proto/command extraction (those come from clean descriptor + data, not decompiled bodies). + +## Conventions when extending this analysis + +- Keep generated artifacts regenerable: `extract_protos.py` + the CMD_TABLE + inline script read only from `extracted/jadx`. Never hand-edit `protos/` or + `CMD_TABLE.md`. +- When a command's payload type is unclear, find the `WsMessageReq` subclass in + `data/bean/p021ws/request/` β€” `getMessage()` returns the proto, `getCmd()` + returns the `WsCmd`. +- Cloud/relay features (`app.dwarflabapp.com/uls`, NetEase IM `nim/`, Huawei HMS, + Firebase analytics, Meizu push, ByteDance ASR) are NOT part of telescope + control β€” ignore them unless working on remote/cloud access. diff --git a/analysis/API_REFERENCE.md b/analysis/API_REFERENCE.md new file mode 100644 index 0000000..87e0880 --- /dev/null +++ b/analysis/API_REFERENCE.md @@ -0,0 +1,323 @@ +# DWARFLAB Telescope β€” API Reference (reverse-engineered) + +Reverse-engineered from `DWARFLAB.apk` v3.4.0 (build 629), package `com.convergence.dwarflab`. +This document describes the protocol used by the official Android app to talk to +DWARF II (and the in-development "Bilbo"/DWARF III) smart telescopes. + +> Goal: enable an open-source client implementation. All command IDs, the wire +> envelope, and the inner protobuf payloads were recovered from the APK; nothing +> here is guessed. + +--- + +## 1. Architecture at a glance + +``` +β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” BLE (GATT) β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” +β”‚ Phone app β”‚ ───────────────▢ β”‚ Telescope β”‚ 1. discovery + Wi-Fi creds exchange +β”‚ β”‚ ◀── DwarfEcho ── β”‚ β”‚ (DwarfPing / DwarfEcho, see ble.proto) +β””β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”˜ + β”‚ joins telescope Wi-Fi β”‚ + β”‚ (AP mode, or shared STA) β”‚ + β”‚ β”‚ + β”‚ WebSocket (binary) β”‚ RTSP (TCP) + β”‚ ws://:9900/?client_id=.. β”‚ rtsp:////stream0 + β–Ό β–Ό +β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” +β”‚ Control plane β”‚ β”‚ Live preview β”‚ +β”‚ WsPacket (protobuf) β”‚ β”‚ ijkplayer / β”‚ +β”‚ 323 commands, 17 modules β”‚ β”‚ ExoPlayer β”‚ +β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ +``` + +Two distinct data planes: + +| Plane | Transport | Port | Encoding | Purpose | +|-------|-----------|------|----------|---------| +| **Control** | WebSocket (binary frames) | **9900** | protobuf `WsPacket` envelope | All telescope commands & status | +| **Preview** | RTSP over TCP | 554 (std) | H.264/H.265 | Live camera viewfinder | +| **Discovery** | BLE GATT | β€” | protobuf (`ble.proto`) | Find telescope, get IP/SSID/PSK | + +There is also a **cloud relay**: `https://app.dwarflabapp.com/app/uls/connect?d=…` +("ULS") used for remote access when the phone is not on the telescope's Wi-Fi. +Local LAN control (the focus of an OSS client) needs only BLE + WebSocket + RTSP. + +--- + +## 2. Connection flow + +### 2.1 Discovery & credentials (BLE) +The telescope advertises over BLE. The app sends a `DwarfPing` / `ReqGetconfig` +and receives a **`DwarfEcho`** (`ble.proto`) containing everything needed to +connect over IP: + +```proto +message DwarfEcho { + VocalType vocaltype = 1; + uint64 timestamp = 2; + bytes magic = 3; + uint64 ts_ping = 4; + bytes mac_address = 5; + StationModel model = 6; // telescope family + revision + string sn = 7; // serial number + string name = 8; // advertised name + string psw = 9; // device password + string fw_version = 10; + string ws_scheme = 11; // "ws" or "wss" + uint32 session = 12; + NifAP ap = 13; // AP network (ifname/ssid/psw/ipv4/ipv6) + NifSTA sta = 14; // STA network (ifname/ssid/psw/rssi/ipv4/ipv6) +} +``` + +`ble_psd` (BLE password) + `client_id` authenticate the BLE requests +(`ReqGetconfig`, `ReqSta`, `ReqAp`, `ReqSetblewifi`). Responses carry the +**`ip`** field (`ResGetconfig.ip` / `ResSta.ip`) that the app feeds into the +WebSocket URL. + +### 2.2 WebSocket control channel +Once the phone is on the telescope's network: + +``` +ws://:9900/?client_id= +``` + +- Plain `ws://` by default; `wss://` if `ws_scheme == "wss"`. +- `client_id` is a client-generated identifier (`y32…m58158c()`). +- Source: `v55.java` field `f43155b` / method `m55420t(ip)`. +- **device_id** field in the envelope selects which telescope (multi-device), + defaults to `1` for the first/only connected scope. + +### 2.3 RTSP preview +``` +rtsp:////stream0 +``` +- `` comes from `StreamTypeAnn` (`com.convergence.dwarflab.data.bean.camera`). +- Player options force `rtsp_transport = tcp` (see `RtspPlayerView.java:195`). +- Two cameras exist: **Tele** (main/long-focus) and **Wide** (wide-angle/guide). + +--- + +## 3. Wire format β€” `WsPacket` envelope + +Every WebSocket binary frame is **one serialized `WsPacket`** (`base.proto`): + +```proto +message WsPacket { + uint32 major_version = 1; // = 2 (WS_MAJOR_VERSION_NUMBER) + uint32 minor_version = 2; // = 3 (WS_MINOR_VERSION_NUMBER) β†’ protocol v2.3 + uint32 device_id = 3; // telescope index, default 1 + uint32 module_id = 4; // derived from cmd (see Β§4) + uint32 cmd = 5; // operation id (10000–17099) + uint32 type = 6; // 0=request 1=response 2=notification 3=reply + bytes data = 7; // inner protobuf message, serialized + string client_id = 8; // same client_id as the WS URL +} +``` + +Confirmed build code (`e49.java`, `C9312a.m36361a`): +```java +WsPacket.newBuilder() + .setMajorVersion(2) + .setMinorVersion(3) + .setDeviceId(connectedDeviceId != null ? connectedDeviceId : 1) + .setModuleId(wsCmd.getModuleId().ordinal()) // derived from cmd range + .setCmd(wsCmd.getCmd()) + .setType(wsCmd.getMessageType().ordinal()) // request=0 + .setData(ByteString.copyFrom(innerProto.toByteArray())) + .setClientId(clientId) + .build(); +``` + +`type` enum (`WsMessageType`): `request=0`, `response=1`, `notification=2`, `reply=3`. + +### 3.1 Request/response matching +Responses are matched by **`cmd`**. The app registers a pending continuation +keyed by the expected response `cmd`; an incoming `WsPacket` whose `cmd` matches +is parsed (`WsRequestHandle.mo7785d` β†’ `BaseProto.WsPacket.parseFrom`, then the +inner `data` is parsed into the expected proto class). + +For most commands the **response uses the same `cmd`** as the request +(`WsMessageReq.getResponseCmd()` defaults to `getCmd()`, see `d49.m35708a`). + +**IMPORTANT β€” discovered via live testing (not in the APK code):** +The telescope uses **`type=3` (REPLY)** for direct responses, not `type=1` +(RESPONSE). Additionally, not all commands get a reply: + +| Response model | Commands (tested) | Implementation | +|---------------|-------------------|----------------| +| **type=3 reply (same cmd)** | photo (10002), photo wide (12022), focus auto (15000), focus step (15001), state (16405), sync-time (13000), set-location (13010) | request-response with timeout | +| **notification only (type=2)** | RGB on/off (13500/13501), camera open/close (10000/10001), camera params GET (10036) | fire-and-forget; verify via `state` | +| **fire-and-forget native** | motor slew (14006), motor stop (14002) | no ack expected | + +Commands that only produce notifications still execute successfully β€” the +state change is visible in `GetDeviceState` (e.g. `rgb_state:{}` after RGB off). + +### 3.2 Notifications +The telescope pushes `WsPacket` frames with `type=2` (notification) and `cmd` in +the **15200–15303** range (`CMD_NOTIFY_*`). An OSS client must listen for these +to reflect state changes (track results, burst/record progress, temperatures, +calibration state, SD-card info, power, etc.). See `Notify.proto` (81 messages) +and `CMD_TABLE.md` (NOTIFY module). + +--- + +## 4. Command routing + +`module_id` is **not** stored per-command β€” it is derived from `cmd` by range +checks in `WsCmd.getModuleId()`: + +| cmd range | module_id (ordinal) | module | proto file | +|-----------|---------------------|--------|------------| +| 10000–10499 | 1 | CAMERA_TELE | `Camera.proto` | +| 11000–11499 | 3 | ASTRO | `Astro.proto` | +| 12000–12499 | 2 | CAMERA_WIDE | `Camera.proto` | +| 13000–13299 | 4 | SYSTEM | `System.proto` | +| 13500–13799 | 5 | RGB_POWER | (RGB led / power) | +| 14000–14499 | 6 | MOTOR | `MotorControl.proto` | +| 14800–14899 | 7 | TRACK | `Track.proto` | +| 15000–15199 | 8 | FOCUS | `Focus.proto` | +| 15200–15499 | 9 | NOTIFY | `Notify.proto` | +| 15500–15599 | 10 | PANORAMA | `Panorama.proto` | +| 15700–15799 | 11 | ITIPS | `ITips.proto` | +| 16100–16399 | 13 | SHOOTING_SCHEDULE | `Schedule.proto` | +| 16400–16599 | 14 | TASK_CENTER | `TaskCenter.proto` | +| 16700–16799 | 15 | PARAM | `Param.proto` | +| 16800–16899 | 16 | VOICE_ASSISTANT | `VoiceAssistant.proto` | +| 17000–17099 | 18 | DEVICE | `Device.proto` | + +**Full table of all 323 commands β†’ see [`CMD_TABLE.md`](CMD_TABLE.md).** + +The mapping from command β†’ inner protobuf message type lives in the +`data/websocket//` handlers (`*WsResponseHandle.java`) and the +`data/bean/p021ws/request/` request classes. To find the payload type for a +given cmd, grep the request package. + +--- + +## 5. Proto definitions + +Regenerated cleanly from the embedded `FileDescriptorProto` descriptors in the +APK β€” **17 files, 382 messages**. Located in `analysis/protos/`: + +| File | msgs | Covers | +|------|------|--------| +| `Base.proto` | 6 | WsPacket envelope, ComResponse, CommonParam | +| `Camera.proto` | 55 | Both cameras: exp/gain/WB/ISP/RAW/record/burst/resolution | +| `Astro.proto` | 67 | Calibration, GOTO (DSO/solar), live-stacking, darks, EQ solving, AI enhance, mosaic, sky-finder | +| `MotorControl.proto` | 14 | RA/DEC motors: run/stop/runTo/joystick/reset/positions | +| `Track.proto` | 9 | Tracking, sentry mode, MOT, UFO (multi-object track) | +| `Focus.proto` | 9 | Auto-focus (normal + astro), manual continuous, user infinity | +| `Panorama.proto` | 18 | Grid/stitch/framing/upload/compress | +| `Notify.proto` | 81 | All async server-push events | +| `Schedule.proto` | 20 | Shooting plan sync/cancel/lock | +| `TaskCenter.proto` | 26 | Global task manager, state info, mode/tech switch | +| `System.proto` | 14 | Time/timezone, location, MTP, CPU mode, activation, low-temp protection | +| `Param.proto` | 8 | Generic param set (exposure/gain/WB/int/float/bool/auto) | +| `Device.proto` | 3 | Lens defog, auto-cooling, auto-shutdown | +| `Ble.proto` | 25 | BLE handshake (DwarfPing/DwarfEcho/config/AP/STA/wifi-scan) | +| `VoiceAssistant.proto` | 16 | On-device voice assistant tasking | +| `RGB.proto` | 6 | RGB LED ring / power indicator | +| `ITips.proto` | 5 | Tips content | + +To regenerate: `python3 analysis/extract_protos.py ` + +--- + +## 6. Worked example β€” take a photo with the Tele camera + +1. **(once)** BLE: connect, get `DwarfEcho` β†’ extract `sta.ipv4`/`ap.ipv4`, + `psw`, join Wi-Fi. +2. Open WebSocket `ws://:9900/?client_id=droid-oss-001`. +3. Open the Tele camera: send `WsPacket{cmd=10000, data=ReqOpenCamera}`, + wait for `ComResponse{code=0}`. +4. Set exposure (optional): `cmd=10009` with `ReqSetExp{…}`. +5. Photograph: `cmd=10002` (`CMD_CAMERA_TELE_PHOTOGRAPH`). +6. Watch notifications `15273` (PHOTO_STATE) / `15274` (BURST_STATE) for result. + +Common response type is `ComResponse{ int32 code = 1; }` β€” `code==0` means OK. + +--- + +## 7. Parameter value maps (assets) + +The APK ships ready-made enum maps that constrain valid values: + +- **`assets/params_range.json`** β€” exposure index ↔ `"1/N"` label (0…full + mapping, e.g. index 0 = "1/10000", step 3). +- **`assets/shoot_plan_config.json`** β€” per-device capability matrix. Defines + DWARF II (id=1, fw 2.1.6): two cameras (`Tele` id=0, `Wide` implicit), + their FoV (`fvWidth/fvHeight`), preview size (1280Γ—720), and every supported + param with `min/max/step/defaultValue/valueType` + Gear vs Continue modes. + This file is the authoritative source for **what values each camera accepts**. +- **`assets/astronomy_data.db`** β€” SQLite of celestial objects (GOTO targets). +- **`assets/www/modules/eq/`** β€” Three.js 3D equatorial-alignment helper + (polar-alignment UI). "Bilbo" = next-gen model codename (DWARF III). + +--- + +## 8. Multi-device & activation notes + +- `device_id` in `WsPacket` selects the active telescope when several are on the + same network; default `1`. +- Some telescopes are **factory-activated** via `CMD_SYSTEM_*` (13005–13008): + `ReqGetDeviceActivateInfo`, `ReqDeviceActivateWriteFile`, activation-notify, + factory-test un-activate. An OSS client should generally leave activation + alone. +- `CMD_SYSTEM_SET_MASTER` (13004) toggles master/slave mode + (`ReqsetMasterLock{bool lock}`). +- MTP mode (`CMD_SYSTEM_SET_MTP_MODE`, 13002) switches the telescope between + Mass-Storage (mount SD card over USB) and normal modes. + +--- + +## 9. Suggested open-source client architecture + +``` +dwarf-oss/ +β”œβ”€β”€ proto/ ← copy analysis/protos/*.proto here +β”œβ”€β”€ ble/ ← BLE scanner + DwarfPing/DwarfEcho handshake (ble.proto) +β”œβ”€β”€ transport/ +β”‚ β”œβ”€β”€ ws_client.py ← ws://:9900/?client_id=…, send/recv WsPacket +β”‚ β”œβ”€β”€ envelope.py ← WsPacket build/parse (Base.proto) +β”‚ └── dispatcher.py ← cmd β†’ pending-request matching, NOTIFY fan-out +β”œβ”€β”€ rtsp/ ← GStreamer/ffmpeg/PyAV pull of rtsp:////stream0 +β”œβ”€β”€ modules/ +β”‚ β”œβ”€β”€ camera.py ← cmds 10000/12000 (Tele/Wide) +β”‚ β”œβ”€β”€ motor.py ← cmds 14000 (point/slew) +β”‚ β”œβ”€β”€ astro.py ← cmds 11000 (calib/goto/stacking/darks) +β”‚ β”œβ”€β”€ focus.py ← cmds 15000 +β”‚ β”œβ”€β”€ track.py ← cmds 14800 +β”‚ └── task.py ← cmds 16400 (one-click shooting) +└── cli.py ← `dwarf photo`, `dwarf goto M31`, `dwarf slew 1.2 0` +``` + +Key implementation tips: +- Send `major_version=2, minor_version=3` always. +- Reuse one persistent WebSocket; don't reconnect per command. +- Maintain a registry of `cmd β†’ asyncio.Future` for request/response; a single + inbound dispatcher handles both responses and notifications. +- Start with `CMD_GLOBAL_TASK_GET_DEVICE_STATE_INFO` (16405) after connect to + snapshot the current state, then rely on NOTIFY pushes. +- For live view, a separate RTSP consumer is simpler than multiplexing over the + WebSocket. + +--- + +## 10. Tooling used / how to reproduce + +``` +tools/jadx/bin/jadx -d extracted/jadx DWARFLAB.apk # decompile +python3 analysis/extract_protos.py extracted/.../proto analysis/protos +# WsCmd / WsModuleId / WsMessageType enums β†’ analysis/CMD_TABLE.md +``` + +Key source locations inside `extracted/jadx/sources/`: +- `com/convergence/dwarflab/proto/` β€” 17 `*Proto.java` (descriptors). +- `com/convergence/dwarflab/data/bean/p021ws/WsCmd.java` β€” all command ids. +- `…/WsModuleId.java`, `…/WsMessageType.java` β€” enums. +- `…/request/WsMessageReq.java` β€” request interface (`d49.java` = sender). +- `com/convergence/dwarflab/data/websocket//` β€” per-module handlers. +- `p000/e49.java` β€” WsPacket builder (`C9312a.m36361a`). +- `p000/v55.java` β€” WebSocket connection manager (URL/port 9900). +- `p000/b49.java` β€” OkHttp WebSocket wrapper. diff --git a/analysis/CMD_TABLE.md b/analysis/CMD_TABLE.md new file mode 100644 index 0000000..e37a222 --- /dev/null +++ b/analysis/CMD_TABLE.md @@ -0,0 +1,330 @@ +# DWARFLAB Command Routing Table + +Auto-extracted from `WsCmd.java` + `WsModuleId.java`. `module_id` is derived from `cmd` by range. +Total: **323 commands** across **16 modules**. + +| cmd | module | name | +|-----|--------|------| +| 10000 | CAMERA_TELE | CMD_CAMERA_TELE_OPEN_CAMERA | +| 10001 | CAMERA_TELE | CMD_CAMERA_TELE_CLOSE_CAMERA | +| 10002 | CAMERA_TELE | CMD_CAMERA_TELE_PHOTOGRAPH | +| 10003 | CAMERA_TELE | CMD_CAMERA_TELE_BURST | +| 10004 | CAMERA_TELE | CMD_CAMERA_TELE_STOP_BURST | +| 10005 | CAMERA_TELE | CMD_CAMERA_TELE_START_RECORD | +| 10006 | CAMERA_TELE | CMD_CAMERA_TELE_STOP_RECORD | +| 10007 | CAMERA_TELE | CMD_CAMERA_TELE_SET_EXP_MODE | +| 10008 | CAMERA_TELE | CMD_CAMERA_TELE_GET_EXP_MODE | +| 10009 | CAMERA_TELE | CMD_CAMERA_TELE_SET_EXP | +| 10010 | CAMERA_TELE | CMD_CAMERA_TELE_GET_EXP | +| 10011 | CAMERA_TELE | CMD_CAMERA_TELE_SET_GAIN_MODE | +| 10012 | CAMERA_TELE | CMD_CAMERA_TELE_GET_GAIN_MODE | +| 10013 | CAMERA_TELE | CMD_CAMERA_TELE_SET_GAIN | +| 10014 | CAMERA_TELE | CMD_CAMERA_TELE_GET_GAIN | +| 10015 | CAMERA_TELE | CMD_CAMERA_TELE_SET_BRIGHTNESS | +| 10016 | CAMERA_TELE | CMD_CAMERA_TELE_GET_BRIGHTNESS | +| 10017 | CAMERA_TELE | CMD_CAMERA_TELE_SET_CONTRAST | +| 10018 | CAMERA_TELE | CMD_CAMERA_TELE_GET_CONTRAST | +| 10019 | CAMERA_TELE | CMD_CAMERA_TELE_SET_SATURATION | +| 10020 | CAMERA_TELE | CMD_CAMERA_TELE_GET_SATURATION | +| 10021 | CAMERA_TELE | CMD_CAMERA_TELE_SET_HUE | +| 10022 | CAMERA_TELE | CMD_CAMERA_TELE_GET_HUE | +| 10023 | CAMERA_TELE | CMD_CAMERA_TELE_SET_SHARPNESS | +| 10024 | CAMERA_TELE | CMD_CAMERA_TELE_GET_SHARPNESS | +| 10025 | CAMERA_TELE | CMD_CAMERA_TELE_SET_WB_MODE | +| 10026 | CAMERA_TELE | CMD_CAMERA_TELE_GET_WB_MODE | +| 10027 | CAMERA_TELE | CMD_CAMERA_TELE_SET_WB_SCENE | +| 10028 | CAMERA_TELE | CMD_CAMERA_TELE_GET_WB_SCENE | +| 10029 | CAMERA_TELE | CMD_CAMERA_TELE_SET_WB_CT | +| 10030 | CAMERA_TELE | CMD_CAMERA_TELE_GET_WB_CT | +| 10031 | CAMERA_TELE | CMD_CAMERA_TELE_SET_IRCUT | +| 10032 | CAMERA_TELE | CMD_CAMERA_TELE_GET_IRCUT | +| 10033 | CAMERA_TELE | CMD_CAMERA_TELE_START_TIMELAPSE_PHOTO | +| 10034 | CAMERA_TELE | CMD_CAMERA_TELE_STOP_TIMELAPSE_PHOTO | +| 10035 | CAMERA_TELE | CMD_CAMERA_TELE_SET_ALL_PARAMS | +| 10036 | CAMERA_TELE | CMD_CAMERA_TELE_GET_ALL_PARAMS | +| 10037 | CAMERA_TELE | CMD_CAMERA_TELE_SET_FEATURE_PARAM | +| 10038 | CAMERA_TELE | CMD_CAMERA_TELE_GET_ALL_FEATURE_PARAMS | +| 10039 | CAMERA_TELE | CMD_CAMERA_TELE_GET_SYSTEM_WORKING_STATE | +| 10040 | CAMERA_TELE | CMD_CAMERA_TELE_SET_JPG_QUALITY | +| 10041 | CAMERA_TELE | CMD_CAMERA_TELE_PHOTO_RAW | +| 10042 | CAMERA_TELE | CMD_CAMERA_TELE_SET_RTSP_BITRATE_TYPE | +| 10043 | CAMERA_TELE | CMD_CAMERA_TELE_DISABLE_ALL_ISP_PROCESSING | +| 10044 | CAMERA_TELE | CMD_CAMERA_TELE_ENABLE_ALL_ISP_PROCESSING | +| 10045 | CAMERA_TELE | CMD_CAMERA_TELE_SET_ISP_MODULE_STATE | +| 10046 | CAMERA_TELE | CMD_CAMERA_TELE_GET_ISP_MODULE_STATE | +| 10047 | CAMERA_TELE | CMD_CAMERA_TELE_SWITCH_RESOLUTION | +| 10048 | CAMERA_TELE | CMD_CAMERA_TELE_SWITCH_FRAMERATE | +| 10049 | CAMERA_TELE | CMD_CAMERA_TELE_SWITCH_CROP_RATIO | +| 10050 | CAMERA_TELE | CMD_CAMERA_TELE_SET_PREVIEW_QUALITY | +| 11000 | ASTRO | CMD_ASTRO_START_CALIBRATION | +| 11001 | ASTRO | CMD_ASTRO_STOP_CALIBRATION | +| 11002 | ASTRO | CMD_ASTRO_START_GOTO_DSO | +| 11003 | ASTRO | CMD_ASTRO_START_GOTO_SOLAR_SYSTEM | +| 11004 | ASTRO | CMD_ASTRO_STOP_GOTO | +| 11005 | ASTRO | CMD_ASTRO_START_CAPTURE_RAW_LIVE_STACKING | +| 11006 | ASTRO | CMD_ASTRO_STOP_CAPTURE_RAW_LIVE_STACKING | +| 11007 | ASTRO | CMD_ASTRO_START_CAPTURE_RAW_DARK | +| 11008 | ASTRO | CMD_ASTRO_STOP_CAPTURE_RAW_DARK | +| 11009 | ASTRO | CMD_ASTRO_CHECK_GOT_DARK | +| 11010 | ASTRO | CMD_ASTRO_GO_LIVE | +| 11011 | ASTRO | CMD_ASTRO_START_TRACK_SPECIAL_TARGET | +| 11012 | ASTRO | CMD_ASTRO_STOP_TRACK_SPECIAL_TARGET | +| 11013 | ASTRO | CMD_ASTRO_START_ONE_CLICK_GOTO_DSO | +| 11014 | ASTRO | CMD_ASTRO_START_ONE_CLICK_GOTO_SOLAR_SYSTEM | +| 11015 | ASTRO | CMD_ASTRO_STOP_ONE_CLICK_GOTO | +| 11016 | ASTRO | CMD_ASTRO_START_WIDE_CAPTURE_LIVE_STACKING | +| 11017 | ASTRO | CMD_ASTRO_STOP_WIDE_CAPTURE_LIVE_STACKING | +| 11018 | ASTRO | CMD_ASTRO_START_EQ_SOLVING | +| 11019 | ASTRO | CMD_ASTRO_STOP_EQ_SOLVING | +| 11020 | ASTRO | CMD_ASTRO_WIDE_GO_LIVE | +| 11021 | ASTRO | CMD_ASTRO_START_CAPTURE_RAW_DARK_WITH_PARAM | +| 11022 | ASTRO | CMD_ASTRO_STOP_CAPTURE_RAW_DARK_WITH_PARAM | +| 11023 | ASTRO | CMD_ASTRO_GET_DARK_FRAME_LIST | +| 11024 | ASTRO | CMD_ASTRO_DEL_DARK_FRAME_LIST | +| 11025 | ASTRO | CMD_ASTRO_START_CAPTURE_WIDE_RAW_DARK_WITH_PARAM | +| 11026 | ASTRO | CMD_ASTRO_STOP_CAPTURE_WIDE_RAW_DARK_WITH_PARAM | +| 11027 | ASTRO | CMD_ASTRO_GET_WIDE_DARK_FRAME_LIST | +| 11028 | ASTRO | CMD_ASTRO_DEL_WIDE_DARK_FRAME_LIST | +| 11029 | ASTRO | CMD_ASTRO_START_AI_ENHANCE | +| 11030 | ASTRO | CMD_ASTRO_STOP_AI_ENHANCE | +| 11031 | ASTRO | CMD_ASTRO_START_TELE_MOSAIC | +| 11032 | ASTRO | CMD_ASTRO_CHECK_IF_RESTACKABLE | +| 11033 | ASTRO | CMD_ASTRO_START_MAKE_FITS_THUMB | +| 11034 | ASTRO | CMD_ASTRO_STOP_MAKE_FITS_THUMB | +| 11035 | ASTRO | CMD_ASTRO_START_RESTACKED | +| 11036 | ASTRO | CMD_ASTRO_STOP_RESTACKED | +| 11037 | ASTRO | CMD_ASTRO_FAST_STOP_CAPTURE_RAW_LIVE_STACKING | +| 11038 | ASTRO | CMD_ASTRO_FAST_STOP_WIDE_CAPTURE_LIVE_STACKING | +| 11039 | ASTRO | CMD_ASTRO_GET_ASTRO_SHOOTING_TIME | +| 11040 | ASTRO | CMD_ASTRO_GET_QUICK_SET_LIST | +| 11041 | ASTRO | CMD_ASTRO_SET_QUICK_SET | +| 11042 | ASTRO | CMD_ASTRO_START_ONE_CLICK_SHOOTING | +| 11043 | ASTRO | CMD_ASTRO_GET_CALI_FRAME_LIST | +| 11044 | ASTRO | CMD_ASTRO_DEL_CALI_FRAME_LIST | +| 11045 | ASTRO | CMD_ASTRO_START_CAPTURE_CALI_FRAME | +| 11046 | ASTRO | CMD_ASTRO_STOP_CAPTURE_CALI_FRAME | +| 11047 | ASTRO | CMD_ASTRO_START_SKY_TARGET_FINDER | +| 11048 | ASTRO | CMD_ASTRO_STOP_SKY_TARGET_FINDER | +| 12000 | CAMERA_WIDE | CMD_CAMERA_WIDE_OPEN_CAMERA | +| 12001 | CAMERA_WIDE | CMD_CAMERA_WIDE_CLOSE_CAMERA | +| 12002 | CAMERA_WIDE | CMD_CAMERA_WIDE_SET_EXP_MODE | +| 12003 | CAMERA_WIDE | CMD_CAMERA_WIDE_GET_EXP_MODE | +| 12004 | CAMERA_WIDE | CMD_CAMERA_WIDE_SET_EXP | +| 12005 | CAMERA_WIDE | CMD_CAMERA_WIDE_GET_EXP | +| 12006 | CAMERA_WIDE | CMD_CAMERA_WIDE_SET_GAIN | +| 12007 | CAMERA_WIDE | CMD_CAMERA_WIDE_GET_GAIN | +| 12008 | CAMERA_WIDE | CMD_CAMERA_WIDE_SET_BRIGHTNESS | +| 12009 | CAMERA_WIDE | CMD_CAMERA_WIDE_GET_BRIGHTNESS | +| 12010 | CAMERA_WIDE | CMD_CAMERA_WIDE_SET_CONTRAST | +| 12011 | CAMERA_WIDE | CMD_CAMERA_WIDE_GET_CONTRAST | +| 12012 | CAMERA_WIDE | CMD_CAMERA_WIDE_SET_SATURATION | +| 12013 | CAMERA_WIDE | CMD_CAMERA_WIDE_GET_SATURATION | +| 12014 | CAMERA_WIDE | CMD_CAMERA_WIDE_SET_HUE | +| 12015 | CAMERA_WIDE | CMD_CAMERA_WIDE_GET_HUE | +| 12016 | CAMERA_WIDE | CMD_CAMERA_WIDE_SET_SHARPNESS | +| 12017 | CAMERA_WIDE | CMD_CAMERA_WIDE_GET_SHARPNESS | +| 12018 | CAMERA_WIDE | CMD_CAMERA_WIDE_SET_WB_MODE | +| 12019 | CAMERA_WIDE | CMD_CAMERA_WIDE_GET_WB_MODE | +| 12020 | CAMERA_WIDE | CMD_CAMERA_WIDE_SET_WB_CT | +| 12021 | CAMERA_WIDE | CMD_CAMERA_WIDE_GET_WB_CT | +| 12022 | CAMERA_WIDE | CMD_CAMERA_WIDE_PHOTOGRAPH | +| 12023 | CAMERA_WIDE | CMD_CAMERA_WIDE_BURST | +| 12024 | CAMERA_WIDE | CMD_CAMERA_WIDE_STOP_BURST | +| 12025 | CAMERA_WIDE | CMD_CAMERA_WIDE_START_TIMELAPSE_PHOTO | +| 12026 | CAMERA_WIDE | CMD_CAMERA_WIDE_STOP_TIMELAPSE_PHOTO | +| 12027 | CAMERA_WIDE | CMD_CAMERA_WIDE_GET_ALL_PARAMS | +| 12028 | CAMERA_WIDE | CMD_CAMERA_WIDE_SET_ALL_PARAMS | +| 12029 | CAMERA_WIDE | CMD_CAMERA_WIDE_PHOTO_RAW | +| 12030 | CAMERA_WIDE | CMD_CAMERA_WIDE_START_RECORD | +| 12031 | CAMERA_WIDE | CMD_CAMERA_WIDE_STOP_RECORD | +| 12032 | CAMERA_WIDE | CMD_CAMERA_WIDE_SET_RTSP_BITRATE_TYPE | +| 12035 | CAMERA_WIDE | CMD_CAMERA_WIDE_SET_WB_SCENE | +| 12036 | CAMERA_WIDE | CMD_CAMERA_WIDE_SET_PREVIEW_QUALITY | +| 13000 | SYSTEM | CMD_SYSTEM_SET_TIME | +| 13001 | SYSTEM | CMD_SYSTEM_SET_TIME_ZONE | +| 13002 | SYSTEM | CMD_SYSTEM_SET_MTP_MODE | +| 13003 | SYSTEM | CMD_SYSTEM_SET_CPU_MODE | +| 13004 | SYSTEM | CMD_SYSTEM_SET_MASTER | +| 13005 | SYSTEM | CMD_SYSTEM_GET_DEVICE_ACTIVATE_INFO | +| 13006 | SYSTEM | CMD_SYSTEM_DEVICE_ACTIVATE_WRITE_FILE | +| 13007 | SYSTEM | CMD_SYSTEM_DEVICE_ACTIVATE_NOTIFY_ACTIVATE_SUCCESSFULL | +| 13008 | SYSTEM | CMD_SYSTEM_FACTORY_TEST_UN_ACTIVATE | +| 13009 | SYSTEM | CMD_SYSTEM_SET_LOW_TEMP_PROTECTION_MODE | +| 13010 | SYSTEM | CMD_SYSTEM_SET_LOCATION | +| 13500 | RGB_POWER | CMD_RGB_POWER_OPEN_RGB | +| 13501 | RGB_POWER | CMD_RGB_POWER_CLOSE_RGB | +| 13502 | RGB_POWER | CMD_RGB_POWER_POWER_DOWN | +| 13503 | RGB_POWER | CMD_RGB_POWER_POWERIND_ON | +| 13504 | RGB_POWER | CMD_RGB_POWER_POWERIND_OFF | +| 13505 | RGB_POWER | CMD_RGB_POWER_REBOOT | +| 14000 | MOTOR | CMD_STEP_MOTOR_RUN | +| 14002 | MOTOR | CMD_STEP_MOTOR_STOP | +| 14006 | MOTOR | CMD_STEP_MOTOR_SERVICE_JOYSTICK | +| 14007 | MOTOR | CMD_STEP_MOTOR_SERVICE_JOYSTICK_FIXED_ANGLE | +| 14008 | MOTOR | CMD_STEP_MOTOR_SERVICE_JOYSTICK_STOP | +| 14009 | MOTOR | CMD_STEP_MOTOR_SERVICE_DUAL_CAMERA_LINKAGE | +| 14800 | TRACK | CMD_TRACK_START_TRACK | +| 14801 | TRACK | CMD_TRACK_STOP_TRACK | +| 14802 | TRACK | CMD_SENTRY_MODE_START | +| 14803 | TRACK | CMD_SENTRY_MODE_STOP | +| 14804 | TRACK | CMD_MOT_START | +| 14805 | TRACK | CMD_MOT_TRACK_ONE | +| 14806 | TRACK | CMD_UFOTRACK_MODE_START | +| 14807 | TRACK | CMD_UFOTRACK_MODE_STOP | +| 14808 | TRACK | CMD_MOT_WIDE_TRACK_ONE | +| 14809 | TRACK | CMD_SWITCH_MAIN_PREVIEW | +| 14810 | TRACK | CMD_UFO_HAND_AOTO_MODE | +| 14811 | TRACK | CMD_SENTRY_SCENE_SELECT | +| 14812 | TRACK | CMD_TRACK_START_CLICK | +| 15000 | FOCUS | CMD_FOCUS_AUTO_FOCUS | +| 15001 | FOCUS | CMD_FOCUS_MANUAL_SINGLE_STEP_FOCUS | +| 15002 | FOCUS | CMD_FOCUS_START_MANUAL_CONTINU_FOCUS | +| 15003 | FOCUS | CMD_FOCUS_STOP_MANUAL_CONTINU_FOCUS | +| 15004 | FOCUS | CMD_FOCUS_START_ASTRO_AUTO_FOCUS | +| 15005 | FOCUS | CMD_FOCUS_STOP_ASTRO_AUTO_FOCUS | +| 15011 | FOCUS | CMD_FOCUS_GET_USER_INFINITY_POS | +| 15012 | FOCUS | CMD_FOCUS_SET_USER_INFINITY_POS | +| 15200 | NOTIFY | CMD_NOTIFY_TELE_WIDE_PICTURE_MATCHING | +| 15201 | NOTIFY | CMD_NOTIFY_ELE | +| 15202 | NOTIFY | CMD_NOTIFY_CHARGE | +| 15203 | NOTIFY | CMD_NOTIFY_SDCARD_INFO | +| 15204 | NOTIFY | CMD_NOTIFY_TELE_RECORD_TIME | +| 15205 | NOTIFY | CMD_NOTIFY_TELE_TIMELAPSE_OUT_TIME | +| 15206 | NOTIFY | CMD_NOTIFY_STATE_CAPTURE_RAW_DARK | +| 15207 | NOTIFY | CMD_NOTIFY_PROGRASS_CAPTURE_RAW_DARK | +| 15208 | NOTIFY | CMD_NOTIFY_STATE_CAPTURE_RAW_LIVE_STACKING | +| 15209 | NOTIFY | CMD_NOTIFY_PROGRASS_CAPTURE_RAW_LIVE_STACKING | +| 15210 | NOTIFY | CMD_NOTIFY_STATE_ASTRO_CALIBRATION | +| 15211 | NOTIFY | CMD_NOTIFY_STATE_ASTRO_GOTO | +| 15212 | NOTIFY | CMD_NOTIFY_STATE_ASTRO_TRACKING | +| 15213 | NOTIFY | CMD_NOTIFY_TELE_SET_PARAM | +| 15214 | NOTIFY | CMD_NOTIFY_WIDE_SET_PARAM | +| 15215 | NOTIFY | CMD_NOTIFY_TELE_FUNCTION_STATE | +| 15216 | NOTIFY | CMD_NOTIFY_WIDE_FUNCTION_STATE | +| 15217 | NOTIFY | CMD_NOTIFY_SET_FEATURE_PARAM | +| 15218 | NOTIFY | CMD_NOTIFY_TELE_BURST_PROGRESS | +| 15219 | NOTIFY | CMD_NOTIFY_PANORAMA_PROGRESS | +| 15220 | NOTIFY | CMD_NOTIFY_WIDE_BURST_PROGRESS | +| 15221 | NOTIFY | CMD_NOTIFY_RGB_STATE | +| 15222 | NOTIFY | CMD_NOTIFY_POWER_IND_STATE | +| 15223 | NOTIFY | CMD_NOTIFY_WS_HOST_SLAVE_MODE | +| 15224 | NOTIFY | CMD_NOTIFY_MTP_STATE | +| 15225 | NOTIFY | CMD_NOTIFY_TRACK_RESULT | +| 15226 | NOTIFY | CMD_NOTIFY_WIDE_TIMELAPSE_OUT_TIME | +| 15227 | NOTIFY | CMD_NOTIFY_CPU_MODE | +| 15228 | NOTIFY | CMD_NOTIFY_STATE_ASTRO_TRACKING_SPECIAL | +| 15229 | NOTIFY | CMD_NOTIFY_POWER_OFF | +| 15230 | NOTIFY | CMD_NOTIFY_ALBUM_UPDATE | +| 15231 | NOTIFY | CMD_NOTIFY_SENTRY_MODE_STATE | +| 15232 | NOTIFY | CMD_NOTIFY_SENTRY_MODE_TRACK_RESULT | +| 15233 | NOTIFY | CMD_NOTIFY_STATE_ASTRO_ONE_CLICK_GOTO | +| 15234 | NOTIFY | CMD_NOTIFY_STREAM_TYPE | +| 15235 | NOTIFY | CMD_NOTIFY_WIDE_RECORD_TIME | +| 15236 | NOTIFY | CMD_NOTIFY_STATE_WIDE_CAPTURE_RAW_LIVE_STACKING | +| 15237 | NOTIFY | CMD_NOTIFY_PROGRASS_WIDE_CAPTURE_RAW_LIVE_STACKING | +| 15238 | NOTIFY | CMD_NOTIFY_MULTI_TRACK_RESULT | +| 15239 | NOTIFY | CMD_NOTIFY_EQ_SOLVING_STATE | +| 15240 | NOTIFY | CMD_NOTIFY_UFO_MODE_STATE | +| 15241 | NOTIFY | CMD_NOTIFY_TELE_LONG_EXP_PROGRESS | +| 15242 | NOTIFY | CMD_NOTIFY_WIDE_LONG_EXP_PROGRESS | +| 15243 | NOTIFY | CMD_NOTIFY_TEMPERATURE | +| 15244 | NOTIFY | CMD_NOTIFY_PANORAMA_UPLOAD_COMPRESS_PROGRESS | +| 15245 | NOTIFY | CMD_NOTIFY_PANORAMA_UPLOAD_COMPLETE | +| 15245 | NOTIFY | CMD_NOTIFY_PANORAMA_UPLOAD_UPLOAD_PROGRESS | +| 15247 | NOTIFY | CMD_NOTIFY_STATE_CAPTURE_WIDE_RAW_DARK | +| 15248 | NOTIFY | CMD_NOTIFY_SHOOTING_SCHEDULE_RESULT_AND_STATE | +| 15249 | NOTIFY | CMD_NOTIFY_SHOOTING_TASK_STATE | +| 15250 | NOTIFY | CMD_NOTIFY_SKY_SEACHER_STATE | +| 15251 | NOTIFY | CMD_NOTIFY_WIDE_MULTI_TRACK_RESULT | +| 15252 | NOTIFY | CMD_NOTIFY_WIDE_TRACK_RESULT | +| 15253 | NOTIFY | CMD_NOTIFY_STATE_AI_ENHANCE | +| 15254 | NOTIFY | CMD_NOTIFY_PROGRESS_AI_ENHANCE | +| 15255 | NOTIFY | CMD_NOTIFY_WAIT_SHOOTING_PROGRESS | +| 15256 | NOTIFY | CMD_NOTIFY_CALIBRATION_RESULT | +| 15257 | NOTIFY | CMD_NOTIFY_FOCUS_POSITION | +| 15258 | NOTIFY | CMD_NOTIFY_UFO_AUTO_HAND_MODE | +| 15259 | NOTIFY | CMD_NOTIFY_CURRENT_PANORAMA_UPLOAD_STATE | +| 15260 | NOTIFY | CMD_NOTIFY_LOW_TEMP_PROTECTION_MODE | +| 15261 | NOTIFY | CMD_NOTIFY_EXCLUSIVE_SYSTEM_IO_TASK_STATE | +| 15262 | NOTIFY | CMD_NOTIFY_BODY_STATUS | +| 15263 | NOTIFY | CMD_NOTIFY_PROGRESS_CAPTURE_MOSAIC | +| 15264 | NOTIFY | CMD_NOTIFY_GENERAL_INT_PARAM | +| 15265 | NOTIFY | CMD_NOTIFY_GENERAL_FLOAT_PARAM | +| 15266 | NOTIFY | CMD_NOTIFY_GENERAL_BOOL_PARAM | +| 15267 | NOTIFY | CMD_NOTIFY_SWITCH_SHOOTING_MODE | +| 15268 | NOTIFY | CMD_NOTIFY_TELE_SWITCH_CROP_RATIO | +| 15269 | NOTIFY | CMD_NOTIFY_TELE_SHOOTING_TECH_STATE | +| 15270 | NOTIFY | CMD_NOTIFY_WB | +| 15271 | NOTIFY | CMD_NOTIFY_WIDE_SHOOTING_TECH_STATE | +| 15272 | NOTIFY | CMD_NOTIFY_RESOLUTION_PARAM | +| 15273 | NOTIFY | CMD_NOTIFY_PHOTO_STATE | +| 15274 | NOTIFY | CMD_NOTIFY_BURST_STATE | +| 15275 | NOTIFY | CMD_NOTIFY_RECORD_STATE | +| 15276 | NOTIFY | CMD_NOTIFY_TIMELAPSE_STATE | +| 15277 | NOTIFY | CMD_NOTIFY_PANORAMA_STATE | +| 15278 | NOTIFY | CMD_NOTIFY_ASTRO_AUTO_FOCUS_STATE | +| 15279 | NOTIFY | CMD_NOTIFY_NORMAL_AUTO_FOCUS_STATE | +| 15280 | NOTIFY | CMD_NOTIFY_ASTRO_AUTO_FOCUS_FAST_STATE | +| 15281 | NOTIFY | CMD_NOTIFY_AREA_AUTO_FOCUS_STATE | +| 15282 | NOTIFY | CMD_NOTIFY_DUAL_CAMERA_LINKAGE_STATE | +| 15283 | NOTIFY | CMD_NOTIFY_RESOLUTION_FPS_STATE | +| 15284 | NOTIFY | CMD_NOTIFY_NORMAL_TRACK_STATE | +| 15285 | NOTIFY | CMD_NOTIFY_BURST_PROGRESS | +| 15286 | NOTIFY | CMD_NOTIFY_RECORD_TIME | +| 15287 | NOTIFY | CMD_NOTIFY_TIMELAPSE_OUT_TIME | +| 15288 | NOTIFY | CMD_NOTIFY_LONG_EXP_PROGRESS | +| 15289 | NOTIFY | CMD_NOTIFY_SENTRY_MOTOR_STATE | +| 15290 | NOTIFY | CMD_NOTIFY_STATE_CAPTURE_CALI_FRAME | +| 15291 | NOTIFY | CMD_NOTIFY_PROGRESS_CAPTURE_CALI_FRAME | +| 15292 | NOTIFY | CMD_NOTIFY_CMOS_TEMPERATURE | +| 15293 | NOTIFY | CMD_NOTIFY_PANORAMA_COMPRESS_PROGRESS | +| 15294 | NOTIFY | CMD_NOTIFY_PANORAMA_COMPRESS_COMPLETE | +| 15295 | NOTIFY | CMD_NOTIFY_DEVICE_ATTITUDE | +| 15296 | NOTIFY | CMD_NOTIFY_SKY_TARGET_FINDER_STATE | +| 15297 | NOTIFY | CMD_NOTIFY_PANO_FRAMING_RECT_UPDATE | +| 15298 | NOTIFY | CMD_NOTIFY_PANO_FRAMING_THUMBNAIL_UPDATE | +| 15299 | NOTIFY | CMD_NOTIFY_PANO_FRAMING_STATE | +| 15300 | NOTIFY | CMD_NOTIFY_WIDE_FOCUS_POSITION | +| 15301 | NOTIFY | CMD_NOTIFY_LENS_DEFOG_STATE | +| 15302 | NOTIFY | CMD_NOTIFY_AUTO_COOLING_STATE | +| 15303 | NOTIFY | CMD_NOTIFY_AUTO_SHUTDOWN_STATE | +| 15500 | PANORAMA | CMD_PANORAMA_START_GRID | +| 15501 | PANORAMA | CMD_PANORAMA_STOP | +| 15503 | PANORAMA | CMD_PANORAMA_START_STITCH_UPLOAD | +| 15504 | PANORAMA | CMD_PANORAMA_STOP_STITCH_UPLOAD | +| 15505 | PANORAMA | CMD_PANORAMA_GET_CURRENT_UPLOAD_STATE | +| 15506 | PANORAMA | CMD_PANORAMA_GET_UPLOAD_PREDICT | +| 15507 | PANORAMA | CMD_PANORAMA_START_COMPRESS | +| 15508 | PANORAMA | CMD_PANORAMA_STOP_COMPRESS | +| 15509 | PANORAMA | CMD_PANORAMA_START_FRAMING | +| 15510 | PANORAMA | CMD_PANORAMA_STOP_FRAMING | +| 15511 | PANORAMA | CMD_PANORAMA_RESET_FRAMING | +| 15512 | PANORAMA | CMD_PANORAMA_UPDATE_FRAMING_RECT | +| 15513 | PANORAMA | CMD_PANORAMA_STOP_FRAMEING_AND_START_GRID | +| 15700 | ITIPS | CMD_ITIPS_GET | +| 16100 | SHOOTING_SCHEDULE | CMD_SYNC_SHOOTING_SCHEDULE | +| 16101 | SHOOTING_SCHEDULE | CMD_CANCEL_SHOOTING_SCHEDULE | +| 16102 | SHOOTING_SCHEDULE | CMD_GET_ALL_SHOOTING_SCHEDULE | +| 16103 | SHOOTING_SCHEDULE | CMD_GET_SHOOTING_SCHEDULE_BY_ID | +| 16105 | SHOOTING_SCHEDULE | CMD_REPLACE_SHOOTING_SCHEDULE | +| 16106 | SHOOTING_SCHEDULE | CMD_UNLOCK_SHOOTING_SCHEDULE | +| 16107 | SHOOTING_SCHEDULE | CMD_LOCK_SHOOTING_SCHEDULE | +| 16108 | SHOOTING_SCHEDULE | CMD_DELETE_SHOOTING_SCHEDULE | +| 16400 | TASK_CENTER | CMD_GLOBAL_TASK_MANAGER_START_TASK | +| 16401 | TASK_CENTER | CMD_GLOBAL_TASK_MANAGER_STOP_TASK | +| 16402 | TASK_CENTER | CMD_GLOBAL_TASK_MANAGER_SWITCH_SHOOTING_MODE | +| 16403 | TASK_CENTER | CMD_GLOBAL_TASK_MANAGER_SWITCH_SHOOTING_TECH | +| 16404 | TASK_CENTER | CMD_GLOBAL_TASK_MANAGER_ENTER_CAMERA | +| 16405 | TASK_CENTER | CMD_GLOBAL_TASK_GET_DEVICE_STATE_INFO | +| 16406 | TASK_CENTER | CMD_GLOBAL_VOICE_ASSISTANT_TASK | +| 16700 | PARAM | CMD_PARAM_SET_EXPOSURE | +| 16701 | PARAM | CMD_PARAM_SET_GAIN | +| 16702 | PARAM | CMD_PARAM_SET_WB | +| 16703 | PARAM | CMD_PARAM_SET_GENERAL_INT_PARAM | +| 16704 | PARAM | CMD_PARAM_SET_GENERAL_FLOAT_PARAM | +| 16705 | PARAM | CMD_PARAM_SET_GENERAL_BOOL_PARAM | +| 16706 | PARAM | CMD_PARAM_SET_AUTO_PARAMS | +| 16800 | VOICE_ASSISTANT | CMD_VOICE_ASSISTANT_TASK | +| 17000 | DEVICE | CMD_DEVICE_LENS_DEFOG | +| 17001 | DEVICE | CMD_DEVICE_AUTO_COOLING | +| 17002 | DEVICE | CMD_DEVICE_AUTO_SHUTDOWN | diff --git a/analysis/UI_REFERENCE.md b/analysis/UI_REFERENCE.md new file mode 100644 index 0000000..18286e3 --- /dev/null +++ b/analysis/UI_REFERENCE.md @@ -0,0 +1,502 @@ +# DWARFLAB App β€” UI / UX Reference (reverse-engineered) + +Reverse-engineered from `DWARFLAB.apk` v3.4.0 (`com.convergence.dwarflab`). This +document describes the **user interface, screen hierarchy, navigation, and +interactions** so the app can be reimplemented in another language/framework. + +Focus: **Splash β†’ Home β†’ Connection β†’ Capture (main shooter) β†’ Settings**. +(Atlas/Sky-Atlas and Album/Gallery screens are documented separately.) + +--- + +## 1. App structure & navigation model + +The app uses **Jetpack Navigation** (single-activity `MainActivity` + a +`NavHostFragment`) with a **`BottomNavigationView`** of 4 tabs, plus several +full-screen Activities launched outside the nav graph. + +### 1.1 Entry / launch flow +``` +SplashActivity (launcher, branding + init) + └─▢ MainActivity (NavHost + BottomNavigationView, 4 tabs) + β”œβ”€ Tab 1: Home β†’ HomeFragment + β”œβ”€ Tab 2: Atlas β†’ AtlasActivity (separate) + β”œβ”€ Tab 3: Album β†’ AlbumFragment / AlbumActivity + └─ Tab 4: Settings β†’ SettingsFragment +``` +- `mobile_navigation.xml` is the main nav graph; `startDestination = + navigation_device` (Home). +- `HeartbeatEntryActivity` is a transparent launcher alias used to keep a + foreground service alive (the BLE/Wi-Fi heartbeat to the scope). +- Tab labels (from `bottom_nav_menu.xml` + strings `home_3/4/5`, `camera_astro_69`): + | tab | id | label (en) | icon | + |-----|----|-----------|------| + | 1 | `navigation_device` | **Home** | `icon_function_tabbar_home` | + | 2 | `navigation_atlas` | **Atlas** | `icon_function_tabbar_atlas` | + | 3 | `navigation_album` | **Album** | `icon_function_tabbar_album` | + | 4 | `navigation_settings` | **Settings** | `icon_function_tabbar_settings` | + +The bottom bar can be hidden (`MainActivity.isShowBottomNav`) when entering +full-screen sub-flows (device connect, OTA, capture). + +### 1.2 Activities (beyond the nav graph) +| Activity | Purpose | +|----------|---------| +| `SplashActivity` | Cold-start splash, version checks, routing to connect vs. main | +| `MainActivity` | Hosts the 4 tabs + NavHost | +| `CaptureActivity` | **The shooting screen** (9199 lines β€” the heart of the app) | +| `AtlasActivity` | Sky atlas / star map / GoTo target selection | +| `AlbumActivity` | Gallery of captured photos/videos/FITS | +| `LocationActivity` | Map to set observing location | +| `CaliFrameActivity` | Calibration-frame capture/management | +| `HelperActivity` | In-app help / guide center | +| `WebActivity` / `NavActivity` | Embedded web views (privacy, OSS notice, help docs) | +| `NfcWriteActivity` | NFC tag update (device name change) | +| `MosaicGuideActivity`, `SkyLightTipActivity`, `StarSearchActivity` | Atlas sub-screens | + +--- + +## 2. Splash & first-run + +`SplashActivity` β†’ decides between: +- **Not connected**: routes to `HomeFragment` which shows a *device-discovery / + connect* CTA when no scope is paired. +- **App upgrade available**: shows `AppUpdateDialog` (force-update path uses + `FirmwareForceUpdateDialog`). +- **System notice**: `AppNotice` banner. + +`MainActivity` also handles: app-upgrade dialogs, product-activation dialog +(`ProductActivateDialog`), not-enough-storage dialog, and an activation-error +dialog. Activation is gated behind internet access (strings `settings_25`–`45`). + +--- + +## 3. Home tab (`HomeFragment`) β€” `fragment_home.xml` + +The dashboard / device hub. Two visual states: + +### 3.1 Disconnected state +- Title bar: device-name placeholder + a **"Guide"** button (`home_16`, + top-right, primary pill). +- Centered illustration + **"Connect"** call-to-action β†’ navigates to + `DeviceSearchFragment` (BLE scan). +- `view_bg_home_disconnected` background shown. + +### 3.2 Connected state +Top bar becomes a **device selector dropdown** (`tv_title` with +`drawableEnd icon_action_arrow_down`): tapping opens device switcher. +Below: device status card, then action entries. + +Navigation actions declared on `navigation_device` (HomeFragment): +| Action | Destination | Meaning | +|--------|-------------|---------| +| `action_deviceFragment_to_deviceSearchFragment` | Device Search | Add/switch device | +| `action_homeFragment_to_locationFragment` | Location | Set GPS/observing site | +| `action_homeFragment_to_ScheduleFragment` | Schedule | Shooting plans list | +| `action_homeFragment_to_upgradeFragment` | OTA Upgrade | Firmware update | +| `action_homeFragment_to_scheduleDetailFragment` | Schedule Detail | Edit a plan | +| `action_homeFragment_to_helperFragment` | Helper | In-app guide | +| `action_homeFragment_to_webFragment` | Web | Embedded web content | +| `action_home_to_taskListFragment` | Task List | Task/creation jobs (`createType` arg) | +| `action_home_to_astroFitsFragment` | Astro FITS | View a FITS file (`filePath`) | +| `action_home_to_caliFrameListFragment` | Cali-Frame List | Manage calibration frames (`caliFrameType`, `cameraType`) | + +So **Home is a launcher** into: connect, location, schedule, OTA, tasks, +cali-frames, help. The actual *shooting* is entered by tapping the connected +device card β†’ launches `CaptureActivity`. + +--- + +## 4. Device connection flow + +A multi-step wizard (mostly bottom-sheet dialogs) living under +`navigation_device_connect` and friends. + +``` +DeviceSearchFragment (BLE scan, lists nearby scopes) + β”œβ”€β–Ά DeviceConnectFragment (dialog) β€” enter device password + β”‚ β”œβ”€ success β†’ DeviceConnectSuccessFragment + β”‚ β”œβ”€ wrong pwd β†’ DeviceConnectPwdErrorAgainFragment + β”‚ └─ upgrade needed β†’ UpgradeReminderFragment β†’ OTAUpgradeFragment + β”œβ”€β–Ά WiFiListFragment (STA mode: scan Wi-Fi for the scope) + β”‚ └─▢ StaInfoFragment (enter Wi-Fi password) β†’ DeviceConnectFragment + β”œβ”€β–Ά DeviceConnectManualFragment (manual IP entry) + β”œβ”€β–Ά DeviceStaPwdFragment / DeviceStaConnectFailedFragment + └─▢ DeviceResetTutorialFragment / DeviceConnectFailedFragment +``` + +Key strings reveal the model: +- **Connection modes** (`settings_connection_14–21`): + - **Auto (Recommended)** β€” auto-choose AP vs STA. + - **STA mode** β€” phone & scope join the same home Wi-Fi (scope gets internet). + - **AP mode** β€” connect directly to the DWARF hotspot (outdoor/no-Wi-Fi). +- **Wi-Fi Compatible Mode** + **Enable 2.4GHz** toggles for region/legacy fixes. +- **Region** setting (`settings_connection_10`) β€” country code for Wi-Fi regs. +- **Activate Wi-Fi at Startup** β€” auto-enable hotspot on boot. +- Device password screen distinguishes **default password** vs custom + (`isDefaultPwd` arg β†’ `DevicePasswordFragment`). + +`DeviceSearchFragment` args: `type` (0 = first connect, 1 = add another), +`deviceName` (nullable, for reconnect). Result carries a `DeviceInfo` +(`com.convergence.dwarflab.net.discovery.DeviceInfo`) containing BLE-resolved +IP/SSID/PSK (see API_REFERENCE Β§2.1 for the BLE `DwarfEcho` payload). + +--- + +## 5. Capture screen (`CaptureActivity`) β€” the shooter + +This is the most complex screen (~9200 lines). Landscape-oriented camera +viewfinder with overlaid controls. Layout: `activity_capture.xml`. + +### 5.1 Layout regions +``` +β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” +β”‚ [ TechniqueBar (top-right) ] [ Sky-finder actions (top-right) ] β”‚ +β”‚ β”‚ +β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ +β”‚ β”‚ β”‚ β”‚ Wide PIP β”‚ ← wide-angle β”‚ +β”‚ β”‚ MAIN PREVIEW (RTSP) β”‚ β”‚ preview β”‚ inset (top-L) β”‚ +β”‚ β”‚ Tele camera β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ +β”‚ β”‚ (RtspPlayerView) β”‚ β”‚ +β”‚ β”‚ + TrackBoxView overlay β”‚ [ RGB container (right) ] β”‚ +β”‚ β”‚ + PreviewBorderView β”‚ β”‚ +β”‚ β”‚ + ShootingProgressView β”‚ β”‚ +β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ +β”‚ β”‚ +β”‚ β”Œβ”€Left─┐ β”Œβ”€Joystick─┐ β”Œβ”€β”€Right panel──┐ β”‚ +β”‚ β”‚panel β”‚ β”‚ (polar β”‚ β”‚ Focus β”‚ β”‚ +β”‚ β”‚ β”‚ β”‚ D-pad) β”‚ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ β”‚ +β”‚ β”‚ βœ•backβ”‚ β”‚ β”‚ β”‚ β”‚ CAPTURE β”‚ β”‚ β”‚ +β”‚ β”‚ PIP β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”‚ BUTTON β”‚ β”‚ β”‚ +β”‚ β”‚ more β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”‚ +β”‚ β”‚ ? β”‚ [ ParameterIndicatorBar ] β”‚ Parameter β”‚ β”‚ +β”‚ β”‚ albumβ”‚ [ DeviceIndicatorBar ] β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ +β”‚ β”‚ clearβ”‚ β”‚ +β”‚ β””β”€β”€β”€β”€β”€β”€β”˜ [ GoTo composition pill ] [ ZoomLensPanel ] β”‚ +β”‚ β”‚ +β”‚ (overlays: FocusProgress, StopProgress, CaptureStatus, β”‚ +β”‚ FullscreenProgress, CaliFrameProgress, PanoComposition) β”‚ +β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ +``` + +### 5.2 Left control panel (`view_capture_left_control_panel.xml`, 48dp wide) +Vertical icon stack, topβ†’bottom: +| id | icon | action | +|----|------|--------| +| `iv_photography_cancel` | arrow-left | **Back** (exit capture) | +| `iv_photography_pip` | pip icon | **Toggle PIP** (picture-in-picture wide inset) | +| `iv_photography_more_feature_set` | (dynamic) | **More settings** (opens `CamMoreFeatureSetDialog`) | +| `iv_photography_guide` | question-circle | **Guide/help** (hidden by default) | +| `iv_open_album` | album icon | **Open Album** (jump to gallery) | +| `ivClearAll` | clear-all | **Clear** (reset selection/overlay) | + +### 5.3 Right control panel (`view_capture_right_panel.xml`, 84dp wide) +Vertical stack: +| id | label | icon | action | +|----|-------|------|--------| +| `btn_focus_view_capture_right_panel` | **Focus** (`camera_general_2`) | `icon_function_main_focus` | Open focus controls (AF, manual, astro-AF) | +| `item_main_capture_button_view` | β€” (76dp circular) | dynamic | **Main shutter** (see Β§5.5) | +| `btn_parameter_view_capture_right_panel` | **Parameter** (`camera_astro_222`) | `icon_function_general_parameter` | Open `CamParameterSetDialog` (exposure/gain/WB/ISP) | + +`ZoomLensPanel` sits just left of the right panel (zoom/crop-ratio control). + +### 5.4 TechniqueBar (top-right) β€” mode selector +A pill that shows the current **ShootingModeType** + **ShootingTech** and a +right-side action (`RightActionType`). Tapping opens +`ShootingModeSelectDialog` to pick a mode. + +**`ShootingModeType`** (the "scene"/target class) β€” `ShootingModeType.java`: +| value | name | notes | +|-------|------|-------| +| 1 | `NORMAL` | generic | +| 2 | `DSO` | deep-sky object (needs calibration + EQ) | +| 3 | `SUN_MOON` | solar/lunar | +| 4 | `MILKY_WAY` | Milky Way wide-field | +| 5 | `STAR_TRAIL` | star-trail time accumulation | +| 6 | `AUTO_TRACKING` | generic object tracking | +| 7 | `PANORAMA` | panorama/grid capture | +| 8 | `SUN` | sun (ND filter warning!) | +| 9 | `MOON` | moon | +| 10 | `PLANET` | planetary | +| 0 | `UNKNOWN` | default | + +Each mode carries flags: `isWidePreviewOnly`, `isWidePreviewSuggested`, +`isPipWindowBtnEnable`, `isHidePip`, `isViewRectangleVisible`, +`isAddQuickSet`, `cameraType` (Tele/Wide), `shootingTech`, +`isAstroFocus`, `isShowAutoFocusSwitch`, `isSunOrMoon`, `isLongTouchStop`, +`isSolarSystem`, `isShowZoomLens`, `isEnterAtlasVisible`, `isEnableCurves`, +`isAreaFocusEnable`. These drive which UI controls are visible. + +**`ShootingTech`** (the capture technique) β€” `ShootingTech.java`: +| value | name | UI ring style | +|-------|------|---------------| +| 0 | `UNKNOWN` | β€” | +| 1 | `SINGLE_SHOT` | single photo | +| 2 | `STACKING` | live-stacking (astro) | +| 3 | `BURST` | burst | +| 4 | `VIDEO` | video record | +| 5 | `TIMELAPSE` | timelapse | +| 6 | `PANORAMA` | panorama/grid | + +**`RightActionType`** (what the TechniqueBar's right button does): +`NORMAL, FOCUS, PARAMETER, TECHNOLOGY, TECHNOLOGY_SETTING, MODE, LongPressStop`. + +### 5.5 Main capture button (`MainCaptureButtonView`) +A 76dp circular shutter whose appearance is driven by **`CaptureState`** +(`CaptureState.java`) and the current `ShootingModeType`/`ShootingTech`. +States include: +`None, PreparingAstronomyDarkFrame, RawDarkTaking, RawDarkStopping, +RawDarkStopped, RawTaking, RawStopping, GoLive, AIEnhance, AIEnhanceStopping, +PanoramaTaking, PanoramaStopping, RecordTaking, RecordStopping, …` + +Behavior: +- **Tap** β†’ start capture (photo/burst/stack/record depending on tech). +- **Long-press** β†’ stop (`isLongPressTriggered`; shows `item_long_press_stop` + pill "Long Press to Stop" / `camera_general_153`, then "Stopping…"). +- Ring/teeth animations reflect exposure countdown (`ShootingProgressView`) + and long-exposure progress (`NotifyProto.LongExpPhotoProgress`). + +### 5.6 Joystick (`PolarDpadJoystickView`, 258dp) +Bottom-left polar D-pad for manual slewing. Sends +`CMD_STEP_MOTOR_SERVICE_JOYSTICK` (14006) with `vector_angle`/`vector_length`. +Has low/high speed indicators and four directional triangle overlays. + +### 5.7 Overlays (z-ordered by elevation) +| Widget | elevation | purpose | +|--------|-----------|---------| +| `TrackBoxView` (tele + wide) | 4dp | tracking bounding-box overlay | +| `PreviewBorderView` | β€” | PIP border / crop frame | +| `ShootingProgressView` (main + minor) | 1dp | exposure countdown ring/text | +| `FocusProgressLayout` | 3dp | autofocus sweep overlay | +| `StopProgressLayout` | 3dp | stop-in-progress overlay | +| `CaptureStatusLayout` | 3dp | status HUD (bottom-center) | +| `FullscreenProgressLayout` | 4dp | full-screen progress (calibration, GoTo) | +| `CaliFrameProgressLayout` | 4dp | calibration-frame progress | +| `PanoCompositionLayout` | 30dp (top) | panorama composition canvas | +| `ParameterIndicatorBar` / `DeviceIndicatorBar` | 1dp | bottom status chips | + +### 5.8 Sky-finder / Milky-Way action rows (top-right & bottom-center) +- `item_action_sky_finder`: calibration icon, AR-toggle, exit β€” for the + Sky-Target-Finder / AR overlay mode (`CMD_ASTRO_START_SKY_TARGET_FINDER`). +- `item_action_milky_way`: "Locate Milky Way" (`camera_astro_419`) + + "Confirm" (`camera_astro_412`) pills β€” Milky Way composition helper. +- `flGoComposition`: "GoTo" composition pill (`camera_pano_52`) for panorama + framing. + +### 5.9 Key dialogs launched from Capture +| Dialog | Trigger | Purpose | +|--------|---------|---------| +| `ShootingModeSelectDialog` | TechniqueBar tap | Pick ShootingModeType | +| `CamModeSelectDialog` | mode button | Pick ShootingTech (photo/video/stack/…) | +| `CamParameterSetDialog` / `CamParamSetVM` | Parameter button | Exposure/Gain/WB/ISP per camera | +| `CamMoreFeatureSetDialog` | left "more" icon | Extra feature toggles | +| `PenalSetDialog` | panel button | Side-panel config | +| `StatusHUDDialog` | indicator bar | Detailed status overlay | +| `DarkSceneShootingDialog` | dark-frame flow | Dark-frame capture wizard | +| `CaliFramePrepareDialog` | cali-frame flow | Calibration-frame prep | +| `AtlasGotoDialog` | GoTo action | Confirm GoTo target | +| `AiEnhanceProgressDialog` | AI enhance | AI post-process progress | +| `ReservationCurveDialog` | curves | Tone/exposure curves editor | +| `SkyFinderNodeTargetsDialog` | sky finder | Pick target from AR nodes | +| `TrackSunHintDialog` | sun tracking | Sun-tracking safety hint | +| `BottomTipDialog` / `TipDialog` / `MessageDialog` | various | Tips & confirmations | + +--- + +## 6. Settings tab (`SettingsFragment`) β€” `fragment_settings.xml` + +A single `RecyclerView` whose rows are built programmatically in +`SettingsFragment.java` (grouped sections). Title: "Settings" (`settings_1`). + +### 6.1 Top-level rows (from nav actions on `navigation_settings`) +| Row (string) | Destination fragment | +|--------------|----------------------| +| Profile / Login-Register | `ProfileFragment` / `LoginRegisterFragment` | +| **My Device** (`settings_2`) | `MyDeviceFragment` | +| **Connection Settings** (`settings_3`) | `ConnectionSettingsFragment` | +| **Advanced Settings** (`settings_4`) | `AdvancedFragment` | +| **Location** (`settings_5`) | `LocationFragment` | +| **General** (`settings_6`) | `GeneralFragment` | +| **Voice Assistant** | `VoiceAssistantFragment` | +| **Support** (`settings_7`) | `SupportFragment` | +| **About** (`settings_9`) | `AboutFragment` | +| Clear Cache (`settings_8`) | (action, no nav) | + +### 6.2 My Device (`MyDeviceFragment`) sub-tree +- Device name β†’ `DeviceNameFragment` (edit name; also triggers NFC update). +- Device password β†’ `DevicePasswordFragment` (change pwd; `isDefaultPwd` flag) + β†’ `DeviceResetFragment` (factory reset). +- **NFC Update** (`settings_64`) β†’ `NfcWriteActivity` β€” hold phone near ring light. +- **Activation info** β†’ `ActivateInfoFragment` (status, time, warranty). +- **Storage** β†’ `StorageFragment` (total/available size args). +- Firmware/OTA β€” reuses `OTAUpgradeFragment`. + +### 6.3 Connection Settings (`ConnectionSettingsFragment`) +Toggles + radio (strings `settings_connection_1–29`): +- **Connection mode**: Auto / STA / AP (radio). +- **Activate Wi-Fi at Startup** (switch). +- **Enable 2.4GHz**, **Wi-Fi Compatible Mode** (switches). +- **Region** β†’ `RegionSettingsFragment` (country code). +- Configure STA network β†’ `WiFiListFragment` β†’ `StaInfoFragment`/`StaInfoSetFragment`. + +### 6.4 General (`GeneralFragment`) sub-tree +- **Language** β†’ `LanguageSettingsFragment`. +- **Temperature unit** β†’ `TemperatureUnitFragment`. +- **Appearance / Dark mode** β†’ `AppearanceFragment`. +- **Image correction** β†’ `ImageCorrectionFragment` β†’ list (`ImageCorrectionListFragment`) β†’ item (`ImageCorrectionListItemFragment`) + helper. +- **Floating window** β†’ `FloatingWindowFragment`. +- **Calendar** (dialog) β†’ `CalendarFragment`. +- **Auto-stop duration** β†’ `AutoStopDurationFragment`. +- **Emotion / voice** β†’ `EmotionFragment`, `EmotionScaleFragment`, `SpeechRateFragment`, `VoiceTypeFragment`, `VoiceNavigationModeFragment`. +- **Upload log / Log type** β†’ `UploadLogFragment`, `LogTypeFragment`. + +### 6.5 Advanced (`AdvancedFragment`) +Device-level toggles: master lock, MTP mode, CPU mode, low-temp protection, +lens defog, auto-cooling, auto-shutdown (the `CMD_SYSTEM_*` / `CMD_DEVICE_*` +commands). Shows `layout_advanced_settings_unavailable.xml` when the connected +device/firmware doesn't support an option. + +### 6.6 Support / About +- **Support** (`settings_7`): FAQ/web links, contact `support@dwarflab.com`, + log upload. +- **About** (`settings_9`): app version, OSS notice + (`site.dwarflabapp.com/app-about/open-source-software-android`), privacy & + terms (en/zh). + +--- + +## 7. OTA / firmware upgrade flow + +``` +UpgradeReminderFragment (dialog: "new firmware available") + └─▢ OTAUpgradeFragment (download + apply) + └─▢ WiFiConnectFragment (dialog, if scope needs Wi-Fi for download) +``` +- Args: `ssid`, `psd`, `isStaMode` β€” the scope may need to join Wi-Fi to fetch + the firmware; the app drives this via BLE (`ReqSta`) then polls download + progress. +- Firmware download URL: + `https://dwarflab.com/pages/dwarflab-app-firmware-download`. +- `FirmwareForceUpdateDialog` blocks the app if firmware is too old for a + required feature (e.g. astrophotography β€” see `camera_astro_116`). + +--- + +## 8. Schedule / shooting-plan flow + +``` +HomeFragment + └─▢ ScheduleFragment (list of plans) + β”œβ”€β–Ά ScheduleDetailFragment (edit one plan; add targets, set params) + β”‚ └─▢ ScheduleErrorReasonFragment (if sync fails) [args: reason] + └─▢ (sync/lock/unlock/delete via ScheduleProto cmds 16100–16108) +``` +- A plan = a timed shooting session with one or more targets, per-camera + params, and a date/time window (sunsetβ†’sunrise auto-calculated from Atlas). +- Plans can be **locked** (16107) so they reserve their time slot; unlocking + (16106) frees it. +- "Add to Schedule" (`camera_general_113`), "Date of Plan" + (`camera_general_114`), and the 12-hour-ahead sync limit + (`camera_general_118`) are key UX constraints. + +--- + +## 9. Shared UI conventions & components + +### 9.1 Custom widgets (`ui/widget/`) +| Widget | Path | Role | +|--------|------|------| +| `RtspPlayerView` | `media/` | RTSP preview (ijkplayer, TCP transport) | +| `PolarDpadJoystickView` | `widget/joystick/` | Polar slew D-pad | +| `TechniqueBar` | `widget/capture/` | Mode/tech selector pill | +| `MainCaptureButtonView` | `widget/capture/` | Circular shutter | +| `CaptureLeftControlPanel` / `CaptureRightControlPanel` | `widget/capture/` | Side control columns | +| `ZoomLensPanel` | `widget/capture/` | Zoom / crop-ratio | +| `ParameterIndicatorBar` / `DeviceIndicatorBar` | `widget/capture/` | Bottom status chips | +| `ShootingProgressView` | `widget/capture/` | Exposure countdown ring | +| `TrackBoxView` | `widget/camera/module/` | Tracking bbox overlay | +| `PreviewBorderView` | `widget/camera/module/` | PIP/crop border | +| `PanoPreviewGridLineView` | `widget/camera/module/` | Panorama grid | +| `TargetRectView` | `widget/camera/module/` | Target rectangle | +| `FocusProgressLayout` / `StopProgressLayout` | `widget/camera/module/` | Full-screen progress | +| `RGBContainerLayout` | `widget/camera/function/` | RGB ring-light control | +| `FullscreenProgressLayout` / `CaliFrameProgressLayout` / `PanoCompositionLayout` | `widget/capture/` | Full-screen overlays | +| `DWRangeSliderView` | `widget/atlas/` | Range slider (params) | +| `FitSystemView` | `widget/` | Status-bar inset helper | + +### 9.2 Design tokens +- Material 3 color scheme: `dl_color_on_surface`, `dl_color_surface_container_low_dark`, + `dl_color_primary_dark`, `dl_color_mask_strong`, `dl_color_border_variant_dark`, + `dl_color_white_80`, `dl_color_transparent`… +- Spacing scale: `dl_gap_level_4/8/12/16/24/32` (4-pt grid), `dl_margin_level_3`, + `dl_padding_level_2`, `dl_radius_rounded`, `dl_radius_medium`. +- Typography styles: `title_large_emphasized`, `title_small_emphasized`, + `body_medium`, `body_medium_emphasized`, `body_small_emphasized`, + `label_medium`, `Photography_label_2`, `CamControlBtnStyle`. +- Transitions: `right_slide_enter/exit`, `left_slide_enter/exit` (push), + `dialog_bottom_enter/exit` (bottom-sheets). + +### 9.3 Guide / onboarding overlays +`ui/guide/overlay/`: `BaseGuideDialogFragment`, +`GuideDialogFragment`, `ActivityGuideDialogFragment`, +`FullScreenOverlayDialogFragment` β€” coach-mark overlays with anchor points +(`ui/guide/anchor/`) used for first-run feature discovery. + +--- + +## 10. Internationalization + +- Default strings in `res/values/strings.xml`; localized variants exist + (Chinese `values-zh`, etc.). All user-visible text is keyed + (`camera_astro_N`, `camera_general_N`, `settings_N`, `home_N`, + `settings_connection_N`, `album_N`, `guide_N`…). +- Help docs link to language-specific URLs: + `https://help.dwarflab.com/en` vs `/zh`. +- Voice assistant has its own strings and supports emotion/speech-rate tuning. + +--- + +## 11. Map: UI action β†’ API command + +| UI action | WS command(s) | Proto | +|-----------|---------------|-------| +| Tap shutter (photo) | 10002 / 12022 | `ReqPhotograph` | +| Burst start/stop | 10003 / 10004 | `…Burst` | +| Video record start/stop | 10005 / 10006 | `…Record` | +| Set exposure | 10009 / 12004 | `ReqSetExp` | +| Set gain | 10013 / 12006 | `ReqSetGain` | +| WB / brightness / contrast / saturation / hue / sharpness | 10015–10024 | `ReqSetWB…` | +| Open/close camera | 10000/10001 (tele), 12000/12001 (wide) | β€” | +| Joystick slew | 14006 | `ReqMotorServiceJoystick` | +| GoTo target | 11002/11003/11013/11014 | `ReqStartGotoDSO`/`…SolarSystem` | +| Calibrate | 11000 | `ReqStartCalibration` | +| Live stacking | 11005/11006 | `Req…LiveStacking` | +| Dark frames | 11007/11021 | `Req…RawDark…` | +| Auto-focus | 15000 | `ReqAutoFocus` | +| Start track | 14800 | `ReqStartTrack` | +| Panorama grid | 15500/15501 | `Req…Grid` | +| AI enhance | 11029/11030 | `Req…AiEnhance` | +| EQ solving | 11018/11019 | `Req…EqSolving` | +| Power / reboot / RGB | 13500–13505 | `RGB.proto` | +| Set time/location | 13000/13010 | `ReqSetTime`/`ReqSetLocation` | +| Sync schedule | 16100 | `Schedule.proto` | + +Full command table: `CMD_TABLE.md`. Proto payloads: `analysis/protos/`. + +--- + +## 12. Suggested reimplementation plan (cross-platform) + +1. **Screens to build first** (MVP): Splash β†’ Home (connect CTA) β†’ + DeviceSearch (BLE) β†’ DeviceConnect (password) β†’ Capture (preview + shutter + + params + joystick) β†’ Settings (My Device + Connection). +2. **State model**: a single `DeviceStore` (connected? device_id, ip, cameras + on/off, current ShootingModeType/Tech, CaptureState, live params) fed by + the WebSocket NOTIFY stream (Β§API_REFERENCE Β§3.2). All UI reads from this. +3. **Capture screen** is the hard part β€” replicate the overlay z-order + (Β§5.7) and drive the capture button from `CaptureState`. +4. **Two preview surfaces** (Tele main + Wide PIP) each need an RTSP + consumer; toggle PIP via `CMD_SWITCH_MAIN_PREVIEW` (14809). +5. Keep the **mode-driven visibility** model: each `ShootingModeType` flag + (`isWidePreviewOnly`, `isAstroFocus`, `isShowZoomLens`…) controls which + controls render β€” don't hardcode per-screen logic. diff --git a/analysis/extract_protos.py b/analysis/extract_protos.py new file mode 100644 index 0000000..7939765 --- /dev/null +++ b/analysis/extract_protos.py @@ -0,0 +1,150 @@ +#!/usr/bin/env python3 +""" +Extract serialized FileDescriptorProto bytes from jadx-generated *Proto.java +files and regenerate clean .proto definitions using the real protobuf library. +""" +import re +import sys +import os +from google.protobuf import descriptor_pb2 + +# proto3 -> no "optional" label; proto2 prints labels. +TYPE_MAP = { + 1: 'double', 2: 'float', 3: 'int64', 4: 'uint64', 5: 'int32', + 6: 'fixed64', 7: 'fixed32', 8: 'bool', 9: 'string', 11: 'message', + 12: 'bytes', 13: 'uint32', 14: 'enum', 15: 'sfixed32', 16: 'sfixed64', + 17: 'sint32', 18: 'sint64', +} + +def field_type_str(f): + if f.type_name: + return f.type_name.lstrip('.') + return TYPE_MAP.get(f.type, f'scalar{f.type}') + +def render_field(f, syntax): + ty = field_type_str(f) + label = '' + if f.label == descriptor_pb2.FieldDescriptorProto.LABEL_REPEATED: + if f.options.packed: + label = 'packed repeated ' + else: + label = 'repeated ' + elif syntax == 'proto2' and f.label == descriptor_pb2.FieldDescriptorProto.LABEL_REQUIRED: + label = 'required ' + elif syntax == 'proto2': + label = 'optional ' + return f' {label}{ty} {f.name} = {f.number};' + +def render_enum(e, indent): + lines = [f'{indent}enum {e.name} {{'] + for v in e.value: + lines.append(f'{indent} {v.name} = {v.number};') + lines.append(f'{indent}}}') + return '\n'.join(lines) + +def render_message(m, indent, syntax): + lines = [f'{indent}message {m.name} {{'] + for oneof in m.oneof_decl: + lines.append(f'{indent} // oneof {oneof.name}') + for nested in m.enum_type: + lines.append(render_enum(nested, indent + ' ')) + for nested in m.nested_type: + lines.append(render_message(nested, indent + ' ', syntax)) + for f in m.field: + lines.append(render_field(f, syntax)) + lines.append(f'{indent}}}') + return '\n'.join(lines) + +def render_file(fd): + out = [f'// source: {fd.name}'] + if fd.package: + out.append(f'package {fd.package};') + syntax = fd.syntax or 'proto3' + out.append(f'syntax = "{syntax}";') + if fd.dependency: + out.append('') + for dep in fd.dependency: + out.append(f'import "{dep}";') + out.append('') + for e in fd.enum_type: + out.append(render_enum(e, '')) + out.append('') + for m in fd.message_type: + out.append(render_message(m, '', syntax)) + out.append('') + return '\n'.join(out) + +DESC_RE = re.compile( + r'internalBuildGeneratedFileFrom\(new String\[\]\{(.*?)\}\s*,\s*new Descriptors', + re.DOTALL) + +def decode_java_string_literal_body(lit): + """Decode a Java string-literal body (between quotes) to raw bytes.""" + out = bytearray() + i = 0; n = len(lit) + while i < n: + c = lit[i] + if c == '\\': + nxt = lit[i+1] + simple = {'n': 10, 'r': 13, 't': 9, '"': 34, "'": 39, '\\': 92, '0': 0, 'b': 8, 'f': 12} + if nxt in simple: + out.append(simple[nxt]); i += 2 + elif nxt == 'u': + out += chr(int(lit[i+2:i+6], 16)).encode('latin-1', 'replace') + i += 6 + else: + out.append(ord(nxt) & 0xff); i += 2 + else: + out += c.encode('latin-1', 'replace'); i += 1 + return bytes(out) + +def extract_descriptor_bytes(java_path): + txt = open(java_path, encoding='utf-8', errors='replace').read() + m = DESC_RE.search(txt) + if not m: + return None + body = m.group(1) + lits = re.findall(r'"((?:[^"\\]|\\.)*)"', body) + # protobuf concatenates ALL adjacent string elements into ONE descriptor + combined = b''.join(decode_java_string_literal_body(l) for l in lits) + return combined if combined else None + +def main(): + proto_dir = sys.argv[1] + out_dir = sys.argv[2] + os.makedirs(out_dir, exist_ok=True) + total_msgs = 0 + for fn in sorted(os.listdir(proto_dir)): + if not fn.endswith('Proto.java'): + continue + path = os.path.join(proto_dir, fn) + raw = extract_descriptor_bytes(path) + base = fn[:-5].replace('Proto', '') + if not raw: + print(f' [WARN] no descriptor in {fn}') + continue + try: + fd_set = descriptor_pb2.FileDescriptorSet() + fd = fd_set.file.add() + fd.MergeFromString(raw) + except Exception as ex: + # may be a FileDescriptorSet directly, or multiple + try: + fd_set.ParseFromString(raw) + if not fd_set.file: + raise + except Exception as ex2: + print(f' [ERR ] {fn}: {ex2}') + continue + out_path = os.path.join(out_dir, base + '.proto') + chunks = [] + for one_fd in fd_set.file: + chunks.append(render_file(one_fd)) + total_msgs += len(one_fd.message_type) + with open(out_path, 'w', encoding='utf-8') as f: + f.write('\n\n'.join(chunks) + '\n') + print(f' [OK] {fn} -> {base}.proto ({len(raw)} bytes, {len(fd_set.file)} file(s), {sum(len(x.message_type) for x in fd_set.file)} msgs)') + print(f'\nTotal messages recovered: {total_msgs}') + +if __name__ == '__main__': + main() diff --git a/analysis/protos/Astro.proto b/analysis/protos/Astro.proto new file mode 100644 index 0000000..970022f --- /dev/null +++ b/analysis/protos/Astro.proto @@ -0,0 +1,368 @@ +// source: astro.proto +syntax = "proto3"; + +message ReqStartCalibration { + double lon = 1; + double lat = 2; +} + +message ReqStopCalibration { +} + +message ReqGotoDSO { + double ra = 1; + double dec = 2; + string target_name = 3; + bool goto_only = 4; +} + +message ReqGotoSolarSystem { + int32 index = 1; + double lon = 2; + double lat = 3; + string target_name = 4; + bool force_start = 5; +} + +message ResGotoSolarSystem { + int32 code = 1; + ReqGotoSolarSystem req = 2; +} + +message ReqStopGoto { +} + +message ReqCaptureRawLiveStacking { + int32 ir_index = 1; + bool force_start = 2; +} + +message ReqStopCaptureRawLiveStacking { +} + +message ReqFastStopCaptureRawLiveStacking { +} + +message ReqCheckDarkFrame { +} + +message ResCheckDarkFrame { + int32 progress = 1; + int32 code = 2; +} + +message ReqCaptureDarkFrame { + int32 reshoot = 1; +} + +message ReqStopCaptureDarkFrame { +} + +message ReqCaptureDarkFrameWithParam { + int32 exp_index = 1; + int32 gain_index = 2; + int32 bin_index = 3; + int32 cap_size = 4; +} + +message ReqStopCaptureDarkFrameWithParam { +} + +message ReqGetDarkFrameList { +} + +message ResGetDarkFrameInfo { + // oneof _temperature + int32 exp_index = 1; + int32 gain_index = 2; + int32 bin_index = 3; + string exp_name = 4; + string gain_name = 5; + string bin_name = 6; + int32 temperature = 7; +} + +message ResGetDarkFrameInfoList { + int32 code = 1; + repeated ResGetDarkFrameInfo results = 2; +} + +message ReqDelDarkFrame { + int32 exp_index = 1; + int32 gain_index = 2; + int32 bin_index = 3; + int32 temp_value = 4; +} + +message ReqDelDarkFrameList { + repeated ReqDelDarkFrame dark_list = 1; +} + +message ResDelDarkFrameList { + int32 code = 1; +} + +message ReqGoLive { +} + +message ReqTrackSpecialTarget { + int32 index = 1; + double lon = 2; + double lat = 3; +} + +message ReqStopTrackSpecialTarget { +} + +message ReqOneClickGotoDSO { + double ra = 1; + double dec = 2; + string target_name = 3; + double lon = 4; + double lat = 5; + int32 shooting_mode = 6; + bool goto_only = 7; +} + +message ResOneClickGoto { + int32 step = 1; + int32 code = 2; + bool all_end = 3; +} + +message ReqOneClickGotoSolarSystem { + int32 index = 1; + double lon = 2; + double lat = 3; + string target_name = 4; + int32 shooting_mode = 5; + bool force_start = 6; +} + +message ResOneClickGotoSolarSystem { + int32 step = 1; + int32 code = 2; + bool all_end = 3; + ReqOneClickGotoSolarSystem req = 4; +} + +message ReqStopOneClickGoto { +} + +message ReqCaptureWideRawLiveStacking { + bool force_start = 1; +} + +message ReqStopCaptureWideRawLiveStacking { +} + +message ReqFastStopCaptureWideRawLiveStacking { +} + +message ReqStartEqSolving { + double lon = 1; + double lat = 2; +} + +message ResStartEqSolving { + double azi_err = 1; + double alt_err = 2; + int32 code = 3; +} + +message ReqStopEqSolving { +} + +message ReqStartAiEnhance { +} + +message ReqStopAiEnhance { +} + +message ReqStartMosaic { + int32 horizontal_scale = 1; + int32 vertical_scale = 2; + int32 rotation = 3; + int32 ir_index = 4; + bool force_start = 5; +} + +message ReqStartMakeFitsThumb { + string src_dir = 1; +} + +message ReqStopMakeFitsThumb { +} + +message ResMakeFitsThumb { + int32 code = 1; + string src_dir = 2; +} + +message MakeFitsThumbTaskParam { + string src_dir = 1; +} + +message ReqIsImageStackable { + repeated string src_dirs = 1; +} + +message ResIsImageStackable { + int32 code = 1; + repeated ResGetDarkFrameInfo need_dark_frame_info = 2; +} + +message ReqStartRepostprocess { + repeated string src_dirs = 1; +} + +message ReqStopRepostprocess { +} + +message ResRepostprocess { + int32 code = 1; + string result_dir = 2; +} + +message RepostprocessTaskParam { + string result_dir = 1; +} + +message ReqGetAstroShootingTime { + int32 exp_index = 1; + int32 horizontal_scale = 2; + int32 vertical_scale = 3; + int32 rotation = 4; + int32 cam_id = 5; + int32 shooting_mode = 6; +} + +message ResGetAstroShootingTime { + enum AstroMode { + NORMAL = 0; + MOSAIC = 1; + } + int32 code = 1; + int32 shooting_time = 2; + int32 cam_id = 3; + ResGetAstroShootingTime.AstroMode astro_mode = 4; + int32 shooting_mode = 5; +} + +message ReqGetCaliFrameList { + int32 camera_type = 1; + int32 cali_frame_type = 2; +} + +message CaliFrameInfo { + // oneof _filter_type + // oneof _info_id + // oneof _temp_value + string exp_name = 1; + int32 gain = 2; + int32 resolution = 3; + int32 camera_type = 4; + int32 progress = 5; + int32 cali_frame_type = 6; + int32 filter_type = 7; + int32 info_id = 8; + int32 temp_value = 9; +} + +message ResGetCaliFrameList { + int32 code = 1; + repeated CaliFrameInfo list = 2; + int32 camera_type = 3; + int32 cali_frame_type = 4; +} + +message ReqDelCaliFrameList { + repeated int32 info_ids = 1; +} + +message ReqCaptureCaliFrame { + // oneof _filter_type + int32 exp_index = 1; + int32 gain = 2; + int32 resolution = 3; + int32 cap_size = 4; + int32 camera_type = 5; + int32 cali_frame_type = 6; + int32 filter_type = 7; + int32 scene_type = 8; +} + +message ReqStopCaptureCaliFrame { + int32 camera_type = 1; +} + +message CaptureCaliFrameTaskParam { + int32 camera_type = 1; + int32 cali_frame_type = 2; +} + +message ReqGetQuickSetList { + int32 camera_type = 1; +} + +message QuikSetInfo { + string exp_name = 1; + int32 exp_index = 2; + int32 gain = 3; + int32 resolution = 4; + int32 camera_type = 5; + string info_id = 6; +} + +message ResGetQuikSetList { + int32 code = 1; + repeated QuikSetInfo quick_set_list = 2; + int32 camera_type = 3; +} + +message ReqSetQuickSet { + string info_id = 1; +} + +message ResSetQuickSet { + int32 code = 1; + string info_id = 2; +} + +message ReqOneClickShooting { +} + +message ResAstroShooting { + // oneof _exp_name + // oneof _gain + // oneof _resolution + // oneof _filter_type + // oneof _temp_threshold + int32 code = 1; + string exp_name = 2; + int32 gain = 3; + int32 resolution = 4; + int32 filter_type = 5; + int32 temp_threshold = 6; +} + +message ReqStartSkyTargetFinder { + double lon = 1; + double lat = 2; + bool force_restart = 3; + int32 scene_type = 4; +} + +message ResStartSkyTargetFinder { + int32 code = 1; + double zenith_azi = 2; + double zenith_alt = 3; + double center_azi = 4; + double center_alt = 5; + double center_roll = 6; + int32 scene_type = 7; +} + +message ReqStopSkyTargetFinder { +} + diff --git a/analysis/protos/Base.proto b/analysis/protos/Base.proto new file mode 100644 index 0000000..82c6ec5 --- /dev/null +++ b/analysis/protos/Base.proto @@ -0,0 +1,52 @@ +// source: base.proto +syntax = "proto3"; + +enum WsMajorVersion { + WS_MAJOR_VERSION_UNKNOWN = 0; + WS_MAJOR_VERSION_NUMBER = 2; +} + +enum WsMinorVersion { + WS_MINOR_VERSION_UNKNOWN = 0; + WS_MINOR_VERSION_NUMBER = 3; +} + +message WsPacket { + uint32 major_version = 1; + uint32 minor_version = 2; + uint32 device_id = 3; + uint32 module_id = 4; + uint32 cmd = 5; + uint32 type = 6; + bytes data = 7; + string client_id = 8; +} + +message ComResponse { + int32 code = 1; +} + +message ComResWithInt { + int32 value = 1; + int32 code = 2; +} + +message ComResWithDouble { + double value = 1; + int32 code = 2; +} + +message ComResWithString { + string str = 1; + int32 code = 2; +} + +message CommonParam { + bool hasAuto = 1; + int32 auto_mode = 2; + int32 id = 3; + int32 mode_index = 4; + int32 index = 5; + double continue_value = 6; +} + diff --git a/analysis/protos/Ble.proto b/analysis/protos/Ble.proto new file mode 100644 index 0000000..21900e8 --- /dev/null +++ b/analysis/protos/Ble.proto @@ -0,0 +1,203 @@ +// source: ble.proto +syntax = "proto3"; + +enum VocalType { + VT_UNKNOWN = 0; + VT_PING = 1; + VT_ECHO = 2; +} + +message ReqGetconfig { + int32 cmd = 1; + string ble_psd = 2; + string client_id = 3; +} + +message ReqAp { + int32 cmd = 1; + int32 wifi_type = 2; + int32 auto_start = 3; + int32 country_list = 4; + string country = 5; + string ble_psd = 6; + string client_id = 7; + bool force_restart = 8; +} + +message ReqSta { + int32 cmd = 1; + int32 auto_start = 2; + string ble_psd = 3; + string ssid = 4; + string psd = 5; + string client_id = 6; +} + +message ReqSetblewifi { + int32 cmd = 1; + int32 mode = 2; + string ble_psd = 3; + string value = 4; + string client_id = 5; +} + +message ReqReset { + int32 cmd = 1; + string client_id = 2; +} + +message ReqGetwifilist { + int32 cmd = 1; + string client_id = 2; +} + +message ReqGetsysteminfo { + int32 cmd = 1; + string client_id = 2; +} + +message ReqCheckFile { + int32 cmd = 1; + string file_path = 2; + string md5 = 3; +} + +message ResCommon { + int32 cmd = 1; + int32 code = 2; +} + +message ResGetconfig { + int32 cmd = 1; + int32 code = 2; + int32 state = 3; + int32 wifi_mode = 4; + int32 ap_mode = 5; + int32 auto_start = 6; + int32 ap_country_list = 7; + string ssid = 8; + string psd = 9; + string ip = 10; + string ap_country = 11; +} + +message ResAp { + int32 cmd = 1; + int32 code = 2; + int32 mode = 3; + string ssid = 4; + string psd = 5; +} + +message ResSta { + int32 cmd = 1; + int32 code = 2; + string ssid = 3; + string psd = 4; + string ip = 5; +} + +message ResSetblewifi { + int32 cmd = 1; + int32 code = 2; + int32 mode = 3; + string value = 4; +} + +message ResReset { + int32 cmd = 1; + int32 code = 2; +} + +message WifiInfo { + int32 signal_level = 1; + string ssid = 2; + string security_capability = 3; +} + +message ResWifilist { + int32 cmd = 1; + int32 code = 2; + repeated string ssid = 4; + repeated WifiInfo wifi_info_list = 5; +} + +message ResGetsysteminfo { + int32 cmd = 1; + int32 code = 2; + int32 protocol_version = 3; + string device = 4; + string mac_address = 5; + string dwarf_ota_version = 6; +} + +message ResReceiveDataError { + int32 cmd = 1; + int32 code = 2; +} + +message ResCheckFile { + int32 cmd = 1; + int32 code = 2; +} + +message ComDwarfMsg { + VocalType vocaltype = 1; +} + +message DwarfPing { + VocalType vocaltype = 1; + uint64 timestamp = 2; + bytes magic = 3; + repeated bytes vocals = 4; + repeated bytes mutes = 5; +} + +message StationModel { + uint32 family = 1; + uint32 revision = 2; +} + +message NifAP { + // oneof _ipv6 + string ifname = 1; + int32 mode = 2; + string country_code = 3; + string ssid = 4; + string sec = 5; + string psw = 6; + bytes ipv4 = 7; + bytes ipv6 = 8; +} + +message NifSTA { + // oneof _ssid + // oneof _psw + // oneof _rssi + // oneof _ipv4 + // oneof _ipv6 + string ifname = 1; + string ssid = 2; + string psw = 3; + int32 rssi = 4; + bytes ipv4 = 5; + bytes ipv6 = 6; +} + +message DwarfEcho { + VocalType vocaltype = 1; + uint64 timestamp = 2; + bytes magic = 3; + uint64 ts_ping = 4; + bytes mac_address = 5; + StationModel model = 6; + string sn = 7; + string name = 8; + string psw = 9; + string fw_version = 10; + string ws_scheme = 11; + uint32 session = 12; + NifAP ap = 13; + NifSTA sta = 14; +} + diff --git a/analysis/protos/Camera.proto b/analysis/protos/Camera.proto new file mode 100644 index 0000000..fcf7006 --- /dev/null +++ b/analysis/protos/Camera.proto @@ -0,0 +1,217 @@ +// source: camera.proto +syntax = "proto3"; + +import "base.proto"; + +message ReqOpenCamera { + bool binning = 1; + int32 rtsp_encode_type = 2; +} + +message ReqCloseCamera { +} + +message ReqPhoto { +} + +message ReqBurstPhoto { + int32 count = 1; +} + +message ReqStopBurstPhoto { +} + +message ReqStartRecord { + int32 encode_type = 1; +} + +message ReqStopRecord { +} + +message ReqSetExpMode { + int32 mode = 1; +} + +message ReqGetExpMode { +} + +message ReqSetExp { + int32 index = 1; +} + +message ReqGetExp { +} + +message ReqSetGainMode { + int32 mode = 1; +} + +message ReqGetGainMode { +} + +message ReqSetGain { + int32 index = 1; +} + +message ReqGetGain { +} + +message ReqSetBrightness { + int32 value = 1; +} + +message ReqGetBrightness { +} + +message ReqSetContrast { + int32 value = 1; +} + +message ReqGetContrast { +} + +message ReqSetHue { + int32 value = 1; +} + +message ReqGetHue { +} + +message ReqSetSaturation { + int32 value = 1; +} + +message ReqGetSaturation { +} + +message ReqSetSharpness { + int32 value = 1; +} + +message ReqGetSharpness { +} + +message ReqSetWBMode { + int32 mode = 1; +} + +message ReqGetWBMode { +} + +message ReqSetWBSence { + int32 value = 1; +} + +message ReqGetWBSence { +} + +message ReqSetWBCT { + int32 index = 1; +} + +message ReqGetWBCT { +} + +message ReqSetIrCut { + int32 value = 1; +} + +message ReqGetIrcut { +} + +message ReqStartTimeLapse { +} + +message ReqStopTimeLapse { +} + +message ReqSetAllParams { + int32 exp_mode = 1; + int32 exp_index = 2; + int32 gain_mode = 3; + int32 gain_index = 4; + int32 ircut_value = 5; + int32 wb_mode = 6; + int32 wb_index_type = 7; + int32 wb_index = 8; + int32 brightness = 9; + int32 contrast = 10; + int32 hue = 11; + int32 saturation = 12; + int32 sharpness = 13; + int32 jpg_quality = 14; +} + +message ReqGetAllParams { +} + +message ResGetAllParams { + repeated CommonParam all_params = 1; + int32 code = 2; +} + +message ReqSetFeatureParams { + CommonParam param = 1; +} + +message ReqGetAllFeatureParams { +} + +message ResGetAllFeatureParams { + repeated CommonParam all_feature_params = 1; + int32 code = 2; +} + +message ReqGetSystemWorkingState { +} + +message ReqSetJpgQuality { + int32 quality = 1; +} + +message ReqGetJpgQuality { +} + +message ReqPhotoRaw { +} + +message ReqSetRtspBitRateType { + int32 bitrate_type = 1; +} + +message ReqDisableAllIspProcessing { +} + +message ReqEnableAllIspProcessing { +} + +message IspModuleState { + int32 module_id = 1; + bool state = 2; +} + +message ReqSetIspModuleState { + repeated IspModuleState module_states = 1; +} + +message ReqGetIspModuleState { + repeated int32 module_ids = 1; +} + +message ReqSwitchResolution { + int32 resolution_index = 1; +} + +message ReqSwitchFrameRate { + int32 fps_index = 1; +} + +message ReqSwitchCropRatio { + int32 crop_ratio = 1; +} + +message ReqSetPreviewQuality { + uint32 level = 1; + uint32 quality = 2; +} + diff --git a/analysis/protos/Device.proto b/analysis/protos/Device.proto new file mode 100644 index 0000000..f34eb0f --- /dev/null +++ b/analysis/protos/Device.proto @@ -0,0 +1,18 @@ +// source: device.proto +package device; +syntax = "proto3"; + +import "base.proto"; + +message ReqLensDefog { + int32 state = 1; +} + +message ReqAutoCooling { + int32 state = 1; +} + +message ReqAutoShutdown { + int32 state = 1; +} + diff --git a/analysis/protos/Focus.proto b/analysis/protos/Focus.proto new file mode 100644 index 0000000..af909af --- /dev/null +++ b/analysis/protos/Focus.proto @@ -0,0 +1,39 @@ +// source: focus.proto +syntax = "proto3"; + +message ReqManualSingleStepFocus { + uint32 direction = 1; +} + +message ReqManualContinuFocus { + uint32 direction = 1; +} + +message ReqStopManualContinuFocus { +} + +message ReqNormalAutoFocus { + uint32 mode = 1; + uint32 center_x = 2; + uint32 center_y = 3; +} + +message ReqAstroAutoFocus { + uint32 mode = 1; +} + +message ReqStopAstroAutoFocus { +} + +message ReqGetUserInfinityPos { +} + +message ReqSetUserInfinityPos { + int32 pos = 1; +} + +message ResUserInfinityPos { + int32 code = 1; + int32 pos = 2; +} + diff --git a/analysis/protos/ITips.proto b/analysis/protos/ITips.proto new file mode 100644 index 0000000..87a88b2 --- /dev/null +++ b/analysis/protos/ITips.proto @@ -0,0 +1,30 @@ +// source: itips.proto +syntax = "proto3"; + +message ReqITipsGet { + int32 mode = 1; +} + +message ResITipsGet { + int32 mode = 1; + string itips_code = 2; + int32 code = 3; +} + +message CommonITips { + int32 itips_status = 1; + string itips_code = 2; +} + +message CommonStepITips { + int32 step_id = 1; + int32 step_status = 2; + repeated CommonITips step_itips = 3; +} + +message ResITipsList { + repeated CommonStepITips itips_list = 1; + int32 mode = 2; + int32 code = 3; +} + diff --git a/analysis/protos/MotorControl.proto b/analysis/protos/MotorControl.proto new file mode 100644 index 0000000..f2847b8 --- /dev/null +++ b/analysis/protos/MotorControl.proto @@ -0,0 +1,81 @@ +// source: motor_control.proto +syntax = "proto3"; + +message ReqMotorServiceJoystick { + double vector_angle = 1; + double vector_length = 2; +} + +message ReqMotorServiceJoystickFixedAngle { + double vector_angle = 1; + double vector_length = 2; +} + +message ReqMotorServiceJoystickStop { +} + +message ReqMotorRun { + int32 id = 1; + double speed = 2; + bool direction = 3; + int32 speed_ramping = 4; + int32 resolution_level = 5; +} + +message ReqMotorRunInPulse { + int32 id = 1; + int32 frequency = 2; + bool direction = 3; + int32 speed_ramping = 4; + int32 resolution = 5; + int32 pulse = 6; + bool mode = 7; +} + +message ReqMotorRunTo { + int32 id = 1; + double end_position = 2; + double speed = 3; + int32 speed_ramping = 4; + int32 resolution_level = 5; +} + +message ReqMotorGetPosition { + int32 id = 1; +} + +message ReqMotorStop { + int32 id = 1; +} + +message ReqMotorReset { + int32 id = 1; + bool direction = 2; +} + +message ReqMotorChangeSpeed { + int32 id = 1; + double speed = 2; +} + +message ReqMotorChangeDirection { + int32 id = 1; + bool direction = 2; +} + +message ResMotor { + int32 id = 1; + int32 code = 2; +} + +message ResMotorPosition { + int32 id = 1; + int32 code = 2; + double position = 3; +} + +message ReqDualCameraLinkage { + int32 x = 1; + int32 y = 2; +} + diff --git a/analysis/protos/Notify.proto b/analysis/protos/Notify.proto new file mode 100644 index 0000000..7bd8ace --- /dev/null +++ b/analysis/protos/Notify.proto @@ -0,0 +1,518 @@ +// source: notify.proto +package notify; +syntax = "proto3"; + +import "base.proto"; + +enum OperationState { + OPERATION_STATE_IDLE = 0; + OPERATION_STATE_RUNNING = 1; + OPERATION_STATE_STOPPING = 2; + OPERATION_STATE_STOPPED = 3; +} + +enum AstroState { + ASTRO_STATE_IDLE = 0; + ASTRO_STATE_RUNNING = 1; + ASTRO_STATE_STOPPING = 2; + ASTRO_STATE_STOPPED = 3; + ASTRO_STATE_PLATE_SOLVING = 4; +} + +enum SentryModeState { + SENTRY_MODE_STATE_IDLE = 0; + SENTRY_MODE_STATE_INIT = 1; + SENTRY_MODE_STATE_DETECT = 2; + SENTRY_MODE_STATE_TRACK = 3; + SENTRY_MODE_STATE_TRACK_FINISH = 4; + SENTRY_MODE_STATE_STOPPING = 5; +} + +enum SentryObjectType { + SENTRY_OBJECT_TYPE_UNKNOWN = 0; + SENTRY_OBJECT_TYPE_UFO = 1; + SENTRY_OBJECT_TYPE_BIRD = 2; + SENTRY_OBJECT_TYPE_PERSON = 3; + SENTRY_OBJECT_TYPE_ANIMAL = 4; + SENTRY_OBJECT_TYPE_VEHICLE = 5; + SENTRY_OBJECT_TYPE_FLYING = 6; + SENTRY_OBJECT_TYPE_BOAT = 7; +} + +message PictureMatching { + uint32 x = 1; + uint32 y = 2; + uint32 width = 3; + uint32 height = 4; +} + +message StorageInfo { + uint32 available_size = 1; + uint32 total_size = 2; + int32 storage_type = 3; + bool is_valid = 4; +} + +message Temperature { + int32 code = 1; + int32 temperature = 2; +} + +message CmosTemperature { + // oneof _temperature + int32 temperature = 1; + int32 camera_type = 2; +} + +message RecordTime { + uint32 record_time = 1; + uint32 camera_type = 2; +} + +message TimeLapseOutTime { + uint32 interval = 1; + uint32 out_time = 2; + uint32 total_time = 3; + uint32 camera_type = 4; +} + +message OperationStateNotify { + notify.OperationState state = 1; +} + +message AstroCalibrationState { + notify.AstroState state = 1; + int32 plate_solving_times = 2; +} + +message AstroGotoState { + notify.AstroState state = 1; + string target_name = 2; +} + +message AstroTrackingState { + notify.OperationState state = 1; + string target_name = 2; +} + +message ProgressCaptureRawDark { + int32 progress = 1; + int32 remaining_time = 2; + int32 camera_type = 3; +} + +message ProgressCaptureRawLiveStacking { + // oneof _shooting_time + // oneof _stacked_time + int32 total_count = 1; + int32 update_type = 2; + int32 current_count = 3; + int32 stacked_count = 4; + int32 exp_index = 5; + int32 gain_index = 6; + string target_name = 7; + int32 camera_type = 8; + int32 shooting_time = 9; + int32 stacked_time = 10; +} + +message Param { + repeated CommonParam param = 1; +} + +message BurstProgress { + uint32 total_count = 1; + uint32 completed_count = 2; + uint32 camera_type = 3; +} + +message PanoramaProgress { + int32 total_count = 1; + int32 completed_count = 2; + uint32 camera_type = 3; +} + +message RgbState { + int32 state = 1; +} + +message PowerIndState { + int32 state = 1; +} + +message ChargingState { + int32 state = 1; +} + +message BatteryInfo { + int32 percentage = 1; +} + +message HostSlaveMode { + int32 mode = 1; + bool lock = 2; +} + +message MTPState { + int32 mode = 1; +} + +message TrackResult { + int32 x = 1; + int32 y = 2; + int32 w = 3; + int32 h = 4; + int32 id = 5; +} + +message CPUMode { + int32 mode = 1; +} + +message AstroTrackingSpecialState { + notify.OperationState state = 1; + string target_name = 2; + int32 index = 3; +} + +message PowerOff { +} + +message AlbumUpdate { + int32 media_type = 1; +} + +message SentryState { + notify.SentryModeState state = 1; + notify.SentryObjectType object_type = 2; +} + +message OneClickGotoState { + // oneof current_state + notify.AstroAutoFocusState astro_auto_focus_state = 1; + notify.AstroCalibrationState astro_calibration_state = 2; + notify.AstroGotoState astro_goto_state = 3; + notify.AstroTrackingState astro_tracking_state = 4; +} + +message StreamType { + int32 stream_type = 1; + int32 cam_id = 2; +} + +message MultiTrackResult { + repeated notify.TrackResult results = 1; +} + +message EqSolvingState { + notify.OperationState state = 1; +} + +message LongExpPhotoProgress { + double total_time = 1; + double exposured_time = 2; + uint32 camera_type = 3; +} + +message ShootingScheduleResultAndState { + string schedule_id = 1; + int32 result = 2; + int32 state = 3; +} + +message ShootingTaskState { + string schedule_task_id = 1; + int32 state = 2; + int32 code = 3; +} + +message SkySeacherState { + notify.OperationState state = 1; +} + +message ProgressAiEnhance { + int32 progress = 1; + int32 total_time = 2; +} + +message CommonProgress { + enum ProgressType { + PROGRESS_TYPE_INITING = 0; + PROGRESS_TYPE_MOSAIC_MOVING = 1; + } + int32 current = 1; + int32 total = 2; + notify.CommonProgress.ProgressType progress_type = 3; +} + +message CalibrationResult { + double azi = 1; + double alt = 2; +} + +message FocusPosition { + int32 pos = 1; +} + +message SentryAutoHand { + int32 mode = 1; +} + +message PanoramaStitchUploadComplete { + int32 code = 1; + string user_id = 2; + string busi_no = 3; + string panorama_name = 4; + string mac = 5; +} + +message PanoramaCompressionComplete { + int32 code = 1; + string panorama_name = 2; + string zip_file_path = 3; + string zip_file_md5 = 4; + uint64 zip_file_size = 5; + string stitch_param = 6; +} + +message PanoramaCompressionProgress { + string panorama_name = 1; + uint32 total_files_num = 2; + uint32 compressed_files_num = 3; +} + +message PanoramaUploadCompressionProgress { + string user_id = 1; + string busi_no = 2; + string panorama_name = 3; + string mac = 4; + uint32 total_files_num = 5; + uint32 compressed_files_num = 6; + double speed = 7; +} + +message PanoramaUploadProgress { + string user_id = 1; + string busi_no = 2; + string panorama_name = 3; + string mac = 4; + uint64 total_size = 5; + uint64 uploaded_size = 6; + double speed = 7; +} + +message PanoramaCurrentUploadState { + int32 code = 1; + string user_id = 2; + string busi_no = 3; + string panorama_name = 4; + string mac = 5; + uint32 total_files_num = 6; + uint32 compressed_files_num = 7; + uint64 total_size = 8; + uint64 uploaded_size = 9; + uint32 step = 10; +} + +message LowTempProtectionMode { + int32 mode = 1; +} + +message StateSystemResourceOccupation { + enum TaskId { + IDLE = 0; + PANORAMA_UPLOAD = 1; + ASTRO_MULTI_STACK = 2; + } + notify.StateSystemResourceOccupation.TaskId task_id = 1; + notify.OperationState state = 2; +} + +message BodyStatus { + enum BodyStatusEnum { + UNKNOWN = 0; + EQ_MODE = 1; + AZI_MODE = 2; + } + notify.BodyStatus.BodyStatusEnum body_status = 1; +} + +message ProgressCaptureMosaic { + int32 total_count = 1; + int32 update_type = 2; + int32 current_count = 3; + int32 stacked_count = 4; + int32 exp_index = 5; + int32 gain_index = 6; + string target_name = 7; + int32 horizontal_scale = 8; + int32 vertical_scale = 9; + int32 rotation = 10; + int32 fov_id = 11; + int32 fov_total = 12; +} + +message Wb { + uint64 mode = 1; + int32 ct = 2; + int32 scene = 3; + int32 camera_type = 4; +} + +message GeneralIntParam { + uint64 param_id = 1; + int32 mode = 2; + int32 value = 3; +} + +message GeneralFloatParam { + uint64 param_id = 1; + float value = 2; +} + +message GeneralBoolParams { + uint64 param_id = 1; + bool value = 2; +} + +message SwitchShootingMode { + int32 state = 1; + int32 source_mode = 2; + int32 dst_mode = 3; +} + +message SwitchCropRatioState { + int32 state = 1; + int32 crop_ratio = 2; +} + +message ResolutionParam { + uint64 param_id = 1; + int32 current_res_value = 2; + int32 current_fps_value = 3; + repeated int32 supported_fps_list = 4; + repeated int32 supported_resolution_list = 5; +} + +message CaptureRawState { + notify.OperationState state = 1; + int32 camera_type = 2; +} + +message PhotoState { + notify.OperationState state = 1; + int32 camera_type = 2; +} + +message BurstState { + notify.OperationState state = 1; + int32 camera_type = 2; +} + +message RecordState { + notify.OperationState state = 1; + int32 camera_type = 2; +} + +message TimeLapseState { + notify.OperationState state = 1; + int32 camera_type = 2; +} + +message CaptureRawDarkState { + notify.OperationState state = 1; + int32 camera_type = 2; +} + +message PanoramaState { + notify.OperationState state = 1; + int32 camera_type = 2; +} + +message AstroAutoFocusState { + notify.OperationState state = 1; +} + +message NormalAutoFocusState { + notify.OperationState state = 1; +} + +message AstroAutoFocusFastState { + notify.OperationState state = 1; +} + +message AreaAutoFocusState { + notify.OperationState state = 1; +} + +message DualCameraLinkageState { + notify.OperationState state = 1; +} + +message NormalTrackState { + notify.OperationState state = 1; + int32 camera_type = 2; +} + +message SwitchResolutionFpsState { + notify.OperationState state = 1; + int32 camera_type = 2; +} + +message CaptureCaliFrameState { + notify.OperationState state = 1; + int32 camera_type = 2; + int32 cali_frame_type = 3; +} + +message CaptureCaliFrameProgress { + int32 progress = 1; + int32 camera_type = 2; + int32 cali_frame_type = 3; +} + +message DeviceAttitude { + double pitch = 1; + double yaw = 2; + double roll = 3; +} + +message SkyTargetFinderState { + notify.OperationState state = 1; + int32 scene_type = 2; +} + +message PanoFramingThumbnailUpdateNotify { + bytes webp_data = 1; +} + +message PanoFramingRectUpdateNotify { + double norm_x_tl = 1; + double norm_y_tl = 2; + double norm_x_br = 3; + double norm_y_br = 4; + double norm_limit_x_left = 5; + double norm_limit_y_top = 6; + double norm_limit_x_right = 7; + double norm_limit_y_bottom = 8; + double rect_hor_fov = 9; + double rect_ver_fov = 10; + int32 error_code = 11; +} + +message PanoFramingStateNotify { + int32 state = 1; +} + +message AutoShutdown { + int32 state = 1; +} + +message LensDefog { + int32 state = 1; +} + +message AutoCooling { + int32 state = 1; +} + diff --git a/analysis/protos/Panorama.proto b/analysis/protos/Panorama.proto new file mode 100644 index 0000000..8a7d413 --- /dev/null +++ b/analysis/protos/Panorama.proto @@ -0,0 +1,108 @@ +// source: panorama.proto +syntax = "proto3"; + +message ReqStartPanoramaByGrid { +} + +message ReqStartPanoramaByEulerRange { + float yaw_range = 1; + float pitch_range = 2; +} + +message ReqStartPanoramaStitchUpload { + uint64 resource_id = 1; + string user_id = 2; + int32 app_platform = 3; + string panorama_name = 4; + string ak = 5; + string sk = 6; + string token = 7; + string bucket = 8; + string bucket_prefix = 9; + string from = 10; + string env_type = 11; +} + +message ReqStopPanorama { +} + +message ReqStopPanoramaStitchUpload { + string user_id = 1; +} + +message ReqGetPanoramaCurrentUploadState { +} + +message ResGetPanoramaCurrentUploadState { + int32 code = 1; + string user_id = 2; + string busi_no = 3; + string panorama_name = 4; + string mac = 5; + uint32 total_files_num = 6; + uint32 compressed_files_num = 7; + uint64 total_size = 8; + uint64 uploaded_size = 9; + uint32 step = 10; +} + +message ReqGetUploadPredict { + string panorama_name = 1; +} + +message ResGetUploadPredict { + int32 code = 1; + string panorama_name = 2; + uint32 file_nums = 3; + string resolution = 4; + uint64 cloud_data_size = 5; + uint64 zip_data_size = 6; + uint64 app_zip_data_size = 7; +} + +message PanoramaUploadParam { + string user_id = 1; + string busi_no = 2; + string panorama_name = 3; + string mac = 4; + uint32 total_files_num = 5; + uint32 compressed_files_num = 6; + uint64 total_size = 7; + uint64 uploaded_size = 8; + uint32 step = 9; +} + +message ReqCompressPanorama { + string panorama_name = 1; +} + +message ReqStopCompressPanorama { +} + +message ReqStartPanoramaFraming { +} + +message ReqResetPanoramaFraming { +} + +message ReqStopPanoramaFraming { +} + +message ReqStopPanoramaFramingAndStartGrid { +} + +message ResStopPanoramaFraming { + int32 code = 1; + double centerX_degree_offset = 2; + double centerY_degree_offset = 3; + uint32 framing_rows = 4; + uint32 framing_cols = 5; +} + +message ReqUpdatePanoramaFramingRect { + double norm_x_tl = 1; + double norm_y_tl = 2; + double norm_x_br = 3; + double norm_y_br = 4; +} + diff --git a/analysis/protos/Param.proto b/analysis/protos/Param.proto new file mode 100644 index 0000000..b24b091 --- /dev/null +++ b/analysis/protos/Param.proto @@ -0,0 +1,52 @@ +// source: param.proto +package param; +syntax = "proto3"; + +message ReqSetExposure { + uint64 param_id = 1; + int32 mode = 2; + int32 value = 3; +} + +message ReqSetGain { + uint64 param_id = 1; + int32 mode = 2; + int32 value = 3; +} + +message ReqSetWb { + uint64 param_id = 1; + int32 mode = 2; + int32 value = 3; +} + +message ReqSetGeneralIntParam { + uint64 param_id = 1; + int32 value = 2; +} + +message ReqSetGeneralFloatParam { + uint64 param_id = 1; + float value = 2; +} + +message ReqSetGeneralBoolParams { + uint64 param_id = 1; + bool value = 2; +} + +message ReqSetAutoParam { + int32 camera_type = 1; + int32 shooting_tech = 2; + bool is_auto = 3; +} + +message ResSetAutoParam { + int32 shooting_mode = 1; + int32 camera_type = 2; + int32 shooting_tech = 3; + bool is_auto = 4; + bool update_all = 5; + int32 code = 6; +} + diff --git a/analysis/protos/RGB.proto b/analysis/protos/RGB.proto new file mode 100644 index 0000000..597d9cf --- /dev/null +++ b/analysis/protos/RGB.proto @@ -0,0 +1,21 @@ +// source: rgb.proto +syntax = "proto3"; + +message ReqOpenRgb { +} + +message ReqCloseRgb { +} + +message ReqPowerDown { +} + +message ReqOpenPowerInd { +} + +message ReqClosePowerInd { +} + +message ReqReboot { +} + diff --git a/analysis/protos/Schedule.proto b/analysis/protos/Schedule.proto new file mode 100644 index 0000000..fc278f5 --- /dev/null +++ b/analysis/protos/Schedule.proto @@ -0,0 +1,157 @@ +// source: shooting_schedule.proto +syntax = "proto3"; + +enum ShootingScheduleState { + SHOOTING_SCHEDULE_STATE_INITIALIZED = 0; + SHOOTING_SCHEDULE_STATE_PENDING_SHOOT = 1; + SHOOTING_SCHEDULE_STATE_SHOOTING = 2; + SHOOTING_SCHEDULE_STATE_COMPLETED = 3; + SHOOTING_SCHEDULE_STATE_EXPIRED = 4; +} + +enum ShootingScheduleSyncState { + SHOOTING_SCHEDULE_SYNC_STATE_PENDING_SYNC = 0; + SHOOTING_SCHEDULE_SYNC_STATE_SYNCED = 1; +} + +enum ShootingScheduleResult { + SHOOTING_SCHEDULE_RESULT_PENDING_START = 0; + SHOOTING_SCHEDULE_RESULT_ALL_COMPLETED = 1; + SHOOTING_SCHEDULE_RESULT_PARTIALLY_COMPLETED = 2; + SHOOTING_SCHEDULE_RESULT_ALL_FAILED = 3; +} + +enum ShootingTaskState { + SHOOTING_TASK_STATUS_IDLE = 0; + SHOOTING_TASK_STATUS_SHOOTING = 1; + SHOOTING_TASK_STATUS_SUCCESS = 2; + SHOOTING_TASK_STATUS_FAILED = 3; + SHOOTING_TASK_STATUS_INTERRUPTED = 4; +} + +enum ShootingScheduleMode { + SHOOTING_SCHEDULE_MODE_ASTRO_DEEP_SKY = 0; +} + +message ShootingTaskMsg { + string schedule_id = 1; + string params = 2; + ShootingTaskState state = 3; + int32 code = 4; + int64 created_time = 5; + int64 updated_time = 6; + string schedule_task_id = 7; + int32 param_mode = 8; + int32 param_version = 9; + int32 create_from = 10; +} + +message ShootingScheduleMsg { + string schedule_id = 1; + string schedule_name = 2; + int32 device_id = 3; + string mac_address = 4; + int64 start_time = 5; + int64 end_time = 6; + ShootingScheduleResult result = 7; + int64 created_time = 8; + int64 updated_time = 9; + ShootingScheduleState state = 10; + int32 lock = 11; + string password = 12; + repeated ShootingTaskMsg shooting_tasks = 13; + int32 param_mode = 14; + int32 param_version = 15; + string params = 16; + int64 schedule_time = 17; + ShootingScheduleSyncState sync_state = 18; +} + +message ReqSyncShootingSchedule { + ShootingScheduleMsg shooting_schedule = 1; +} + +message ResSyncShootingSchedule { + ShootingScheduleMsg shooting_schedule = 1; + repeated string time_conflict_schedule_ids = 2; + int32 code = 3; + bool can_replace = 4; +} + +message ReqCancelShootingSchedule { + string id = 1; + string password = 2; +} + +message ResCancelShootingSchedule { + string id = 1; + int32 code = 2; +} + +message ReqGetAllShootingSchedule { +} + +message ResGetAllShootingSchedule { + repeated ShootingScheduleMsg shooting_schedule = 1; + int32 code = 2; +} + +message ReqGetShootingScheduleById { + string id = 1; +} + +message ResGetShootingScheduleById { + ShootingScheduleMsg shooting_schedule = 1; + int32 code = 2; +} + +message ReqGetShootingTaskById { + string id = 1; +} + +message ResGetShootingTaskById { + ShootingTaskMsg shooting_task = 1; + int32 code = 2; +} + +message ReqReplaceShootingSchedule { + ShootingScheduleMsg shooting_schedule = 1; +} + +message ResReplaceShootingSchedule { + ShootingScheduleMsg shooting_schedule = 1; + repeated ShootingScheduleMsg replaced_shooting_schedule = 2; + int32 code = 3; +} + +message ReqUnlockShootingSchedule { + string id = 1; + string password = 2; +} + +message ResUnlockShootingSchedule { + string id = 1; + int32 code = 2; +} + +message ReqLockShootingSchedule { + string id = 1; + string password = 2; +} + +message ResLockShootingSchedule { + string id = 1; + string password = 2; + int32 code = 3; +} + +message ReqDeleteShootingSchedule { + string id = 1; + string password = 2; +} + +message ResDeleteShootingSchedule { + string id = 1; + int32 code = 2; +} + diff --git a/analysis/protos/System.proto b/analysis/protos/System.proto new file mode 100644 index 0000000..e1a8c5e --- /dev/null +++ b/analysis/protos/System.proto @@ -0,0 +1,72 @@ +// source: system.proto +syntax = "proto3"; + +message ReqSetTime { + uint64 timestamp = 1; + double timezone_offset = 2; +} + +message ReqSetTimezone { + string timezone = 1; +} + +message ReqSetMtpMode { + int32 mode = 1; +} + +message ReqSetCpuMode { + int32 mode = 1; +} + +message ReqsetMasterLock { + bool lock = 1; +} + +message ReqGetDeviceActivateInfo { + int32 issuer = 1; +} + +message ResDeviceActivateInfo { + int32 activate_state = 1; + int32 activate_process_state = 2; + string request_param = 3; +} + +message ReqDeviceActivateWriteFile { + string request_param = 1; +} + +message ResDeviceActivateWriteFile { + int32 code = 1; + string request_param = 2; +} + +message ReqDeviceActivateSuccessfull { + string request_param = 1; +} + +message ResDeviceActivateSuccessfull { + int32 code = 1; + int32 activate_state = 2; +} + +message ReqDisableDeviceActivate { + string request_param = 1; +} + +message ResDisableDeviceActivate { + int32 code = 1; + int32 activate_state = 2; +} + +message ReqSetLocation { + double latitude = 1; + double longitude = 2; + double altitude = 3; + string country_region = 4; + string province = 5; + string city = 6; + string district = 7; + bool enable = 8; +} + diff --git a/analysis/protos/TaskCenter.proto b/analysis/protos/TaskCenter.proto new file mode 100644 index 0000000..3f807dc --- /dev/null +++ b/analysis/protos/TaskCenter.proto @@ -0,0 +1,204 @@ +// source: task_center.proto +syntax = "proto3"; + +import "notify.proto"; +import "panorama.proto"; +import "astro.proto"; + +enum TaskId { + TASK_ID_IDLE = 0; + TASK_ID_PANORAMA_UPLOAD = 1; + TASK_ID_ASTRO_MULTI_STACK_THUMBNAIL_GENERATION = 2; + TASK_ID_ASTRO_MULTI_STACK = 3; + TASK_ID_CAPTURE_CALI_FRAME = 4; +} + +enum ExclusiveTaskType { + EXCLUSIVE_TYPE_NONE = 0; + EXCLUSIVE_TYPE_CAMERA = 1; + EXCLUSIVE_TYPE_MOTOR = 2; + EXCLUSIVE_TYPE_FOCUS_MOTOR = 4; + EXCLUSIVE_TYPE_SYSTEM_IO = 8; + EXCLUSIVE_TYPE_SYSTEM_WIFI = 16; +} + +message TaskAttr { + int32 exclusive_mask = 1; + int32 priority = 2; +} + +message TaskState { + // oneof extendedState + notify.OperationState base_state = 1; + notify.AstroState astro_extended_state = 2; +} + +message TaskParam { + // oneof param + PanoramaUploadParam panorama_upload = 1; + MakeFitsThumbTaskParam make_fits_thumb_task_param = 2; + RepostprocessTaskParam repostprocess_task_param = 3; + CaptureCaliFrameTaskParam capture_cali_frame_task_param = 4; +} + +message ResNotifyTaskState { + TaskId task_id = 1; + TaskAttr task_attr = 2; + TaskState state = 3; + TaskParam param = 4; +} + +message ReqStartTask { + // oneof param + TaskId task_id = 1; + ReqStartMakeFitsThumb req_make_fits_thumb_param = 2; + ReqStartRepostprocess req_repostprocess_param = 3; +} + +message ReqStopTask { + TaskId task_id = 1; +} + +message ResTaskCenter { + int32 code = 1; + TaskId task_id = 2; +} + +message ClientParams { + int32 encode_type = 1; +} + +message ReqEnterCamera { + ClientParams client_param = 3; +} + +message ResEnterCamera { + int32 code = 1; + int32 shooting_mode_id = 2; +} + +message ReqSwitchShootingMode { + int32 mode = 1; +} + +message ResSwitchShootingMode { + int32 code = 1; + int32 shooting_mode_id = 2; +} + +message ReqSwitchShootingTech { + int32 tech = 1; +} + +message ResSwitchShootingTech { + int32 code = 1; + int32 shooting_tech_id = 2; +} + +message ReqGetDeviceStateInfo { +} + +message ExclusiveCameraState { + // oneof current_state + notify.CaptureRawState capture_raw_state = 1; + notify.PhotoState photo_state = 2; + notify.BurstState burst_state = 3; + notify.RecordState record_state = 4; + notify.TimeLapseState timelapse_state = 5; + notify.CaptureCaliFrameState capture_cali_frame_state = 6; + notify.PanoramaState panorama_state = 7; + notify.SentryState sentry_state = 8; +} + +message TeleCameraStateInfo { + // oneof _cmos_temperature + ExclusiveCameraState exclusive_state = 1; + notify.StreamType stream_type = 2; + double h_fov = 3; + double v_fov = 4; + uint32 resolution_width = 5; + uint32 resolution_height = 6; + notify.CmosTemperature cmos_temperature = 7; +} + +message WideCameraStateInfo { + // oneof _cmos_temperature + ExclusiveCameraState exclusive_state = 1; + notify.StreamType stream_type = 2; + double h_fov = 3; + double v_fov = 4; + uint32 resolution_width = 5; + uint32 resolution_height = 6; + notify.CmosTemperature cmos_temperature = 7; +} + +message ExclusiveFocusMotorState { + // oneof current_state + notify.AstroAutoFocusState astro_auto_focus_state = 1; + notify.NormalAutoFocusState normal_auto_focus_state = 2; + notify.AstroAutoFocusFastState astro_auto_focus_fast_state = 3; + notify.AreaAutoFocusState area_auto_focus_state = 4; +} + +message FocusMotorStateInfo { + // oneof _focus_position + ExclusiveFocusMotorState exclusive_state = 1; + notify.FocusPosition focus_position = 2; +} + +message ExclusiveMotionMotorState { + // oneof current_state + notify.AstroCalibrationState astro_calibration_state = 1; + notify.AstroGotoState astro_goto_state = 2; + notify.AstroTrackingState astro_tracking_state = 3; + notify.NormalTrackState normal_track_state = 4; + notify.OneClickGotoState one_click_goto_state = 5; + notify.EqSolvingState eq_state = 6; + notify.SentryState sentry_state = 7; + notify.SkyTargetFinderState sky_target_finder_state = 8; +} + +message MotionMotorStateInfo { + ExclusiveMotionMotorState exclusive_state = 1; + notify.SentryAutoHand sentry_auto_hand = 2; +} + +message DeviceStateInfo { + notify.RgbState rgb_state = 1; + notify.PowerIndState power_ind_state = 2; + notify.ChargingState charging_state = 3; + notify.StorageInfo storage_info = 4; + notify.MTPState mtp_state = 5; + notify.CPUMode cpu_mode = 6; + notify.Temperature temperature = 7; + notify.BodyStatus body_status = 8; + notify.BatteryInfo battery_info = 9; + notify.CalibrationResult calibration_result = 10; + notify.PictureMatching picture_matching = 11; + notify.AutoShutdown auto_shutdown = 12; + notify.LensDefog lens_defog = 13; + notify.AutoCooling auto_cooling = 14; +} + +message ConnectionStateInfo { + notify.HostSlaveMode host_slave_mode = 1; +} + +message ShootingModeAndTech { + int32 shooting_mode = 1; + int32 parent_shooting_mode = 2; + repeated int32 shooting_techs = 3; +} + +message ResGetDeviceStateInfo { + int32 shooting_mode = 1; + TeleCameraStateInfo tele_camera_state_info = 2; + WideCameraStateInfo wide_camera_state_info = 3; + FocusMotorStateInfo focus_motor_state_info = 4; + MotionMotorStateInfo motion_motor_state_info = 5; + DeviceStateInfo device_state_info = 6; + int32 code = 7; + ConnectionStateInfo connection_state_info = 8; + repeated ShootingModeAndTech shooting_mode_and_techs = 9; +} + diff --git a/analysis/protos/Track.proto b/analysis/protos/Track.proto new file mode 100644 index 0000000..32dacf3 --- /dev/null +++ b/analysis/protos/Track.proto @@ -0,0 +1,41 @@ +// source: track.proto +syntax = "proto3"; + +message ReqStartTrack { + int32 x = 1; + int32 y = 2; + int32 w = 3; + int32 h = 4; + int32 cam_id = 5; +} + +message ReqStopTrack { +} + +message ReqPauseTrack { +} + +message ReqContinueTrack { +} + +message ReqStartSentryMode { + int32 type = 1; +} + +message ReqStopSentryMode { +} + +message ReqMOTTrackOne { + int32 id = 1; +} + +message ReqUFOAutoHandMode { + int32 mode = 1; +} + +message ReqStartTrackClick { + int32 x = 1; + int32 y = 2; + int32 cam_id = 3; +} + diff --git a/analysis/protos/VoiceAssistant.proto b/analysis/protos/VoiceAssistant.proto new file mode 100644 index 0000000..ea3446a --- /dev/null +++ b/analysis/protos/VoiceAssistant.proto @@ -0,0 +1,140 @@ +// source: voice_assistant.proto +syntax = "proto3"; + +import "base.proto"; +import "notify.proto"; +import "task_center.proto"; + +enum VoiceCommandType { + VOICE_CMD_UNKNOWN = 0; + VOICE_CMD_GET_STATUS = 1; + VOICE_CMD_TAKE_PHOTO = 2; + VOICE_CMD_START_RECORD = 3; + VOICE_CMD_STOP_RECORD = 4; + VOICE_CMD_START_TIMELAPSE = 5; + VOICE_CMD_STOP_TIMELAPSE = 6; + VOICE_CMD_START_BURST = 7; + VOICE_CMD_STOP_BURST = 8; + VOICE_CMD_START_ASTRO = 9; + VOICE_CMD_STOP_ASTRO = 10; + VOICE_CMD_START_SENTRY = 11; + VOICE_CMD_STOP_SENTRY = 12; + VOICE_CMD_MOVE = 13; + VOICE_CMD_GOTO_TARGET = 14; + VOICE_CMD_CALIBRATION = 15; + VOICE_CMD_AUTO_FOCUS = 16; + VOICE_CMD_STOP_FOCUS = 17; + VOICE_CMD_STOP_ALL = 18; +} + +message ReqVoiceCommand { + // oneof params + VoiceCommandType command_type = 1; + int32 shooting_mode = 2; + VoicePhotoParams photo_params = 10; + VoiceRecordParams record_params = 11; + VoiceTimelapseParams timelapse_params = 12; + VoiceBurstParams burst_params = 13; + VoiceAstroParams astro_params = 14; + VoiceSentryParams sentry_params = 15; + VoiceMoveParams move_params = 16; + VoiceGotoParams goto_params = 17; + VoiceCalibrationParams calibration_params = 18; + VoiceFocusParams focus_params = 19; +} + +message VoicePhotoParams { + int32 camera_type = 1; +} + +message VoiceRecordParams { + int32 camera_type = 1; + int32 duration_seconds = 2; +} + +message VoiceTimelapseParams { + int32 camera_type = 1; + int32 interval_seconds = 2; + int32 duration_seconds = 3; +} + +message VoiceBurstParams { + int32 camera_type = 1; + int32 count = 2; +} + +message VoiceAstroParams { + string target_name = 1; + double ra = 2; + double dec = 3; + int32 index = 4; + double lon = 5; + double lat = 6; + bool auto_goto = 7; + bool force_start = 8; +} + +message VoiceSentryParams { + int32 type = 1; +} + +message VoiceMoveParams { + double azimuth_angle = 1; + double altitude_angle = 2; + int32 speed = 3; +} + +message VoiceGotoParams { + string target_name = 1; + double ra = 2; + double dec = 3; + int32 index = 4; + double lon = 5; + double lat = 6; + int32 shooting_mode = 7; +} + +message VoiceCalibrationParams { + double lon = 1; + double lat = 2; +} + +message VoiceFocusParams { + bool is_infinity = 1; +} + +message ResVoiceCommand { + // oneof result + int32 code = 1; + string message = 2; + VoiceCommandType command_type = 3; + VoiceStatusResult status_result = 10; + VoiceOperationResult operation_result = 11; +} + +message AstroShootingProgress { + string target_name = 1; + int32 captured_count = 2; + int32 total_count = 3; + int32 stacked_count = 4; + int32 progress_percentage = 5; + int64 elapsed_time = 6; + int64 remaining_time = 7; +} + +message VoiceStatusResult { + ResGetDeviceStateInfo device_state_info = 1; + AstroShootingProgress astro_progress = 2; +} + +message VoiceOperationResult { + bool success = 1; + string detail_message = 2; +} + +message ResNotifyVoiceAssistant { + VoiceCommandType command_type = 1; + notify.OperationState state = 2; + string message = 4; +} + diff --git a/dwarfctl/Makefile b/dwarfctl/Makefile new file mode 100644 index 0000000..de6b01b --- /dev/null +++ b/dwarfctl/Makefile @@ -0,0 +1,25 @@ +.PHONY: proto build clean test install + +PROTOC ?= protoc +GO ?= go +BINARY = dwarfctl + +build: ## Build the dwarfctl binary + $(GO) build -o $(BINARY) ./cmd/dwarfctl/ + +proto: ## Regenerate Go protobuf bindings from .proto files + $(PROTOC) --go_out=. --go_opt=paths=source_relative --proto_path=. dwarf.proto + +install: build ## Install dwarfctl to $$GOBIN + $(GO) install ./cmd/dwarfctl/ + +test: ## Run tests + $(GO) test ./... + +clean: ## Remove build artifacts + rm -f $(BINARY) + +help: ## Show this help + @grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | awk 'BEGIN{FS=":.*?## "}{printf " \033[36m%-12s\033[0m %s\n",$$1,$$2}' + +.DEFAULT_GOAL := build diff --git a/dwarfctl/README.md b/dwarfctl/README.md new file mode 100644 index 0000000..6f770e1 --- /dev/null +++ b/dwarfctl/README.md @@ -0,0 +1,122 @@ +# dwarfctl β€” Open-source DWARF telescope control CLI + +A Go command-line tool for controlling **DWARF II** (and upcoming DWARF III) +smart telescopes over Wi-Fi via their WebSocket API. + +Built from reverse-engineered protocol specs (see `../analysis/`). + +## Quick start + +```bash +make build +./dwarfctl --ip 192.168.1.100 state +``` + +## Prerequisites + +The telescope must be connected to your Wi-Fi (or your phone joined to the +telescope's AP hotspot). Once you can ping the telescope's IP, `dwarfctl` can +reach it. + +Find the IP from: +- The official DWARFLAB app's Settings β†’ My Device +- Your router's DHCP table (hostname like `DWARFxxxx`) +- The BLE handshake (see `../analysis/API_REFERENCE.md`) + +## Usage examples + +```bash +# Device state +dwarfctl --ip 192.168.1.100 state + +# Camera +dwarfctl camera open --cam tele +dwarfctl camera photo --cam tele +dwarfctl camera photo --cam wide --raw +dwarfctl camera burst start --cam tele +dwarfctl camera exp --cam tele 156 # 1/4s exposure +dwarfctl camera gain --cam tele 60 +dwarfctl camera params --cam tele + +# Motor / slew +dwarfctl motor slew 90 0.5 # angle 90Β°, half speed +dwarfctl motor stop 0 # stop RA motor +dwarfctl motor goto 0 45.0 5.0 # RA motor to 45Β° at speed 5 + +# Astrophotography +dwarfctl astro calibrate start +dwarfctl astro goto-dso 10.6847 41.2687 "M31 Andromeda" +dwarfctl astro goto-solar 3 # Earth = index 3 +dwarfctl astro stack start +dwarfctl astro eq-solve start # polar alignment + +# Focus +dwarfctl focus auto +dwarfctl focus step 1 # 1=out, 0=in +dwarfctl focus astro-af start + +# Tracking +dwarfctl track start 640 360 100 100 0 # bbox at center of tele cam +dwarfctl track stop + +# System +dwarfctl system sync-time +dwarfctl system set-location 48.8566 2.3522 35 + +# Power +dwarfctl power rgb-on +dwarfctl power rgb-off +dwarfctl power reboot +dwarfctl power off + +# Monitor notifications (live status events) +dwarfctl monitor +``` + +## Architecture + +``` +dwarfctl/ +β”œβ”€β”€ proto/dwarf.proto # unified proto3 definitions (397 messages) +β”œβ”€β”€ proto/dwarf.pb.go # generated Go bindings (24948 lines) +β”œβ”€β”€ internal/ +β”‚ β”œβ”€β”€ transport/client.go # WebSocket client + WsPacket envelope +β”‚ └── api/ +β”‚ β”œβ”€β”€ commands.go # 323 command IDs + module routing +β”‚ └── client.go # typed Telescope API (camera/motor/astro/...) +└── cmd/dwarfctl/main.go # cobra CLI +``` + +### Protocol summary + +| Layer | Transport | Port | +|-------|-----------|------| +| Control | WebSocket (binary protobuf) | 9900 | +| Preview | RTSP (not implemented here) | 554 | + +Every command is a serialized `WsPacket{major=2, minor=3, device_id, +module_id, cmd, type, data, client_id}`. The `module_id` is derived from `cmd` +by range. See `../analysis/API_REFERENCE.md` for details. + +## Regenerating protos + +If the proto definitions change: + +```bash +# From the APK analysis directory: +python3 ../analysis/extract_protos.py ../extracted/jadx/.../proto ../analysis/protos + +# Merge into unified proto: +cd dwarfctl/proto +python3 merge.py . dwarf.proto +protoc --go_out=. --go_opt=paths=source_relative dwarf.proto +``` + +## Roadmap + +- [ ] BLE discovery + handshake (DwarfPing/DwarfEcho) +- [ ] RTSP preview viewer +- [ ] Interactive REPL mode +- [ ] Schedule plan management +- [ ] OTA firmware update +- [ ] Full Notify event parsing (typed) diff --git a/dwarfctl/TEST_RESULTS.md b/dwarfctl/TEST_RESULTS.md new file mode 100644 index 0000000..996f28e --- /dev/null +++ b/dwarfctl/TEST_RESULTS.md @@ -0,0 +1,161 @@ +# Plan de test β€” dwarfctl sur tΓ©lescope rΓ©el + +## Conditions de test +- **TΓ©lescope** : DWARF II, firmware 2.1.6, mode AP (hotspot WiFi) +- **IP** : `192.168.88.1` +- **RΓ©seau** : machine connectΓ©e au hotspot du tΓ©lescope +- **Environnement** : intΓ©rieur, journΓ©e (pas d'accΓ¨s au ciel/Γ©toiles) + +## DΓ©couvertes protocolaires importantes + +### ModΓ¨le de rΓ©ponse du tΓ©lescope + +Le tΓ©lescope utilise **type=3 (REPLY)** pour les rΓ©ponses directes, PAS type=1 (RESPONSE). De plus, certaines commandes ne reΓ§oivent AUCUNE rΓ©ponse directe β€” seulement des notifications (type=2). + +| Pattern | Commandes | Comportement | +|---------|-----------|--------------| +| **Reply type=3 (mΓͺme cmd)** | `photo` (10002), `focus auto` (15000), `focus step` (15001), `state` (16405) | RΓ©ponse directe avec le mΓͺme cmd β†’ request-response | +| **Notification uniquement** | `rgb-on/off` (13500/13501), `camera open/close` (10000/10001), `camera params` (10036) | Pas de reply β†’ fire-and-forget + vΓ©rifier via `state` | +| **Fire-and-forget natif** | `motor slew` (14006), `motor stop` (14002) | Pas d'ack attendu | + +### ImplΓ©mentation dans dwarfctl +- `send()` : attend un type=3 reply (10s timeout) β€” pour photo, focus, state +- `sendNotify()` : fire-and-forget β€” pour RGB, camera open/close, motor slew +- Flag `--debug` / `-d` : loggue tout le trafic WebSocket (cmd, module, type, taille data) + +## Tests par groupe + +### βœ… 1. Connexion (PASS) + +| Test | Commande | RΓ©sultat | +|------|----------|---------| +| Ping | `ping 192.168.88.1` | βœ… 36ms | +| Port 9900 (WebSocket) | `/dev/tcp/192.168.88.1/9900` | βœ… OPEN | +| Port 80 (RTSP) | `/dev/tcp/192.168.88.1/80` | βœ… OPEN | +| WebSocket handshake | `dwarfctl --ip 192.168.88.1 state` | βœ… connexion Γ©tablie | + +### βœ… 2. Γ‰tat du device (PASS) + +```bash +dwarfctl --ip 192.168.88.1 state +``` +RΓ©ponse complΓ¨te : shooting_mode, cameras (rΓ©solution, FoV), focus position (594), batterie (100%), stockage (38/52 GB), tempΓ©rature CMOS, modes disponibles. + +### βœ… 3. CamΓ©ra Tele (PASS) + +| Test | Commande | Debug | Statut | +|------|----------|-------|--------| +| Open camera | `camera open --cam tele` | fire-and-forget | βœ… | +| Photo | `camera photo --cam tele` | reply cmd=10002 type=3 data=11B | βœ… photo capturΓ©e | +| Focus step out | `focus step 1` | reply cmd=15001 type=3 data=0B | βœ… | + +### βœ… 4. Moteurs / Slew (PASS) + +Tests systΓ©matiques effectuΓ©s β€” tous les mouvements confirmΓ©s visuellement sur le tΓ©lescope. + +#### 4.1 Directions cardinales (joystick cmd 14006) + +| Direction | Angle | Length | DurΓ©e | RΓ©sultat | +|-----------|-------|--------|-------|----------| +| HAUT | 0Β° | 0.3 | 2s | βœ… mouvement observΓ© | +| DROITE | 90Β° | 0.3 | 2s | βœ… mouvement observΓ© | +| BAS | 180Β° | 0.3 | 2s | βœ… mouvement observΓ© | +| GAUCHE | 270Β° | 0.3 | 2s | βœ… mouvement observΓ© | + +**SystΓ¨me de coordonnΓ©es joystick** : angle en degrΓ©s (polaire), 0Β°=haut, 90Β°=droite, 180Β°=bas, 270Β°=gauche. Length = vitesse normalisΓ©e (0.0 Γ  1.0). + +#### 4.2 Vitesses variables + +| Vitesse | Length | RΓ©sultat | +|---------|--------|----------| +| Lente | 0.1 | βœ… mouvement visible et lent | +| Moyenne | 0.5 | βœ… mouvement net | +| Rapide | 0.9 | βœ… mouvement rapide | + +#### 4.3 Diagonales + +| Direction | Angle | RΓ©sultat | +|-----------|-------|----------| +| HAUT-DROITE | 45Β° | βœ… mouvement diagonal | +| BAS-GAUCHE | 225Β° | βœ… mouvement diagonal | + +Le joystick est bien polaire β€” 360Β° de libertΓ©, pas seulement 4 directions. + +#### 4.4 ArrΓͺt d'urgence + +| Test | Commande | RΓ©sultat | +|------|----------|----------| +| Stop pendant slew | `motor stop 0` (cmd 14002) | βœ… arrΓͺt immΓ©diat | +| Stop motor 1 | `motor stop 1` | βœ… | + +Le `motor stop` interrompt un slew en cours instantanΓ©ment. + +#### 4.5 Motor run/goto (cmd 14000) + +| Test | Commande | RΓ©sultat | +|------|----------|----------| +| Run to position | `motor goto 0 10 5` | βœ… fire-and-forget envoyΓ© | + +`ReqMotorRunTo` : moteur ID, position cible, vitesse. Fire-and-forget (pas de ack type=3). + +#### 4.6 Observations sur la lecture de position + +- **`focus_position`** (moteur de mise au point) : visible dans `state` β†’ `focus_position:{pos:593}`, reste stable pendant les mouvements de pointage. +- **Position moteurs de pointage (RA/DEC)** : `motion_motor_state_info:{exclusive_state:{}}` reste vide β€” la position des moteurs alt-az n'est PAS exposΓ©e dans `GetDeviceState`. +- Les messages proto `ReqMotorGetPosition` et `ReqMotorReset` existent dans le proto mais ne sont **pas utilisΓ©s par l'app Android** (aucune classe de requΓͺte correspondante). La lecture de position se fait probablement via les notifications d'attitude (cmd 15295 `CMD_NOTIFY_DEVICE_ATTITUDE`). + +### βœ… 5. RGB / Power (PASS aprΓ¨s fix fire-and-forget) + +| Test | Commande | Avant fix | AprΓ¨s fix | +|------|----------|-----------|-----------| +| RGB off | `power rgb-off` | ❌ timeout (cmd 13501) | βœ… fire-and-forget | +| RGB on | `power rgb-on` | ❌ timeout (cmd 13500) | βœ… fire-and-forget | + +VΓ©rification : `rgb_state:{}` (Γ©teint) vs `rgb_state:{state:1}` (allumΓ©) dans `state`. + +### βœ… 6. Focus (PASS) + +| Test | Commande | Debug | Statut | +|------|----------|-------|--------| +| Autofocus | `focus auto` | notifications + reply cmd=15000 type=3 | βœ… | +| Step out | `focus step 1` | reply cmd=15001 type=3 | βœ… | + +### βœ… 7. System (NON TESTΓ‰ β€” nΓ©cessite validation) + +| Test | Commande | Notes | +|------|----------|-------| +| Sync time | `system sync-time` | Γ€ tester | +| Set location | `system set-location 48.86 2.35 35` | Γ€ tester | + +### ❌ 8. Astrophotographie (NON TESTABLE β€” jour/intΓ©rieur) + +Ces commandes nΓ©cessitent un ciel Γ©toilΓ© nocturne : + +| Test | Raison | +|------|--------| +| `astro calibrate start` | NΓ©cessite des Γ©toiles visibles | +| `astro goto-dso` | NΓ©cessite le ciel | +| `astro stack start` | NΓ©cessite des Γ©toiles | +| `astro eq-solve start` | NΓ©cessite des Γ©toiles | +| `track start` | NΓ©cessite une cible mobile | + +### ❌ 9. Camera params (KNOWN ISSUE) + +`camera params --cam tele` (cmd 10036) : le tΓ©lescope ne renvoie pas de reply. +Les paramΓ¨tres sont toutefois visibles dans la rΓ©ponse `state` (rΓ©solution, FoV). +Les paramΓ¨tres ajustables (exposure, gain) nΓ©cessiteraient une commande GET qui ne rΓ©pond pas en type=3. + +## Bugs corrigΓ©s pendant les tests + +1. **`readLoop` ne dispatchait pas type=3 correctement** β†’ corrigΓ© : tous les types sont dispatchΓ©s vers `dispatchResponse` + `dispatchNotification` +2. **Commandes RGB/camera open attendaient un reply inexistant** β†’ converties en fire-and-forget (`sendNotify`) +3. **Motor stop/goto attendaient un reply** β†’ convertis en fire-and-forget +4. **Pas de logging** β†’ ajout du flag `--debug` / `-d` + +## Tests unitaires + +``` +ok github.com/antitbone/dwarfctl/internal/transport 0.003s +ok github.com/antitbone/dwarfctl/internal/api 0.003s +``` +57 tests, tous PASS. diff --git a/dwarfctl/cmd/dwarfctl/main.go b/dwarfctl/cmd/dwarfctl/main.go new file mode 100644 index 0000000..dafcf7f --- /dev/null +++ b/dwarfctl/cmd/dwarfctl/main.go @@ -0,0 +1,596 @@ +package main + +import ( + "fmt" + "math" + "os" + "strconv" + "strings" + "time" + + "github.com/antitbone/dwarfctl/internal/api" + "github.com/spf13/cobra" +) + +var ( + flagIP string + flagClientID string + flagDebug bool +) + +func main() { + rootCmd := &cobra.Command{ + Use: "dwarfctl", + Short: "DWARF telescope control CLI", + Long: "Open-source client for DWARF II / DWARFLAB smart telescopes.\nControls cameras, motors, astrophotography, focus, tracking, and power\nvia the telescope's WebSocket API (port 9900).", + } + rootCmd.PersistentFlags().StringVarP(&flagIP, "ip", "i", "", "telescope IP address (required)") + rootCmd.PersistentFlags().StringVar(&flagClientID, "client-id", "dwarfctl", "WebSocket client_id") + rootCmd.PersistentFlags().BoolVarP(&flagDebug, "debug", "d", false, "verbose WebSocket traffic log") + + rootCmd.AddCommand( + cmdState(), + cmdCamera(), + cmdMotor(), + cmdAstro(), + cmdFocus(), + cmdTrack(), + cmdSystem(), + cmdPower(), + cmdMonitor(), + ) + + rootCmd.MarkPersistentFlagRequired("ip") + if err := rootCmd.Execute(); err != nil { + os.Exit(1) + } +} + +// dial connects to the telescope and returns a ready Telescope + cleanup. +func dial() (*api.Telescope, func()) { + scope := api.New(flagClientID) + scope.SetDebug(flagDebug) + if err := scope.Connect(flagIP); err != nil { + fmt.Fprintf(os.Stderr, "Error: connect to %s: %v\n", flagIP, err) + os.Exit(1) + } + return scope, func() { scope.Close() } +} + +func mustCam(s string) api.Camera { + switch strings.ToLower(s) { + case "tele", "t", "0": + return api.CameraTele + case "wide", "w", "1": + return api.CameraWide + default: + fmt.Fprintf(os.Stderr, "Error: invalid camera '%s' (use: tele|wide)\n", s) + os.Exit(1) + return api.CameraTele + } +} + +// --- state --- + +func cmdState() *cobra.Command { + return &cobra.Command{ + Use: "state", + Short: "Get device state info", + Run: func(cmd *cobra.Command, args []string) { + scope, cleanup := dial() + defer cleanup() + state, err := scope.GetDeviceState() + if err != nil { + die("get state: %v", err) + } + fmt.Printf("Device State:\n") + printProto(state) + }, + } +} + +// --- camera --- + +func cmdCamera() *cobra.Command { + c := &cobra.Command{ + Use: "camera", + Short: "Camera control (open/close/photo/params)", + } + c.AddCommand( + &cobra.Command{ + Use: "open [--cam tele|wide]", + Short: "Open camera", + Run: func(cmd *cobra.Command, _ []string) { + cam := mustCam(flagCam(cmd)) + scope, cleanup := dial() + defer cleanup() + must(scope.OpenCamera(cam)) + fmt.Println("camera opened") + }, + }, + &cobra.Command{ + Use: "close [--cam tele|wide]", + Short: "Close camera", + Run: func(cmd *cobra.Command, _ []string) { + cam := mustCam(flagCam(cmd)) + scope, cleanup := dial() + defer cleanup() + must(scope.CloseCamera(cam)) + fmt.Println("camera closed") + }, + }, + &cobra.Command{ + Use: "photo [--cam tele|wide] [--raw]", + Short: "Take a photo", + Run: func(cmd *cobra.Command, _ []string) { + cam := mustCam(flagCam(cmd)) + raw, _ := cmd.Flags().GetBool("raw") + scope, cleanup := dial() + defer cleanup() + if raw { + must(scope.TakeRawPhoto(cam)) + } else { + must(scope.TakePhoto(cam)) + } + fmt.Println("photo captured") + }, + }, + &cobra.Command{ + Use: "burst [--cam tele|wide] [start|stop]", + Short: "Start or stop burst capture", + Args: cobra.ExactArgs(1), + Run: func(cmd *cobra.Command, args []string) { + cam := mustCam(flagCam(cmd)) + scope, cleanup := dial() + defer cleanup() + switch args[0] { + case "start": + must(scope.StartBurst(cam)) + case "stop": + must(scope.StopBurst(cam)) + default: + die("usage: camera burst [start|stop]") + } + }, + }, + &cobra.Command{ + Use: "record [--cam tele|wide] [start|stop]", + Short: "Start or stop video recording", + Args: cobra.ExactArgs(1), + Run: func(cmd *cobra.Command, args []string) { + cam := mustCam(flagCam(cmd)) + scope, cleanup := dial() + defer cleanup() + switch args[0] { + case "start": + must(scope.StartRecord(cam)) + case "stop": + must(scope.StopRecord(cam)) + default: + die("usage: camera record [start|stop]") + } + }, + }, + &cobra.Command{ + Use: "exp [--cam tele|wide] ", + Short: "Set exposure index (0=1/10000s, see params_range.json)", + Args: cobra.ExactArgs(1), + Run: func(cmd *cobra.Command, args []string) { + cam := mustCam(flagCam(cmd)) + idx := parseInt32(args[0]) + scope, cleanup := dial() + defer cleanup() + must(scope.SetExposure(cam, idx)) + fmt.Printf("exposure set to %d\n", idx) + }, + }, + &cobra.Command{ + Use: "gain [--cam tele|wide] ", + Short: "Set gain index (0-200+)", + Args: cobra.ExactArgs(1), + Run: func(cmd *cobra.Command, args []string) { + cam := mustCam(flagCam(cmd)) + idx := parseInt32(args[0]) + scope, cleanup := dial() + defer cleanup() + must(scope.SetGain(cam, idx)) + fmt.Printf("gain set to %d\n", idx) + }, + }, + &cobra.Command{ + Use: "params [--cam tele|wide]", + Short: "Get all camera parameters", + Run: func(cmd *cobra.Command, _ []string) { + cam := mustCam(flagCam(cmd)) + scope, cleanup := dial() + defer cleanup() + params, err := scope.GetAllParams(cam) + must(err) + printProto(params) + }, + }, + ) + // Add --cam to all subcommands + for _, sub := range c.Commands() { + sub.Flags().String("cam", "tele", "camera: tele|wide") + } + return c +} + +// --- motor --- + +func cmdMotor() *cobra.Command { + c := &cobra.Command{Use: "motor", Short: "Motor control (slew/joystick)"} + c.AddCommand( + &cobra.Command{ + Use: "slew ", + Short: "Slew via joystick vector (angle 0-360, length 0-1)", + Args: cobra.ExactArgs(2), + Run: func(_ *cobra.Command, args []string) { + angle := parseFloat(args[0]) + length := parseFloat(args[1]) + scope, cleanup := dial() + defer cleanup() + must(scope.SlewJoystick(angle, length)) + fmt.Printf("slew: angle=%.1f length=%.2f\n", angle, length) + }, + }, + &cobra.Command{ + Use: "stop [motor-id]", + Short: "Stop motors (id 0=RA, 1=DEC, default=both)", + Run: func(cmd *cobra.Command, args []string) { + id := int32(0) + if len(args) > 0 { + id = parseInt32(args[0]) + } + scope, cleanup := dial() + defer cleanup() + must(scope.MotorStop(id)) + fmt.Println("motor stopped") + }, + }, + &cobra.Command{ + Use: "goto ", + Short: "Move motor to position at speed", + Args: cobra.ExactArgs(3), + Run: func(_ *cobra.Command, args []string) { + id := parseInt32(args[0]) + pos := parseFloat(args[1]) + speed := parseFloat(args[2]) + scope, cleanup := dial() + defer cleanup() + must(scope.MotorRunTo(id, pos, speed)) + fmt.Printf("motor %d -> pos %.2f @ speed %.2f\n", id, pos, speed) + }, + }, + &cobra.Command{ + Use: "reset [direction]", + Short: "Reset motor to home (0=back, 1=forward)", + Args: cobra.RangeArgs(1, 2), + Run: func(_ *cobra.Command, args []string) { + id := parseInt32(args[0]) + dir := false + if len(args) > 1 && args[1] == "1" { + dir = true + } + scope, cleanup := dial() + defer cleanup() + must(scope.MotorReset(id, dir)) + fmt.Printf("motor %d reset (dir=%v)\n", id, dir) + }, + }, + &cobra.Command{ + Use: "position ", + Short: "Get motor position (experimental cmd 14001)", + Args: cobra.ExactArgs(1), + Run: func(_ *cobra.Command, args []string) { + id := parseInt32(args[0]) + scope, cleanup := dial() + defer cleanup() + pos, err := scope.MotorGetPosition(id) + must(err) + fmt.Printf("motor %d: id=%d code=%d position=%.2f\n", id, pos.GetId(), pos.GetCode(), pos.GetPosition()) + }, + }, + ) + return c +} + +// --- astro --- + +func cmdAstro() *cobra.Command { + c := &cobra.Command{Use: "astro", Short: "Astrophotography (calibrate/goto/stack)"} + c.AddCommand( + &cobra.Command{ + Use: "calibrate [start|stop]", + Short: "Start or stop star calibration", + Args: cobra.ExactArgs(1), + Run: func(_ *cobra.Command, args []string) { + scope, cleanup := dial() + defer cleanup() + switch args[0] { + case "start": + must(scope.StartCalibration()) + fmt.Println("calibration started") + case "stop": + must(scope.StopCalibration()) + fmt.Println("calibration stopped") + default: + die("usage: astro calibrate [start|stop]") + } + }, + }, + &cobra.Command{ + Use: "goto-dso [name]", + Short: "GoTo a deep-sky object by RA/Dec (degrees)", + Args: cobra.MinimumNArgs(2), + Run: func(_ *cobra.Command, args []string) { + ra := parseFloat(args[0]) + dec := parseFloat(args[1]) + name := "" + if len(args) > 2 { + name = strings.Join(args[2:], " ") + } + scope, cleanup := dial() + defer cleanup() + must(scope.GotoDSO(ra, dec, name)) + fmt.Printf("GoTo DSO: RA=%.4fΒ° Dec=%.4fΒ° (%s)\n", ra, dec, name) + }, + }, + &cobra.Command{ + Use: "goto-solar ", + Short: "GoTo solar system object (1=Mercury..7=Neptune, see planet table)", + Args: cobra.ExactArgs(1), + Run: func(_ *cobra.Command, args []string) { + idx := parseInt32(args[0]) + scope, cleanup := dial() + defer cleanup() + must(scope.GotoSolar(idx)) + fmt.Printf("GoTo solar system object %d\n", idx) + }, + }, + &cobra.Command{ + Use: "goto-stop", + Short: "Abort GoTo", + Run: func(_ *cobra.Command, _ []string) { + scope, cleanup := dial() + defer cleanup() + must(scope.StopGoto()) + fmt.Println("GoTo stopped") + }, + }, + &cobra.Command{ + Use: "stack [start|stop]", + Short: "Start or stop live stacking", + Args: cobra.ExactArgs(1), + Run: func(_ *cobra.Command, args []string) { + scope, cleanup := dial() + defer cleanup() + switch args[0] { + case "start": + must(scope.StartLiveStacking()) + case "stop": + must(scope.StopLiveStacking()) + default: + die("usage: astro stack [start|stop]") + } + }, + }, + &cobra.Command{ + Use: "eq-solve [start|stop]", + Short: "Start or stop EQ solving (polar alignment)", + Args: cobra.ExactArgs(1), + Run: func(_ *cobra.Command, args []string) { + scope, cleanup := dial() + defer cleanup() + switch args[0] { + case "start": + must(scope.StartEqSolving()) + case "stop": + must(scope.StopEqSolving()) + default: + die("usage: astro eq-solve [start|stop]") + } + }, + }, + ) + return c +} + +// --- focus --- + +func cmdFocus() *cobra.Command { + c := &cobra.Command{Use: "focus", Short: "Focus control"} + c.AddCommand( + &cobra.Command{ + Use: "auto", + Short: "Trigger autofocus", + Run: func(_ *cobra.Command, _ []string) { + scope, cleanup := dial() + defer cleanup() + must(scope.AutoFocus()) + fmt.Println("autofocus triggered") + }, + }, + &cobra.Command{ + Use: "step <0|1>", + Short: "Manual single-step focus (0=in, 1=out)", + Args: cobra.ExactArgs(1), + Run: func(_ *cobra.Command, args []string) { + dir := uint32(parseInt32(args[0])) + scope, cleanup := dial() + defer cleanup() + must(scope.ManualSingleStepFocus(dir)) + }, + }, + &cobra.Command{ + Use: "astro-af [start|stop]", + Short: "Start or stop astro autofocus", + Args: cobra.ExactArgs(1), + Run: func(_ *cobra.Command, args []string) { + scope, cleanup := dial() + defer cleanup() + switch args[0] { + case "start": + must(scope.StartAstroAutoFocus()) + case "stop": + must(scope.StopAstroAutoFocus()) + } + }, + }, + ) + return c +} + +// --- track --- + +func cmdTrack() *cobra.Command { + c := &cobra.Command{Use: "track", Short: "Tracking control"} + c.AddCommand( + &cobra.Command{ + Use: "start [cam-id]", + Short: "Start tracking an object in a region", + Args: cobra.MinimumNArgs(4), + Run: func(_ *cobra.Command, args []string) { + x, y, w, h := parseInt32(args[0]), parseInt32(args[1]), parseInt32(args[2]), parseInt32(args[3]) + cam := int32(0) + if len(args) > 4 { + cam = parseInt32(args[4]) + } + scope, cleanup := dial() + defer cleanup() + must(scope.StartTracking(x, y, w, h, cam)) + fmt.Printf("tracking started: bbox(%d,%d,%d,%d) cam=%d\n", x, y, w, h, cam) + }, + }, + &cobra.Command{ + Use: "stop", + Short: "Stop tracking", + Run: func(_ *cobra.Command, _ []string) { + scope, cleanup := dial() + defer cleanup() + must(scope.StopTracking()) + fmt.Println("tracking stopped") + }, + }, + ) + return c +} + +// --- system --- + +func cmdSystem() *cobra.Command { + c := &cobra.Command{Use: "system", Short: "System commands (time/location)"} + c.AddCommand( + &cobra.Command{ + Use: "sync-time", + Short: "Sync telescope clock to this machine", + Run: func(_ *cobra.Command, _ []string) { + scope, cleanup := dial() + defer cleanup() + _, tz := time.Now().Zone() + must(scope.SetTime(uint64(time.Now().Unix()), float64(tz))) + fmt.Println("time synced") + }, + }, + &cobra.Command{ + Use: "set-location [alt]", + Short: "Set observing location", + Args: cobra.MinimumNArgs(2), + Run: func(_ *cobra.Command, args []string) { + lat := parseFloat(args[0]) + lon := parseFloat(args[1]) + alt := 0.0 + if len(args) > 2 { + alt = parseFloat(args[2]) + } + scope, cleanup := dial() + defer cleanup() + must(scope.SetLocation(lat, lon, alt)) + fmt.Printf("location set: %.4f, %.4f, %.0fm\n", lat, lon, alt) + }, + }, + ) + return c +} + +// --- power --- + +func cmdPower() *cobra.Command { + c := &cobra.Command{Use: "power", Short: "Power & RGB control"} + c.AddCommand( + &cobra.Command{Use: "rgb-on", Short: "Turn on RGB ring light", Run: func(_ *cobra.Command, _ []string) { + scope, cleanup := dial(); defer cleanup(); must(scope.RGBOn()); fmt.Println("RGB on") + }}, + &cobra.Command{Use: "rgb-off", Short: "Turn off RGB ring light", Run: func(_ *cobra.Command, _ []string) { + scope, cleanup := dial(); defer cleanup(); must(scope.RGBOff()); fmt.Println("RGB off") + }}, + &cobra.Command{Use: "off", Short: "Power down telescope", Run: func(_ *cobra.Command, _ []string) { + scope, cleanup := dial(); defer cleanup(); must(scope.PowerDown()); fmt.Println("powering down") + }}, + &cobra.Command{Use: "reboot", Short: "Reboot telescope", Run: func(_ *cobra.Command, _ []string) { + scope, cleanup := dial(); defer cleanup(); must(scope.Reboot()); fmt.Println("rebooting") + }}, + ) + return c +} + +// --- monitor --- + +func cmdMonitor() *cobra.Command { + return &cobra.Command{ + Use: "monitor", + Short: "Listen for telescope notifications (Ctrl-C to stop)", + Run: func(_ *cobra.Command, _ []string) { + scope, cleanup := dial() + defer cleanup() + ch := scope.Notifications() + fmt.Println("Monitoring notifications (Ctrl-C to stop)...") + for pkt := range ch { + fmt.Printf("[NOTIFY] cmd=%d module=%d type=%d data_len=%d\n", + pkt.GetCmd(), pkt.GetModuleId(), pkt.GetType(), len(pkt.GetData())) + } + }, + } +} + +// --- helpers --- + +func flagCam(cmd *cobra.Command) string { + s, _ := cmd.Flags().GetString("cam") + return s +} + +func parseInt32(s string) int32 { + v, err := strconv.ParseInt(s, 0, 32) + if err != nil { + die("invalid number '%s': %v", s, err) + } + return int32(v) +} + +func parseFloat(s string) float64 { + v, err := strconv.ParseFloat(s, 64) + if err != nil { + die("invalid float '%s': %v", s, err) + } + if math.IsNaN(v) || math.IsInf(v, 0) { + die("invalid float '%s'", s) + } + return v +} + +func die(format string, args ...any) { + fmt.Fprintf(os.Stderr, "Error: "+format+"\n", args...) + os.Exit(1) +} + +func must(err error) { + if err != nil { + die("%v", err) + } +} + +func printProto(v any) { + fmt.Printf(" %+v\n", v) +} diff --git a/dwarfctl/go.mod b/dwarfctl/go.mod new file mode 100644 index 0000000..e8601ee --- /dev/null +++ b/dwarfctl/go.mod @@ -0,0 +1,14 @@ +module github.com/antitbone/dwarfctl + +go 1.25.0 + +require ( + github.com/gorilla/websocket v1.5.3 + github.com/spf13/cobra v1.9.1 + google.golang.org/protobuf v1.36.11 +) + +require ( + github.com/inconshreveable/mousetrap v1.1.0 // indirect + github.com/spf13/pflag v1.0.6 // indirect +) diff --git a/dwarfctl/go.sum b/dwarfctl/go.sum new file mode 100644 index 0000000..6b02702 --- /dev/null +++ b/dwarfctl/go.sum @@ -0,0 +1,16 @@ +github.com/cpuguy83/go-md2man/v2 v2.0.6/go.mod h1:oOW0eioCTA6cOiMLiUPZOpcVxMig6NIQQ7OS05n1F4g= +github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8= +github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU= +github.com/gorilla/websocket v1.5.3 h1:saDtZ6Pbx/0u+bgYQ3q96pZgCzfhKXGPqt7kZ72aNNg= +github.com/gorilla/websocket v1.5.3/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= +github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8= +github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= +github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= +github.com/spf13/cobra v1.9.1 h1:CXSaggrXdbHK9CF+8ywj8Amf7PBRmPCOJugH954Nnlo= +github.com/spf13/cobra v1.9.1/go.mod h1:nDyEzZ8ogv936Cinf6g1RU9MRY64Ir93oCnqb9wxYW0= +github.com/spf13/pflag v1.0.6 h1:jFzHGLGAlb3ruxLB8MhbI6A8+AQX/2eW4qeyNZXNp2o= +github.com/spf13/pflag v1.0.6/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= +google.golang.org/protobuf v1.36.11 h1:fV6ZwhNocDyBLK0dj+fg8ektcVegBBuEolpbTQyBNVE= +google.golang.org/protobuf v1.36.11/go.mod h1:HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j23XfzDpco= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= diff --git a/dwarfctl/internal/api/client.go b/dwarfctl/internal/api/client.go new file mode 100644 index 0000000..788489c --- /dev/null +++ b/dwarfctl/internal/api/client.go @@ -0,0 +1,395 @@ +package api + +import ( + "fmt" + "time" + + "github.com/antitbone/dwarfctl/internal/transport" + pb "github.com/antitbone/dwarfctl/proto" + "google.golang.org/protobuf/proto" +) + +// Telescope wraps the WebSocket transport with typed telescope commands. +type Telescope struct { + t *transport.Client +} + +// New creates a Telescope API client. +func New(clientID string) *Telescope { + return &Telescope{t: transport.NewClient(clientID, 1)} +} + +// SetDebug enables verbose WebSocket traffic logging. +func (t *Telescope) SetDebug(on bool) { + t.t.Debug = on +} + +// Connect opens a WebSocket connection to the telescope. +func (t *Telescope) Connect(ip string) error { + return t.t.Connect(ip) +} + +// Close disconnects from the telescope. +func (t *Telescope) Close() error { + return t.t.Close() +} + +// Notifications returns a channel for receiving NOTIFY packets. +func (t *Telescope) Notifications() chan *pb.WsPacket { + return t.t.SubscribeNotifications() +} + +// send marshals an inner proto message, sends it, and returns the raw response. +func (t *Telescope) send(cmd uint32, msg proto.Message) (*pb.WsPacket, error) { + data, err := proto.Marshal(msg) + if err != nil { + return nil, fmt.Errorf("marshal: %w", err) + } + return t.t.Send(ModuleIDForCmd(cmd), cmd, data, 10*time.Second) +} + +// sendEmpty sends a command with no payload (empty data field). +func (t *Telescope) sendEmpty(cmd uint32) (*pb.WsPacket, error) { + return t.t.Send(ModuleIDForCmd(cmd), cmd, nil, 10*time.Second) +} + +// sendNotify marshals and sends without waiting for a response. +func (t *Telescope) sendNotify(cmd uint32, msg proto.Message) error { + data, err := proto.Marshal(msg) + if err != nil { + return err + } + return t.t.SendNotify(ModuleIDForCmd(cmd), cmd, data) +} + +// decodeResponse parses the WsPacket data field into the given message type. +func decodeResponse(pkt *pb.WsPacket, msg proto.Message) error { + if len(pkt.GetData()) == 0 { + return nil + } + return proto.Unmarshal(pkt.GetData(), msg) +} + +// --- Camera commands --- + +// Camera identifies which camera to address. +type Camera int + +const ( + CameraTele Camera = 0 + CameraWide Camera = 1 +) + +func cameraCmd(tele, wide uint32, cam Camera) uint32 { + if cam == CameraWide { + return wide + } + return tele +} + +// OpenCamera opens the specified camera. +// Some firmwares don't send a type=3 reply; fire-and-forget is safe. +func (t *Telescope) OpenCamera(cam Camera) error { + return t.sendNotify(cameraCmd(CmdTeleOpenCamera, CmdWideOpenCamera, cam), &pb.ReqMotorServiceJoystickStop{}) +} + +// CloseCamera closes the specified camera. +func (t *Telescope) CloseCamera(cam Camera) error { + return t.sendNotify(cameraCmd(CmdTeleCloseCamera, CmdWideCloseCamera, cam), &pb.ReqMotorServiceJoystickStop{}) +} + +// TakePhoto captures a single photograph. +func (t *Telescope) TakePhoto(cam Camera) error { + _, err := t.sendEmpty(cameraCmd(CmdTelePhotograph, CmdWidePhotograph, cam)) + return err +} + +// TakeRawPhoto captures a RAW photo. +func (t *Telescope) TakeRawPhoto(cam Camera) error { + _, err := t.sendEmpty(cameraCmd(CmdTelePhotoRaw, CmdWidePhotoRaw, cam)) + return err +} + +// StartBurst starts burst capture. +func (t *Telescope) StartBurst(cam Camera) error { + _, err := t.sendEmpty(cameraCmd(CmdTeleBurst, CmdWideBurst, cam)) + return err +} + +// StopBurst stops burst capture. +func (t *Telescope) StopBurst(cam Camera) error { + _, err := t.sendEmpty(cameraCmd(CmdTeleStopBurst, CmdWideStopBurst, cam)) + return err +} + +// StartRecord starts video recording. +func (t *Telescope) StartRecord(cam Camera) error { + _, err := t.sendEmpty(cameraCmd(CmdTeleStartRecord, CmdWideStartRecord, cam)) + return err +} + +// StopRecord stops video recording. +func (t *Telescope) StopRecord(cam Camera) error { + _, err := t.sendEmpty(cameraCmd(CmdTeleStopRecord, CmdWideStopRecord, cam)) + return err +} + +// SetExposure sets the exposure index on the camera. +func (t *Telescope) SetExposure(cam Camera, index int32) error { + _, err := t.send(cameraCmd(CmdTeleSetExp, CmdWideSetExp, cam), &pb.ReqSetExp{Index: index}) + return err +} + +// SetGain sets the gain index on the camera. +func (t *Telescope) SetGain(cam Camera, index int32) error { + _, err := t.send(cameraCmd(CmdTeleSetGain, CmdWideSetGain, cam), &pb.ReqSetGain{Index: index}) + return err +} + +// GetAllParams retrieves all camera parameters. +// NOTE: this command may not receive a type=3 reply on some firmwares. +// The params are also embedded in the GetDeviceState response. +func (t *Telescope) GetAllParams(cam Camera) (*pb.ResGetAllParams, error) { + pkt, err := t.sendEmpty(cameraCmd(CmdTeleGetAllParams, CmdWideGetAllParams, cam)) + if err != nil { + return nil, err + } + resp := &pb.ResGetAllParams{} + return resp, decodeResponse(pkt, resp) +} + +// --- Motor commands --- + +// SlewJoystick sends a joystick vector for manual slewing (fire-and-forget). +func (t *Telescope) SlewJoystick(angle, length float64) error { + return t.sendNotify(CmdMotorJoystick, &pb.ReqMotorServiceJoystick{ + VectorAngle: angle, + VectorLength: length, + }) +} + +// SlewJoystickFixedAngle sends a fixed-angle joystick vector. +func (t *Telescope) SlewJoystickFixedAngle(angle, length float64) error { + return t.sendNotify(CmdMotorJoystickFixedAngle, &pb.ReqMotorServiceJoystickFixedAngle{ + VectorAngle: angle, + VectorLength: length, + }) +} + +// MotorStop stops a motor by ID (0=RA/az, 1=DEC/alt). Fire-and-forget β€” +// the telescope does not ack motor commands with a same-cmd response. +func (t *Telescope) MotorStop(motorID int32) error { + return t.sendNotify(CmdMotorStop, &pb.ReqMotorStop{Id: motorID}) +} + +// MotorJoystickStop stops joystick movement. Fire-and-forget. +func (t *Telescope) MotorJoystickStop() error { + return t.sendNotify(CmdMotorJoystickStop, &pb.ReqMotorServiceJoystickStop{}) +} + +// MotorRunTo moves a motor to a target position at a given speed. +// Fire-and-forget β€” verify via GetDeviceState after sending. +func (t *Telescope) MotorRunTo(id int32, endPos, speed float64) error { + return t.sendNotify(CmdMotorRun, &pb.ReqMotorRunTo{ + Id: id, + EndPosition: endPos, + Speed: speed, + }) +} + +// MotorReset resets a motor (finds home via limit switch). +// cmd 14003 is inferred (not in WsCmd enum). direction: false=back, true=forward. +func (t *Telescope) MotorReset(id int32, direction bool) error { + return t.sendNotify(CmdMotorReset, &pb.ReqMotorReset{Id: id, Direction: direction}) +} + +// MotorGetPosition queries a motor's current position. +// cmd 14001 is inferred. May timeout if firmware doesn't support it. +func (t *Telescope) MotorGetPosition(id int32) (*pb.ResMotorPosition, error) { + pkt, err := t.send(CmdMotorGetPosition, &pb.ReqMotorGetPosition{Id: id}) + if err != nil { + return nil, err + } + resp := &pb.ResMotorPosition{} + return resp, decodeResponse(pkt, resp) +} + +// GetFocusInfinityPos retrieves the user-defined infinity focus position. +func (t *Telescope) GetFocusInfinityPos() (int32, error) { + pkt, err := t.sendEmpty(CmdFocusGetUserInfinity) + if err != nil { + return 0, err + } + resp := &pb.ReqSetUserInfinityPos{} + if err := decodeResponse(pkt, resp); err != nil { + return 0, err + } + return resp.GetPos(), nil +} + +// SetFocusInfinityPos saves the current focus position as user infinity. +func (t *Telescope) SetFocusInfinityPos(pos int32) error { + _, err := t.send(CmdFocusSetUserInfinity, &pb.ReqSetUserInfinityPos{Pos: pos}) + return err +} + +// --- Astro commands --- + +// StartCalibration begins star calibration. +func (t *Telescope) StartCalibration() error { + _, err := t.sendEmpty(CmdAstroStartCalibration) + return err +} + +// StopCalibration cancels calibration. +func (t *Telescope) StopCalibration() error { + _, err := t.sendEmpty(CmdAstroStopCalibration) + return err +} + +// GotoDSO slews to a deep-sky object by RA/Dec coordinates. +func (t *Telescope) GotoDSO(ra, dec float64, name string) error { + _, err := t.send(CmdAstroStartGotoDSO, &pb.ReqGotoDSO{Ra: ra, Dec: dec, TargetName: name}) + return err +} + +// GotoSolar slews to a solar system object by index. +func (t *Telescope) GotoSolar(index int32) error { + _, err := t.send(CmdAstroStartGotoSolar, &pb.ReqGotoSolarSystem{Index: index}) + return err +} + +// StopGoto aborts a GoTo operation. +func (t *Telescope) StopGoto() error { + _, err := t.sendEmpty(CmdAstroStopGoto) + return err +} + +// StartLiveStacking begins live-stacking capture. +func (t *Telescope) StartLiveStacking() error { + _, err := t.sendEmpty(CmdAstroStartLiveStacking) + return err +} + +// StopLiveStacking stops live-stacking. +func (t *Telescope) StopLiveStacking() error { + _, err := t.sendEmpty(CmdAstroStopLiveStacking) + return err +} + +// StartEqSolving begins equatorial solving (polar alignment). +func (t *Telescope) StartEqSolving() error { + _, err := t.sendEmpty(CmdAstroStartEqSolving) + return err +} + +// StopEqSolving stops equatorial solving. +func (t *Telescope) StopEqSolving() error { + _, err := t.sendEmpty(CmdAstroStopEqSolving) + return err +} + +// --- Focus commands --- + +// AutoFocus triggers autofocus. +func (t *Telescope) AutoFocus() error { + _, err := t.sendEmpty(CmdFocusAutoFocus) + return err +} + +// ManualSingleStepFocus moves the focuser a single step (direction 0=in, 1=out). +func (t *Telescope) ManualSingleStepFocus(direction uint32) error { + _, err := t.send(CmdFocusManualSingle, &pb.ReqManualSingleStepFocus{Direction: direction}) + return err +} + +// StartAstroAutoFocus starts astro autofocus. +func (t *Telescope) StartAstroAutoFocus() error { + _, err := t.sendEmpty(CmdFocusStartAstroAF) + return err +} + +// StopAstroAutoFocus stops astro autofocus. +func (t *Telescope) StopAstroAutoFocus() error { + _, err := t.sendEmpty(CmdFocusStopAstroAF) + return err +} + +// --- Track commands --- + +// StartTracking starts tracking an object at the given coordinates. +func (t *Telescope) StartTracking(x, y, w, h, camID int32) error { + _, err := t.send(CmdTrackStart, &pb.ReqStartTrack{ + X: x, Y: y, W: w, H: h, CamId: camID, + }) + return err +} + +// StopTracking stops tracking. +func (t *Telescope) StopTracking() error { + _, err := t.sendEmpty(CmdTrackStop) + return err +} + +// --- System commands --- + +// SetTime syncs the telescope clock. +func (t *Telescope) SetTime(unixSec uint64, tzOffset float64) error { + _, err := t.send(CmdSystemSetTime, &pb.ReqSetTime{ + Timestamp: unixSec, + TimezoneOffset: tzOffset, + }) + return err +} + +// SetLocation sets the observing location. +func (t *Telescope) SetLocation(lat, lng, alt float64) error { + _, err := t.send(CmdSystemSetLocation, &pb.ReqSetLocation{ + Latitude: lat, + Longitude: lng, + Altitude: alt, + Enable: true, + }) + return err +} + +// --- Power / RGB commands --- + +// RGBOn turns on the RGB ring light. Fire-and-forget β€” no type=3 reply. +// Verify via GetDeviceState().DeviceStateInfo.RgbState. +func (t *Telescope) RGBOn() error { + return t.sendNotify(CmdRGBOn, &pb.ReqMotorServiceJoystickStop{}) +} + +// RGBOff turns off the RGB ring light. Fire-and-forget. +func (t *Telescope) RGBOff() error { + return t.sendNotify(CmdRGBOff, &pb.ReqMotorServiceJoystickStop{}) +} + +// PowerDown powers off the telescope. Fire-and-forget. +func (t *Telescope) PowerDown() error { + return t.sendNotify(CmdPowerDown, &pb.ReqMotorServiceJoystickStop{}) +} + +// Reboot reboots the telescope. Fire-and-forget. +func (t *Telescope) Reboot() error { + return t.sendNotify(CmdReboot, &pb.ReqMotorServiceJoystickStop{}) +} + +// --- Task Center --- + +// GetDeviceState queries the current device state. +func (t *Telescope) GetDeviceState() (*pb.ResGetDeviceStateInfo, error) { + pkt, err := t.sendEmpty(CmdTaskGetDeviceState) + if err != nil { + return nil, err + } + resp := &pb.ResGetDeviceStateInfo{} + return resp, decodeResponse(pkt, resp) +} + +// SwitchShootingMode switches the active shooting mode. +func (t *Telescope) SwitchShootingMode(modeID int32) error { + _, err := t.send(CmdTaskSwitchMode, &pb.ReqSwitchShootingMode{Mode: modeID}) + return err +} diff --git a/dwarfctl/internal/api/client_test.go b/dwarfctl/internal/api/client_test.go new file mode 100644 index 0000000..5d92e28 --- /dev/null +++ b/dwarfctl/internal/api/client_test.go @@ -0,0 +1,231 @@ +package api + +import ( + "testing" + + pb "github.com/antitbone/dwarfctl/proto" + "google.golang.org/protobuf/proto" +) + +// TestModuleIDForCmd verifies that every command range maps to the correct +// module_id, matching WsCmd.getModuleId() from the original APK. +func TestModuleIDForCmd(t *testing.T) { + cases := []struct { + name string + cmd uint32 + wantMod uint32 + }{ + // Camera Tele (10000–10499) + {"tele open camera", CmdTeleOpenCamera, ModuleCameraTele}, + {"tele photo", CmdTelePhotograph, ModuleCameraTele}, + {"tele get all params", CmdTeleGetAllParams, ModuleCameraTele}, + {"tele boundary low", 10000, ModuleCameraTele}, + {"tele boundary high-1", 10499, ModuleCameraTele}, + + // Astro (11000–11499) + {"astro calibrate", CmdAstroStartCalibration, ModuleAstro}, + {"astro goto dso", CmdAstroStartGotoDSO, ModuleAstro}, + {"astro boundary low", 11000, ModuleAstro}, + {"astro boundary high-1", 11499, ModuleAstro}, + + // Camera Wide (12000–12499) + {"wide open camera", CmdWideOpenCamera, ModuleCameraWide}, + {"wide photo", CmdWidePhotograph, ModuleCameraWide}, + {"wide boundary low", 12000, ModuleCameraWide}, + {"wide boundary high-1", 12499, ModuleCameraWide}, + + // System (13000–13299) + {"system set time", CmdSystemSetTime, ModuleSystem}, + {"system set location", CmdSystemSetLocation, ModuleSystem}, + {"system boundary low", 13000, ModuleSystem}, + {"system boundary high-1", 13299, ModuleSystem}, + + // RGB Power (13500–13799) + {"rgb on", CmdRGBOn, ModuleRGBPower}, + {"reboot", CmdReboot, ModuleRGBPower}, + {"rgb boundary low", 13500, ModuleRGBPower}, + {"rgb boundary high-1", 13799, ModuleRGBPower}, + + // Motor (14000–14499) + {"motor run", CmdMotorRun, ModuleMotor}, + {"motor joystick", CmdMotorJoystick, ModuleMotor}, + {"motor boundary low", 14000, ModuleMotor}, + {"motor boundary high-1", 14499, ModuleMotor}, + + // Track (14800–14899) + {"track start", CmdTrackStart, ModuleTrack}, + {"switch preview", CmdSwitchMainPreview, ModuleTrack}, + {"track boundary low", 14800, ModuleTrack}, + {"track boundary high-1", 14899, ModuleTrack}, + + // Focus (15000–15199) + {"focus auto", CmdFocusAutoFocus, ModuleFocus}, + {"focus boundary low", 15000, ModuleFocus}, + {"focus boundary high-1", 15199, ModuleFocus}, + + // Notify (15200–15499) + {"notify track result", NotifyTrackResult, ModuleNotify}, + {"notify boundary low", 15200, ModuleNotify}, + {"notify boundary high-1", 15499, ModuleNotify}, + + // Panorama (15500–15599) + {"pano start grid", CmdPanoStartGrid, ModulePanorama}, + {"pano boundary low", 15500, ModulePanorama}, + {"pano boundary high-1", 15599, ModulePanorama}, + + // ITips (15700–15799) + {"itips boundary low", 15700, ModuleITips}, + + // Shooting Schedule (16100–16399) + {"schedule boundary low", 16100, ModuleShootingSchedule}, + {"schedule boundary high-1", 16399, ModuleShootingSchedule}, + + // Task Center (16400–16599) + {"task get state", CmdTaskGetDeviceState, ModuleTaskCenter}, + {"task boundary low", 16400, ModuleTaskCenter}, + {"task boundary high-1", 16599, ModuleTaskCenter}, + + // Param (16700–16799) + {"param boundary low", 16700, ModuleParam}, + + // Voice Assistant (16800–16899) + {"voice boundary low", 16800, ModuleVoiceAssistant}, + + // Device (17000–17099) + {"device boundary low", 17000, ModuleDevice}, + {"device boundary high-1", 17099, ModuleDevice}, + + // Out of range + {"unknown cmd 9999", 9999, ModuleNone}, + {"unknown cmd 99999", 99999, ModuleNone}, + {"cmd 0", 0, ModuleNone}, + } + + for _, tc := range cases { + t.Run(tc.name, func(t *testing.T) { + got := ModuleIDForCmd(tc.cmd) + if got != tc.wantMod { + t.Errorf("ModuleIDForCmd(%d) = %d, want %d", tc.cmd, got, tc.wantMod) + } + }) + } +} + +// TestCameraCmdHelper verifies that cameraCmd dispatches correctly between +// Tele and Wide command IDs. +func TestCameraCmdHelper(t *testing.T) { + cases := []struct { + tele, wide uint32 + cam Camera + want uint32 + }{ + {CmdTeleOpenCamera, CmdWideOpenCamera, CameraTele, CmdTeleOpenCamera}, + {CmdTeleOpenCamera, CmdWideOpenCamera, CameraWide, CmdWideOpenCamera}, + {10002, 12022, CameraTele, 10002}, + {10002, 12022, CameraWide, 12022}, + } + for _, tc := range cases { + got := cameraCmd(tc.tele, tc.wide, tc.cam) + if got != tc.want { + t.Errorf("cameraCmd(%d,%d,%d) = %d, want %d", + tc.tele, tc.wide, tc.cam, got, tc.want) + } + } +} + +// TestDecodeResponseEmpty verifies that decoding an empty Data field does +// not error and leaves the message at its zero value. +func TestDecodeResponseEmpty(t *testing.T) { + pkt := &pb.WsPacket{Cmd: 10000, Data: nil} + msg := &pb.ResGetAllParams{} + if err := decodeResponse(pkt, msg); err != nil { + t.Errorf("decodeResponse with empty data should not error: %v", err) + } +} + +// TestDecodeResponseWithPayload verifies that a response payload decodes +// correctly. +func TestDecodeResponseWithPayload(t *testing.T) { + // Build a ComResponse{code: 0} as the inner payload + inner := &pb.ComResponse{Code: 0} + data, err := proto.Marshal(inner) + if err != nil { + t.Fatalf("marshal ComResponse: %v", err) + } + pkt := &pb.WsPacket{Cmd: 10002, Data: data} + + msg := &pb.ComResponse{} + if err := decodeResponse(pkt, msg); err != nil { + t.Fatalf("decodeResponse: %v", err) + } + if msg.GetCode() != 0 { + t.Errorf("code: got %d, want 0", msg.GetCode()) + } +} + +// TestDecodeResponseBadData verifies that corrupt data returns an error. +func TestDecodeResponseBadData(t *testing.T) { + pkt := &pb.WsPacket{Data: []byte{0xff, 0xff, 0xff, 0xff}} + msg := &pb.ComResponse{} + // Invalid wire format should error (may or may not depending on content, + // but definitely garbled). We just ensure it doesn't panic. + _ = decodeResponse(pkt, msg) +} + +// TestCommandIDUniqueness verifies that command IDs are unique across all +// modules (no accidental collisions). +func TestCommandIDUniqueness(t *testing.T) { + allCmds := []uint32{ + CmdTeleOpenCamera, CmdTeleCloseCamera, CmdTelePhotograph, CmdTeleBurst, + CmdTeleStopBurst, CmdTeleStartRecord, CmdTeleStopRecord, + CmdTeleSetExp, CmdTeleGetExp, CmdTeleSetGain, CmdTeleGetGain, + CmdAstroStartCalibration, CmdAstroStopCalibration, + CmdAstroStartGotoDSO, CmdAstroStartGotoSolar, CmdAstroStopGoto, + CmdWideOpenCamera, CmdWideCloseCamera, CmdWidePhotograph, + CmdSystemSetTime, CmdSystemSetLocation, + CmdRGBOn, CmdRGBOff, CmdPowerDown, CmdReboot, + CmdMotorRun, CmdMotorStop, CmdMotorJoystick, + CmdTrackStart, CmdTrackStop, CmdSwitchMainPreview, + CmdFocusAutoFocus, CmdFocusManualSingle, + CmdPanoStartGrid, CmdPanoStop, + CmdTaskStartTask, CmdTaskStopTask, CmdTaskGetDeviceState, + } + seen := make(map[uint32]string) + for _, cmd := range allCmds { + if prev, ok := seen[cmd]; ok { + t.Errorf("command ID %d is duplicated (%s vs %s)", cmd, prev, "current") + } + seen[cmd] = "seen" + } +} + +// TestNewTelescope verifies that New() returns a usable Telescope instance. +func TestNewTelescope(t *testing.T) { + scope := New("test-client") + if scope == nil { + t.Fatal("New() returned nil") + } + if scope.t == nil { + t.Fatal("telescope transport is nil") + } +} + +// TestModuleConstants verify module IDs are non-zero and distinct. +func TestModuleConstants(t *testing.T) { + modules := []uint32{ + ModuleCameraTele, ModuleCameraWide, ModuleAstro, ModuleSystem, + ModuleRGBPower, ModuleMotor, ModuleTrack, ModuleFocus, ModuleNotify, + ModulePanorama, ModuleITips, ModuleShootingSchedule, ModuleTaskCenter, + ModuleParam, ModuleVoiceAssistant, ModuleDevice, + } + seen := make(map[uint32]bool) + for _, m := range modules { + if m == 0 { + t.Errorf("module constant is 0 (ModuleNone)") + } + if seen[m] { + t.Errorf("module constant %d is duplicated", m) + } + seen[m] = true + } +} diff --git a/dwarfctl/internal/api/commands.go b/dwarfctl/internal/api/commands.go new file mode 100644 index 0000000..ef76450 --- /dev/null +++ b/dwarfctl/internal/api/commands.go @@ -0,0 +1,243 @@ +package api + +// Module IDs (WsModuleId enum ordinals, derived from WsCmd.getModuleId ranges). +const ( + ModuleNone = 0 + ModuleCameraTele = 1 + ModuleCameraWide = 2 + ModuleAstro = 3 + ModuleSystem = 4 + ModuleRGBPower = 5 + ModuleMotor = 6 + ModuleTrack = 7 + ModuleFocus = 8 + ModuleNotify = 9 + ModulePanorama = 10 + ModuleITips = 11 + ModuleShootingSchedule = 13 + ModuleTaskCenter = 14 + ModuleParam = 15 + ModuleVoiceAssistant = 16 + ModuleCameraGuide = 17 + ModuleDevice = 18 +) + +// ModuleIDForCmd derives the module_id from a command ID using the same +// range logic as WsCmd.getModuleId() in the original APK. +func ModuleIDForCmd(cmd uint32) uint32 { + switch { + case cmd >= 10000 && cmd < 10500: + return ModuleCameraTele + case cmd >= 11000 && cmd < 11500: + return ModuleAstro + case cmd >= 12000 && cmd < 12500: + return ModuleCameraWide + case cmd >= 13000 && cmd < 13300: + return ModuleSystem + case cmd >= 13500 && cmd < 13800: + return ModuleRGBPower + case cmd >= 14000 && cmd < 14500: + return ModuleMotor + case cmd >= 14800 && cmd < 14900: + return ModuleTrack + case cmd >= 15000 && cmd < 15200: + return ModuleFocus + case cmd >= 15200 && cmd < 15500: + return ModuleNotify + case cmd >= 15500 && cmd < 15600: + return ModulePanorama + case cmd >= 15700 && cmd < 15800: + return ModuleITips + case cmd >= 16100 && cmd < 16400: + return ModuleShootingSchedule + case cmd >= 16400 && cmd < 16600: + return ModuleTaskCenter + case cmd >= 16700 && cmd < 16800: + return ModuleParam + case cmd >= 16800 && cmd < 16900: + return ModuleVoiceAssistant + case cmd >= 17000 && cmd < 17100: + return ModuleDevice + default: + return ModuleNone + } +} + +// Command IDs β€” Camera Tele (MODULE_CAMERA_TELE, 10000–10499). +const ( + CmdTeleOpenCamera = 10000 + CmdTeleCloseCamera = 10001 + CmdTelePhotograph = 10002 + CmdTeleBurst = 10003 + CmdTeleStopBurst = 10004 + CmdTeleStartRecord = 10005 + CmdTeleStopRecord = 10006 + CmdTeleSetExpMode = 10007 + CmdTeleGetExpMode = 10008 + CmdTeleSetExp = 10009 + CmdTeleGetExp = 10010 + CmdTeleSetGainMode = 10011 + CmdTeleGetGainMode = 10012 + CmdTeleSetGain = 10013 + CmdTeleGetGain = 10014 + CmdTeleSetBrightness = 10015 + CmdTeleGetBrightness = 10016 + CmdTeleSetContrast = 10017 + CmdTeleGetContrast = 10018 + CmdTeleSetSaturation = 10019 + CmdTeleGetSaturation = 10020 + CmdTeleSetHue = 10021 + CmdTeleGetHue = 10022 + CmdTeleSetSharpness = 10023 + CmdTeleGetSharpness = 10024 + CmdTeleSetWBMode = 10025 + CmdTeleGetWBMode = 10026 + CmdTeleSetWBScene = 10027 + CmdTeleGetWBScene = 10028 + CmdTeleSetWBCT = 10029 + CmdTeleGetWBCT = 10030 + CmdTeleSetIRCut = 10031 + CmdTeleGetIRCut = 10032 + CmdTeleStartTimelapse = 10033 + CmdTeleStopTimelapse = 10034 + CmdTeleSetAllParams = 10035 + CmdTeleGetAllParams = 10036 + CmdTeleSetFeatureParam = 10037 + CmdTeleGetAllFeatureParams = 10038 + CmdTeleGetWorkingState = 10039 + CmdTeleSetJpgQuality = 10040 + CmdTelePhotoRaw = 10041 + CmdTeleSetRtspBitrate = 10042 + CmdTeleSwitchResolution = 10047 + CmdTeleSwitchFramerate = 10048 + CmdTeleSwitchCropRatio = 10049 + CmdTeleSetPreviewQuality = 10050 +) + +// Camera Wide (MODULE_CAMERA_WIDE, 12000–12499). +const ( + CmdWideOpenCamera = 12000 + CmdWideCloseCamera = 12001 + CmdWideSetExpMode = 12002 + CmdWideGetExpMode = 12003 + CmdWideSetExp = 12004 + CmdWideGetExp = 12005 + CmdWideSetGain = 12006 + CmdWideGetGain = 12007 + CmdWidePhotograph = 12022 + CmdWideBurst = 12023 + CmdWideStopBurst = 12024 + CmdWidePhotoRaw = 12029 + CmdWideStartRecord = 12030 + CmdWideStopRecord = 12031 + CmdWideGetAllParams = 12027 + CmdWideSetAllParams = 12028 +) + +// Astro (MODULE_ASTRO, 11000–11499). +const ( + CmdAstroStartCalibration = 11000 + CmdAstroStopCalibration = 11001 + CmdAstroStartGotoDSO = 11002 + CmdAstroStartGotoSolar = 11003 + CmdAstroStopGoto = 11004 + CmdAstroStartLiveStacking = 11005 + CmdAstroStopLiveStacking = 11006 + CmdAstroStartRawDark = 11007 + CmdAstroStopRawDark = 11008 + CmdAstroGoLive = 11010 + CmdAstroStartOneClickGoto = 11013 + CmdAstroStopOneClickGoto = 11015 + CmdAstroStartEqSolving = 11018 + CmdAstroStopEqSolving = 11019 + CmdAstroStartAiEnhance = 11029 + CmdAstroStopAiEnhance = 11030 + CmdAstroStartMosaic = 11031 + CmdAstroStartSkyFinder = 11047 + CmdAstroStopSkyFinder = 11048 +) + +// System (MODULE_SYSTEM, 13000–13299). +const ( + CmdSystemSetTime = 13000 + CmdSystemSetTimeZone = 13001 + CmdSystemSetMtpMode = 13002 + CmdSystemSetCpuMode = 13003 + CmdSystemSetMasterLock = 13004 + CmdSystemSetLocation = 13010 +) + +// RGB Power (MODULE_RGB_POWER, 13500–13799). +const ( + CmdRGBOn = 13500 + CmdRGBOff = 13501 + CmdPowerDown = 13502 + CmdReboot = 13505 +) + +// Motor constants β€” extended (14001-14005 are inferred from gaps) +const ( + CmdMotorRun = 14000 + CmdMotorGetPosition = 14001 // inferred: missing ID between RUN and STOP + CmdMotorStop = 14002 + CmdMotorReset = 14003 // inferred: missing ID after STOP + CmdMotorChangeSpeed = 14004 // inferred + CmdMotorChangeDirection = 14005 // inferred + CmdMotorJoystick = 14006 + CmdMotorJoystickFixedAngle = 14007 + CmdMotorJoystickStop = 14008 + CmdMotorDualCameraLinkage = 14009 +) + +// Track (MODULE_TRACK, 14800–14899). +const ( + CmdTrackStart = 14800 + CmdTrackStop = 14801 + CmdSentryStart = 14802 + CmdSentryStop = 14803 + CmdSwitchMainPreview = 14809 +) + +// Focus (MODULE_FOCUS, 15000–15199). +const ( + CmdFocusAutoFocus = 15000 + CmdFocusManualSingle = 15001 + CmdFocusStartManualCont = 15002 + CmdFocusStopManualCont = 15003 + CmdFocusStartAstroAF = 15004 + CmdFocusStopAstroAF = 15005 + CmdFocusGetUserInfinity = 15011 + CmdFocusSetUserInfinity = 15012 +) + +// Panorama (MODULE_PANORAMA, 15500–15599). +const ( + CmdPanoStartGrid = 15500 + CmdPanoStop = 15501 + CmdPanoStartStitch = 15503 + CmdPanoStopStitch = 15504 + CmdPanoStartFraming = 15509 + CmdPanoStopFraming = 15510 + CmdPanoResetFraming = 15511 + CmdPanoUpdateFramingRect = 15512 +) + +// Task Center (MODULE_TASK_CENTER, 16400–16599). +const ( + CmdTaskStartTask = 16400 + CmdTaskStopTask = 16401 + CmdTaskSwitchMode = 16402 + CmdTaskSwitchTech = 16403 + CmdTaskGetDeviceState = 16405 +) + +// Notify (MODULE_NOTIFY, 15200–15399) β€” server-pushed, not requestable. +const ( + NotifyTrackResult = 15225 + NotifyStateCaptureRawDark = 15206 + NotifyCalibrationResult = 15256 + NotifyStateAstroGoto = 15211 + NotifyTemperature = 15243 + NotifySDCardInfo = 15203 + NotifyPowerOff = 15229 +) diff --git a/dwarfctl/internal/transport/client.go b/dwarfctl/internal/transport/client.go new file mode 100644 index 0000000..06bbb58 --- /dev/null +++ b/dwarfctl/internal/transport/client.go @@ -0,0 +1,219 @@ +package transport + +import ( + "fmt" + "log" + "sync" + "time" + + "github.com/gorilla/websocket" + pb "github.com/antitbone/dwarfctl/proto" + "google.golang.org/protobuf/proto" +) + +const ( + WsMajorVersion = 2 + WsMinorVersion = 3 + WsPort = 9900 +) + +// MsgType mirrors WsMessageType: request=0, response=1, notification=2, reply=3. +type MsgType uint32 + +const ( + MsgRequest MsgType = 0 + MsgResponse MsgType = 1 + MsgNotification MsgType = 2 + MsgReply MsgType = 3 +) + +// Client is a WebSocket client for the DWARF telescope control plane. +type Client struct { + conn *websocket.Conn + clientID string + deviceID uint32 + mu sync.Mutex + pending map[uint32]chan *pb.WsPacket + notifyChs []chan *pb.WsPacket + done chan struct{} + Debug bool +} + +// NewClient creates a client with the given client_id and device_id. +func NewClient(clientID string, deviceID uint32) *Client { + return &Client{ + clientID: clientID, + deviceID: deviceID, + pending: make(map[uint32]chan *pb.WsPacket), + done: make(chan struct{}), + } +} + +// Connect opens the WebSocket to the telescope. +func (c *Client) Connect(ip string) error { + url := fmt.Sprintf("ws://%s:%d/?client_id=%s", ip, WsPort, c.clientID) + dialer := websocket.Dialer{ + HandshakeTimeout: 10 * time.Second, + } + conn, _, err := dialer.Dial(url, nil) + if err != nil { + return fmt.Errorf("ws dial %s: %w", url, err) + } + c.conn = conn + go c.readLoop() + return nil +} + +// Close shuts down the connection. +func (c *Client) Close() error { + close(c.done) + if c.conn != nil { + return c.conn.Close() + } + return nil +} + +// IsConnected returns true if the WebSocket is open. +func (c *Client) IsConnected() bool { + return c.conn != nil +} + +// readLoop continuously reads WsPacket frames and dispatches them. +func (c *Client) readLoop() { + for { + select { + case <-c.done: + return + default: + } + _, data, err := c.conn.ReadMessage() + if err != nil { + if c.Debug { + log.Printf("[WS] read error: %v", err) + } + return + } + pkt := &pb.WsPacket{} + if err := proto.Unmarshal(data, pkt); err != nil { + if c.Debug { + log.Printf("[WS] unmarshal error: %v (raw %d bytes)", err, len(data)) + } + continue + } + if c.Debug { + log.Printf("[WS] recv cmd=%d module=%d type=%d data=%d bytes", + pkt.GetCmd(), pkt.GetModuleId(), pkt.GetType(), len(pkt.GetData())) + } + // Dispatch based on type. Many telescopes send responses with + // type=0 (default proto3 value) instead of type=1. So we try + // response dispatch for type 0, 1, and 3. + switch MsgType(pkt.GetType()) { + case MsgNotification: + c.dispatchNotification(pkt) + // Also try response dispatch β€” some notifications double as acks + c.dispatchResponse(pkt) + default: + // Covers type=0 (unset), type=1 (response), type=3 (reply) + c.dispatchResponse(pkt) + c.dispatchNotification(pkt) + } + } +} + +// dispatchResponse delivers a response to the pending request waiter. +func (c *Client) dispatchResponse(pkt *pb.WsPacket) { + c.mu.Lock() + ch, ok := c.pending[pkt.GetCmd()] + if ok { + delete(c.pending, pkt.GetCmd()) + } + c.mu.Unlock() + if ok { + ch <- pkt + } +} + +// dispatchNotification fans out to all subscribers. +func (c *Client) dispatchNotification(pkt *pb.WsPacket) { + c.mu.Lock() + chs := make([]chan *pb.WsPacket, len(c.notifyChs)) + copy(chs, c.notifyChs) + c.mu.Unlock() + for _, ch := range chs { + select { + case ch <- pkt: + default: + } + } +} + +// SubscribeNotifications returns a channel for receiving NOTIFY packets. +func (c *Client) SubscribeNotifications() chan *pb.WsPacket { + ch := make(chan *pb.WsPacket, 64) + c.mu.Lock() + c.notifyChs = append(c.notifyChs, ch) + c.mu.Unlock() + return ch +} + +// Send sends a raw command with the given module_id and cmd, carrying +// the serialized inner proto message as data. It returns the response packet. +func (c *Client) Send(moduleID uint32, cmd uint32, data []byte, timeout time.Duration) (*pb.WsPacket, error) { + pkt := &pb.WsPacket{ + MajorVersion: WsMajorVersion, + MinorVersion: WsMinorVersion, + DeviceId: c.deviceID, + ModuleId: moduleID, + Cmd: cmd, + Type: uint32(MsgRequest), + Data: data, + ClientId: c.clientID, + } + raw, err := proto.Marshal(pkt) + if err != nil { + return nil, fmt.Errorf("marshal WsPacket: %w", err) + } + + respCh := make(chan *pb.WsPacket, 1) + c.mu.Lock() + c.pending[cmd] = respCh + c.mu.Unlock() + + if err := c.conn.WriteMessage(websocket.BinaryMessage, raw); err != nil { + c.mu.Lock() + delete(c.pending, cmd) + c.mu.Unlock() + return nil, fmt.Errorf("ws write: %w", err) + } + + select { + case resp := <-respCh: + return resp, nil + case <-time.After(timeout): + c.mu.Lock() + delete(c.pending, cmd) + c.mu.Unlock() + return nil, fmt.Errorf("timeout waiting for response to cmd %d", cmd) + case <-c.done: + return nil, fmt.Errorf("connection closed") + } +} + +// SendNotify sends a command without waiting for a response (fire-and-forget). +func (c *Client) SendNotify(moduleID uint32, cmd uint32, data []byte) error { + pkt := &pb.WsPacket{ + MajorVersion: WsMajorVersion, + MinorVersion: WsMinorVersion, + DeviceId: c.deviceID, + ModuleId: moduleID, + Cmd: cmd, + Type: uint32(MsgRequest), + Data: data, + ClientId: c.clientID, + } + raw, err := proto.Marshal(pkt) + if err != nil { + return err + } + return c.conn.WriteMessage(websocket.BinaryMessage, raw) +} diff --git a/dwarfctl/internal/transport/client_test.go b/dwarfctl/internal/transport/client_test.go new file mode 100644 index 0000000..639493b --- /dev/null +++ b/dwarfctl/internal/transport/client_test.go @@ -0,0 +1,223 @@ +package transport + +import ( + "testing" + "time" + + pb "github.com/antitbone/dwarfctl/proto" + "google.golang.org/protobuf/proto" +) + +// TestEnvelopeRoundTrip verifies that a WsPacket envelope survives a +// marshal β†’ unmarshal round-trip with all fields intact. This is the core +// guarantee for every command sent to the telescope. +func TestEnvelopeRoundTrip(t *testing.T) { + original := &pb.WsPacket{ + MajorVersion: WsMajorVersion, + MinorVersion: WsMinorVersion, + DeviceId: 1, + ModuleId: 6, // MODULE_MOTOR + Cmd: 14006, + Type: uint32(MsgRequest), + Data: []byte{0x08, 0x2a}, // some inner proto bytes + ClientId: "test-client-007", + } + + raw, err := proto.Marshal(original) + if err != nil { + t.Fatalf("marshal WsPacket: %v", err) + } + if len(raw) == 0 { + t.Fatal("marshaled envelope is empty") + } + + decoded := &pb.WsPacket{} + if err := proto.Unmarshal(raw, decoded); err != nil { + t.Fatalf("unmarshal WsPacket: %v", err) + } + + if decoded.GetMajorVersion() != original.GetMajorVersion() { + t.Errorf("major_version: got %d, want %d", decoded.GetMajorVersion(), original.GetMajorVersion()) + } + if decoded.GetMinorVersion() != original.GetMinorVersion() { + t.Errorf("minor_version: got %d, want %d", decoded.GetMinorVersion(), original.GetMinorVersion()) + } + if decoded.GetDeviceId() != original.GetDeviceId() { + t.Errorf("device_id: got %d, want %d", decoded.GetDeviceId(), original.GetDeviceId()) + } + if decoded.GetModuleId() != original.GetModuleId() { + t.Errorf("module_id: got %d, want %d", decoded.GetModuleId(), original.GetModuleId()) + } + if decoded.GetCmd() != original.GetCmd() { + t.Errorf("cmd: got %d, want %d", decoded.GetCmd(), original.GetCmd()) + } + if decoded.GetType() != original.GetType() { + t.Errorf("type: got %d, want %d", decoded.GetType(), original.GetType()) + } + if decoded.GetClientId() != original.GetClientId() { + t.Errorf("client_id: got %q, want %q", decoded.GetClientId(), original.GetClientId()) + } + if string(decoded.GetData()) != string(original.GetData()) { + t.Errorf("data: got %x, want %x", decoded.GetData(), original.GetData()) + } +} + +// TestEnvelopeWithInnerProto verifies that inner proto messages (the Data +// field) encode and decode correctly within the envelope. +func TestEnvelopeWithInnerProto(t *testing.T) { + inner := &pb.ReqMotorServiceJoystick{ + VectorAngle: 90.5, + VectorLength: 0.75, + } + innerBytes, err := proto.Marshal(inner) + if err != nil { + t.Fatalf("marshal inner: %v", err) + } + + envelope := &pb.WsPacket{ + MajorVersion: WsMajorVersion, + MinorVersion: WsMinorVersion, + DeviceId: 1, + ModuleId: 6, + Cmd: 14006, + Type: uint32(MsgRequest), + Data: innerBytes, + ClientId: "dwarfctl-test", + } + raw, err := proto.Marshal(envelope) + if err != nil { + t.Fatalf("marshal envelope: %v", err) + } + + decoded := &pb.WsPacket{} + if err := proto.Unmarshal(raw, decoded); err != nil { + t.Fatalf("unmarshal envelope: %v", err) + } + + // Decode the inner message + innerDecoded := &pb.ReqMotorServiceJoystick{} + if err := proto.Unmarshal(decoded.GetData(), innerDecoded); err != nil { + t.Fatalf("unmarshal inner: %v", err) + } + + if innerDecoded.GetVectorAngle() != 90.5 { + t.Errorf("vector_angle: got %f, want 90.5", innerDecoded.GetVectorAngle()) + } + if innerDecoded.GetVectorLength() != 0.75 { + t.Errorf("vector_length: got %f, want 0.75", innerDecoded.GetVectorLength()) + } +} + +// TestNewClientDefaults verifies that NewClient stores the client_id and +// device_id and initializes the pending map. +func TestNewClientDefaults(t *testing.T) { + c := NewClient("my-client", 2) + if c.clientID != "my-client" { + t.Errorf("clientID: got %q, want %q", c.clientID, "my-client") + } + if c.deviceID != 2 { + t.Errorf("deviceID: got %d, want 2", c.deviceID) + } + if c.pending == nil { + t.Error("pending map is nil") + } + if c.done == nil { + t.Error("done channel is nil") + } + if c.IsConnected() { + t.Error("should not be connected before Connect()") + } +} + +// TestMsgTypeConstants verifies the wire-format type values match the +// original enum (request=0, response=1, notification=2, reply=3). +func TestMsgTypeConstants(t *testing.T) { + cases := map[MsgType]uint32{ + MsgRequest: 0, + MsgResponse: 1, + MsgNotification: 2, + MsgReply: 3, + } + for mt, expected := range cases { + if uint32(mt) != expected { + t.Errorf("MsgType %d: got value %d, want %d", mt, uint32(mt), expected) + } + } +} + +// TestSubscribeNotifications verifies the notification fan-out works: +// multiple subscribers all receive the same packet. +func TestSubscribeNotifications(t *testing.T) { + c := NewClient("test", 1) + ch1 := c.SubscribeNotifications() + ch2 := c.SubscribeNotifications() + + pkt := &pb.WsPacket{Cmd: 15243, Type: uint32(MsgNotification)} + c.dispatchNotification(pkt) + + // Both channels should receive a copy + select { + case got := <-ch1: + if got.GetCmd() != 15243 { + t.Errorf("ch1 cmd: got %d, want 15243", got.GetCmd()) + } + case <-time.After(100 * time.Millisecond): + t.Fatal("ch1 did not receive notification") + } + + select { + case got := <-ch2: + if got.GetCmd() != 15243 { + t.Errorf("ch2 cmd: got %d, want 15243", got.GetCmd()) + } + case <-time.After(100 * time.Millisecond): + t.Fatal("ch2 did not receive notification") + } +} + +// TestEmptyDataEnvelope verifies that commands with no payload (empty Data) +// survive a round-trip. +func TestEmptyDataEnvelope(t *testing.T) { + original := &pb.WsPacket{ + MajorVersion: WsMajorVersion, + MinorVersion: WsMinorVersion, + DeviceId: 1, + ModuleId: 3, // MODULE_ASTRO + Cmd: 11000, + Type: uint32(MsgRequest), + Data: nil, + ClientId: "dwarfctl", + } + raw, err := proto.Marshal(original) + if err != nil { + t.Fatalf("marshal: %v", err) + } + + decoded := &pb.WsPacket{} + if err := proto.Unmarshal(raw, decoded); err != nil { + t.Fatalf("unmarshal: %v", err) + } + if decoded.GetCmd() != 11000 { + t.Errorf("cmd: got %d, want 11000", decoded.GetCmd()) + } + if len(decoded.GetData()) != 0 { + t.Errorf("data should be empty, got %d bytes", len(decoded.GetData())) + } +} + +// TestWsPort verifies the port constant matches the reverse-engineered value. +func TestWsPort(t *testing.T) { + if WsPort != 9900 { + t.Errorf("WsPort: got %d, want 9900", WsPort) + } +} + +// TestVersionConstants verifies the protocol version constants. +func TestVersionConstants(t *testing.T) { + if WsMajorVersion != 2 { + t.Errorf("WsMajorVersion: got %d, want 2", WsMajorVersion) + } + if WsMinorVersion != 3 { + t.Errorf("WsMinorVersion: got %d, want 3", WsMinorVersion) + } +} diff --git a/dwarfctl/proto/astro.proto b/dwarfctl/proto/astro.proto new file mode 100644 index 0000000..0c95d34 --- /dev/null +++ b/dwarfctl/proto/astro.proto @@ -0,0 +1,367 @@ +syntax = "proto3"; +option go_package = "github.com/antitbone/dwarfctl/proto;pb"; +message ReqStartCalibration { + double lon = 1; + double lat = 2; +} + +message ReqStopCalibration { +} + +message ReqGotoDSO { + double ra = 1; + double dec = 2; + string target_name = 3; + bool goto_only = 4; +} + +message ReqGotoSolarSystem { + int32 index = 1; + double lon = 2; + double lat = 3; + string target_name = 4; + bool force_start = 5; +} + +message ResGotoSolarSystem { + int32 code = 1; + ReqGotoSolarSystem req = 2; +} + +message ReqStopGoto { +} + +message ReqCaptureRawLiveStacking { + int32 ir_index = 1; + bool force_start = 2; +} + +message ReqStopCaptureRawLiveStacking { +} + +message ReqFastStopCaptureRawLiveStacking { +} + +message ReqCheckDarkFrame { +} + +message ResCheckDarkFrame { + int32 progress = 1; + int32 code = 2; +} + +message ReqCaptureDarkFrame { + int32 reshoot = 1; +} + +message ReqStopCaptureDarkFrame { +} + +message ReqCaptureDarkFrameWithParam { + int32 exp_index = 1; + int32 gain_index = 2; + int32 bin_index = 3; + int32 cap_size = 4; +} + +message ReqStopCaptureDarkFrameWithParam { +} + +message ReqGetDarkFrameList { +} + +message ResGetDarkFrameInfo { + // oneof _temperature + int32 exp_index = 1; + int32 gain_index = 2; + int32 bin_index = 3; + string exp_name = 4; + string gain_name = 5; + string bin_name = 6; + int32 temperature = 7; +} + +message ResGetDarkFrameInfoList { + int32 code = 1; + repeated ResGetDarkFrameInfo results = 2; +} + +message ReqDelDarkFrame { + int32 exp_index = 1; + int32 gain_index = 2; + int32 bin_index = 3; + int32 temp_value = 4; +} + +message ReqDelDarkFrameList { + repeated ReqDelDarkFrame dark_list = 1; +} + +message ResDelDarkFrameList { + int32 code = 1; +} + +message ReqGoLive { +} + +message ReqTrackSpecialTarget { + int32 index = 1; + double lon = 2; + double lat = 3; +} + +message ReqStopTrackSpecialTarget { +} + +message ReqOneClickGotoDSO { + double ra = 1; + double dec = 2; + string target_name = 3; + double lon = 4; + double lat = 5; + int32 shooting_mode = 6; + bool goto_only = 7; +} + +message ResOneClickGoto { + int32 step = 1; + int32 code = 2; + bool all_end = 3; +} + +message ReqOneClickGotoSolarSystem { + int32 index = 1; + double lon = 2; + double lat = 3; + string target_name = 4; + int32 shooting_mode = 5; + bool force_start = 6; +} + +message ResOneClickGotoSolarSystem { + int32 step = 1; + int32 code = 2; + bool all_end = 3; + ReqOneClickGotoSolarSystem req = 4; +} + +message ReqStopOneClickGoto { +} + +message ReqCaptureWideRawLiveStacking { + bool force_start = 1; +} + +message ReqStopCaptureWideRawLiveStacking { +} + +message ReqFastStopCaptureWideRawLiveStacking { +} + +message ReqStartEqSolving { + double lon = 1; + double lat = 2; +} + +message ResStartEqSolving { + double azi_err = 1; + double alt_err = 2; + int32 code = 3; +} + +message ReqStopEqSolving { +} + +message ReqStartAiEnhance { +} + +message ReqStopAiEnhance { +} + +message ReqStartMosaic { + int32 horizontal_scale = 1; + int32 vertical_scale = 2; + int32 rotation = 3; + int32 ir_index = 4; + bool force_start = 5; +} + +message ReqStartMakeFitsThumb { + string src_dir = 1; +} + +message ReqStopMakeFitsThumb { +} + +message ResMakeFitsThumb { + int32 code = 1; + string src_dir = 2; +} + +message MakeFitsThumbTaskParam { + string src_dir = 1; +} + +message ReqIsImageStackable { + repeated string src_dirs = 1; +} + +message ResIsImageStackable { + int32 code = 1; + repeated ResGetDarkFrameInfo need_dark_frame_info = 2; +} + +message ReqStartRepostprocess { + repeated string src_dirs = 1; +} + +message ReqStopRepostprocess { +} + +message ResRepostprocess { + int32 code = 1; + string result_dir = 2; +} + +message RepostprocessTaskParam { + string result_dir = 1; +} + +message ReqGetAstroShootingTime { + int32 exp_index = 1; + int32 horizontal_scale = 2; + int32 vertical_scale = 3; + int32 rotation = 4; + int32 cam_id = 5; + int32 shooting_mode = 6; +} + +message ResGetAstroShootingTime { + enum AstroMode { + NORMAL = 0; + MOSAIC = 1; + } + int32 code = 1; + int32 shooting_time = 2; + int32 cam_id = 3; + ResGetAstroShootingTime.AstroMode astro_mode = 4; + int32 shooting_mode = 5; +} + +message ReqGetCaliFrameList { + int32 camera_type = 1; + int32 cali_frame_type = 2; +} + +message CaliFrameInfo { + // oneof _filter_type + // oneof _info_id + // oneof _temp_value + string exp_name = 1; + int32 gain = 2; + int32 resolution = 3; + int32 camera_type = 4; + int32 progress = 5; + int32 cali_frame_type = 6; + int32 filter_type = 7; + int32 info_id = 8; + int32 temp_value = 9; +} + +message ResGetCaliFrameList { + int32 code = 1; + repeated CaliFrameInfo list = 2; + int32 camera_type = 3; + int32 cali_frame_type = 4; +} + +message ReqDelCaliFrameList { + repeated int32 info_ids = 1; +} + +message ReqCaptureCaliFrame { + // oneof _filter_type + int32 exp_index = 1; + int32 gain = 2; + int32 resolution = 3; + int32 cap_size = 4; + int32 camera_type = 5; + int32 cali_frame_type = 6; + int32 filter_type = 7; + int32 scene_type = 8; +} + +message ReqStopCaptureCaliFrame { + int32 camera_type = 1; +} + +message CaptureCaliFrameTaskParam { + int32 camera_type = 1; + int32 cali_frame_type = 2; +} + +message ReqGetQuickSetList { + int32 camera_type = 1; +} + +message QuikSetInfo { + string exp_name = 1; + int32 exp_index = 2; + int32 gain = 3; + int32 resolution = 4; + int32 camera_type = 5; + string info_id = 6; +} + +message ResGetQuikSetList { + int32 code = 1; + repeated QuikSetInfo quick_set_list = 2; + int32 camera_type = 3; +} + +message ReqSetQuickSet { + string info_id = 1; +} + +message ResSetQuickSet { + int32 code = 1; + string info_id = 2; +} + +message ReqOneClickShooting { +} + +message ResAstroShooting { + // oneof _exp_name + // oneof _gain + // oneof _resolution + // oneof _filter_type + // oneof _temp_threshold + int32 code = 1; + string exp_name = 2; + int32 gain = 3; + int32 resolution = 4; + int32 filter_type = 5; + int32 temp_threshold = 6; +} + +message ReqStartSkyTargetFinder { + double lon = 1; + double lat = 2; + bool force_restart = 3; + int32 scene_type = 4; +} + +message ResStartSkyTargetFinder { + int32 code = 1; + double zenith_azi = 2; + double zenith_alt = 3; + double center_azi = 4; + double center_alt = 5; + double center_roll = 6; + int32 scene_type = 7; +} + +message ReqStopSkyTargetFinder { +} + diff --git a/dwarfctl/proto/base.proto b/dwarfctl/proto/base.proto new file mode 100644 index 0000000..80bddb2 --- /dev/null +++ b/dwarfctl/proto/base.proto @@ -0,0 +1,51 @@ +syntax = "proto3"; +option go_package = "github.com/antitbone/dwarfctl/proto;pb"; +enum WsMajorVersion { + WS_MAJOR_VERSION_UNKNOWN = 0; + WS_MAJOR_VERSION_NUMBER = 2; +} + +enum WsMinorVersion { + WS_MINOR_VERSION_UNKNOWN = 0; + WS_MINOR_VERSION_NUMBER = 3; +} + +message WsPacket { + uint32 major_version = 1; + uint32 minor_version = 2; + uint32 device_id = 3; + uint32 module_id = 4; + uint32 cmd = 5; + uint32 type = 6; + bytes data = 7; + string client_id = 8; +} + +message ComResponse { + int32 code = 1; +} + +message ComResWithInt { + int32 value = 1; + int32 code = 2; +} + +message ComResWithDouble { + double value = 1; + int32 code = 2; +} + +message ComResWithString { + string str = 1; + int32 code = 2; +} + +message CommonParam { + bool hasAuto = 1; + int32 auto_mode = 2; + int32 id = 3; + int32 mode_index = 4; + int32 index = 5; + double continue_value = 6; +} + diff --git a/dwarfctl/proto/ble.proto b/dwarfctl/proto/ble.proto new file mode 100644 index 0000000..94c4f7d --- /dev/null +++ b/dwarfctl/proto/ble.proto @@ -0,0 +1,202 @@ +syntax = "proto3"; +option go_package = "github.com/antitbone/dwarfctl/proto;pb"; +enum VocalType { + VT_UNKNOWN = 0; + VT_PING = 1; + VT_ECHO = 2; +} + +message ReqGetconfig { + int32 cmd = 1; + string ble_psd = 2; + string client_id = 3; +} + +message ReqAp { + int32 cmd = 1; + int32 wifi_type = 2; + int32 auto_start = 3; + int32 country_list = 4; + string country = 5; + string ble_psd = 6; + string client_id = 7; + bool force_restart = 8; +} + +message ReqSta { + int32 cmd = 1; + int32 auto_start = 2; + string ble_psd = 3; + string ssid = 4; + string psd = 5; + string client_id = 6; +} + +message ReqSetblewifi { + int32 cmd = 1; + int32 mode = 2; + string ble_psd = 3; + string value = 4; + string client_id = 5; +} + +message ReqReset { + int32 cmd = 1; + string client_id = 2; +} + +message ReqGetwifilist { + int32 cmd = 1; + string client_id = 2; +} + +message ReqGetsysteminfo { + int32 cmd = 1; + string client_id = 2; +} + +message ReqCheckFile { + int32 cmd = 1; + string file_path = 2; + string md5 = 3; +} + +message ResCommon { + int32 cmd = 1; + int32 code = 2; +} + +message ResGetconfig { + int32 cmd = 1; + int32 code = 2; + int32 state = 3; + int32 wifi_mode = 4; + int32 ap_mode = 5; + int32 auto_start = 6; + int32 ap_country_list = 7; + string ssid = 8; + string psd = 9; + string ip = 10; + string ap_country = 11; +} + +message ResAp { + int32 cmd = 1; + int32 code = 2; + int32 mode = 3; + string ssid = 4; + string psd = 5; +} + +message ResSta { + int32 cmd = 1; + int32 code = 2; + string ssid = 3; + string psd = 4; + string ip = 5; +} + +message ResSetblewifi { + int32 cmd = 1; + int32 code = 2; + int32 mode = 3; + string value = 4; +} + +message ResReset { + int32 cmd = 1; + int32 code = 2; +} + +message WifiInfo { + int32 signal_level = 1; + string ssid = 2; + string security_capability = 3; +} + +message ResWifilist { + int32 cmd = 1; + int32 code = 2; + repeated string ssid = 4; + repeated WifiInfo wifi_info_list = 5; +} + +message ResGetsysteminfo { + int32 cmd = 1; + int32 code = 2; + int32 protocol_version = 3; + string device = 4; + string mac_address = 5; + string dwarf_ota_version = 6; +} + +message ResReceiveDataError { + int32 cmd = 1; + int32 code = 2; +} + +message ResCheckFile { + int32 cmd = 1; + int32 code = 2; +} + +message ComDwarfMsg { + VocalType vocaltype = 1; +} + +message DwarfPing { + VocalType vocaltype = 1; + uint64 timestamp = 2; + bytes magic = 3; + repeated bytes vocals = 4; + repeated bytes mutes = 5; +} + +message StationModel { + uint32 family = 1; + uint32 revision = 2; +} + +message NifAP { + // oneof _ipv6 + string ifname = 1; + int32 mode = 2; + string country_code = 3; + string ssid = 4; + string sec = 5; + string psw = 6; + bytes ipv4 = 7; + bytes ipv6 = 8; +} + +message NifSTA { + // oneof _ssid + // oneof _psw + // oneof _rssi + // oneof _ipv4 + // oneof _ipv6 + string ifname = 1; + string ssid = 2; + string psw = 3; + int32 rssi = 4; + bytes ipv4 = 5; + bytes ipv6 = 6; +} + +message DwarfEcho { + VocalType vocaltype = 1; + uint64 timestamp = 2; + bytes magic = 3; + uint64 ts_ping = 4; + bytes mac_address = 5; + StationModel model = 6; + string sn = 7; + string name = 8; + string psw = 9; + string fw_version = 10; + string ws_scheme = 11; + uint32 session = 12; + NifAP ap = 13; + NifSTA sta = 14; +} + diff --git a/dwarfctl/proto/camera.proto b/dwarfctl/proto/camera.proto new file mode 100644 index 0000000..7ae1c2a --- /dev/null +++ b/dwarfctl/proto/camera.proto @@ -0,0 +1,216 @@ +syntax = "proto3"; +option go_package = "github.com/antitbone/dwarfctl/proto;pb"; +import "base.proto"; + +message ReqOpenCamera { + bool binning = 1; + int32 rtsp_encode_type = 2; +} + +message ReqCloseCamera { +} + +message ReqPhoto { +} + +message ReqBurstPhoto { + int32 count = 1; +} + +message ReqStopBurstPhoto { +} + +message ReqStartRecord { + int32 encode_type = 1; +} + +message ReqStopRecord { +} + +message ReqSetExpMode { + int32 mode = 1; +} + +message ReqGetExpMode { +} + +message ReqSetExp { + int32 index = 1; +} + +message ReqGetExp { +} + +message ReqSetGainMode { + int32 mode = 1; +} + +message ReqGetGainMode { +} + +message ReqSetGain { + int32 index = 1; +} + +message ReqGetGain { +} + +message ReqSetBrightness { + int32 value = 1; +} + +message ReqGetBrightness { +} + +message ReqSetContrast { + int32 value = 1; +} + +message ReqGetContrast { +} + +message ReqSetHue { + int32 value = 1; +} + +message ReqGetHue { +} + +message ReqSetSaturation { + int32 value = 1; +} + +message ReqGetSaturation { +} + +message ReqSetSharpness { + int32 value = 1; +} + +message ReqGetSharpness { +} + +message ReqSetWBMode { + int32 mode = 1; +} + +message ReqGetWBMode { +} + +message ReqSetWBSence { + int32 value = 1; +} + +message ReqGetWBSence { +} + +message ReqSetWBCT { + int32 index = 1; +} + +message ReqGetWBCT { +} + +message ReqSetIrCut { + int32 value = 1; +} + +message ReqGetIrcut { +} + +message ReqStartTimeLapse { +} + +message ReqStopTimeLapse { +} + +message ReqSetAllParams { + int32 exp_mode = 1; + int32 exp_index = 2; + int32 gain_mode = 3; + int32 gain_index = 4; + int32 ircut_value = 5; + int32 wb_mode = 6; + int32 wb_index_type = 7; + int32 wb_index = 8; + int32 brightness = 9; + int32 contrast = 10; + int32 hue = 11; + int32 saturation = 12; + int32 sharpness = 13; + int32 jpg_quality = 14; +} + +message ReqGetAllParams { +} + +message ResGetAllParams { + repeated CommonParam all_params = 1; + int32 code = 2; +} + +message ReqSetFeatureParams { + CommonParam param = 1; +} + +message ReqGetAllFeatureParams { +} + +message ResGetAllFeatureParams { + repeated CommonParam all_feature_params = 1; + int32 code = 2; +} + +message ReqGetSystemWorkingState { +} + +message ReqSetJpgQuality { + int32 quality = 1; +} + +message ReqGetJpgQuality { +} + +message ReqPhotoRaw { +} + +message ReqSetRtspBitRateType { + int32 bitrate_type = 1; +} + +message ReqDisableAllIspProcessing { +} + +message ReqEnableAllIspProcessing { +} + +message IspModuleState { + int32 module_id = 1; + bool state = 2; +} + +message ReqSetIspModuleState { + repeated IspModuleState module_states = 1; +} + +message ReqGetIspModuleState { + repeated int32 module_ids = 1; +} + +message ReqSwitchResolution { + int32 resolution_index = 1; +} + +message ReqSwitchFrameRate { + int32 fps_index = 1; +} + +message ReqSwitchCropRatio { + int32 crop_ratio = 1; +} + +message ReqSetPreviewQuality { + uint32 level = 1; + uint32 quality = 2; +} + diff --git a/dwarfctl/proto/device.proto b/dwarfctl/proto/device.proto new file mode 100644 index 0000000..124090f --- /dev/null +++ b/dwarfctl/proto/device.proto @@ -0,0 +1,17 @@ +syntax = "proto3"; +option go_package = "github.com/antitbone/dwarfctl/proto;pb"; + +import "base.proto"; + +message ReqLensDefog { + int32 state = 1; +} + +message ReqAutoCooling { + int32 state = 1; +} + +message ReqAutoShutdown { + int32 state = 1; +} + diff --git a/dwarfctl/proto/dwarf.pb.go b/dwarfctl/proto/dwarf.pb.go new file mode 100644 index 0000000..7c20396 --- /dev/null +++ b/dwarfctl/proto/dwarf.pb.go @@ -0,0 +1,24948 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.36.11 +// protoc v7.35.1 +// source: dwarf.proto + +package pb + +import ( + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" + unsafe "unsafe" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +// source: base +type WsMajorVersion int32 + +const ( + WsMajorVersion_WS_MAJOR_VERSION_UNKNOWN WsMajorVersion = 0 + WsMajorVersion_WS_MAJOR_VERSION_NUMBER WsMajorVersion = 2 +) + +// Enum value maps for WsMajorVersion. +var ( + WsMajorVersion_name = map[int32]string{ + 0: "WS_MAJOR_VERSION_UNKNOWN", + 2: "WS_MAJOR_VERSION_NUMBER", + } + WsMajorVersion_value = map[string]int32{ + "WS_MAJOR_VERSION_UNKNOWN": 0, + "WS_MAJOR_VERSION_NUMBER": 2, + } +) + +func (x WsMajorVersion) Enum() *WsMajorVersion { + p := new(WsMajorVersion) + *p = x + return p +} + +func (x WsMajorVersion) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (WsMajorVersion) Descriptor() protoreflect.EnumDescriptor { + return file_dwarf_proto_enumTypes[0].Descriptor() +} + +func (WsMajorVersion) Type() protoreflect.EnumType { + return &file_dwarf_proto_enumTypes[0] +} + +func (x WsMajorVersion) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use WsMajorVersion.Descriptor instead. +func (WsMajorVersion) EnumDescriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{0} +} + +// source: base +type WsMinorVersion int32 + +const ( + WsMinorVersion_WS_MINOR_VERSION_UNKNOWN WsMinorVersion = 0 + WsMinorVersion_WS_MINOR_VERSION_NUMBER WsMinorVersion = 3 +) + +// Enum value maps for WsMinorVersion. +var ( + WsMinorVersion_name = map[int32]string{ + 0: "WS_MINOR_VERSION_UNKNOWN", + 3: "WS_MINOR_VERSION_NUMBER", + } + WsMinorVersion_value = map[string]int32{ + "WS_MINOR_VERSION_UNKNOWN": 0, + "WS_MINOR_VERSION_NUMBER": 3, + } +) + +func (x WsMinorVersion) Enum() *WsMinorVersion { + p := new(WsMinorVersion) + *p = x + return p +} + +func (x WsMinorVersion) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (WsMinorVersion) Descriptor() protoreflect.EnumDescriptor { + return file_dwarf_proto_enumTypes[1].Descriptor() +} + +func (WsMinorVersion) Type() protoreflect.EnumType { + return &file_dwarf_proto_enumTypes[1] +} + +func (x WsMinorVersion) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use WsMinorVersion.Descriptor instead. +func (WsMinorVersion) EnumDescriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{1} +} + +// source: ble +type VocalType int32 + +const ( + VocalType_VT_UNKNOWN VocalType = 0 + VocalType_VT_PING VocalType = 1 + VocalType_VT_ECHO VocalType = 2 +) + +// Enum value maps for VocalType. +var ( + VocalType_name = map[int32]string{ + 0: "VT_UNKNOWN", + 1: "VT_PING", + 2: "VT_ECHO", + } + VocalType_value = map[string]int32{ + "VT_UNKNOWN": 0, + "VT_PING": 1, + "VT_ECHO": 2, + } +) + +func (x VocalType) Enum() *VocalType { + p := new(VocalType) + *p = x + return p +} + +func (x VocalType) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (VocalType) Descriptor() protoreflect.EnumDescriptor { + return file_dwarf_proto_enumTypes[2].Descriptor() +} + +func (VocalType) Type() protoreflect.EnumType { + return &file_dwarf_proto_enumTypes[2] +} + +func (x VocalType) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use VocalType.Descriptor instead. +func (VocalType) EnumDescriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{2} +} + +// source: notify +type OperationState int32 + +const ( + OperationState_OPERATION_STATE_IDLE OperationState = 0 + OperationState_OPERATION_STATE_RUNNING OperationState = 1 + OperationState_OPERATION_STATE_STOPPING OperationState = 2 + OperationState_OPERATION_STATE_STOPPED OperationState = 3 +) + +// Enum value maps for OperationState. +var ( + OperationState_name = map[int32]string{ + 0: "OPERATION_STATE_IDLE", + 1: "OPERATION_STATE_RUNNING", + 2: "OPERATION_STATE_STOPPING", + 3: "OPERATION_STATE_STOPPED", + } + OperationState_value = map[string]int32{ + "OPERATION_STATE_IDLE": 0, + "OPERATION_STATE_RUNNING": 1, + "OPERATION_STATE_STOPPING": 2, + "OPERATION_STATE_STOPPED": 3, + } +) + +func (x OperationState) Enum() *OperationState { + p := new(OperationState) + *p = x + return p +} + +func (x OperationState) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (OperationState) Descriptor() protoreflect.EnumDescriptor { + return file_dwarf_proto_enumTypes[3].Descriptor() +} + +func (OperationState) Type() protoreflect.EnumType { + return &file_dwarf_proto_enumTypes[3] +} + +func (x OperationState) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use OperationState.Descriptor instead. +func (OperationState) EnumDescriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{3} +} + +// source: notify +type AstroState int32 + +const ( + AstroState_ASTRO_STATE_IDLE AstroState = 0 + AstroState_ASTRO_STATE_RUNNING AstroState = 1 + AstroState_ASTRO_STATE_STOPPING AstroState = 2 + AstroState_ASTRO_STATE_STOPPED AstroState = 3 + AstroState_ASTRO_STATE_PLATE_SOLVING AstroState = 4 +) + +// Enum value maps for AstroState. +var ( + AstroState_name = map[int32]string{ + 0: "ASTRO_STATE_IDLE", + 1: "ASTRO_STATE_RUNNING", + 2: "ASTRO_STATE_STOPPING", + 3: "ASTRO_STATE_STOPPED", + 4: "ASTRO_STATE_PLATE_SOLVING", + } + AstroState_value = map[string]int32{ + "ASTRO_STATE_IDLE": 0, + "ASTRO_STATE_RUNNING": 1, + "ASTRO_STATE_STOPPING": 2, + "ASTRO_STATE_STOPPED": 3, + "ASTRO_STATE_PLATE_SOLVING": 4, + } +) + +func (x AstroState) Enum() *AstroState { + p := new(AstroState) + *p = x + return p +} + +func (x AstroState) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (AstroState) Descriptor() protoreflect.EnumDescriptor { + return file_dwarf_proto_enumTypes[4].Descriptor() +} + +func (AstroState) Type() protoreflect.EnumType { + return &file_dwarf_proto_enumTypes[4] +} + +func (x AstroState) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use AstroState.Descriptor instead. +func (AstroState) EnumDescriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{4} +} + +// source: notify +type SentryModeState int32 + +const ( + SentryModeState_SENTRY_MODE_STATE_IDLE SentryModeState = 0 + SentryModeState_SENTRY_MODE_STATE_INIT SentryModeState = 1 + SentryModeState_SENTRY_MODE_STATE_DETECT SentryModeState = 2 + SentryModeState_SENTRY_MODE_STATE_TRACK SentryModeState = 3 + SentryModeState_SENTRY_MODE_STATE_TRACK_FINISH SentryModeState = 4 + SentryModeState_SENTRY_MODE_STATE_STOPPING SentryModeState = 5 +) + +// Enum value maps for SentryModeState. +var ( + SentryModeState_name = map[int32]string{ + 0: "SENTRY_MODE_STATE_IDLE", + 1: "SENTRY_MODE_STATE_INIT", + 2: "SENTRY_MODE_STATE_DETECT", + 3: "SENTRY_MODE_STATE_TRACK", + 4: "SENTRY_MODE_STATE_TRACK_FINISH", + 5: "SENTRY_MODE_STATE_STOPPING", + } + SentryModeState_value = map[string]int32{ + "SENTRY_MODE_STATE_IDLE": 0, + "SENTRY_MODE_STATE_INIT": 1, + "SENTRY_MODE_STATE_DETECT": 2, + "SENTRY_MODE_STATE_TRACK": 3, + "SENTRY_MODE_STATE_TRACK_FINISH": 4, + "SENTRY_MODE_STATE_STOPPING": 5, + } +) + +func (x SentryModeState) Enum() *SentryModeState { + p := new(SentryModeState) + *p = x + return p +} + +func (x SentryModeState) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (SentryModeState) Descriptor() protoreflect.EnumDescriptor { + return file_dwarf_proto_enumTypes[5].Descriptor() +} + +func (SentryModeState) Type() protoreflect.EnumType { + return &file_dwarf_proto_enumTypes[5] +} + +func (x SentryModeState) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use SentryModeState.Descriptor instead. +func (SentryModeState) EnumDescriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{5} +} + +// source: notify +type SentryObjectType int32 + +const ( + SentryObjectType_SENTRY_OBJECT_TYPE_UNKNOWN SentryObjectType = 0 + SentryObjectType_SENTRY_OBJECT_TYPE_UFO SentryObjectType = 1 + SentryObjectType_SENTRY_OBJECT_TYPE_BIRD SentryObjectType = 2 + SentryObjectType_SENTRY_OBJECT_TYPE_PERSON SentryObjectType = 3 + SentryObjectType_SENTRY_OBJECT_TYPE_ANIMAL SentryObjectType = 4 + SentryObjectType_SENTRY_OBJECT_TYPE_VEHICLE SentryObjectType = 5 + SentryObjectType_SENTRY_OBJECT_TYPE_FLYING SentryObjectType = 6 + SentryObjectType_SENTRY_OBJECT_TYPE_BOAT SentryObjectType = 7 +) + +// Enum value maps for SentryObjectType. +var ( + SentryObjectType_name = map[int32]string{ + 0: "SENTRY_OBJECT_TYPE_UNKNOWN", + 1: "SENTRY_OBJECT_TYPE_UFO", + 2: "SENTRY_OBJECT_TYPE_BIRD", + 3: "SENTRY_OBJECT_TYPE_PERSON", + 4: "SENTRY_OBJECT_TYPE_ANIMAL", + 5: "SENTRY_OBJECT_TYPE_VEHICLE", + 6: "SENTRY_OBJECT_TYPE_FLYING", + 7: "SENTRY_OBJECT_TYPE_BOAT", + } + SentryObjectType_value = map[string]int32{ + "SENTRY_OBJECT_TYPE_UNKNOWN": 0, + "SENTRY_OBJECT_TYPE_UFO": 1, + "SENTRY_OBJECT_TYPE_BIRD": 2, + "SENTRY_OBJECT_TYPE_PERSON": 3, + "SENTRY_OBJECT_TYPE_ANIMAL": 4, + "SENTRY_OBJECT_TYPE_VEHICLE": 5, + "SENTRY_OBJECT_TYPE_FLYING": 6, + "SENTRY_OBJECT_TYPE_BOAT": 7, + } +) + +func (x SentryObjectType) Enum() *SentryObjectType { + p := new(SentryObjectType) + *p = x + return p +} + +func (x SentryObjectType) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (SentryObjectType) Descriptor() protoreflect.EnumDescriptor { + return file_dwarf_proto_enumTypes[6].Descriptor() +} + +func (SentryObjectType) Type() protoreflect.EnumType { + return &file_dwarf_proto_enumTypes[6] +} + +func (x SentryObjectType) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use SentryObjectType.Descriptor instead. +func (SentryObjectType) EnumDescriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{6} +} + +// source: schedule +type ShootingScheduleState int32 + +const ( + ShootingScheduleState_SHOOTING_SCHEDULE_STATE_INITIALIZED ShootingScheduleState = 0 + ShootingScheduleState_SHOOTING_SCHEDULE_STATE_PENDING_SHOOT ShootingScheduleState = 1 + ShootingScheduleState_SHOOTING_SCHEDULE_STATE_SHOOTING ShootingScheduleState = 2 + ShootingScheduleState_SHOOTING_SCHEDULE_STATE_COMPLETED ShootingScheduleState = 3 + ShootingScheduleState_SHOOTING_SCHEDULE_STATE_EXPIRED ShootingScheduleState = 4 +) + +// Enum value maps for ShootingScheduleState. +var ( + ShootingScheduleState_name = map[int32]string{ + 0: "SHOOTING_SCHEDULE_STATE_INITIALIZED", + 1: "SHOOTING_SCHEDULE_STATE_PENDING_SHOOT", + 2: "SHOOTING_SCHEDULE_STATE_SHOOTING", + 3: "SHOOTING_SCHEDULE_STATE_COMPLETED", + 4: "SHOOTING_SCHEDULE_STATE_EXPIRED", + } + ShootingScheduleState_value = map[string]int32{ + "SHOOTING_SCHEDULE_STATE_INITIALIZED": 0, + "SHOOTING_SCHEDULE_STATE_PENDING_SHOOT": 1, + "SHOOTING_SCHEDULE_STATE_SHOOTING": 2, + "SHOOTING_SCHEDULE_STATE_COMPLETED": 3, + "SHOOTING_SCHEDULE_STATE_EXPIRED": 4, + } +) + +func (x ShootingScheduleState) Enum() *ShootingScheduleState { + p := new(ShootingScheduleState) + *p = x + return p +} + +func (x ShootingScheduleState) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (ShootingScheduleState) Descriptor() protoreflect.EnumDescriptor { + return file_dwarf_proto_enumTypes[7].Descriptor() +} + +func (ShootingScheduleState) Type() protoreflect.EnumType { + return &file_dwarf_proto_enumTypes[7] +} + +func (x ShootingScheduleState) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use ShootingScheduleState.Descriptor instead. +func (ShootingScheduleState) EnumDescriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{7} +} + +// source: schedule +type ShootingScheduleSyncState int32 + +const ( + ShootingScheduleSyncState_SHOOTING_SCHEDULE_SYNC_STATE_PENDING_SYNC ShootingScheduleSyncState = 0 + ShootingScheduleSyncState_SHOOTING_SCHEDULE_SYNC_STATE_SYNCED ShootingScheduleSyncState = 1 +) + +// Enum value maps for ShootingScheduleSyncState. +var ( + ShootingScheduleSyncState_name = map[int32]string{ + 0: "SHOOTING_SCHEDULE_SYNC_STATE_PENDING_SYNC", + 1: "SHOOTING_SCHEDULE_SYNC_STATE_SYNCED", + } + ShootingScheduleSyncState_value = map[string]int32{ + "SHOOTING_SCHEDULE_SYNC_STATE_PENDING_SYNC": 0, + "SHOOTING_SCHEDULE_SYNC_STATE_SYNCED": 1, + } +) + +func (x ShootingScheduleSyncState) Enum() *ShootingScheduleSyncState { + p := new(ShootingScheduleSyncState) + *p = x + return p +} + +func (x ShootingScheduleSyncState) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (ShootingScheduleSyncState) Descriptor() protoreflect.EnumDescriptor { + return file_dwarf_proto_enumTypes[8].Descriptor() +} + +func (ShootingScheduleSyncState) Type() protoreflect.EnumType { + return &file_dwarf_proto_enumTypes[8] +} + +func (x ShootingScheduleSyncState) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use ShootingScheduleSyncState.Descriptor instead. +func (ShootingScheduleSyncState) EnumDescriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{8} +} + +// source: schedule +type ShootingScheduleResult int32 + +const ( + ShootingScheduleResult_SHOOTING_SCHEDULE_RESULT_PENDING_START ShootingScheduleResult = 0 + ShootingScheduleResult_SHOOTING_SCHEDULE_RESULT_ALL_COMPLETED ShootingScheduleResult = 1 + ShootingScheduleResult_SHOOTING_SCHEDULE_RESULT_PARTIALLY_COMPLETED ShootingScheduleResult = 2 + ShootingScheduleResult_SHOOTING_SCHEDULE_RESULT_ALL_FAILED ShootingScheduleResult = 3 +) + +// Enum value maps for ShootingScheduleResult. +var ( + ShootingScheduleResult_name = map[int32]string{ + 0: "SHOOTING_SCHEDULE_RESULT_PENDING_START", + 1: "SHOOTING_SCHEDULE_RESULT_ALL_COMPLETED", + 2: "SHOOTING_SCHEDULE_RESULT_PARTIALLY_COMPLETED", + 3: "SHOOTING_SCHEDULE_RESULT_ALL_FAILED", + } + ShootingScheduleResult_value = map[string]int32{ + "SHOOTING_SCHEDULE_RESULT_PENDING_START": 0, + "SHOOTING_SCHEDULE_RESULT_ALL_COMPLETED": 1, + "SHOOTING_SCHEDULE_RESULT_PARTIALLY_COMPLETED": 2, + "SHOOTING_SCHEDULE_RESULT_ALL_FAILED": 3, + } +) + +func (x ShootingScheduleResult) Enum() *ShootingScheduleResult { + p := new(ShootingScheduleResult) + *p = x + return p +} + +func (x ShootingScheduleResult) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (ShootingScheduleResult) Descriptor() protoreflect.EnumDescriptor { + return file_dwarf_proto_enumTypes[9].Descriptor() +} + +func (ShootingScheduleResult) Type() protoreflect.EnumType { + return &file_dwarf_proto_enumTypes[9] +} + +func (x ShootingScheduleResult) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use ShootingScheduleResult.Descriptor instead. +func (ShootingScheduleResult) EnumDescriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{9} +} + +// source: schedule +type ScheduleShootingTaskState int32 + +const ( + ScheduleShootingTaskState_SHOOTING_TASK_STATUS_IDLE ScheduleShootingTaskState = 0 + ScheduleShootingTaskState_SHOOTING_TASK_STATUS_SHOOTING ScheduleShootingTaskState = 1 + ScheduleShootingTaskState_SHOOTING_TASK_STATUS_SUCCESS ScheduleShootingTaskState = 2 + ScheduleShootingTaskState_SHOOTING_TASK_STATUS_FAILED ScheduleShootingTaskState = 3 + ScheduleShootingTaskState_SHOOTING_TASK_STATUS_INTERRUPTED ScheduleShootingTaskState = 4 +) + +// Enum value maps for ScheduleShootingTaskState. +var ( + ScheduleShootingTaskState_name = map[int32]string{ + 0: "SHOOTING_TASK_STATUS_IDLE", + 1: "SHOOTING_TASK_STATUS_SHOOTING", + 2: "SHOOTING_TASK_STATUS_SUCCESS", + 3: "SHOOTING_TASK_STATUS_FAILED", + 4: "SHOOTING_TASK_STATUS_INTERRUPTED", + } + ScheduleShootingTaskState_value = map[string]int32{ + "SHOOTING_TASK_STATUS_IDLE": 0, + "SHOOTING_TASK_STATUS_SHOOTING": 1, + "SHOOTING_TASK_STATUS_SUCCESS": 2, + "SHOOTING_TASK_STATUS_FAILED": 3, + "SHOOTING_TASK_STATUS_INTERRUPTED": 4, + } +) + +func (x ScheduleShootingTaskState) Enum() *ScheduleShootingTaskState { + p := new(ScheduleShootingTaskState) + *p = x + return p +} + +func (x ScheduleShootingTaskState) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (ScheduleShootingTaskState) Descriptor() protoreflect.EnumDescriptor { + return file_dwarf_proto_enumTypes[10].Descriptor() +} + +func (ScheduleShootingTaskState) Type() protoreflect.EnumType { + return &file_dwarf_proto_enumTypes[10] +} + +func (x ScheduleShootingTaskState) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use ScheduleShootingTaskState.Descriptor instead. +func (ScheduleShootingTaskState) EnumDescriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{10} +} + +// source: schedule +type ShootingScheduleMode int32 + +const ( + ShootingScheduleMode_SHOOTING_SCHEDULE_MODE_ASTRO_DEEP_SKY ShootingScheduleMode = 0 +) + +// Enum value maps for ShootingScheduleMode. +var ( + ShootingScheduleMode_name = map[int32]string{ + 0: "SHOOTING_SCHEDULE_MODE_ASTRO_DEEP_SKY", + } + ShootingScheduleMode_value = map[string]int32{ + "SHOOTING_SCHEDULE_MODE_ASTRO_DEEP_SKY": 0, + } +) + +func (x ShootingScheduleMode) Enum() *ShootingScheduleMode { + p := new(ShootingScheduleMode) + *p = x + return p +} + +func (x ShootingScheduleMode) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (ShootingScheduleMode) Descriptor() protoreflect.EnumDescriptor { + return file_dwarf_proto_enumTypes[11].Descriptor() +} + +func (ShootingScheduleMode) Type() protoreflect.EnumType { + return &file_dwarf_proto_enumTypes[11] +} + +func (x ShootingScheduleMode) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use ShootingScheduleMode.Descriptor instead. +func (ShootingScheduleMode) EnumDescriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{11} +} + +// source: task_center +type TaskId int32 + +const ( + TaskId_TASK_ID_IDLE TaskId = 0 + TaskId_TASK_ID_PANORAMA_UPLOAD TaskId = 1 + TaskId_TASK_ID_ASTRO_MULTI_STACK_THUMBNAIL_GENERATION TaskId = 2 + TaskId_TASK_ID_ASTRO_MULTI_STACK TaskId = 3 + TaskId_TASK_ID_CAPTURE_CALI_FRAME TaskId = 4 +) + +// Enum value maps for TaskId. +var ( + TaskId_name = map[int32]string{ + 0: "TASK_ID_IDLE", + 1: "TASK_ID_PANORAMA_UPLOAD", + 2: "TASK_ID_ASTRO_MULTI_STACK_THUMBNAIL_GENERATION", + 3: "TASK_ID_ASTRO_MULTI_STACK", + 4: "TASK_ID_CAPTURE_CALI_FRAME", + } + TaskId_value = map[string]int32{ + "TASK_ID_IDLE": 0, + "TASK_ID_PANORAMA_UPLOAD": 1, + "TASK_ID_ASTRO_MULTI_STACK_THUMBNAIL_GENERATION": 2, + "TASK_ID_ASTRO_MULTI_STACK": 3, + "TASK_ID_CAPTURE_CALI_FRAME": 4, + } +) + +func (x TaskId) Enum() *TaskId { + p := new(TaskId) + *p = x + return p +} + +func (x TaskId) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (TaskId) Descriptor() protoreflect.EnumDescriptor { + return file_dwarf_proto_enumTypes[12].Descriptor() +} + +func (TaskId) Type() protoreflect.EnumType { + return &file_dwarf_proto_enumTypes[12] +} + +func (x TaskId) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use TaskId.Descriptor instead. +func (TaskId) EnumDescriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{12} +} + +// source: task_center +type ExclusiveTaskType int32 + +const ( + ExclusiveTaskType_EXCLUSIVE_TYPE_NONE ExclusiveTaskType = 0 + ExclusiveTaskType_EXCLUSIVE_TYPE_CAMERA ExclusiveTaskType = 1 + ExclusiveTaskType_EXCLUSIVE_TYPE_MOTOR ExclusiveTaskType = 2 + ExclusiveTaskType_EXCLUSIVE_TYPE_FOCUS_MOTOR ExclusiveTaskType = 4 + ExclusiveTaskType_EXCLUSIVE_TYPE_SYSTEM_IO ExclusiveTaskType = 8 + ExclusiveTaskType_EXCLUSIVE_TYPE_SYSTEM_WIFI ExclusiveTaskType = 16 +) + +// Enum value maps for ExclusiveTaskType. +var ( + ExclusiveTaskType_name = map[int32]string{ + 0: "EXCLUSIVE_TYPE_NONE", + 1: "EXCLUSIVE_TYPE_CAMERA", + 2: "EXCLUSIVE_TYPE_MOTOR", + 4: "EXCLUSIVE_TYPE_FOCUS_MOTOR", + 8: "EXCLUSIVE_TYPE_SYSTEM_IO", + 16: "EXCLUSIVE_TYPE_SYSTEM_WIFI", + } + ExclusiveTaskType_value = map[string]int32{ + "EXCLUSIVE_TYPE_NONE": 0, + "EXCLUSIVE_TYPE_CAMERA": 1, + "EXCLUSIVE_TYPE_MOTOR": 2, + "EXCLUSIVE_TYPE_FOCUS_MOTOR": 4, + "EXCLUSIVE_TYPE_SYSTEM_IO": 8, + "EXCLUSIVE_TYPE_SYSTEM_WIFI": 16, + } +) + +func (x ExclusiveTaskType) Enum() *ExclusiveTaskType { + p := new(ExclusiveTaskType) + *p = x + return p +} + +func (x ExclusiveTaskType) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (ExclusiveTaskType) Descriptor() protoreflect.EnumDescriptor { + return file_dwarf_proto_enumTypes[13].Descriptor() +} + +func (ExclusiveTaskType) Type() protoreflect.EnumType { + return &file_dwarf_proto_enumTypes[13] +} + +func (x ExclusiveTaskType) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use ExclusiveTaskType.Descriptor instead. +func (ExclusiveTaskType) EnumDescriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{13} +} + +// source: voiceassistant +type VoiceCommandType int32 + +const ( + VoiceCommandType_VOICE_CMD_UNKNOWN VoiceCommandType = 0 + VoiceCommandType_VOICE_CMD_GET_STATUS VoiceCommandType = 1 + VoiceCommandType_VOICE_CMD_TAKE_PHOTO VoiceCommandType = 2 + VoiceCommandType_VOICE_CMD_START_RECORD VoiceCommandType = 3 + VoiceCommandType_VOICE_CMD_STOP_RECORD VoiceCommandType = 4 + VoiceCommandType_VOICE_CMD_START_TIMELAPSE VoiceCommandType = 5 + VoiceCommandType_VOICE_CMD_STOP_TIMELAPSE VoiceCommandType = 6 + VoiceCommandType_VOICE_CMD_START_BURST VoiceCommandType = 7 + VoiceCommandType_VOICE_CMD_STOP_BURST VoiceCommandType = 8 + VoiceCommandType_VOICE_CMD_START_ASTRO VoiceCommandType = 9 + VoiceCommandType_VOICE_CMD_STOP_ASTRO VoiceCommandType = 10 + VoiceCommandType_VOICE_CMD_START_SENTRY VoiceCommandType = 11 + VoiceCommandType_VOICE_CMD_STOP_SENTRY VoiceCommandType = 12 + VoiceCommandType_VOICE_CMD_MOVE VoiceCommandType = 13 + VoiceCommandType_VOICE_CMD_GOTO_TARGET VoiceCommandType = 14 + VoiceCommandType_VOICE_CMD_CALIBRATION VoiceCommandType = 15 + VoiceCommandType_VOICE_CMD_AUTO_FOCUS VoiceCommandType = 16 + VoiceCommandType_VOICE_CMD_STOP_FOCUS VoiceCommandType = 17 + VoiceCommandType_VOICE_CMD_STOP_ALL VoiceCommandType = 18 +) + +// Enum value maps for VoiceCommandType. +var ( + VoiceCommandType_name = map[int32]string{ + 0: "VOICE_CMD_UNKNOWN", + 1: "VOICE_CMD_GET_STATUS", + 2: "VOICE_CMD_TAKE_PHOTO", + 3: "VOICE_CMD_START_RECORD", + 4: "VOICE_CMD_STOP_RECORD", + 5: "VOICE_CMD_START_TIMELAPSE", + 6: "VOICE_CMD_STOP_TIMELAPSE", + 7: "VOICE_CMD_START_BURST", + 8: "VOICE_CMD_STOP_BURST", + 9: "VOICE_CMD_START_ASTRO", + 10: "VOICE_CMD_STOP_ASTRO", + 11: "VOICE_CMD_START_SENTRY", + 12: "VOICE_CMD_STOP_SENTRY", + 13: "VOICE_CMD_MOVE", + 14: "VOICE_CMD_GOTO_TARGET", + 15: "VOICE_CMD_CALIBRATION", + 16: "VOICE_CMD_AUTO_FOCUS", + 17: "VOICE_CMD_STOP_FOCUS", + 18: "VOICE_CMD_STOP_ALL", + } + VoiceCommandType_value = map[string]int32{ + "VOICE_CMD_UNKNOWN": 0, + "VOICE_CMD_GET_STATUS": 1, + "VOICE_CMD_TAKE_PHOTO": 2, + "VOICE_CMD_START_RECORD": 3, + "VOICE_CMD_STOP_RECORD": 4, + "VOICE_CMD_START_TIMELAPSE": 5, + "VOICE_CMD_STOP_TIMELAPSE": 6, + "VOICE_CMD_START_BURST": 7, + "VOICE_CMD_STOP_BURST": 8, + "VOICE_CMD_START_ASTRO": 9, + "VOICE_CMD_STOP_ASTRO": 10, + "VOICE_CMD_START_SENTRY": 11, + "VOICE_CMD_STOP_SENTRY": 12, + "VOICE_CMD_MOVE": 13, + "VOICE_CMD_GOTO_TARGET": 14, + "VOICE_CMD_CALIBRATION": 15, + "VOICE_CMD_AUTO_FOCUS": 16, + "VOICE_CMD_STOP_FOCUS": 17, + "VOICE_CMD_STOP_ALL": 18, + } +) + +func (x VoiceCommandType) Enum() *VoiceCommandType { + p := new(VoiceCommandType) + *p = x + return p +} + +func (x VoiceCommandType) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (VoiceCommandType) Descriptor() protoreflect.EnumDescriptor { + return file_dwarf_proto_enumTypes[14].Descriptor() +} + +func (VoiceCommandType) Type() protoreflect.EnumType { + return &file_dwarf_proto_enumTypes[14] +} + +func (x VoiceCommandType) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use VoiceCommandType.Descriptor instead. +func (VoiceCommandType) EnumDescriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{14} +} + +type ResGetAstroShootingTime_AstroMode int32 + +const ( + ResGetAstroShootingTime_NORMAL ResGetAstroShootingTime_AstroMode = 0 + ResGetAstroShootingTime_MOSAIC ResGetAstroShootingTime_AstroMode = 1 +) + +// Enum value maps for ResGetAstroShootingTime_AstroMode. +var ( + ResGetAstroShootingTime_AstroMode_name = map[int32]string{ + 0: "NORMAL", + 1: "MOSAIC", + } + ResGetAstroShootingTime_AstroMode_value = map[string]int32{ + "NORMAL": 0, + "MOSAIC": 1, + } +) + +func (x ResGetAstroShootingTime_AstroMode) Enum() *ResGetAstroShootingTime_AstroMode { + p := new(ResGetAstroShootingTime_AstroMode) + *p = x + return p +} + +func (x ResGetAstroShootingTime_AstroMode) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (ResGetAstroShootingTime_AstroMode) Descriptor() protoreflect.EnumDescriptor { + return file_dwarf_proto_enumTypes[15].Descriptor() +} + +func (ResGetAstroShootingTime_AstroMode) Type() protoreflect.EnumType { + return &file_dwarf_proto_enumTypes[15] +} + +func (x ResGetAstroShootingTime_AstroMode) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use ResGetAstroShootingTime_AstroMode.Descriptor instead. +func (ResGetAstroShootingTime_AstroMode) EnumDescriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{49, 0} +} + +type CommonProgress_ProgressType int32 + +const ( + CommonProgress_PROGRESS_TYPE_INITING CommonProgress_ProgressType = 0 + CommonProgress_PROGRESS_TYPE_MOSAIC_MOVING CommonProgress_ProgressType = 1 +) + +// Enum value maps for CommonProgress_ProgressType. +var ( + CommonProgress_ProgressType_name = map[int32]string{ + 0: "PROGRESS_TYPE_INITING", + 1: "PROGRESS_TYPE_MOSAIC_MOVING", + } + CommonProgress_ProgressType_value = map[string]int32{ + "PROGRESS_TYPE_INITING": 0, + "PROGRESS_TYPE_MOSAIC_MOVING": 1, + } +) + +func (x CommonProgress_ProgressType) Enum() *CommonProgress_ProgressType { + p := new(CommonProgress_ProgressType) + *p = x + return p +} + +func (x CommonProgress_ProgressType) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CommonProgress_ProgressType) Descriptor() protoreflect.EnumDescriptor { + return file_dwarf_proto_enumTypes[16].Descriptor() +} + +func (CommonProgress_ProgressType) Type() protoreflect.EnumType { + return &file_dwarf_proto_enumTypes[16] +} + +func (x CommonProgress_ProgressType) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use CommonProgress_ProgressType.Descriptor instead. +func (CommonProgress_ProgressType) EnumDescriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{220, 0} +} + +type StateSystemResourceOccupation_TaskId int32 + +const ( + StateSystemResourceOccupation_IDLE StateSystemResourceOccupation_TaskId = 0 + StateSystemResourceOccupation_PANORAMA_UPLOAD StateSystemResourceOccupation_TaskId = 1 + StateSystemResourceOccupation_ASTRO_MULTI_STACK StateSystemResourceOccupation_TaskId = 2 +) + +// Enum value maps for StateSystemResourceOccupation_TaskId. +var ( + StateSystemResourceOccupation_TaskId_name = map[int32]string{ + 0: "IDLE", + 1: "PANORAMA_UPLOAD", + 2: "ASTRO_MULTI_STACK", + } + StateSystemResourceOccupation_TaskId_value = map[string]int32{ + "IDLE": 0, + "PANORAMA_UPLOAD": 1, + "ASTRO_MULTI_STACK": 2, + } +) + +func (x StateSystemResourceOccupation_TaskId) Enum() *StateSystemResourceOccupation_TaskId { + p := new(StateSystemResourceOccupation_TaskId) + *p = x + return p +} + +func (x StateSystemResourceOccupation_TaskId) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (StateSystemResourceOccupation_TaskId) Descriptor() protoreflect.EnumDescriptor { + return file_dwarf_proto_enumTypes[17].Descriptor() +} + +func (StateSystemResourceOccupation_TaskId) Type() protoreflect.EnumType { + return &file_dwarf_proto_enumTypes[17] +} + +func (x StateSystemResourceOccupation_TaskId) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use StateSystemResourceOccupation_TaskId.Descriptor instead. +func (StateSystemResourceOccupation_TaskId) EnumDescriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{231, 0} +} + +type BodyStatus_BodyStatusEnum int32 + +const ( + BodyStatus_UNKNOWN BodyStatus_BodyStatusEnum = 0 + BodyStatus_EQ_MODE BodyStatus_BodyStatusEnum = 1 + BodyStatus_AZI_MODE BodyStatus_BodyStatusEnum = 2 +) + +// Enum value maps for BodyStatus_BodyStatusEnum. +var ( + BodyStatus_BodyStatusEnum_name = map[int32]string{ + 0: "UNKNOWN", + 1: "EQ_MODE", + 2: "AZI_MODE", + } + BodyStatus_BodyStatusEnum_value = map[string]int32{ + "UNKNOWN": 0, + "EQ_MODE": 1, + "AZI_MODE": 2, + } +) + +func (x BodyStatus_BodyStatusEnum) Enum() *BodyStatus_BodyStatusEnum { + p := new(BodyStatus_BodyStatusEnum) + *p = x + return p +} + +func (x BodyStatus_BodyStatusEnum) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (BodyStatus_BodyStatusEnum) Descriptor() protoreflect.EnumDescriptor { + return file_dwarf_proto_enumTypes[18].Descriptor() +} + +func (BodyStatus_BodyStatusEnum) Type() protoreflect.EnumType { + return &file_dwarf_proto_enumTypes[18] +} + +func (x BodyStatus_BodyStatusEnum) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use BodyStatus_BodyStatusEnum.Descriptor instead. +func (BodyStatus_BodyStatusEnum) EnumDescriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{232, 0} +} + +// source: astro +type ReqStartCalibration struct { + state protoimpl.MessageState `protogen:"open.v1"` + Lon float64 `protobuf:"fixed64,1,opt,name=lon,proto3" json:"lon,omitempty"` + Lat float64 `protobuf:"fixed64,2,opt,name=lat,proto3" json:"lat,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStartCalibration) Reset() { + *x = ReqStartCalibration{} + mi := &file_dwarf_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStartCalibration) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStartCalibration) ProtoMessage() {} + +func (x *ReqStartCalibration) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[0] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStartCalibration.ProtoReflect.Descriptor instead. +func (*ReqStartCalibration) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{0} +} + +func (x *ReqStartCalibration) GetLon() float64 { + if x != nil { + return x.Lon + } + return 0 +} + +func (x *ReqStartCalibration) GetLat() float64 { + if x != nil { + return x.Lat + } + return 0 +} + +// source: astro +type ReqStopCalibration struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStopCalibration) Reset() { + *x = ReqStopCalibration{} + mi := &file_dwarf_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStopCalibration) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStopCalibration) ProtoMessage() {} + +func (x *ReqStopCalibration) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[1] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStopCalibration.ProtoReflect.Descriptor instead. +func (*ReqStopCalibration) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{1} +} + +// source: astro +type ReqGotoDSO struct { + state protoimpl.MessageState `protogen:"open.v1"` + Ra float64 `protobuf:"fixed64,1,opt,name=ra,proto3" json:"ra,omitempty"` + Dec float64 `protobuf:"fixed64,2,opt,name=dec,proto3" json:"dec,omitempty"` + TargetName string `protobuf:"bytes,3,opt,name=target_name,json=targetName,proto3" json:"target_name,omitempty"` + GotoOnly bool `protobuf:"varint,4,opt,name=goto_only,json=gotoOnly,proto3" json:"goto_only,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGotoDSO) Reset() { + *x = ReqGotoDSO{} + mi := &file_dwarf_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGotoDSO) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGotoDSO) ProtoMessage() {} + +func (x *ReqGotoDSO) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[2] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGotoDSO.ProtoReflect.Descriptor instead. +func (*ReqGotoDSO) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{2} +} + +func (x *ReqGotoDSO) GetRa() float64 { + if x != nil { + return x.Ra + } + return 0 +} + +func (x *ReqGotoDSO) GetDec() float64 { + if x != nil { + return x.Dec + } + return 0 +} + +func (x *ReqGotoDSO) GetTargetName() string { + if x != nil { + return x.TargetName + } + return "" +} + +func (x *ReqGotoDSO) GetGotoOnly() bool { + if x != nil { + return x.GotoOnly + } + return false +} + +// source: astro +type ReqGotoSolarSystem struct { + state protoimpl.MessageState `protogen:"open.v1"` + Index int32 `protobuf:"varint,1,opt,name=index,proto3" json:"index,omitempty"` + Lon float64 `protobuf:"fixed64,2,opt,name=lon,proto3" json:"lon,omitempty"` + Lat float64 `protobuf:"fixed64,3,opt,name=lat,proto3" json:"lat,omitempty"` + TargetName string `protobuf:"bytes,4,opt,name=target_name,json=targetName,proto3" json:"target_name,omitempty"` + ForceStart bool `protobuf:"varint,5,opt,name=force_start,json=forceStart,proto3" json:"force_start,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGotoSolarSystem) Reset() { + *x = ReqGotoSolarSystem{} + mi := &file_dwarf_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGotoSolarSystem) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGotoSolarSystem) ProtoMessage() {} + +func (x *ReqGotoSolarSystem) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[3] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGotoSolarSystem.ProtoReflect.Descriptor instead. +func (*ReqGotoSolarSystem) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{3} +} + +func (x *ReqGotoSolarSystem) GetIndex() int32 { + if x != nil { + return x.Index + } + return 0 +} + +func (x *ReqGotoSolarSystem) GetLon() float64 { + if x != nil { + return x.Lon + } + return 0 +} + +func (x *ReqGotoSolarSystem) GetLat() float64 { + if x != nil { + return x.Lat + } + return 0 +} + +func (x *ReqGotoSolarSystem) GetTargetName() string { + if x != nil { + return x.TargetName + } + return "" +} + +func (x *ReqGotoSolarSystem) GetForceStart() bool { + if x != nil { + return x.ForceStart + } + return false +} + +// source: astro +type ResGotoSolarSystem struct { + state protoimpl.MessageState `protogen:"open.v1"` + Code int32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"` + Req *ReqGotoSolarSystem `protobuf:"bytes,2,opt,name=req,proto3" json:"req,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResGotoSolarSystem) Reset() { + *x = ResGotoSolarSystem{} + mi := &file_dwarf_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResGotoSolarSystem) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResGotoSolarSystem) ProtoMessage() {} + +func (x *ResGotoSolarSystem) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[4] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResGotoSolarSystem.ProtoReflect.Descriptor instead. +func (*ResGotoSolarSystem) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{4} +} + +func (x *ResGotoSolarSystem) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResGotoSolarSystem) GetReq() *ReqGotoSolarSystem { + if x != nil { + return x.Req + } + return nil +} + +// source: astro +type ReqStopGoto struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStopGoto) Reset() { + *x = ReqStopGoto{} + mi := &file_dwarf_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStopGoto) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStopGoto) ProtoMessage() {} + +func (x *ReqStopGoto) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[5] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStopGoto.ProtoReflect.Descriptor instead. +func (*ReqStopGoto) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{5} +} + +// source: astro +type ReqCaptureRawLiveStacking struct { + state protoimpl.MessageState `protogen:"open.v1"` + IrIndex int32 `protobuf:"varint,1,opt,name=ir_index,json=irIndex,proto3" json:"ir_index,omitempty"` + ForceStart bool `protobuf:"varint,2,opt,name=force_start,json=forceStart,proto3" json:"force_start,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqCaptureRawLiveStacking) Reset() { + *x = ReqCaptureRawLiveStacking{} + mi := &file_dwarf_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqCaptureRawLiveStacking) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqCaptureRawLiveStacking) ProtoMessage() {} + +func (x *ReqCaptureRawLiveStacking) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[6] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqCaptureRawLiveStacking.ProtoReflect.Descriptor instead. +func (*ReqCaptureRawLiveStacking) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{6} +} + +func (x *ReqCaptureRawLiveStacking) GetIrIndex() int32 { + if x != nil { + return x.IrIndex + } + return 0 +} + +func (x *ReqCaptureRawLiveStacking) GetForceStart() bool { + if x != nil { + return x.ForceStart + } + return false +} + +// source: astro +type ReqStopCaptureRawLiveStacking struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStopCaptureRawLiveStacking) Reset() { + *x = ReqStopCaptureRawLiveStacking{} + mi := &file_dwarf_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStopCaptureRawLiveStacking) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStopCaptureRawLiveStacking) ProtoMessage() {} + +func (x *ReqStopCaptureRawLiveStacking) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[7] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStopCaptureRawLiveStacking.ProtoReflect.Descriptor instead. +func (*ReqStopCaptureRawLiveStacking) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{7} +} + +// source: astro +type ReqFastStopCaptureRawLiveStacking struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqFastStopCaptureRawLiveStacking) Reset() { + *x = ReqFastStopCaptureRawLiveStacking{} + mi := &file_dwarf_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqFastStopCaptureRawLiveStacking) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqFastStopCaptureRawLiveStacking) ProtoMessage() {} + +func (x *ReqFastStopCaptureRawLiveStacking) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[8] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqFastStopCaptureRawLiveStacking.ProtoReflect.Descriptor instead. +func (*ReqFastStopCaptureRawLiveStacking) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{8} +} + +// source: astro +type ReqCheckDarkFrame struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqCheckDarkFrame) Reset() { + *x = ReqCheckDarkFrame{} + mi := &file_dwarf_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqCheckDarkFrame) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqCheckDarkFrame) ProtoMessage() {} + +func (x *ReqCheckDarkFrame) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[9] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqCheckDarkFrame.ProtoReflect.Descriptor instead. +func (*ReqCheckDarkFrame) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{9} +} + +// source: astro +type ResCheckDarkFrame struct { + state protoimpl.MessageState `protogen:"open.v1"` + Progress int32 `protobuf:"varint,1,opt,name=progress,proto3" json:"progress,omitempty"` + Code int32 `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResCheckDarkFrame) Reset() { + *x = ResCheckDarkFrame{} + mi := &file_dwarf_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResCheckDarkFrame) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResCheckDarkFrame) ProtoMessage() {} + +func (x *ResCheckDarkFrame) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[10] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResCheckDarkFrame.ProtoReflect.Descriptor instead. +func (*ResCheckDarkFrame) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{10} +} + +func (x *ResCheckDarkFrame) GetProgress() int32 { + if x != nil { + return x.Progress + } + return 0 +} + +func (x *ResCheckDarkFrame) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +// source: astro +type ReqCaptureDarkFrame struct { + state protoimpl.MessageState `protogen:"open.v1"` + Reshoot int32 `protobuf:"varint,1,opt,name=reshoot,proto3" json:"reshoot,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqCaptureDarkFrame) Reset() { + *x = ReqCaptureDarkFrame{} + mi := &file_dwarf_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqCaptureDarkFrame) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqCaptureDarkFrame) ProtoMessage() {} + +func (x *ReqCaptureDarkFrame) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[11] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqCaptureDarkFrame.ProtoReflect.Descriptor instead. +func (*ReqCaptureDarkFrame) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{11} +} + +func (x *ReqCaptureDarkFrame) GetReshoot() int32 { + if x != nil { + return x.Reshoot + } + return 0 +} + +// source: astro +type ReqStopCaptureDarkFrame struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStopCaptureDarkFrame) Reset() { + *x = ReqStopCaptureDarkFrame{} + mi := &file_dwarf_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStopCaptureDarkFrame) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStopCaptureDarkFrame) ProtoMessage() {} + +func (x *ReqStopCaptureDarkFrame) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[12] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStopCaptureDarkFrame.ProtoReflect.Descriptor instead. +func (*ReqStopCaptureDarkFrame) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{12} +} + +// source: astro +type ReqCaptureDarkFrameWithParam struct { + state protoimpl.MessageState `protogen:"open.v1"` + ExpIndex int32 `protobuf:"varint,1,opt,name=exp_index,json=expIndex,proto3" json:"exp_index,omitempty"` + GainIndex int32 `protobuf:"varint,2,opt,name=gain_index,json=gainIndex,proto3" json:"gain_index,omitempty"` + BinIndex int32 `protobuf:"varint,3,opt,name=bin_index,json=binIndex,proto3" json:"bin_index,omitempty"` + CapSize int32 `protobuf:"varint,4,opt,name=cap_size,json=capSize,proto3" json:"cap_size,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqCaptureDarkFrameWithParam) Reset() { + *x = ReqCaptureDarkFrameWithParam{} + mi := &file_dwarf_proto_msgTypes[13] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqCaptureDarkFrameWithParam) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqCaptureDarkFrameWithParam) ProtoMessage() {} + +func (x *ReqCaptureDarkFrameWithParam) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[13] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqCaptureDarkFrameWithParam.ProtoReflect.Descriptor instead. +func (*ReqCaptureDarkFrameWithParam) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{13} +} + +func (x *ReqCaptureDarkFrameWithParam) GetExpIndex() int32 { + if x != nil { + return x.ExpIndex + } + return 0 +} + +func (x *ReqCaptureDarkFrameWithParam) GetGainIndex() int32 { + if x != nil { + return x.GainIndex + } + return 0 +} + +func (x *ReqCaptureDarkFrameWithParam) GetBinIndex() int32 { + if x != nil { + return x.BinIndex + } + return 0 +} + +func (x *ReqCaptureDarkFrameWithParam) GetCapSize() int32 { + if x != nil { + return x.CapSize + } + return 0 +} + +// source: astro +type ReqStopCaptureDarkFrameWithParam struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStopCaptureDarkFrameWithParam) Reset() { + *x = ReqStopCaptureDarkFrameWithParam{} + mi := &file_dwarf_proto_msgTypes[14] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStopCaptureDarkFrameWithParam) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStopCaptureDarkFrameWithParam) ProtoMessage() {} + +func (x *ReqStopCaptureDarkFrameWithParam) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[14] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStopCaptureDarkFrameWithParam.ProtoReflect.Descriptor instead. +func (*ReqStopCaptureDarkFrameWithParam) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{14} +} + +// source: astro +type ReqGetDarkFrameList struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGetDarkFrameList) Reset() { + *x = ReqGetDarkFrameList{} + mi := &file_dwarf_proto_msgTypes[15] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGetDarkFrameList) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGetDarkFrameList) ProtoMessage() {} + +func (x *ReqGetDarkFrameList) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[15] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGetDarkFrameList.ProtoReflect.Descriptor instead. +func (*ReqGetDarkFrameList) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{15} +} + +// source: astro +type ResGetDarkFrameInfo struct { + state protoimpl.MessageState `protogen:"open.v1"` + // oneof _temperature + ExpIndex int32 `protobuf:"varint,1,opt,name=exp_index,json=expIndex,proto3" json:"exp_index,omitempty"` + GainIndex int32 `protobuf:"varint,2,opt,name=gain_index,json=gainIndex,proto3" json:"gain_index,omitempty"` + BinIndex int32 `protobuf:"varint,3,opt,name=bin_index,json=binIndex,proto3" json:"bin_index,omitempty"` + ExpName string `protobuf:"bytes,4,opt,name=exp_name,json=expName,proto3" json:"exp_name,omitempty"` + GainName string `protobuf:"bytes,5,opt,name=gain_name,json=gainName,proto3" json:"gain_name,omitempty"` + BinName string `protobuf:"bytes,6,opt,name=bin_name,json=binName,proto3" json:"bin_name,omitempty"` + Temperature int32 `protobuf:"varint,7,opt,name=temperature,proto3" json:"temperature,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResGetDarkFrameInfo) Reset() { + *x = ResGetDarkFrameInfo{} + mi := &file_dwarf_proto_msgTypes[16] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResGetDarkFrameInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResGetDarkFrameInfo) ProtoMessage() {} + +func (x *ResGetDarkFrameInfo) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[16] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResGetDarkFrameInfo.ProtoReflect.Descriptor instead. +func (*ResGetDarkFrameInfo) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{16} +} + +func (x *ResGetDarkFrameInfo) GetExpIndex() int32 { + if x != nil { + return x.ExpIndex + } + return 0 +} + +func (x *ResGetDarkFrameInfo) GetGainIndex() int32 { + if x != nil { + return x.GainIndex + } + return 0 +} + +func (x *ResGetDarkFrameInfo) GetBinIndex() int32 { + if x != nil { + return x.BinIndex + } + return 0 +} + +func (x *ResGetDarkFrameInfo) GetExpName() string { + if x != nil { + return x.ExpName + } + return "" +} + +func (x *ResGetDarkFrameInfo) GetGainName() string { + if x != nil { + return x.GainName + } + return "" +} + +func (x *ResGetDarkFrameInfo) GetBinName() string { + if x != nil { + return x.BinName + } + return "" +} + +func (x *ResGetDarkFrameInfo) GetTemperature() int32 { + if x != nil { + return x.Temperature + } + return 0 +} + +// source: astro +type ResGetDarkFrameInfoList struct { + state protoimpl.MessageState `protogen:"open.v1"` + Code int32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"` + Results []*ResGetDarkFrameInfo `protobuf:"bytes,2,rep,name=results,proto3" json:"results,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResGetDarkFrameInfoList) Reset() { + *x = ResGetDarkFrameInfoList{} + mi := &file_dwarf_proto_msgTypes[17] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResGetDarkFrameInfoList) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResGetDarkFrameInfoList) ProtoMessage() {} + +func (x *ResGetDarkFrameInfoList) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[17] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResGetDarkFrameInfoList.ProtoReflect.Descriptor instead. +func (*ResGetDarkFrameInfoList) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{17} +} + +func (x *ResGetDarkFrameInfoList) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResGetDarkFrameInfoList) GetResults() []*ResGetDarkFrameInfo { + if x != nil { + return x.Results + } + return nil +} + +// source: astro +type ReqDelDarkFrame struct { + state protoimpl.MessageState `protogen:"open.v1"` + ExpIndex int32 `protobuf:"varint,1,opt,name=exp_index,json=expIndex,proto3" json:"exp_index,omitempty"` + GainIndex int32 `protobuf:"varint,2,opt,name=gain_index,json=gainIndex,proto3" json:"gain_index,omitempty"` + BinIndex int32 `protobuf:"varint,3,opt,name=bin_index,json=binIndex,proto3" json:"bin_index,omitempty"` + TempValue int32 `protobuf:"varint,4,opt,name=temp_value,json=tempValue,proto3" json:"temp_value,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqDelDarkFrame) Reset() { + *x = ReqDelDarkFrame{} + mi := &file_dwarf_proto_msgTypes[18] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqDelDarkFrame) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqDelDarkFrame) ProtoMessage() {} + +func (x *ReqDelDarkFrame) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[18] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqDelDarkFrame.ProtoReflect.Descriptor instead. +func (*ReqDelDarkFrame) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{18} +} + +func (x *ReqDelDarkFrame) GetExpIndex() int32 { + if x != nil { + return x.ExpIndex + } + return 0 +} + +func (x *ReqDelDarkFrame) GetGainIndex() int32 { + if x != nil { + return x.GainIndex + } + return 0 +} + +func (x *ReqDelDarkFrame) GetBinIndex() int32 { + if x != nil { + return x.BinIndex + } + return 0 +} + +func (x *ReqDelDarkFrame) GetTempValue() int32 { + if x != nil { + return x.TempValue + } + return 0 +} + +// source: astro +type ReqDelDarkFrameList struct { + state protoimpl.MessageState `protogen:"open.v1"` + DarkList []*ReqDelDarkFrame `protobuf:"bytes,1,rep,name=dark_list,json=darkList,proto3" json:"dark_list,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqDelDarkFrameList) Reset() { + *x = ReqDelDarkFrameList{} + mi := &file_dwarf_proto_msgTypes[19] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqDelDarkFrameList) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqDelDarkFrameList) ProtoMessage() {} + +func (x *ReqDelDarkFrameList) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[19] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqDelDarkFrameList.ProtoReflect.Descriptor instead. +func (*ReqDelDarkFrameList) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{19} +} + +func (x *ReqDelDarkFrameList) GetDarkList() []*ReqDelDarkFrame { + if x != nil { + return x.DarkList + } + return nil +} + +// source: astro +type ResDelDarkFrameList struct { + state protoimpl.MessageState `protogen:"open.v1"` + Code int32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResDelDarkFrameList) Reset() { + *x = ResDelDarkFrameList{} + mi := &file_dwarf_proto_msgTypes[20] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResDelDarkFrameList) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResDelDarkFrameList) ProtoMessage() {} + +func (x *ResDelDarkFrameList) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[20] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResDelDarkFrameList.ProtoReflect.Descriptor instead. +func (*ResDelDarkFrameList) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{20} +} + +func (x *ResDelDarkFrameList) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +// source: astro +type ReqGoLive struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGoLive) Reset() { + *x = ReqGoLive{} + mi := &file_dwarf_proto_msgTypes[21] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGoLive) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGoLive) ProtoMessage() {} + +func (x *ReqGoLive) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[21] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGoLive.ProtoReflect.Descriptor instead. +func (*ReqGoLive) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{21} +} + +// source: astro +type ReqTrackSpecialTarget struct { + state protoimpl.MessageState `protogen:"open.v1"` + Index int32 `protobuf:"varint,1,opt,name=index,proto3" json:"index,omitempty"` + Lon float64 `protobuf:"fixed64,2,opt,name=lon,proto3" json:"lon,omitempty"` + Lat float64 `protobuf:"fixed64,3,opt,name=lat,proto3" json:"lat,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqTrackSpecialTarget) Reset() { + *x = ReqTrackSpecialTarget{} + mi := &file_dwarf_proto_msgTypes[22] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqTrackSpecialTarget) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqTrackSpecialTarget) ProtoMessage() {} + +func (x *ReqTrackSpecialTarget) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[22] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqTrackSpecialTarget.ProtoReflect.Descriptor instead. +func (*ReqTrackSpecialTarget) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{22} +} + +func (x *ReqTrackSpecialTarget) GetIndex() int32 { + if x != nil { + return x.Index + } + return 0 +} + +func (x *ReqTrackSpecialTarget) GetLon() float64 { + if x != nil { + return x.Lon + } + return 0 +} + +func (x *ReqTrackSpecialTarget) GetLat() float64 { + if x != nil { + return x.Lat + } + return 0 +} + +// source: astro +type ReqStopTrackSpecialTarget struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStopTrackSpecialTarget) Reset() { + *x = ReqStopTrackSpecialTarget{} + mi := &file_dwarf_proto_msgTypes[23] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStopTrackSpecialTarget) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStopTrackSpecialTarget) ProtoMessage() {} + +func (x *ReqStopTrackSpecialTarget) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[23] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStopTrackSpecialTarget.ProtoReflect.Descriptor instead. +func (*ReqStopTrackSpecialTarget) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{23} +} + +// source: astro +type ReqOneClickGotoDSO struct { + state protoimpl.MessageState `protogen:"open.v1"` + Ra float64 `protobuf:"fixed64,1,opt,name=ra,proto3" json:"ra,omitempty"` + Dec float64 `protobuf:"fixed64,2,opt,name=dec,proto3" json:"dec,omitempty"` + TargetName string `protobuf:"bytes,3,opt,name=target_name,json=targetName,proto3" json:"target_name,omitempty"` + Lon float64 `protobuf:"fixed64,4,opt,name=lon,proto3" json:"lon,omitempty"` + Lat float64 `protobuf:"fixed64,5,opt,name=lat,proto3" json:"lat,omitempty"` + ShootingMode int32 `protobuf:"varint,6,opt,name=shooting_mode,json=shootingMode,proto3" json:"shooting_mode,omitempty"` + GotoOnly bool `protobuf:"varint,7,opt,name=goto_only,json=gotoOnly,proto3" json:"goto_only,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqOneClickGotoDSO) Reset() { + *x = ReqOneClickGotoDSO{} + mi := &file_dwarf_proto_msgTypes[24] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqOneClickGotoDSO) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqOneClickGotoDSO) ProtoMessage() {} + +func (x *ReqOneClickGotoDSO) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[24] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqOneClickGotoDSO.ProtoReflect.Descriptor instead. +func (*ReqOneClickGotoDSO) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{24} +} + +func (x *ReqOneClickGotoDSO) GetRa() float64 { + if x != nil { + return x.Ra + } + return 0 +} + +func (x *ReqOneClickGotoDSO) GetDec() float64 { + if x != nil { + return x.Dec + } + return 0 +} + +func (x *ReqOneClickGotoDSO) GetTargetName() string { + if x != nil { + return x.TargetName + } + return "" +} + +func (x *ReqOneClickGotoDSO) GetLon() float64 { + if x != nil { + return x.Lon + } + return 0 +} + +func (x *ReqOneClickGotoDSO) GetLat() float64 { + if x != nil { + return x.Lat + } + return 0 +} + +func (x *ReqOneClickGotoDSO) GetShootingMode() int32 { + if x != nil { + return x.ShootingMode + } + return 0 +} + +func (x *ReqOneClickGotoDSO) GetGotoOnly() bool { + if x != nil { + return x.GotoOnly + } + return false +} + +// source: astro +type ResOneClickGoto struct { + state protoimpl.MessageState `protogen:"open.v1"` + Step int32 `protobuf:"varint,1,opt,name=step,proto3" json:"step,omitempty"` + Code int32 `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"` + AllEnd bool `protobuf:"varint,3,opt,name=all_end,json=allEnd,proto3" json:"all_end,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResOneClickGoto) Reset() { + *x = ResOneClickGoto{} + mi := &file_dwarf_proto_msgTypes[25] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResOneClickGoto) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResOneClickGoto) ProtoMessage() {} + +func (x *ResOneClickGoto) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[25] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResOneClickGoto.ProtoReflect.Descriptor instead. +func (*ResOneClickGoto) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{25} +} + +func (x *ResOneClickGoto) GetStep() int32 { + if x != nil { + return x.Step + } + return 0 +} + +func (x *ResOneClickGoto) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResOneClickGoto) GetAllEnd() bool { + if x != nil { + return x.AllEnd + } + return false +} + +// source: astro +type ReqOneClickGotoSolarSystem struct { + state protoimpl.MessageState `protogen:"open.v1"` + Index int32 `protobuf:"varint,1,opt,name=index,proto3" json:"index,omitempty"` + Lon float64 `protobuf:"fixed64,2,opt,name=lon,proto3" json:"lon,omitempty"` + Lat float64 `protobuf:"fixed64,3,opt,name=lat,proto3" json:"lat,omitempty"` + TargetName string `protobuf:"bytes,4,opt,name=target_name,json=targetName,proto3" json:"target_name,omitempty"` + ShootingMode int32 `protobuf:"varint,5,opt,name=shooting_mode,json=shootingMode,proto3" json:"shooting_mode,omitempty"` + ForceStart bool `protobuf:"varint,6,opt,name=force_start,json=forceStart,proto3" json:"force_start,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqOneClickGotoSolarSystem) Reset() { + *x = ReqOneClickGotoSolarSystem{} + mi := &file_dwarf_proto_msgTypes[26] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqOneClickGotoSolarSystem) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqOneClickGotoSolarSystem) ProtoMessage() {} + +func (x *ReqOneClickGotoSolarSystem) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[26] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqOneClickGotoSolarSystem.ProtoReflect.Descriptor instead. +func (*ReqOneClickGotoSolarSystem) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{26} +} + +func (x *ReqOneClickGotoSolarSystem) GetIndex() int32 { + if x != nil { + return x.Index + } + return 0 +} + +func (x *ReqOneClickGotoSolarSystem) GetLon() float64 { + if x != nil { + return x.Lon + } + return 0 +} + +func (x *ReqOneClickGotoSolarSystem) GetLat() float64 { + if x != nil { + return x.Lat + } + return 0 +} + +func (x *ReqOneClickGotoSolarSystem) GetTargetName() string { + if x != nil { + return x.TargetName + } + return "" +} + +func (x *ReqOneClickGotoSolarSystem) GetShootingMode() int32 { + if x != nil { + return x.ShootingMode + } + return 0 +} + +func (x *ReqOneClickGotoSolarSystem) GetForceStart() bool { + if x != nil { + return x.ForceStart + } + return false +} + +// source: astro +type ResOneClickGotoSolarSystem struct { + state protoimpl.MessageState `protogen:"open.v1"` + Step int32 `protobuf:"varint,1,opt,name=step,proto3" json:"step,omitempty"` + Code int32 `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"` + AllEnd bool `protobuf:"varint,3,opt,name=all_end,json=allEnd,proto3" json:"all_end,omitempty"` + Req *ReqOneClickGotoSolarSystem `protobuf:"bytes,4,opt,name=req,proto3" json:"req,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResOneClickGotoSolarSystem) Reset() { + *x = ResOneClickGotoSolarSystem{} + mi := &file_dwarf_proto_msgTypes[27] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResOneClickGotoSolarSystem) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResOneClickGotoSolarSystem) ProtoMessage() {} + +func (x *ResOneClickGotoSolarSystem) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[27] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResOneClickGotoSolarSystem.ProtoReflect.Descriptor instead. +func (*ResOneClickGotoSolarSystem) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{27} +} + +func (x *ResOneClickGotoSolarSystem) GetStep() int32 { + if x != nil { + return x.Step + } + return 0 +} + +func (x *ResOneClickGotoSolarSystem) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResOneClickGotoSolarSystem) GetAllEnd() bool { + if x != nil { + return x.AllEnd + } + return false +} + +func (x *ResOneClickGotoSolarSystem) GetReq() *ReqOneClickGotoSolarSystem { + if x != nil { + return x.Req + } + return nil +} + +// source: astro +type ReqStopOneClickGoto struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStopOneClickGoto) Reset() { + *x = ReqStopOneClickGoto{} + mi := &file_dwarf_proto_msgTypes[28] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStopOneClickGoto) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStopOneClickGoto) ProtoMessage() {} + +func (x *ReqStopOneClickGoto) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[28] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStopOneClickGoto.ProtoReflect.Descriptor instead. +func (*ReqStopOneClickGoto) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{28} +} + +// source: astro +type ReqCaptureWideRawLiveStacking struct { + state protoimpl.MessageState `protogen:"open.v1"` + ForceStart bool `protobuf:"varint,1,opt,name=force_start,json=forceStart,proto3" json:"force_start,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqCaptureWideRawLiveStacking) Reset() { + *x = ReqCaptureWideRawLiveStacking{} + mi := &file_dwarf_proto_msgTypes[29] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqCaptureWideRawLiveStacking) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqCaptureWideRawLiveStacking) ProtoMessage() {} + +func (x *ReqCaptureWideRawLiveStacking) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[29] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqCaptureWideRawLiveStacking.ProtoReflect.Descriptor instead. +func (*ReqCaptureWideRawLiveStacking) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{29} +} + +func (x *ReqCaptureWideRawLiveStacking) GetForceStart() bool { + if x != nil { + return x.ForceStart + } + return false +} + +// source: astro +type ReqStopCaptureWideRawLiveStacking struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStopCaptureWideRawLiveStacking) Reset() { + *x = ReqStopCaptureWideRawLiveStacking{} + mi := &file_dwarf_proto_msgTypes[30] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStopCaptureWideRawLiveStacking) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStopCaptureWideRawLiveStacking) ProtoMessage() {} + +func (x *ReqStopCaptureWideRawLiveStacking) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[30] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStopCaptureWideRawLiveStacking.ProtoReflect.Descriptor instead. +func (*ReqStopCaptureWideRawLiveStacking) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{30} +} + +// source: astro +type ReqFastStopCaptureWideRawLiveStacking struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqFastStopCaptureWideRawLiveStacking) Reset() { + *x = ReqFastStopCaptureWideRawLiveStacking{} + mi := &file_dwarf_proto_msgTypes[31] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqFastStopCaptureWideRawLiveStacking) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqFastStopCaptureWideRawLiveStacking) ProtoMessage() {} + +func (x *ReqFastStopCaptureWideRawLiveStacking) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[31] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqFastStopCaptureWideRawLiveStacking.ProtoReflect.Descriptor instead. +func (*ReqFastStopCaptureWideRawLiveStacking) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{31} +} + +// source: astro +type ReqStartEqSolving struct { + state protoimpl.MessageState `protogen:"open.v1"` + Lon float64 `protobuf:"fixed64,1,opt,name=lon,proto3" json:"lon,omitempty"` + Lat float64 `protobuf:"fixed64,2,opt,name=lat,proto3" json:"lat,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStartEqSolving) Reset() { + *x = ReqStartEqSolving{} + mi := &file_dwarf_proto_msgTypes[32] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStartEqSolving) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStartEqSolving) ProtoMessage() {} + +func (x *ReqStartEqSolving) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[32] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStartEqSolving.ProtoReflect.Descriptor instead. +func (*ReqStartEqSolving) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{32} +} + +func (x *ReqStartEqSolving) GetLon() float64 { + if x != nil { + return x.Lon + } + return 0 +} + +func (x *ReqStartEqSolving) GetLat() float64 { + if x != nil { + return x.Lat + } + return 0 +} + +// source: astro +type ResStartEqSolving struct { + state protoimpl.MessageState `protogen:"open.v1"` + AziErr float64 `protobuf:"fixed64,1,opt,name=azi_err,json=aziErr,proto3" json:"azi_err,omitempty"` + AltErr float64 `protobuf:"fixed64,2,opt,name=alt_err,json=altErr,proto3" json:"alt_err,omitempty"` + Code int32 `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResStartEqSolving) Reset() { + *x = ResStartEqSolving{} + mi := &file_dwarf_proto_msgTypes[33] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResStartEqSolving) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResStartEqSolving) ProtoMessage() {} + +func (x *ResStartEqSolving) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[33] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResStartEqSolving.ProtoReflect.Descriptor instead. +func (*ResStartEqSolving) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{33} +} + +func (x *ResStartEqSolving) GetAziErr() float64 { + if x != nil { + return x.AziErr + } + return 0 +} + +func (x *ResStartEqSolving) GetAltErr() float64 { + if x != nil { + return x.AltErr + } + return 0 +} + +func (x *ResStartEqSolving) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +// source: astro +type ReqStopEqSolving struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStopEqSolving) Reset() { + *x = ReqStopEqSolving{} + mi := &file_dwarf_proto_msgTypes[34] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStopEqSolving) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStopEqSolving) ProtoMessage() {} + +func (x *ReqStopEqSolving) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[34] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStopEqSolving.ProtoReflect.Descriptor instead. +func (*ReqStopEqSolving) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{34} +} + +// source: astro +type ReqStartAiEnhance struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStartAiEnhance) Reset() { + *x = ReqStartAiEnhance{} + mi := &file_dwarf_proto_msgTypes[35] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStartAiEnhance) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStartAiEnhance) ProtoMessage() {} + +func (x *ReqStartAiEnhance) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[35] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStartAiEnhance.ProtoReflect.Descriptor instead. +func (*ReqStartAiEnhance) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{35} +} + +// source: astro +type ReqStopAiEnhance struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStopAiEnhance) Reset() { + *x = ReqStopAiEnhance{} + mi := &file_dwarf_proto_msgTypes[36] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStopAiEnhance) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStopAiEnhance) ProtoMessage() {} + +func (x *ReqStopAiEnhance) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[36] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStopAiEnhance.ProtoReflect.Descriptor instead. +func (*ReqStopAiEnhance) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{36} +} + +// source: astro +type ReqStartMosaic struct { + state protoimpl.MessageState `protogen:"open.v1"` + HorizontalScale int32 `protobuf:"varint,1,opt,name=horizontal_scale,json=horizontalScale,proto3" json:"horizontal_scale,omitempty"` + VerticalScale int32 `protobuf:"varint,2,opt,name=vertical_scale,json=verticalScale,proto3" json:"vertical_scale,omitempty"` + Rotation int32 `protobuf:"varint,3,opt,name=rotation,proto3" json:"rotation,omitempty"` + IrIndex int32 `protobuf:"varint,4,opt,name=ir_index,json=irIndex,proto3" json:"ir_index,omitempty"` + ForceStart bool `protobuf:"varint,5,opt,name=force_start,json=forceStart,proto3" json:"force_start,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStartMosaic) Reset() { + *x = ReqStartMosaic{} + mi := &file_dwarf_proto_msgTypes[37] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStartMosaic) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStartMosaic) ProtoMessage() {} + +func (x *ReqStartMosaic) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[37] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStartMosaic.ProtoReflect.Descriptor instead. +func (*ReqStartMosaic) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{37} +} + +func (x *ReqStartMosaic) GetHorizontalScale() int32 { + if x != nil { + return x.HorizontalScale + } + return 0 +} + +func (x *ReqStartMosaic) GetVerticalScale() int32 { + if x != nil { + return x.VerticalScale + } + return 0 +} + +func (x *ReqStartMosaic) GetRotation() int32 { + if x != nil { + return x.Rotation + } + return 0 +} + +func (x *ReqStartMosaic) GetIrIndex() int32 { + if x != nil { + return x.IrIndex + } + return 0 +} + +func (x *ReqStartMosaic) GetForceStart() bool { + if x != nil { + return x.ForceStart + } + return false +} + +// source: astro +type ReqStartMakeFitsThumb struct { + state protoimpl.MessageState `protogen:"open.v1"` + SrcDir string `protobuf:"bytes,1,opt,name=src_dir,json=srcDir,proto3" json:"src_dir,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStartMakeFitsThumb) Reset() { + *x = ReqStartMakeFitsThumb{} + mi := &file_dwarf_proto_msgTypes[38] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStartMakeFitsThumb) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStartMakeFitsThumb) ProtoMessage() {} + +func (x *ReqStartMakeFitsThumb) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[38] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStartMakeFitsThumb.ProtoReflect.Descriptor instead. +func (*ReqStartMakeFitsThumb) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{38} +} + +func (x *ReqStartMakeFitsThumb) GetSrcDir() string { + if x != nil { + return x.SrcDir + } + return "" +} + +// source: astro +type ReqStopMakeFitsThumb struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStopMakeFitsThumb) Reset() { + *x = ReqStopMakeFitsThumb{} + mi := &file_dwarf_proto_msgTypes[39] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStopMakeFitsThumb) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStopMakeFitsThumb) ProtoMessage() {} + +func (x *ReqStopMakeFitsThumb) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[39] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStopMakeFitsThumb.ProtoReflect.Descriptor instead. +func (*ReqStopMakeFitsThumb) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{39} +} + +// source: astro +type ResMakeFitsThumb struct { + state protoimpl.MessageState `protogen:"open.v1"` + Code int32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"` + SrcDir string `protobuf:"bytes,2,opt,name=src_dir,json=srcDir,proto3" json:"src_dir,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResMakeFitsThumb) Reset() { + *x = ResMakeFitsThumb{} + mi := &file_dwarf_proto_msgTypes[40] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResMakeFitsThumb) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResMakeFitsThumb) ProtoMessage() {} + +func (x *ResMakeFitsThumb) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[40] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResMakeFitsThumb.ProtoReflect.Descriptor instead. +func (*ResMakeFitsThumb) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{40} +} + +func (x *ResMakeFitsThumb) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResMakeFitsThumb) GetSrcDir() string { + if x != nil { + return x.SrcDir + } + return "" +} + +// source: astro +type MakeFitsThumbTaskParam struct { + state protoimpl.MessageState `protogen:"open.v1"` + SrcDir string `protobuf:"bytes,1,opt,name=src_dir,json=srcDir,proto3" json:"src_dir,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *MakeFitsThumbTaskParam) Reset() { + *x = MakeFitsThumbTaskParam{} + mi := &file_dwarf_proto_msgTypes[41] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *MakeFitsThumbTaskParam) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MakeFitsThumbTaskParam) ProtoMessage() {} + +func (x *MakeFitsThumbTaskParam) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[41] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use MakeFitsThumbTaskParam.ProtoReflect.Descriptor instead. +func (*MakeFitsThumbTaskParam) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{41} +} + +func (x *MakeFitsThumbTaskParam) GetSrcDir() string { + if x != nil { + return x.SrcDir + } + return "" +} + +// source: astro +type ReqIsImageStackable struct { + state protoimpl.MessageState `protogen:"open.v1"` + SrcDirs []string `protobuf:"bytes,1,rep,name=src_dirs,json=srcDirs,proto3" json:"src_dirs,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqIsImageStackable) Reset() { + *x = ReqIsImageStackable{} + mi := &file_dwarf_proto_msgTypes[42] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqIsImageStackable) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqIsImageStackable) ProtoMessage() {} + +func (x *ReqIsImageStackable) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[42] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqIsImageStackable.ProtoReflect.Descriptor instead. +func (*ReqIsImageStackable) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{42} +} + +func (x *ReqIsImageStackable) GetSrcDirs() []string { + if x != nil { + return x.SrcDirs + } + return nil +} + +// source: astro +type ResIsImageStackable struct { + state protoimpl.MessageState `protogen:"open.v1"` + Code int32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"` + NeedDarkFrameInfo []*ResGetDarkFrameInfo `protobuf:"bytes,2,rep,name=need_dark_frame_info,json=needDarkFrameInfo,proto3" json:"need_dark_frame_info,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResIsImageStackable) Reset() { + *x = ResIsImageStackable{} + mi := &file_dwarf_proto_msgTypes[43] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResIsImageStackable) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResIsImageStackable) ProtoMessage() {} + +func (x *ResIsImageStackable) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[43] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResIsImageStackable.ProtoReflect.Descriptor instead. +func (*ResIsImageStackable) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{43} +} + +func (x *ResIsImageStackable) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResIsImageStackable) GetNeedDarkFrameInfo() []*ResGetDarkFrameInfo { + if x != nil { + return x.NeedDarkFrameInfo + } + return nil +} + +// source: astro +type ReqStartRepostprocess struct { + state protoimpl.MessageState `protogen:"open.v1"` + SrcDirs []string `protobuf:"bytes,1,rep,name=src_dirs,json=srcDirs,proto3" json:"src_dirs,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStartRepostprocess) Reset() { + *x = ReqStartRepostprocess{} + mi := &file_dwarf_proto_msgTypes[44] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStartRepostprocess) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStartRepostprocess) ProtoMessage() {} + +func (x *ReqStartRepostprocess) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[44] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStartRepostprocess.ProtoReflect.Descriptor instead. +func (*ReqStartRepostprocess) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{44} +} + +func (x *ReqStartRepostprocess) GetSrcDirs() []string { + if x != nil { + return x.SrcDirs + } + return nil +} + +// source: astro +type ReqStopRepostprocess struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStopRepostprocess) Reset() { + *x = ReqStopRepostprocess{} + mi := &file_dwarf_proto_msgTypes[45] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStopRepostprocess) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStopRepostprocess) ProtoMessage() {} + +func (x *ReqStopRepostprocess) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[45] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStopRepostprocess.ProtoReflect.Descriptor instead. +func (*ReqStopRepostprocess) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{45} +} + +// source: astro +type ResRepostprocess struct { + state protoimpl.MessageState `protogen:"open.v1"` + Code int32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"` + ResultDir string `protobuf:"bytes,2,opt,name=result_dir,json=resultDir,proto3" json:"result_dir,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResRepostprocess) Reset() { + *x = ResRepostprocess{} + mi := &file_dwarf_proto_msgTypes[46] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResRepostprocess) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResRepostprocess) ProtoMessage() {} + +func (x *ResRepostprocess) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[46] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResRepostprocess.ProtoReflect.Descriptor instead. +func (*ResRepostprocess) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{46} +} + +func (x *ResRepostprocess) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResRepostprocess) GetResultDir() string { + if x != nil { + return x.ResultDir + } + return "" +} + +// source: astro +type RepostprocessTaskParam struct { + state protoimpl.MessageState `protogen:"open.v1"` + ResultDir string `protobuf:"bytes,1,opt,name=result_dir,json=resultDir,proto3" json:"result_dir,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *RepostprocessTaskParam) Reset() { + *x = RepostprocessTaskParam{} + mi := &file_dwarf_proto_msgTypes[47] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *RepostprocessTaskParam) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*RepostprocessTaskParam) ProtoMessage() {} + +func (x *RepostprocessTaskParam) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[47] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use RepostprocessTaskParam.ProtoReflect.Descriptor instead. +func (*RepostprocessTaskParam) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{47} +} + +func (x *RepostprocessTaskParam) GetResultDir() string { + if x != nil { + return x.ResultDir + } + return "" +} + +// source: astro +type ReqGetAstroShootingTime struct { + state protoimpl.MessageState `protogen:"open.v1"` + ExpIndex int32 `protobuf:"varint,1,opt,name=exp_index,json=expIndex,proto3" json:"exp_index,omitempty"` + HorizontalScale int32 `protobuf:"varint,2,opt,name=horizontal_scale,json=horizontalScale,proto3" json:"horizontal_scale,omitempty"` + VerticalScale int32 `protobuf:"varint,3,opt,name=vertical_scale,json=verticalScale,proto3" json:"vertical_scale,omitempty"` + Rotation int32 `protobuf:"varint,4,opt,name=rotation,proto3" json:"rotation,omitempty"` + CamId int32 `protobuf:"varint,5,opt,name=cam_id,json=camId,proto3" json:"cam_id,omitempty"` + ShootingMode int32 `protobuf:"varint,6,opt,name=shooting_mode,json=shootingMode,proto3" json:"shooting_mode,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGetAstroShootingTime) Reset() { + *x = ReqGetAstroShootingTime{} + mi := &file_dwarf_proto_msgTypes[48] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGetAstroShootingTime) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGetAstroShootingTime) ProtoMessage() {} + +func (x *ReqGetAstroShootingTime) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[48] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGetAstroShootingTime.ProtoReflect.Descriptor instead. +func (*ReqGetAstroShootingTime) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{48} +} + +func (x *ReqGetAstroShootingTime) GetExpIndex() int32 { + if x != nil { + return x.ExpIndex + } + return 0 +} + +func (x *ReqGetAstroShootingTime) GetHorizontalScale() int32 { + if x != nil { + return x.HorizontalScale + } + return 0 +} + +func (x *ReqGetAstroShootingTime) GetVerticalScale() int32 { + if x != nil { + return x.VerticalScale + } + return 0 +} + +func (x *ReqGetAstroShootingTime) GetRotation() int32 { + if x != nil { + return x.Rotation + } + return 0 +} + +func (x *ReqGetAstroShootingTime) GetCamId() int32 { + if x != nil { + return x.CamId + } + return 0 +} + +func (x *ReqGetAstroShootingTime) GetShootingMode() int32 { + if x != nil { + return x.ShootingMode + } + return 0 +} + +// source: astro +type ResGetAstroShootingTime struct { + state protoimpl.MessageState `protogen:"open.v1"` + Code int32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"` + ShootingTime int32 `protobuf:"varint,2,opt,name=shooting_time,json=shootingTime,proto3" json:"shooting_time,omitempty"` + CamId int32 `protobuf:"varint,3,opt,name=cam_id,json=camId,proto3" json:"cam_id,omitempty"` + AstroMode ResGetAstroShootingTime_AstroMode `protobuf:"varint,4,opt,name=astro_mode,json=astroMode,proto3,enum=ResGetAstroShootingTime_AstroMode" json:"astro_mode,omitempty"` + ShootingMode int32 `protobuf:"varint,5,opt,name=shooting_mode,json=shootingMode,proto3" json:"shooting_mode,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResGetAstroShootingTime) Reset() { + *x = ResGetAstroShootingTime{} + mi := &file_dwarf_proto_msgTypes[49] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResGetAstroShootingTime) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResGetAstroShootingTime) ProtoMessage() {} + +func (x *ResGetAstroShootingTime) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[49] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResGetAstroShootingTime.ProtoReflect.Descriptor instead. +func (*ResGetAstroShootingTime) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{49} +} + +func (x *ResGetAstroShootingTime) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResGetAstroShootingTime) GetShootingTime() int32 { + if x != nil { + return x.ShootingTime + } + return 0 +} + +func (x *ResGetAstroShootingTime) GetCamId() int32 { + if x != nil { + return x.CamId + } + return 0 +} + +func (x *ResGetAstroShootingTime) GetAstroMode() ResGetAstroShootingTime_AstroMode { + if x != nil { + return x.AstroMode + } + return ResGetAstroShootingTime_NORMAL +} + +func (x *ResGetAstroShootingTime) GetShootingMode() int32 { + if x != nil { + return x.ShootingMode + } + return 0 +} + +// source: astro +type ReqGetCaliFrameList struct { + state protoimpl.MessageState `protogen:"open.v1"` + CameraType int32 `protobuf:"varint,1,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + CaliFrameType int32 `protobuf:"varint,2,opt,name=cali_frame_type,json=caliFrameType,proto3" json:"cali_frame_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGetCaliFrameList) Reset() { + *x = ReqGetCaliFrameList{} + mi := &file_dwarf_proto_msgTypes[50] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGetCaliFrameList) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGetCaliFrameList) ProtoMessage() {} + +func (x *ReqGetCaliFrameList) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[50] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGetCaliFrameList.ProtoReflect.Descriptor instead. +func (*ReqGetCaliFrameList) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{50} +} + +func (x *ReqGetCaliFrameList) GetCameraType() int32 { + if x != nil { + return x.CameraType + } + return 0 +} + +func (x *ReqGetCaliFrameList) GetCaliFrameType() int32 { + if x != nil { + return x.CaliFrameType + } + return 0 +} + +// source: astro +type CaliFrameInfo struct { + state protoimpl.MessageState `protogen:"open.v1"` + // oneof _filter_type + // oneof _info_id + // oneof _temp_value + ExpName string `protobuf:"bytes,1,opt,name=exp_name,json=expName,proto3" json:"exp_name,omitempty"` + Gain int32 `protobuf:"varint,2,opt,name=gain,proto3" json:"gain,omitempty"` + Resolution int32 `protobuf:"varint,3,opt,name=resolution,proto3" json:"resolution,omitempty"` + CameraType int32 `protobuf:"varint,4,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + Progress int32 `protobuf:"varint,5,opt,name=progress,proto3" json:"progress,omitempty"` + CaliFrameType int32 `protobuf:"varint,6,opt,name=cali_frame_type,json=caliFrameType,proto3" json:"cali_frame_type,omitempty"` + FilterType int32 `protobuf:"varint,7,opt,name=filter_type,json=filterType,proto3" json:"filter_type,omitempty"` + InfoId int32 `protobuf:"varint,8,opt,name=info_id,json=infoId,proto3" json:"info_id,omitempty"` + TempValue int32 `protobuf:"varint,9,opt,name=temp_value,json=tempValue,proto3" json:"temp_value,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *CaliFrameInfo) Reset() { + *x = CaliFrameInfo{} + mi := &file_dwarf_proto_msgTypes[51] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *CaliFrameInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CaliFrameInfo) ProtoMessage() {} + +func (x *CaliFrameInfo) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[51] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CaliFrameInfo.ProtoReflect.Descriptor instead. +func (*CaliFrameInfo) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{51} +} + +func (x *CaliFrameInfo) GetExpName() string { + if x != nil { + return x.ExpName + } + return "" +} + +func (x *CaliFrameInfo) GetGain() int32 { + if x != nil { + return x.Gain + } + return 0 +} + +func (x *CaliFrameInfo) GetResolution() int32 { + if x != nil { + return x.Resolution + } + return 0 +} + +func (x *CaliFrameInfo) GetCameraType() int32 { + if x != nil { + return x.CameraType + } + return 0 +} + +func (x *CaliFrameInfo) GetProgress() int32 { + if x != nil { + return x.Progress + } + return 0 +} + +func (x *CaliFrameInfo) GetCaliFrameType() int32 { + if x != nil { + return x.CaliFrameType + } + return 0 +} + +func (x *CaliFrameInfo) GetFilterType() int32 { + if x != nil { + return x.FilterType + } + return 0 +} + +func (x *CaliFrameInfo) GetInfoId() int32 { + if x != nil { + return x.InfoId + } + return 0 +} + +func (x *CaliFrameInfo) GetTempValue() int32 { + if x != nil { + return x.TempValue + } + return 0 +} + +// source: astro +type ResGetCaliFrameList struct { + state protoimpl.MessageState `protogen:"open.v1"` + Code int32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"` + List []*CaliFrameInfo `protobuf:"bytes,2,rep,name=list,proto3" json:"list,omitempty"` + CameraType int32 `protobuf:"varint,3,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + CaliFrameType int32 `protobuf:"varint,4,opt,name=cali_frame_type,json=caliFrameType,proto3" json:"cali_frame_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResGetCaliFrameList) Reset() { + *x = ResGetCaliFrameList{} + mi := &file_dwarf_proto_msgTypes[52] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResGetCaliFrameList) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResGetCaliFrameList) ProtoMessage() {} + +func (x *ResGetCaliFrameList) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[52] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResGetCaliFrameList.ProtoReflect.Descriptor instead. +func (*ResGetCaliFrameList) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{52} +} + +func (x *ResGetCaliFrameList) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResGetCaliFrameList) GetList() []*CaliFrameInfo { + if x != nil { + return x.List + } + return nil +} + +func (x *ResGetCaliFrameList) GetCameraType() int32 { + if x != nil { + return x.CameraType + } + return 0 +} + +func (x *ResGetCaliFrameList) GetCaliFrameType() int32 { + if x != nil { + return x.CaliFrameType + } + return 0 +} + +// source: astro +type ReqDelCaliFrameList struct { + state protoimpl.MessageState `protogen:"open.v1"` + InfoIds []int32 `protobuf:"varint,1,rep,packed,name=info_ids,json=infoIds,proto3" json:"info_ids,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqDelCaliFrameList) Reset() { + *x = ReqDelCaliFrameList{} + mi := &file_dwarf_proto_msgTypes[53] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqDelCaliFrameList) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqDelCaliFrameList) ProtoMessage() {} + +func (x *ReqDelCaliFrameList) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[53] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqDelCaliFrameList.ProtoReflect.Descriptor instead. +func (*ReqDelCaliFrameList) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{53} +} + +func (x *ReqDelCaliFrameList) GetInfoIds() []int32 { + if x != nil { + return x.InfoIds + } + return nil +} + +// source: astro +type ReqCaptureCaliFrame struct { + state protoimpl.MessageState `protogen:"open.v1"` + // oneof _filter_type + ExpIndex int32 `protobuf:"varint,1,opt,name=exp_index,json=expIndex,proto3" json:"exp_index,omitempty"` + Gain int32 `protobuf:"varint,2,opt,name=gain,proto3" json:"gain,omitempty"` + Resolution int32 `protobuf:"varint,3,opt,name=resolution,proto3" json:"resolution,omitempty"` + CapSize int32 `protobuf:"varint,4,opt,name=cap_size,json=capSize,proto3" json:"cap_size,omitempty"` + CameraType int32 `protobuf:"varint,5,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + CaliFrameType int32 `protobuf:"varint,6,opt,name=cali_frame_type,json=caliFrameType,proto3" json:"cali_frame_type,omitempty"` + FilterType int32 `protobuf:"varint,7,opt,name=filter_type,json=filterType,proto3" json:"filter_type,omitempty"` + SceneType int32 `protobuf:"varint,8,opt,name=scene_type,json=sceneType,proto3" json:"scene_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqCaptureCaliFrame) Reset() { + *x = ReqCaptureCaliFrame{} + mi := &file_dwarf_proto_msgTypes[54] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqCaptureCaliFrame) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqCaptureCaliFrame) ProtoMessage() {} + +func (x *ReqCaptureCaliFrame) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[54] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqCaptureCaliFrame.ProtoReflect.Descriptor instead. +func (*ReqCaptureCaliFrame) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{54} +} + +func (x *ReqCaptureCaliFrame) GetExpIndex() int32 { + if x != nil { + return x.ExpIndex + } + return 0 +} + +func (x *ReqCaptureCaliFrame) GetGain() int32 { + if x != nil { + return x.Gain + } + return 0 +} + +func (x *ReqCaptureCaliFrame) GetResolution() int32 { + if x != nil { + return x.Resolution + } + return 0 +} + +func (x *ReqCaptureCaliFrame) GetCapSize() int32 { + if x != nil { + return x.CapSize + } + return 0 +} + +func (x *ReqCaptureCaliFrame) GetCameraType() int32 { + if x != nil { + return x.CameraType + } + return 0 +} + +func (x *ReqCaptureCaliFrame) GetCaliFrameType() int32 { + if x != nil { + return x.CaliFrameType + } + return 0 +} + +func (x *ReqCaptureCaliFrame) GetFilterType() int32 { + if x != nil { + return x.FilterType + } + return 0 +} + +func (x *ReqCaptureCaliFrame) GetSceneType() int32 { + if x != nil { + return x.SceneType + } + return 0 +} + +// source: astro +type ReqStopCaptureCaliFrame struct { + state protoimpl.MessageState `protogen:"open.v1"` + CameraType int32 `protobuf:"varint,1,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStopCaptureCaliFrame) Reset() { + *x = ReqStopCaptureCaliFrame{} + mi := &file_dwarf_proto_msgTypes[55] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStopCaptureCaliFrame) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStopCaptureCaliFrame) ProtoMessage() {} + +func (x *ReqStopCaptureCaliFrame) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[55] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStopCaptureCaliFrame.ProtoReflect.Descriptor instead. +func (*ReqStopCaptureCaliFrame) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{55} +} + +func (x *ReqStopCaptureCaliFrame) GetCameraType() int32 { + if x != nil { + return x.CameraType + } + return 0 +} + +// source: astro +type CaptureCaliFrameTaskParam struct { + state protoimpl.MessageState `protogen:"open.v1"` + CameraType int32 `protobuf:"varint,1,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + CaliFrameType int32 `protobuf:"varint,2,opt,name=cali_frame_type,json=caliFrameType,proto3" json:"cali_frame_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *CaptureCaliFrameTaskParam) Reset() { + *x = CaptureCaliFrameTaskParam{} + mi := &file_dwarf_proto_msgTypes[56] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *CaptureCaliFrameTaskParam) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CaptureCaliFrameTaskParam) ProtoMessage() {} + +func (x *CaptureCaliFrameTaskParam) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[56] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CaptureCaliFrameTaskParam.ProtoReflect.Descriptor instead. +func (*CaptureCaliFrameTaskParam) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{56} +} + +func (x *CaptureCaliFrameTaskParam) GetCameraType() int32 { + if x != nil { + return x.CameraType + } + return 0 +} + +func (x *CaptureCaliFrameTaskParam) GetCaliFrameType() int32 { + if x != nil { + return x.CaliFrameType + } + return 0 +} + +// source: astro +type ReqGetQuickSetList struct { + state protoimpl.MessageState `protogen:"open.v1"` + CameraType int32 `protobuf:"varint,1,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGetQuickSetList) Reset() { + *x = ReqGetQuickSetList{} + mi := &file_dwarf_proto_msgTypes[57] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGetQuickSetList) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGetQuickSetList) ProtoMessage() {} + +func (x *ReqGetQuickSetList) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[57] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGetQuickSetList.ProtoReflect.Descriptor instead. +func (*ReqGetQuickSetList) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{57} +} + +func (x *ReqGetQuickSetList) GetCameraType() int32 { + if x != nil { + return x.CameraType + } + return 0 +} + +// source: astro +type QuikSetInfo struct { + state protoimpl.MessageState `protogen:"open.v1"` + ExpName string `protobuf:"bytes,1,opt,name=exp_name,json=expName,proto3" json:"exp_name,omitempty"` + ExpIndex int32 `protobuf:"varint,2,opt,name=exp_index,json=expIndex,proto3" json:"exp_index,omitempty"` + Gain int32 `protobuf:"varint,3,opt,name=gain,proto3" json:"gain,omitempty"` + Resolution int32 `protobuf:"varint,4,opt,name=resolution,proto3" json:"resolution,omitempty"` + CameraType int32 `protobuf:"varint,5,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + InfoId string `protobuf:"bytes,6,opt,name=info_id,json=infoId,proto3" json:"info_id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *QuikSetInfo) Reset() { + *x = QuikSetInfo{} + mi := &file_dwarf_proto_msgTypes[58] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *QuikSetInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*QuikSetInfo) ProtoMessage() {} + +func (x *QuikSetInfo) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[58] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use QuikSetInfo.ProtoReflect.Descriptor instead. +func (*QuikSetInfo) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{58} +} + +func (x *QuikSetInfo) GetExpName() string { + if x != nil { + return x.ExpName + } + return "" +} + +func (x *QuikSetInfo) GetExpIndex() int32 { + if x != nil { + return x.ExpIndex + } + return 0 +} + +func (x *QuikSetInfo) GetGain() int32 { + if x != nil { + return x.Gain + } + return 0 +} + +func (x *QuikSetInfo) GetResolution() int32 { + if x != nil { + return x.Resolution + } + return 0 +} + +func (x *QuikSetInfo) GetCameraType() int32 { + if x != nil { + return x.CameraType + } + return 0 +} + +func (x *QuikSetInfo) GetInfoId() string { + if x != nil { + return x.InfoId + } + return "" +} + +// source: astro +type ResGetQuikSetList struct { + state protoimpl.MessageState `protogen:"open.v1"` + Code int32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"` + QuickSetList []*QuikSetInfo `protobuf:"bytes,2,rep,name=quick_set_list,json=quickSetList,proto3" json:"quick_set_list,omitempty"` + CameraType int32 `protobuf:"varint,3,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResGetQuikSetList) Reset() { + *x = ResGetQuikSetList{} + mi := &file_dwarf_proto_msgTypes[59] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResGetQuikSetList) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResGetQuikSetList) ProtoMessage() {} + +func (x *ResGetQuikSetList) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[59] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResGetQuikSetList.ProtoReflect.Descriptor instead. +func (*ResGetQuikSetList) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{59} +} + +func (x *ResGetQuikSetList) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResGetQuikSetList) GetQuickSetList() []*QuikSetInfo { + if x != nil { + return x.QuickSetList + } + return nil +} + +func (x *ResGetQuikSetList) GetCameraType() int32 { + if x != nil { + return x.CameraType + } + return 0 +} + +// source: astro +type ReqSetQuickSet struct { + state protoimpl.MessageState `protogen:"open.v1"` + InfoId string `protobuf:"bytes,1,opt,name=info_id,json=infoId,proto3" json:"info_id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSetQuickSet) Reset() { + *x = ReqSetQuickSet{} + mi := &file_dwarf_proto_msgTypes[60] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSetQuickSet) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSetQuickSet) ProtoMessage() {} + +func (x *ReqSetQuickSet) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[60] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSetQuickSet.ProtoReflect.Descriptor instead. +func (*ReqSetQuickSet) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{60} +} + +func (x *ReqSetQuickSet) GetInfoId() string { + if x != nil { + return x.InfoId + } + return "" +} + +// source: astro +type ResSetQuickSet struct { + state protoimpl.MessageState `protogen:"open.v1"` + Code int32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"` + InfoId string `protobuf:"bytes,2,opt,name=info_id,json=infoId,proto3" json:"info_id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResSetQuickSet) Reset() { + *x = ResSetQuickSet{} + mi := &file_dwarf_proto_msgTypes[61] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResSetQuickSet) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResSetQuickSet) ProtoMessage() {} + +func (x *ResSetQuickSet) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[61] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResSetQuickSet.ProtoReflect.Descriptor instead. +func (*ResSetQuickSet) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{61} +} + +func (x *ResSetQuickSet) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResSetQuickSet) GetInfoId() string { + if x != nil { + return x.InfoId + } + return "" +} + +// source: astro +type ReqOneClickShooting struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqOneClickShooting) Reset() { + *x = ReqOneClickShooting{} + mi := &file_dwarf_proto_msgTypes[62] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqOneClickShooting) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqOneClickShooting) ProtoMessage() {} + +func (x *ReqOneClickShooting) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[62] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqOneClickShooting.ProtoReflect.Descriptor instead. +func (*ReqOneClickShooting) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{62} +} + +// source: astro +type ResAstroShooting struct { + state protoimpl.MessageState `protogen:"open.v1"` + // oneof _exp_name + // oneof _gain + // oneof _resolution + // oneof _filter_type + // oneof _temp_threshold + Code int32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"` + ExpName string `protobuf:"bytes,2,opt,name=exp_name,json=expName,proto3" json:"exp_name,omitempty"` + Gain int32 `protobuf:"varint,3,opt,name=gain,proto3" json:"gain,omitempty"` + Resolution int32 `protobuf:"varint,4,opt,name=resolution,proto3" json:"resolution,omitempty"` + FilterType int32 `protobuf:"varint,5,opt,name=filter_type,json=filterType,proto3" json:"filter_type,omitempty"` + TempThreshold int32 `protobuf:"varint,6,opt,name=temp_threshold,json=tempThreshold,proto3" json:"temp_threshold,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResAstroShooting) Reset() { + *x = ResAstroShooting{} + mi := &file_dwarf_proto_msgTypes[63] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResAstroShooting) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResAstroShooting) ProtoMessage() {} + +func (x *ResAstroShooting) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[63] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResAstroShooting.ProtoReflect.Descriptor instead. +func (*ResAstroShooting) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{63} +} + +func (x *ResAstroShooting) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResAstroShooting) GetExpName() string { + if x != nil { + return x.ExpName + } + return "" +} + +func (x *ResAstroShooting) GetGain() int32 { + if x != nil { + return x.Gain + } + return 0 +} + +func (x *ResAstroShooting) GetResolution() int32 { + if x != nil { + return x.Resolution + } + return 0 +} + +func (x *ResAstroShooting) GetFilterType() int32 { + if x != nil { + return x.FilterType + } + return 0 +} + +func (x *ResAstroShooting) GetTempThreshold() int32 { + if x != nil { + return x.TempThreshold + } + return 0 +} + +// source: astro +type ReqStartSkyTargetFinder struct { + state protoimpl.MessageState `protogen:"open.v1"` + Lon float64 `protobuf:"fixed64,1,opt,name=lon,proto3" json:"lon,omitempty"` + Lat float64 `protobuf:"fixed64,2,opt,name=lat,proto3" json:"lat,omitempty"` + ForceRestart bool `protobuf:"varint,3,opt,name=force_restart,json=forceRestart,proto3" json:"force_restart,omitempty"` + SceneType int32 `protobuf:"varint,4,opt,name=scene_type,json=sceneType,proto3" json:"scene_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStartSkyTargetFinder) Reset() { + *x = ReqStartSkyTargetFinder{} + mi := &file_dwarf_proto_msgTypes[64] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStartSkyTargetFinder) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStartSkyTargetFinder) ProtoMessage() {} + +func (x *ReqStartSkyTargetFinder) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[64] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStartSkyTargetFinder.ProtoReflect.Descriptor instead. +func (*ReqStartSkyTargetFinder) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{64} +} + +func (x *ReqStartSkyTargetFinder) GetLon() float64 { + if x != nil { + return x.Lon + } + return 0 +} + +func (x *ReqStartSkyTargetFinder) GetLat() float64 { + if x != nil { + return x.Lat + } + return 0 +} + +func (x *ReqStartSkyTargetFinder) GetForceRestart() bool { + if x != nil { + return x.ForceRestart + } + return false +} + +func (x *ReqStartSkyTargetFinder) GetSceneType() int32 { + if x != nil { + return x.SceneType + } + return 0 +} + +// source: astro +type ResStartSkyTargetFinder struct { + state protoimpl.MessageState `protogen:"open.v1"` + Code int32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"` + ZenithAzi float64 `protobuf:"fixed64,2,opt,name=zenith_azi,json=zenithAzi,proto3" json:"zenith_azi,omitempty"` + ZenithAlt float64 `protobuf:"fixed64,3,opt,name=zenith_alt,json=zenithAlt,proto3" json:"zenith_alt,omitempty"` + CenterAzi float64 `protobuf:"fixed64,4,opt,name=center_azi,json=centerAzi,proto3" json:"center_azi,omitempty"` + CenterAlt float64 `protobuf:"fixed64,5,opt,name=center_alt,json=centerAlt,proto3" json:"center_alt,omitempty"` + CenterRoll float64 `protobuf:"fixed64,6,opt,name=center_roll,json=centerRoll,proto3" json:"center_roll,omitempty"` + SceneType int32 `protobuf:"varint,7,opt,name=scene_type,json=sceneType,proto3" json:"scene_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResStartSkyTargetFinder) Reset() { + *x = ResStartSkyTargetFinder{} + mi := &file_dwarf_proto_msgTypes[65] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResStartSkyTargetFinder) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResStartSkyTargetFinder) ProtoMessage() {} + +func (x *ResStartSkyTargetFinder) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[65] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResStartSkyTargetFinder.ProtoReflect.Descriptor instead. +func (*ResStartSkyTargetFinder) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{65} +} + +func (x *ResStartSkyTargetFinder) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResStartSkyTargetFinder) GetZenithAzi() float64 { + if x != nil { + return x.ZenithAzi + } + return 0 +} + +func (x *ResStartSkyTargetFinder) GetZenithAlt() float64 { + if x != nil { + return x.ZenithAlt + } + return 0 +} + +func (x *ResStartSkyTargetFinder) GetCenterAzi() float64 { + if x != nil { + return x.CenterAzi + } + return 0 +} + +func (x *ResStartSkyTargetFinder) GetCenterAlt() float64 { + if x != nil { + return x.CenterAlt + } + return 0 +} + +func (x *ResStartSkyTargetFinder) GetCenterRoll() float64 { + if x != nil { + return x.CenterRoll + } + return 0 +} + +func (x *ResStartSkyTargetFinder) GetSceneType() int32 { + if x != nil { + return x.SceneType + } + return 0 +} + +// source: astro +type ReqStopSkyTargetFinder struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStopSkyTargetFinder) Reset() { + *x = ReqStopSkyTargetFinder{} + mi := &file_dwarf_proto_msgTypes[66] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStopSkyTargetFinder) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStopSkyTargetFinder) ProtoMessage() {} + +func (x *ReqStopSkyTargetFinder) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[66] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStopSkyTargetFinder.ProtoReflect.Descriptor instead. +func (*ReqStopSkyTargetFinder) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{66} +} + +// source: base +type WsPacket struct { + state protoimpl.MessageState `protogen:"open.v1"` + MajorVersion uint32 `protobuf:"varint,1,opt,name=major_version,json=majorVersion,proto3" json:"major_version,omitempty"` + MinorVersion uint32 `protobuf:"varint,2,opt,name=minor_version,json=minorVersion,proto3" json:"minor_version,omitempty"` + DeviceId uint32 `protobuf:"varint,3,opt,name=device_id,json=deviceId,proto3" json:"device_id,omitempty"` + ModuleId uint32 `protobuf:"varint,4,opt,name=module_id,json=moduleId,proto3" json:"module_id,omitempty"` + Cmd uint32 `protobuf:"varint,5,opt,name=cmd,proto3" json:"cmd,omitempty"` + Type uint32 `protobuf:"varint,6,opt,name=type,proto3" json:"type,omitempty"` + Data []byte `protobuf:"bytes,7,opt,name=data,proto3" json:"data,omitempty"` + ClientId string `protobuf:"bytes,8,opt,name=client_id,json=clientId,proto3" json:"client_id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *WsPacket) Reset() { + *x = WsPacket{} + mi := &file_dwarf_proto_msgTypes[67] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *WsPacket) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*WsPacket) ProtoMessage() {} + +func (x *WsPacket) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[67] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use WsPacket.ProtoReflect.Descriptor instead. +func (*WsPacket) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{67} +} + +func (x *WsPacket) GetMajorVersion() uint32 { + if x != nil { + return x.MajorVersion + } + return 0 +} + +func (x *WsPacket) GetMinorVersion() uint32 { + if x != nil { + return x.MinorVersion + } + return 0 +} + +func (x *WsPacket) GetDeviceId() uint32 { + if x != nil { + return x.DeviceId + } + return 0 +} + +func (x *WsPacket) GetModuleId() uint32 { + if x != nil { + return x.ModuleId + } + return 0 +} + +func (x *WsPacket) GetCmd() uint32 { + if x != nil { + return x.Cmd + } + return 0 +} + +func (x *WsPacket) GetType() uint32 { + if x != nil { + return x.Type + } + return 0 +} + +func (x *WsPacket) GetData() []byte { + if x != nil { + return x.Data + } + return nil +} + +func (x *WsPacket) GetClientId() string { + if x != nil { + return x.ClientId + } + return "" +} + +// source: base +type ComResponse struct { + state protoimpl.MessageState `protogen:"open.v1"` + Code int32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ComResponse) Reset() { + *x = ComResponse{} + mi := &file_dwarf_proto_msgTypes[68] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ComResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ComResponse) ProtoMessage() {} + +func (x *ComResponse) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[68] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ComResponse.ProtoReflect.Descriptor instead. +func (*ComResponse) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{68} +} + +func (x *ComResponse) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +// source: base +type ComResWithInt struct { + state protoimpl.MessageState `protogen:"open.v1"` + Value int32 `protobuf:"varint,1,opt,name=value,proto3" json:"value,omitempty"` + Code int32 `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ComResWithInt) Reset() { + *x = ComResWithInt{} + mi := &file_dwarf_proto_msgTypes[69] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ComResWithInt) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ComResWithInt) ProtoMessage() {} + +func (x *ComResWithInt) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[69] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ComResWithInt.ProtoReflect.Descriptor instead. +func (*ComResWithInt) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{69} +} + +func (x *ComResWithInt) GetValue() int32 { + if x != nil { + return x.Value + } + return 0 +} + +func (x *ComResWithInt) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +// source: base +type ComResWithDouble struct { + state protoimpl.MessageState `protogen:"open.v1"` + Value float64 `protobuf:"fixed64,1,opt,name=value,proto3" json:"value,omitempty"` + Code int32 `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ComResWithDouble) Reset() { + *x = ComResWithDouble{} + mi := &file_dwarf_proto_msgTypes[70] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ComResWithDouble) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ComResWithDouble) ProtoMessage() {} + +func (x *ComResWithDouble) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[70] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ComResWithDouble.ProtoReflect.Descriptor instead. +func (*ComResWithDouble) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{70} +} + +func (x *ComResWithDouble) GetValue() float64 { + if x != nil { + return x.Value + } + return 0 +} + +func (x *ComResWithDouble) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +// source: base +type ComResWithString struct { + state protoimpl.MessageState `protogen:"open.v1"` + Str string `protobuf:"bytes,1,opt,name=str,proto3" json:"str,omitempty"` + Code int32 `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ComResWithString) Reset() { + *x = ComResWithString{} + mi := &file_dwarf_proto_msgTypes[71] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ComResWithString) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ComResWithString) ProtoMessage() {} + +func (x *ComResWithString) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[71] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ComResWithString.ProtoReflect.Descriptor instead. +func (*ComResWithString) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{71} +} + +func (x *ComResWithString) GetStr() string { + if x != nil { + return x.Str + } + return "" +} + +func (x *ComResWithString) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +// source: base +type CommonParam struct { + state protoimpl.MessageState `protogen:"open.v1"` + HasAuto bool `protobuf:"varint,1,opt,name=hasAuto,proto3" json:"hasAuto,omitempty"` + AutoMode int32 `protobuf:"varint,2,opt,name=auto_mode,json=autoMode,proto3" json:"auto_mode,omitempty"` + Id int32 `protobuf:"varint,3,opt,name=id,proto3" json:"id,omitempty"` + ModeIndex int32 `protobuf:"varint,4,opt,name=mode_index,json=modeIndex,proto3" json:"mode_index,omitempty"` + Index int32 `protobuf:"varint,5,opt,name=index,proto3" json:"index,omitempty"` + ContinueValue float64 `protobuf:"fixed64,6,opt,name=continue_value,json=continueValue,proto3" json:"continue_value,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *CommonParam) Reset() { + *x = CommonParam{} + mi := &file_dwarf_proto_msgTypes[72] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *CommonParam) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CommonParam) ProtoMessage() {} + +func (x *CommonParam) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[72] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CommonParam.ProtoReflect.Descriptor instead. +func (*CommonParam) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{72} +} + +func (x *CommonParam) GetHasAuto() bool { + if x != nil { + return x.HasAuto + } + return false +} + +func (x *CommonParam) GetAutoMode() int32 { + if x != nil { + return x.AutoMode + } + return 0 +} + +func (x *CommonParam) GetId() int32 { + if x != nil { + return x.Id + } + return 0 +} + +func (x *CommonParam) GetModeIndex() int32 { + if x != nil { + return x.ModeIndex + } + return 0 +} + +func (x *CommonParam) GetIndex() int32 { + if x != nil { + return x.Index + } + return 0 +} + +func (x *CommonParam) GetContinueValue() float64 { + if x != nil { + return x.ContinueValue + } + return 0 +} + +// source: ble +type ReqGetconfig struct { + state protoimpl.MessageState `protogen:"open.v1"` + Cmd int32 `protobuf:"varint,1,opt,name=cmd,proto3" json:"cmd,omitempty"` + BlePsd string `protobuf:"bytes,2,opt,name=ble_psd,json=blePsd,proto3" json:"ble_psd,omitempty"` + ClientId string `protobuf:"bytes,3,opt,name=client_id,json=clientId,proto3" json:"client_id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGetconfig) Reset() { + *x = ReqGetconfig{} + mi := &file_dwarf_proto_msgTypes[73] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGetconfig) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGetconfig) ProtoMessage() {} + +func (x *ReqGetconfig) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[73] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGetconfig.ProtoReflect.Descriptor instead. +func (*ReqGetconfig) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{73} +} + +func (x *ReqGetconfig) GetCmd() int32 { + if x != nil { + return x.Cmd + } + return 0 +} + +func (x *ReqGetconfig) GetBlePsd() string { + if x != nil { + return x.BlePsd + } + return "" +} + +func (x *ReqGetconfig) GetClientId() string { + if x != nil { + return x.ClientId + } + return "" +} + +// source: ble +type ReqAp struct { + state protoimpl.MessageState `protogen:"open.v1"` + Cmd int32 `protobuf:"varint,1,opt,name=cmd,proto3" json:"cmd,omitempty"` + WifiType int32 `protobuf:"varint,2,opt,name=wifi_type,json=wifiType,proto3" json:"wifi_type,omitempty"` + AutoStart int32 `protobuf:"varint,3,opt,name=auto_start,json=autoStart,proto3" json:"auto_start,omitempty"` + CountryList int32 `protobuf:"varint,4,opt,name=country_list,json=countryList,proto3" json:"country_list,omitempty"` + Country string `protobuf:"bytes,5,opt,name=country,proto3" json:"country,omitempty"` + BlePsd string `protobuf:"bytes,6,opt,name=ble_psd,json=blePsd,proto3" json:"ble_psd,omitempty"` + ClientId string `protobuf:"bytes,7,opt,name=client_id,json=clientId,proto3" json:"client_id,omitempty"` + ForceRestart bool `protobuf:"varint,8,opt,name=force_restart,json=forceRestart,proto3" json:"force_restart,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqAp) Reset() { + *x = ReqAp{} + mi := &file_dwarf_proto_msgTypes[74] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqAp) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqAp) ProtoMessage() {} + +func (x *ReqAp) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[74] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqAp.ProtoReflect.Descriptor instead. +func (*ReqAp) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{74} +} + +func (x *ReqAp) GetCmd() int32 { + if x != nil { + return x.Cmd + } + return 0 +} + +func (x *ReqAp) GetWifiType() int32 { + if x != nil { + return x.WifiType + } + return 0 +} + +func (x *ReqAp) GetAutoStart() int32 { + if x != nil { + return x.AutoStart + } + return 0 +} + +func (x *ReqAp) GetCountryList() int32 { + if x != nil { + return x.CountryList + } + return 0 +} + +func (x *ReqAp) GetCountry() string { + if x != nil { + return x.Country + } + return "" +} + +func (x *ReqAp) GetBlePsd() string { + if x != nil { + return x.BlePsd + } + return "" +} + +func (x *ReqAp) GetClientId() string { + if x != nil { + return x.ClientId + } + return "" +} + +func (x *ReqAp) GetForceRestart() bool { + if x != nil { + return x.ForceRestart + } + return false +} + +// source: ble +type ReqSta struct { + state protoimpl.MessageState `protogen:"open.v1"` + Cmd int32 `protobuf:"varint,1,opt,name=cmd,proto3" json:"cmd,omitempty"` + AutoStart int32 `protobuf:"varint,2,opt,name=auto_start,json=autoStart,proto3" json:"auto_start,omitempty"` + BlePsd string `protobuf:"bytes,3,opt,name=ble_psd,json=blePsd,proto3" json:"ble_psd,omitempty"` + Ssid string `protobuf:"bytes,4,opt,name=ssid,proto3" json:"ssid,omitempty"` + Psd string `protobuf:"bytes,5,opt,name=psd,proto3" json:"psd,omitempty"` + ClientId string `protobuf:"bytes,6,opt,name=client_id,json=clientId,proto3" json:"client_id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSta) Reset() { + *x = ReqSta{} + mi := &file_dwarf_proto_msgTypes[75] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSta) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSta) ProtoMessage() {} + +func (x *ReqSta) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[75] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSta.ProtoReflect.Descriptor instead. +func (*ReqSta) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{75} +} + +func (x *ReqSta) GetCmd() int32 { + if x != nil { + return x.Cmd + } + return 0 +} + +func (x *ReqSta) GetAutoStart() int32 { + if x != nil { + return x.AutoStart + } + return 0 +} + +func (x *ReqSta) GetBlePsd() string { + if x != nil { + return x.BlePsd + } + return "" +} + +func (x *ReqSta) GetSsid() string { + if x != nil { + return x.Ssid + } + return "" +} + +func (x *ReqSta) GetPsd() string { + if x != nil { + return x.Psd + } + return "" +} + +func (x *ReqSta) GetClientId() string { + if x != nil { + return x.ClientId + } + return "" +} + +// source: ble +type ReqSetblewifi struct { + state protoimpl.MessageState `protogen:"open.v1"` + Cmd int32 `protobuf:"varint,1,opt,name=cmd,proto3" json:"cmd,omitempty"` + Mode int32 `protobuf:"varint,2,opt,name=mode,proto3" json:"mode,omitempty"` + BlePsd string `protobuf:"bytes,3,opt,name=ble_psd,json=blePsd,proto3" json:"ble_psd,omitempty"` + Value string `protobuf:"bytes,4,opt,name=value,proto3" json:"value,omitempty"` + ClientId string `protobuf:"bytes,5,opt,name=client_id,json=clientId,proto3" json:"client_id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSetblewifi) Reset() { + *x = ReqSetblewifi{} + mi := &file_dwarf_proto_msgTypes[76] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSetblewifi) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSetblewifi) ProtoMessage() {} + +func (x *ReqSetblewifi) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[76] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSetblewifi.ProtoReflect.Descriptor instead. +func (*ReqSetblewifi) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{76} +} + +func (x *ReqSetblewifi) GetCmd() int32 { + if x != nil { + return x.Cmd + } + return 0 +} + +func (x *ReqSetblewifi) GetMode() int32 { + if x != nil { + return x.Mode + } + return 0 +} + +func (x *ReqSetblewifi) GetBlePsd() string { + if x != nil { + return x.BlePsd + } + return "" +} + +func (x *ReqSetblewifi) GetValue() string { + if x != nil { + return x.Value + } + return "" +} + +func (x *ReqSetblewifi) GetClientId() string { + if x != nil { + return x.ClientId + } + return "" +} + +// source: ble +type ReqReset struct { + state protoimpl.MessageState `protogen:"open.v1"` + Cmd int32 `protobuf:"varint,1,opt,name=cmd,proto3" json:"cmd,omitempty"` + ClientId string `protobuf:"bytes,2,opt,name=client_id,json=clientId,proto3" json:"client_id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqReset) Reset() { + *x = ReqReset{} + mi := &file_dwarf_proto_msgTypes[77] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqReset) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqReset) ProtoMessage() {} + +func (x *ReqReset) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[77] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqReset.ProtoReflect.Descriptor instead. +func (*ReqReset) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{77} +} + +func (x *ReqReset) GetCmd() int32 { + if x != nil { + return x.Cmd + } + return 0 +} + +func (x *ReqReset) GetClientId() string { + if x != nil { + return x.ClientId + } + return "" +} + +// source: ble +type ReqGetwifilist struct { + state protoimpl.MessageState `protogen:"open.v1"` + Cmd int32 `protobuf:"varint,1,opt,name=cmd,proto3" json:"cmd,omitempty"` + ClientId string `protobuf:"bytes,2,opt,name=client_id,json=clientId,proto3" json:"client_id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGetwifilist) Reset() { + *x = ReqGetwifilist{} + mi := &file_dwarf_proto_msgTypes[78] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGetwifilist) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGetwifilist) ProtoMessage() {} + +func (x *ReqGetwifilist) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[78] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGetwifilist.ProtoReflect.Descriptor instead. +func (*ReqGetwifilist) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{78} +} + +func (x *ReqGetwifilist) GetCmd() int32 { + if x != nil { + return x.Cmd + } + return 0 +} + +func (x *ReqGetwifilist) GetClientId() string { + if x != nil { + return x.ClientId + } + return "" +} + +// source: ble +type ReqGetsysteminfo struct { + state protoimpl.MessageState `protogen:"open.v1"` + Cmd int32 `protobuf:"varint,1,opt,name=cmd,proto3" json:"cmd,omitempty"` + ClientId string `protobuf:"bytes,2,opt,name=client_id,json=clientId,proto3" json:"client_id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGetsysteminfo) Reset() { + *x = ReqGetsysteminfo{} + mi := &file_dwarf_proto_msgTypes[79] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGetsysteminfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGetsysteminfo) ProtoMessage() {} + +func (x *ReqGetsysteminfo) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[79] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGetsysteminfo.ProtoReflect.Descriptor instead. +func (*ReqGetsysteminfo) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{79} +} + +func (x *ReqGetsysteminfo) GetCmd() int32 { + if x != nil { + return x.Cmd + } + return 0 +} + +func (x *ReqGetsysteminfo) GetClientId() string { + if x != nil { + return x.ClientId + } + return "" +} + +// source: ble +type ReqCheckFile struct { + state protoimpl.MessageState `protogen:"open.v1"` + Cmd int32 `protobuf:"varint,1,opt,name=cmd,proto3" json:"cmd,omitempty"` + FilePath string `protobuf:"bytes,2,opt,name=file_path,json=filePath,proto3" json:"file_path,omitempty"` + Md5 string `protobuf:"bytes,3,opt,name=md5,proto3" json:"md5,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqCheckFile) Reset() { + *x = ReqCheckFile{} + mi := &file_dwarf_proto_msgTypes[80] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqCheckFile) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqCheckFile) ProtoMessage() {} + +func (x *ReqCheckFile) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[80] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqCheckFile.ProtoReflect.Descriptor instead. +func (*ReqCheckFile) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{80} +} + +func (x *ReqCheckFile) GetCmd() int32 { + if x != nil { + return x.Cmd + } + return 0 +} + +func (x *ReqCheckFile) GetFilePath() string { + if x != nil { + return x.FilePath + } + return "" +} + +func (x *ReqCheckFile) GetMd5() string { + if x != nil { + return x.Md5 + } + return "" +} + +// source: ble +type ResCommon struct { + state protoimpl.MessageState `protogen:"open.v1"` + Cmd int32 `protobuf:"varint,1,opt,name=cmd,proto3" json:"cmd,omitempty"` + Code int32 `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResCommon) Reset() { + *x = ResCommon{} + mi := &file_dwarf_proto_msgTypes[81] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResCommon) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResCommon) ProtoMessage() {} + +func (x *ResCommon) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[81] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResCommon.ProtoReflect.Descriptor instead. +func (*ResCommon) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{81} +} + +func (x *ResCommon) GetCmd() int32 { + if x != nil { + return x.Cmd + } + return 0 +} + +func (x *ResCommon) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +// source: ble +type ResGetconfig struct { + state protoimpl.MessageState `protogen:"open.v1"` + Cmd int32 `protobuf:"varint,1,opt,name=cmd,proto3" json:"cmd,omitempty"` + Code int32 `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"` + State int32 `protobuf:"varint,3,opt,name=state,proto3" json:"state,omitempty"` + WifiMode int32 `protobuf:"varint,4,opt,name=wifi_mode,json=wifiMode,proto3" json:"wifi_mode,omitempty"` + ApMode int32 `protobuf:"varint,5,opt,name=ap_mode,json=apMode,proto3" json:"ap_mode,omitempty"` + AutoStart int32 `protobuf:"varint,6,opt,name=auto_start,json=autoStart,proto3" json:"auto_start,omitempty"` + ApCountryList int32 `protobuf:"varint,7,opt,name=ap_country_list,json=apCountryList,proto3" json:"ap_country_list,omitempty"` + Ssid string `protobuf:"bytes,8,opt,name=ssid,proto3" json:"ssid,omitempty"` + Psd string `protobuf:"bytes,9,opt,name=psd,proto3" json:"psd,omitempty"` + Ip string `protobuf:"bytes,10,opt,name=ip,proto3" json:"ip,omitempty"` + ApCountry string `protobuf:"bytes,11,opt,name=ap_country,json=apCountry,proto3" json:"ap_country,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResGetconfig) Reset() { + *x = ResGetconfig{} + mi := &file_dwarf_proto_msgTypes[82] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResGetconfig) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResGetconfig) ProtoMessage() {} + +func (x *ResGetconfig) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[82] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResGetconfig.ProtoReflect.Descriptor instead. +func (*ResGetconfig) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{82} +} + +func (x *ResGetconfig) GetCmd() int32 { + if x != nil { + return x.Cmd + } + return 0 +} + +func (x *ResGetconfig) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResGetconfig) GetState() int32 { + if x != nil { + return x.State + } + return 0 +} + +func (x *ResGetconfig) GetWifiMode() int32 { + if x != nil { + return x.WifiMode + } + return 0 +} + +func (x *ResGetconfig) GetApMode() int32 { + if x != nil { + return x.ApMode + } + return 0 +} + +func (x *ResGetconfig) GetAutoStart() int32 { + if x != nil { + return x.AutoStart + } + return 0 +} + +func (x *ResGetconfig) GetApCountryList() int32 { + if x != nil { + return x.ApCountryList + } + return 0 +} + +func (x *ResGetconfig) GetSsid() string { + if x != nil { + return x.Ssid + } + return "" +} + +func (x *ResGetconfig) GetPsd() string { + if x != nil { + return x.Psd + } + return "" +} + +func (x *ResGetconfig) GetIp() string { + if x != nil { + return x.Ip + } + return "" +} + +func (x *ResGetconfig) GetApCountry() string { + if x != nil { + return x.ApCountry + } + return "" +} + +// source: ble +type ResAp struct { + state protoimpl.MessageState `protogen:"open.v1"` + Cmd int32 `protobuf:"varint,1,opt,name=cmd,proto3" json:"cmd,omitempty"` + Code int32 `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"` + Mode int32 `protobuf:"varint,3,opt,name=mode,proto3" json:"mode,omitempty"` + Ssid string `protobuf:"bytes,4,opt,name=ssid,proto3" json:"ssid,omitempty"` + Psd string `protobuf:"bytes,5,opt,name=psd,proto3" json:"psd,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResAp) Reset() { + *x = ResAp{} + mi := &file_dwarf_proto_msgTypes[83] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResAp) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResAp) ProtoMessage() {} + +func (x *ResAp) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[83] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResAp.ProtoReflect.Descriptor instead. +func (*ResAp) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{83} +} + +func (x *ResAp) GetCmd() int32 { + if x != nil { + return x.Cmd + } + return 0 +} + +func (x *ResAp) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResAp) GetMode() int32 { + if x != nil { + return x.Mode + } + return 0 +} + +func (x *ResAp) GetSsid() string { + if x != nil { + return x.Ssid + } + return "" +} + +func (x *ResAp) GetPsd() string { + if x != nil { + return x.Psd + } + return "" +} + +// source: ble +type ResSta struct { + state protoimpl.MessageState `protogen:"open.v1"` + Cmd int32 `protobuf:"varint,1,opt,name=cmd,proto3" json:"cmd,omitempty"` + Code int32 `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"` + Ssid string `protobuf:"bytes,3,opt,name=ssid,proto3" json:"ssid,omitempty"` + Psd string `protobuf:"bytes,4,opt,name=psd,proto3" json:"psd,omitempty"` + Ip string `protobuf:"bytes,5,opt,name=ip,proto3" json:"ip,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResSta) Reset() { + *x = ResSta{} + mi := &file_dwarf_proto_msgTypes[84] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResSta) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResSta) ProtoMessage() {} + +func (x *ResSta) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[84] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResSta.ProtoReflect.Descriptor instead. +func (*ResSta) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{84} +} + +func (x *ResSta) GetCmd() int32 { + if x != nil { + return x.Cmd + } + return 0 +} + +func (x *ResSta) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResSta) GetSsid() string { + if x != nil { + return x.Ssid + } + return "" +} + +func (x *ResSta) GetPsd() string { + if x != nil { + return x.Psd + } + return "" +} + +func (x *ResSta) GetIp() string { + if x != nil { + return x.Ip + } + return "" +} + +// source: ble +type ResSetblewifi struct { + state protoimpl.MessageState `protogen:"open.v1"` + Cmd int32 `protobuf:"varint,1,opt,name=cmd,proto3" json:"cmd,omitempty"` + Code int32 `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"` + Mode int32 `protobuf:"varint,3,opt,name=mode,proto3" json:"mode,omitempty"` + Value string `protobuf:"bytes,4,opt,name=value,proto3" json:"value,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResSetblewifi) Reset() { + *x = ResSetblewifi{} + mi := &file_dwarf_proto_msgTypes[85] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResSetblewifi) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResSetblewifi) ProtoMessage() {} + +func (x *ResSetblewifi) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[85] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResSetblewifi.ProtoReflect.Descriptor instead. +func (*ResSetblewifi) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{85} +} + +func (x *ResSetblewifi) GetCmd() int32 { + if x != nil { + return x.Cmd + } + return 0 +} + +func (x *ResSetblewifi) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResSetblewifi) GetMode() int32 { + if x != nil { + return x.Mode + } + return 0 +} + +func (x *ResSetblewifi) GetValue() string { + if x != nil { + return x.Value + } + return "" +} + +// source: ble +type ResReset struct { + state protoimpl.MessageState `protogen:"open.v1"` + Cmd int32 `protobuf:"varint,1,opt,name=cmd,proto3" json:"cmd,omitempty"` + Code int32 `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResReset) Reset() { + *x = ResReset{} + mi := &file_dwarf_proto_msgTypes[86] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResReset) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResReset) ProtoMessage() {} + +func (x *ResReset) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[86] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResReset.ProtoReflect.Descriptor instead. +func (*ResReset) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{86} +} + +func (x *ResReset) GetCmd() int32 { + if x != nil { + return x.Cmd + } + return 0 +} + +func (x *ResReset) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +// source: ble +type WifiInfo struct { + state protoimpl.MessageState `protogen:"open.v1"` + SignalLevel int32 `protobuf:"varint,1,opt,name=signal_level,json=signalLevel,proto3" json:"signal_level,omitempty"` + Ssid string `protobuf:"bytes,2,opt,name=ssid,proto3" json:"ssid,omitempty"` + SecurityCapability string `protobuf:"bytes,3,opt,name=security_capability,json=securityCapability,proto3" json:"security_capability,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *WifiInfo) Reset() { + *x = WifiInfo{} + mi := &file_dwarf_proto_msgTypes[87] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *WifiInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*WifiInfo) ProtoMessage() {} + +func (x *WifiInfo) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[87] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use WifiInfo.ProtoReflect.Descriptor instead. +func (*WifiInfo) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{87} +} + +func (x *WifiInfo) GetSignalLevel() int32 { + if x != nil { + return x.SignalLevel + } + return 0 +} + +func (x *WifiInfo) GetSsid() string { + if x != nil { + return x.Ssid + } + return "" +} + +func (x *WifiInfo) GetSecurityCapability() string { + if x != nil { + return x.SecurityCapability + } + return "" +} + +// source: ble +type ResWifilist struct { + state protoimpl.MessageState `protogen:"open.v1"` + Cmd int32 `protobuf:"varint,1,opt,name=cmd,proto3" json:"cmd,omitempty"` + Code int32 `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"` + Ssid []string `protobuf:"bytes,4,rep,name=ssid,proto3" json:"ssid,omitempty"` + WifiInfoList []*WifiInfo `protobuf:"bytes,5,rep,name=wifi_info_list,json=wifiInfoList,proto3" json:"wifi_info_list,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResWifilist) Reset() { + *x = ResWifilist{} + mi := &file_dwarf_proto_msgTypes[88] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResWifilist) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResWifilist) ProtoMessage() {} + +func (x *ResWifilist) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[88] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResWifilist.ProtoReflect.Descriptor instead. +func (*ResWifilist) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{88} +} + +func (x *ResWifilist) GetCmd() int32 { + if x != nil { + return x.Cmd + } + return 0 +} + +func (x *ResWifilist) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResWifilist) GetSsid() []string { + if x != nil { + return x.Ssid + } + return nil +} + +func (x *ResWifilist) GetWifiInfoList() []*WifiInfo { + if x != nil { + return x.WifiInfoList + } + return nil +} + +// source: ble +type ResGetsysteminfo struct { + state protoimpl.MessageState `protogen:"open.v1"` + Cmd int32 `protobuf:"varint,1,opt,name=cmd,proto3" json:"cmd,omitempty"` + Code int32 `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"` + ProtocolVersion int32 `protobuf:"varint,3,opt,name=protocol_version,json=protocolVersion,proto3" json:"protocol_version,omitempty"` + Device string `protobuf:"bytes,4,opt,name=device,proto3" json:"device,omitempty"` + MacAddress string `protobuf:"bytes,5,opt,name=mac_address,json=macAddress,proto3" json:"mac_address,omitempty"` + DwarfOtaVersion string `protobuf:"bytes,6,opt,name=dwarf_ota_version,json=dwarfOtaVersion,proto3" json:"dwarf_ota_version,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResGetsysteminfo) Reset() { + *x = ResGetsysteminfo{} + mi := &file_dwarf_proto_msgTypes[89] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResGetsysteminfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResGetsysteminfo) ProtoMessage() {} + +func (x *ResGetsysteminfo) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[89] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResGetsysteminfo.ProtoReflect.Descriptor instead. +func (*ResGetsysteminfo) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{89} +} + +func (x *ResGetsysteminfo) GetCmd() int32 { + if x != nil { + return x.Cmd + } + return 0 +} + +func (x *ResGetsysteminfo) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResGetsysteminfo) GetProtocolVersion() int32 { + if x != nil { + return x.ProtocolVersion + } + return 0 +} + +func (x *ResGetsysteminfo) GetDevice() string { + if x != nil { + return x.Device + } + return "" +} + +func (x *ResGetsysteminfo) GetMacAddress() string { + if x != nil { + return x.MacAddress + } + return "" +} + +func (x *ResGetsysteminfo) GetDwarfOtaVersion() string { + if x != nil { + return x.DwarfOtaVersion + } + return "" +} + +// source: ble +type ResReceiveDataError struct { + state protoimpl.MessageState `protogen:"open.v1"` + Cmd int32 `protobuf:"varint,1,opt,name=cmd,proto3" json:"cmd,omitempty"` + Code int32 `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResReceiveDataError) Reset() { + *x = ResReceiveDataError{} + mi := &file_dwarf_proto_msgTypes[90] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResReceiveDataError) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResReceiveDataError) ProtoMessage() {} + +func (x *ResReceiveDataError) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[90] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResReceiveDataError.ProtoReflect.Descriptor instead. +func (*ResReceiveDataError) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{90} +} + +func (x *ResReceiveDataError) GetCmd() int32 { + if x != nil { + return x.Cmd + } + return 0 +} + +func (x *ResReceiveDataError) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +// source: ble +type ResCheckFile struct { + state protoimpl.MessageState `protogen:"open.v1"` + Cmd int32 `protobuf:"varint,1,opt,name=cmd,proto3" json:"cmd,omitempty"` + Code int32 `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResCheckFile) Reset() { + *x = ResCheckFile{} + mi := &file_dwarf_proto_msgTypes[91] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResCheckFile) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResCheckFile) ProtoMessage() {} + +func (x *ResCheckFile) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[91] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResCheckFile.ProtoReflect.Descriptor instead. +func (*ResCheckFile) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{91} +} + +func (x *ResCheckFile) GetCmd() int32 { + if x != nil { + return x.Cmd + } + return 0 +} + +func (x *ResCheckFile) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +// source: ble +type ComDwarfMsg struct { + state protoimpl.MessageState `protogen:"open.v1"` + Vocaltype VocalType `protobuf:"varint,1,opt,name=vocaltype,proto3,enum=VocalType" json:"vocaltype,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ComDwarfMsg) Reset() { + *x = ComDwarfMsg{} + mi := &file_dwarf_proto_msgTypes[92] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ComDwarfMsg) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ComDwarfMsg) ProtoMessage() {} + +func (x *ComDwarfMsg) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[92] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ComDwarfMsg.ProtoReflect.Descriptor instead. +func (*ComDwarfMsg) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{92} +} + +func (x *ComDwarfMsg) GetVocaltype() VocalType { + if x != nil { + return x.Vocaltype + } + return VocalType_VT_UNKNOWN +} + +// source: ble +type DwarfPing struct { + state protoimpl.MessageState `protogen:"open.v1"` + Vocaltype VocalType `protobuf:"varint,1,opt,name=vocaltype,proto3,enum=VocalType" json:"vocaltype,omitempty"` + Timestamp uint64 `protobuf:"varint,2,opt,name=timestamp,proto3" json:"timestamp,omitempty"` + Magic []byte `protobuf:"bytes,3,opt,name=magic,proto3" json:"magic,omitempty"` + Vocals [][]byte `protobuf:"bytes,4,rep,name=vocals,proto3" json:"vocals,omitempty"` + Mutes [][]byte `protobuf:"bytes,5,rep,name=mutes,proto3" json:"mutes,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *DwarfPing) Reset() { + *x = DwarfPing{} + mi := &file_dwarf_proto_msgTypes[93] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *DwarfPing) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DwarfPing) ProtoMessage() {} + +func (x *DwarfPing) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[93] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DwarfPing.ProtoReflect.Descriptor instead. +func (*DwarfPing) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{93} +} + +func (x *DwarfPing) GetVocaltype() VocalType { + if x != nil { + return x.Vocaltype + } + return VocalType_VT_UNKNOWN +} + +func (x *DwarfPing) GetTimestamp() uint64 { + if x != nil { + return x.Timestamp + } + return 0 +} + +func (x *DwarfPing) GetMagic() []byte { + if x != nil { + return x.Magic + } + return nil +} + +func (x *DwarfPing) GetVocals() [][]byte { + if x != nil { + return x.Vocals + } + return nil +} + +func (x *DwarfPing) GetMutes() [][]byte { + if x != nil { + return x.Mutes + } + return nil +} + +// source: ble +type StationModel struct { + state protoimpl.MessageState `protogen:"open.v1"` + Family uint32 `protobuf:"varint,1,opt,name=family,proto3" json:"family,omitempty"` + Revision uint32 `protobuf:"varint,2,opt,name=revision,proto3" json:"revision,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *StationModel) Reset() { + *x = StationModel{} + mi := &file_dwarf_proto_msgTypes[94] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *StationModel) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*StationModel) ProtoMessage() {} + +func (x *StationModel) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[94] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use StationModel.ProtoReflect.Descriptor instead. +func (*StationModel) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{94} +} + +func (x *StationModel) GetFamily() uint32 { + if x != nil { + return x.Family + } + return 0 +} + +func (x *StationModel) GetRevision() uint32 { + if x != nil { + return x.Revision + } + return 0 +} + +// source: ble +type NifAP struct { + state protoimpl.MessageState `protogen:"open.v1"` + // oneof _ipv6 + Ifname string `protobuf:"bytes,1,opt,name=ifname,proto3" json:"ifname,omitempty"` + Mode int32 `protobuf:"varint,2,opt,name=mode,proto3" json:"mode,omitempty"` + CountryCode string `protobuf:"bytes,3,opt,name=country_code,json=countryCode,proto3" json:"country_code,omitempty"` + Ssid string `protobuf:"bytes,4,opt,name=ssid,proto3" json:"ssid,omitempty"` + Sec string `protobuf:"bytes,5,opt,name=sec,proto3" json:"sec,omitempty"` + Psw string `protobuf:"bytes,6,opt,name=psw,proto3" json:"psw,omitempty"` + Ipv4 []byte `protobuf:"bytes,7,opt,name=ipv4,proto3" json:"ipv4,omitempty"` + Ipv6 []byte `protobuf:"bytes,8,opt,name=ipv6,proto3" json:"ipv6,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *NifAP) Reset() { + *x = NifAP{} + mi := &file_dwarf_proto_msgTypes[95] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *NifAP) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*NifAP) ProtoMessage() {} + +func (x *NifAP) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[95] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use NifAP.ProtoReflect.Descriptor instead. +func (*NifAP) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{95} +} + +func (x *NifAP) GetIfname() string { + if x != nil { + return x.Ifname + } + return "" +} + +func (x *NifAP) GetMode() int32 { + if x != nil { + return x.Mode + } + return 0 +} + +func (x *NifAP) GetCountryCode() string { + if x != nil { + return x.CountryCode + } + return "" +} + +func (x *NifAP) GetSsid() string { + if x != nil { + return x.Ssid + } + return "" +} + +func (x *NifAP) GetSec() string { + if x != nil { + return x.Sec + } + return "" +} + +func (x *NifAP) GetPsw() string { + if x != nil { + return x.Psw + } + return "" +} + +func (x *NifAP) GetIpv4() []byte { + if x != nil { + return x.Ipv4 + } + return nil +} + +func (x *NifAP) GetIpv6() []byte { + if x != nil { + return x.Ipv6 + } + return nil +} + +// source: ble +type NifSTA struct { + state protoimpl.MessageState `protogen:"open.v1"` + // oneof _ssid + // oneof _psw + // oneof _rssi + // oneof _ipv4 + // oneof _ipv6 + Ifname string `protobuf:"bytes,1,opt,name=ifname,proto3" json:"ifname,omitempty"` + Ssid string `protobuf:"bytes,2,opt,name=ssid,proto3" json:"ssid,omitempty"` + Psw string `protobuf:"bytes,3,opt,name=psw,proto3" json:"psw,omitempty"` + Rssi int32 `protobuf:"varint,4,opt,name=rssi,proto3" json:"rssi,omitempty"` + Ipv4 []byte `protobuf:"bytes,5,opt,name=ipv4,proto3" json:"ipv4,omitempty"` + Ipv6 []byte `protobuf:"bytes,6,opt,name=ipv6,proto3" json:"ipv6,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *NifSTA) Reset() { + *x = NifSTA{} + mi := &file_dwarf_proto_msgTypes[96] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *NifSTA) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*NifSTA) ProtoMessage() {} + +func (x *NifSTA) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[96] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use NifSTA.ProtoReflect.Descriptor instead. +func (*NifSTA) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{96} +} + +func (x *NifSTA) GetIfname() string { + if x != nil { + return x.Ifname + } + return "" +} + +func (x *NifSTA) GetSsid() string { + if x != nil { + return x.Ssid + } + return "" +} + +func (x *NifSTA) GetPsw() string { + if x != nil { + return x.Psw + } + return "" +} + +func (x *NifSTA) GetRssi() int32 { + if x != nil { + return x.Rssi + } + return 0 +} + +func (x *NifSTA) GetIpv4() []byte { + if x != nil { + return x.Ipv4 + } + return nil +} + +func (x *NifSTA) GetIpv6() []byte { + if x != nil { + return x.Ipv6 + } + return nil +} + +// source: ble +type DwarfEcho struct { + state protoimpl.MessageState `protogen:"open.v1"` + Vocaltype VocalType `protobuf:"varint,1,opt,name=vocaltype,proto3,enum=VocalType" json:"vocaltype,omitempty"` + Timestamp uint64 `protobuf:"varint,2,opt,name=timestamp,proto3" json:"timestamp,omitempty"` + Magic []byte `protobuf:"bytes,3,opt,name=magic,proto3" json:"magic,omitempty"` + TsPing uint64 `protobuf:"varint,4,opt,name=ts_ping,json=tsPing,proto3" json:"ts_ping,omitempty"` + MacAddress []byte `protobuf:"bytes,5,opt,name=mac_address,json=macAddress,proto3" json:"mac_address,omitempty"` + Model *StationModel `protobuf:"bytes,6,opt,name=model,proto3" json:"model,omitempty"` + Sn string `protobuf:"bytes,7,opt,name=sn,proto3" json:"sn,omitempty"` + Name string `protobuf:"bytes,8,opt,name=name,proto3" json:"name,omitempty"` + Psw string `protobuf:"bytes,9,opt,name=psw,proto3" json:"psw,omitempty"` + FwVersion string `protobuf:"bytes,10,opt,name=fw_version,json=fwVersion,proto3" json:"fw_version,omitempty"` + WsScheme string `protobuf:"bytes,11,opt,name=ws_scheme,json=wsScheme,proto3" json:"ws_scheme,omitempty"` + Session uint32 `protobuf:"varint,12,opt,name=session,proto3" json:"session,omitempty"` + Ap *NifAP `protobuf:"bytes,13,opt,name=ap,proto3" json:"ap,omitempty"` + Sta *NifSTA `protobuf:"bytes,14,opt,name=sta,proto3" json:"sta,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *DwarfEcho) Reset() { + *x = DwarfEcho{} + mi := &file_dwarf_proto_msgTypes[97] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *DwarfEcho) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DwarfEcho) ProtoMessage() {} + +func (x *DwarfEcho) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[97] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DwarfEcho.ProtoReflect.Descriptor instead. +func (*DwarfEcho) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{97} +} + +func (x *DwarfEcho) GetVocaltype() VocalType { + if x != nil { + return x.Vocaltype + } + return VocalType_VT_UNKNOWN +} + +func (x *DwarfEcho) GetTimestamp() uint64 { + if x != nil { + return x.Timestamp + } + return 0 +} + +func (x *DwarfEcho) GetMagic() []byte { + if x != nil { + return x.Magic + } + return nil +} + +func (x *DwarfEcho) GetTsPing() uint64 { + if x != nil { + return x.TsPing + } + return 0 +} + +func (x *DwarfEcho) GetMacAddress() []byte { + if x != nil { + return x.MacAddress + } + return nil +} + +func (x *DwarfEcho) GetModel() *StationModel { + if x != nil { + return x.Model + } + return nil +} + +func (x *DwarfEcho) GetSn() string { + if x != nil { + return x.Sn + } + return "" +} + +func (x *DwarfEcho) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *DwarfEcho) GetPsw() string { + if x != nil { + return x.Psw + } + return "" +} + +func (x *DwarfEcho) GetFwVersion() string { + if x != nil { + return x.FwVersion + } + return "" +} + +func (x *DwarfEcho) GetWsScheme() string { + if x != nil { + return x.WsScheme + } + return "" +} + +func (x *DwarfEcho) GetSession() uint32 { + if x != nil { + return x.Session + } + return 0 +} + +func (x *DwarfEcho) GetAp() *NifAP { + if x != nil { + return x.Ap + } + return nil +} + +func (x *DwarfEcho) GetSta() *NifSTA { + if x != nil { + return x.Sta + } + return nil +} + +// source: camera +type ReqOpenCamera struct { + state protoimpl.MessageState `protogen:"open.v1"` + Binning bool `protobuf:"varint,1,opt,name=binning,proto3" json:"binning,omitempty"` + RtspEncodeType int32 `protobuf:"varint,2,opt,name=rtsp_encode_type,json=rtspEncodeType,proto3" json:"rtsp_encode_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqOpenCamera) Reset() { + *x = ReqOpenCamera{} + mi := &file_dwarf_proto_msgTypes[98] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqOpenCamera) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqOpenCamera) ProtoMessage() {} + +func (x *ReqOpenCamera) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[98] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqOpenCamera.ProtoReflect.Descriptor instead. +func (*ReqOpenCamera) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{98} +} + +func (x *ReqOpenCamera) GetBinning() bool { + if x != nil { + return x.Binning + } + return false +} + +func (x *ReqOpenCamera) GetRtspEncodeType() int32 { + if x != nil { + return x.RtspEncodeType + } + return 0 +} + +// source: camera +type ReqCloseCamera struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqCloseCamera) Reset() { + *x = ReqCloseCamera{} + mi := &file_dwarf_proto_msgTypes[99] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqCloseCamera) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqCloseCamera) ProtoMessage() {} + +func (x *ReqCloseCamera) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[99] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqCloseCamera.ProtoReflect.Descriptor instead. +func (*ReqCloseCamera) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{99} +} + +// source: camera +type ReqPhoto struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqPhoto) Reset() { + *x = ReqPhoto{} + mi := &file_dwarf_proto_msgTypes[100] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqPhoto) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqPhoto) ProtoMessage() {} + +func (x *ReqPhoto) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[100] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqPhoto.ProtoReflect.Descriptor instead. +func (*ReqPhoto) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{100} +} + +// source: camera +type ReqBurstPhoto struct { + state protoimpl.MessageState `protogen:"open.v1"` + Count int32 `protobuf:"varint,1,opt,name=count,proto3" json:"count,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqBurstPhoto) Reset() { + *x = ReqBurstPhoto{} + mi := &file_dwarf_proto_msgTypes[101] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqBurstPhoto) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqBurstPhoto) ProtoMessage() {} + +func (x *ReqBurstPhoto) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[101] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqBurstPhoto.ProtoReflect.Descriptor instead. +func (*ReqBurstPhoto) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{101} +} + +func (x *ReqBurstPhoto) GetCount() int32 { + if x != nil { + return x.Count + } + return 0 +} + +// source: camera +type ReqStopBurstPhoto struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStopBurstPhoto) Reset() { + *x = ReqStopBurstPhoto{} + mi := &file_dwarf_proto_msgTypes[102] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStopBurstPhoto) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStopBurstPhoto) ProtoMessage() {} + +func (x *ReqStopBurstPhoto) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[102] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStopBurstPhoto.ProtoReflect.Descriptor instead. +func (*ReqStopBurstPhoto) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{102} +} + +// source: camera +type ReqStartRecord struct { + state protoimpl.MessageState `protogen:"open.v1"` + EncodeType int32 `protobuf:"varint,1,opt,name=encode_type,json=encodeType,proto3" json:"encode_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStartRecord) Reset() { + *x = ReqStartRecord{} + mi := &file_dwarf_proto_msgTypes[103] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStartRecord) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStartRecord) ProtoMessage() {} + +func (x *ReqStartRecord) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[103] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStartRecord.ProtoReflect.Descriptor instead. +func (*ReqStartRecord) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{103} +} + +func (x *ReqStartRecord) GetEncodeType() int32 { + if x != nil { + return x.EncodeType + } + return 0 +} + +// source: camera +type ReqStopRecord struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStopRecord) Reset() { + *x = ReqStopRecord{} + mi := &file_dwarf_proto_msgTypes[104] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStopRecord) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStopRecord) ProtoMessage() {} + +func (x *ReqStopRecord) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[104] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStopRecord.ProtoReflect.Descriptor instead. +func (*ReqStopRecord) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{104} +} + +// source: camera +type ReqSetExpMode struct { + state protoimpl.MessageState `protogen:"open.v1"` + Mode int32 `protobuf:"varint,1,opt,name=mode,proto3" json:"mode,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSetExpMode) Reset() { + *x = ReqSetExpMode{} + mi := &file_dwarf_proto_msgTypes[105] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSetExpMode) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSetExpMode) ProtoMessage() {} + +func (x *ReqSetExpMode) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[105] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSetExpMode.ProtoReflect.Descriptor instead. +func (*ReqSetExpMode) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{105} +} + +func (x *ReqSetExpMode) GetMode() int32 { + if x != nil { + return x.Mode + } + return 0 +} + +// source: camera +type ReqGetExpMode struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGetExpMode) Reset() { + *x = ReqGetExpMode{} + mi := &file_dwarf_proto_msgTypes[106] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGetExpMode) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGetExpMode) ProtoMessage() {} + +func (x *ReqGetExpMode) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[106] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGetExpMode.ProtoReflect.Descriptor instead. +func (*ReqGetExpMode) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{106} +} + +// source: camera +type ReqSetExp struct { + state protoimpl.MessageState `protogen:"open.v1"` + Index int32 `protobuf:"varint,1,opt,name=index,proto3" json:"index,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSetExp) Reset() { + *x = ReqSetExp{} + mi := &file_dwarf_proto_msgTypes[107] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSetExp) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSetExp) ProtoMessage() {} + +func (x *ReqSetExp) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[107] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSetExp.ProtoReflect.Descriptor instead. +func (*ReqSetExp) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{107} +} + +func (x *ReqSetExp) GetIndex() int32 { + if x != nil { + return x.Index + } + return 0 +} + +// source: camera +type ReqGetExp struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGetExp) Reset() { + *x = ReqGetExp{} + mi := &file_dwarf_proto_msgTypes[108] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGetExp) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGetExp) ProtoMessage() {} + +func (x *ReqGetExp) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[108] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGetExp.ProtoReflect.Descriptor instead. +func (*ReqGetExp) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{108} +} + +// source: camera +type ReqSetGainMode struct { + state protoimpl.MessageState `protogen:"open.v1"` + Mode int32 `protobuf:"varint,1,opt,name=mode,proto3" json:"mode,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSetGainMode) Reset() { + *x = ReqSetGainMode{} + mi := &file_dwarf_proto_msgTypes[109] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSetGainMode) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSetGainMode) ProtoMessage() {} + +func (x *ReqSetGainMode) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[109] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSetGainMode.ProtoReflect.Descriptor instead. +func (*ReqSetGainMode) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{109} +} + +func (x *ReqSetGainMode) GetMode() int32 { + if x != nil { + return x.Mode + } + return 0 +} + +// source: camera +type ReqGetGainMode struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGetGainMode) Reset() { + *x = ReqGetGainMode{} + mi := &file_dwarf_proto_msgTypes[110] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGetGainMode) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGetGainMode) ProtoMessage() {} + +func (x *ReqGetGainMode) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[110] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGetGainMode.ProtoReflect.Descriptor instead. +func (*ReqGetGainMode) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{110} +} + +// source: camera +type ReqSetGain struct { + state protoimpl.MessageState `protogen:"open.v1"` + Index int32 `protobuf:"varint,1,opt,name=index,proto3" json:"index,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSetGain) Reset() { + *x = ReqSetGain{} + mi := &file_dwarf_proto_msgTypes[111] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSetGain) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSetGain) ProtoMessage() {} + +func (x *ReqSetGain) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[111] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSetGain.ProtoReflect.Descriptor instead. +func (*ReqSetGain) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{111} +} + +func (x *ReqSetGain) GetIndex() int32 { + if x != nil { + return x.Index + } + return 0 +} + +// source: camera +type ReqGetGain struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGetGain) Reset() { + *x = ReqGetGain{} + mi := &file_dwarf_proto_msgTypes[112] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGetGain) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGetGain) ProtoMessage() {} + +func (x *ReqGetGain) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[112] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGetGain.ProtoReflect.Descriptor instead. +func (*ReqGetGain) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{112} +} + +// source: camera +type ReqSetBrightness struct { + state protoimpl.MessageState `protogen:"open.v1"` + Value int32 `protobuf:"varint,1,opt,name=value,proto3" json:"value,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSetBrightness) Reset() { + *x = ReqSetBrightness{} + mi := &file_dwarf_proto_msgTypes[113] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSetBrightness) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSetBrightness) ProtoMessage() {} + +func (x *ReqSetBrightness) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[113] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSetBrightness.ProtoReflect.Descriptor instead. +func (*ReqSetBrightness) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{113} +} + +func (x *ReqSetBrightness) GetValue() int32 { + if x != nil { + return x.Value + } + return 0 +} + +// source: camera +type ReqGetBrightness struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGetBrightness) Reset() { + *x = ReqGetBrightness{} + mi := &file_dwarf_proto_msgTypes[114] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGetBrightness) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGetBrightness) ProtoMessage() {} + +func (x *ReqGetBrightness) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[114] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGetBrightness.ProtoReflect.Descriptor instead. +func (*ReqGetBrightness) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{114} +} + +// source: camera +type ReqSetContrast struct { + state protoimpl.MessageState `protogen:"open.v1"` + Value int32 `protobuf:"varint,1,opt,name=value,proto3" json:"value,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSetContrast) Reset() { + *x = ReqSetContrast{} + mi := &file_dwarf_proto_msgTypes[115] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSetContrast) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSetContrast) ProtoMessage() {} + +func (x *ReqSetContrast) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[115] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSetContrast.ProtoReflect.Descriptor instead. +func (*ReqSetContrast) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{115} +} + +func (x *ReqSetContrast) GetValue() int32 { + if x != nil { + return x.Value + } + return 0 +} + +// source: camera +type ReqGetContrast struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGetContrast) Reset() { + *x = ReqGetContrast{} + mi := &file_dwarf_proto_msgTypes[116] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGetContrast) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGetContrast) ProtoMessage() {} + +func (x *ReqGetContrast) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[116] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGetContrast.ProtoReflect.Descriptor instead. +func (*ReqGetContrast) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{116} +} + +// source: camera +type ReqSetHue struct { + state protoimpl.MessageState `protogen:"open.v1"` + Value int32 `protobuf:"varint,1,opt,name=value,proto3" json:"value,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSetHue) Reset() { + *x = ReqSetHue{} + mi := &file_dwarf_proto_msgTypes[117] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSetHue) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSetHue) ProtoMessage() {} + +func (x *ReqSetHue) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[117] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSetHue.ProtoReflect.Descriptor instead. +func (*ReqSetHue) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{117} +} + +func (x *ReqSetHue) GetValue() int32 { + if x != nil { + return x.Value + } + return 0 +} + +// source: camera +type ReqGetHue struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGetHue) Reset() { + *x = ReqGetHue{} + mi := &file_dwarf_proto_msgTypes[118] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGetHue) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGetHue) ProtoMessage() {} + +func (x *ReqGetHue) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[118] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGetHue.ProtoReflect.Descriptor instead. +func (*ReqGetHue) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{118} +} + +// source: camera +type ReqSetSaturation struct { + state protoimpl.MessageState `protogen:"open.v1"` + Value int32 `protobuf:"varint,1,opt,name=value,proto3" json:"value,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSetSaturation) Reset() { + *x = ReqSetSaturation{} + mi := &file_dwarf_proto_msgTypes[119] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSetSaturation) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSetSaturation) ProtoMessage() {} + +func (x *ReqSetSaturation) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[119] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSetSaturation.ProtoReflect.Descriptor instead. +func (*ReqSetSaturation) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{119} +} + +func (x *ReqSetSaturation) GetValue() int32 { + if x != nil { + return x.Value + } + return 0 +} + +// source: camera +type ReqGetSaturation struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGetSaturation) Reset() { + *x = ReqGetSaturation{} + mi := &file_dwarf_proto_msgTypes[120] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGetSaturation) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGetSaturation) ProtoMessage() {} + +func (x *ReqGetSaturation) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[120] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGetSaturation.ProtoReflect.Descriptor instead. +func (*ReqGetSaturation) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{120} +} + +// source: camera +type ReqSetSharpness struct { + state protoimpl.MessageState `protogen:"open.v1"` + Value int32 `protobuf:"varint,1,opt,name=value,proto3" json:"value,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSetSharpness) Reset() { + *x = ReqSetSharpness{} + mi := &file_dwarf_proto_msgTypes[121] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSetSharpness) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSetSharpness) ProtoMessage() {} + +func (x *ReqSetSharpness) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[121] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSetSharpness.ProtoReflect.Descriptor instead. +func (*ReqSetSharpness) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{121} +} + +func (x *ReqSetSharpness) GetValue() int32 { + if x != nil { + return x.Value + } + return 0 +} + +// source: camera +type ReqGetSharpness struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGetSharpness) Reset() { + *x = ReqGetSharpness{} + mi := &file_dwarf_proto_msgTypes[122] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGetSharpness) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGetSharpness) ProtoMessage() {} + +func (x *ReqGetSharpness) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[122] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGetSharpness.ProtoReflect.Descriptor instead. +func (*ReqGetSharpness) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{122} +} + +// source: camera +type ReqSetWBMode struct { + state protoimpl.MessageState `protogen:"open.v1"` + Mode int32 `protobuf:"varint,1,opt,name=mode,proto3" json:"mode,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSetWBMode) Reset() { + *x = ReqSetWBMode{} + mi := &file_dwarf_proto_msgTypes[123] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSetWBMode) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSetWBMode) ProtoMessage() {} + +func (x *ReqSetWBMode) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[123] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSetWBMode.ProtoReflect.Descriptor instead. +func (*ReqSetWBMode) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{123} +} + +func (x *ReqSetWBMode) GetMode() int32 { + if x != nil { + return x.Mode + } + return 0 +} + +// source: camera +type ReqGetWBMode struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGetWBMode) Reset() { + *x = ReqGetWBMode{} + mi := &file_dwarf_proto_msgTypes[124] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGetWBMode) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGetWBMode) ProtoMessage() {} + +func (x *ReqGetWBMode) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[124] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGetWBMode.ProtoReflect.Descriptor instead. +func (*ReqGetWBMode) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{124} +} + +// source: camera +type ReqSetWBSence struct { + state protoimpl.MessageState `protogen:"open.v1"` + Value int32 `protobuf:"varint,1,opt,name=value,proto3" json:"value,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSetWBSence) Reset() { + *x = ReqSetWBSence{} + mi := &file_dwarf_proto_msgTypes[125] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSetWBSence) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSetWBSence) ProtoMessage() {} + +func (x *ReqSetWBSence) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[125] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSetWBSence.ProtoReflect.Descriptor instead. +func (*ReqSetWBSence) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{125} +} + +func (x *ReqSetWBSence) GetValue() int32 { + if x != nil { + return x.Value + } + return 0 +} + +// source: camera +type ReqGetWBSence struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGetWBSence) Reset() { + *x = ReqGetWBSence{} + mi := &file_dwarf_proto_msgTypes[126] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGetWBSence) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGetWBSence) ProtoMessage() {} + +func (x *ReqGetWBSence) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[126] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGetWBSence.ProtoReflect.Descriptor instead. +func (*ReqGetWBSence) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{126} +} + +// source: camera +type ReqSetWBCT struct { + state protoimpl.MessageState `protogen:"open.v1"` + Index int32 `protobuf:"varint,1,opt,name=index,proto3" json:"index,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSetWBCT) Reset() { + *x = ReqSetWBCT{} + mi := &file_dwarf_proto_msgTypes[127] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSetWBCT) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSetWBCT) ProtoMessage() {} + +func (x *ReqSetWBCT) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[127] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSetWBCT.ProtoReflect.Descriptor instead. +func (*ReqSetWBCT) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{127} +} + +func (x *ReqSetWBCT) GetIndex() int32 { + if x != nil { + return x.Index + } + return 0 +} + +// source: camera +type ReqGetWBCT struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGetWBCT) Reset() { + *x = ReqGetWBCT{} + mi := &file_dwarf_proto_msgTypes[128] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGetWBCT) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGetWBCT) ProtoMessage() {} + +func (x *ReqGetWBCT) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[128] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGetWBCT.ProtoReflect.Descriptor instead. +func (*ReqGetWBCT) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{128} +} + +// source: camera +type ReqSetIrCut struct { + state protoimpl.MessageState `protogen:"open.v1"` + Value int32 `protobuf:"varint,1,opt,name=value,proto3" json:"value,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSetIrCut) Reset() { + *x = ReqSetIrCut{} + mi := &file_dwarf_proto_msgTypes[129] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSetIrCut) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSetIrCut) ProtoMessage() {} + +func (x *ReqSetIrCut) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[129] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSetIrCut.ProtoReflect.Descriptor instead. +func (*ReqSetIrCut) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{129} +} + +func (x *ReqSetIrCut) GetValue() int32 { + if x != nil { + return x.Value + } + return 0 +} + +// source: camera +type ReqGetIrcut struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGetIrcut) Reset() { + *x = ReqGetIrcut{} + mi := &file_dwarf_proto_msgTypes[130] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGetIrcut) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGetIrcut) ProtoMessage() {} + +func (x *ReqGetIrcut) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[130] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGetIrcut.ProtoReflect.Descriptor instead. +func (*ReqGetIrcut) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{130} +} + +// source: camera +type ReqStartTimeLapse struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStartTimeLapse) Reset() { + *x = ReqStartTimeLapse{} + mi := &file_dwarf_proto_msgTypes[131] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStartTimeLapse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStartTimeLapse) ProtoMessage() {} + +func (x *ReqStartTimeLapse) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[131] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStartTimeLapse.ProtoReflect.Descriptor instead. +func (*ReqStartTimeLapse) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{131} +} + +// source: camera +type ReqStopTimeLapse struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStopTimeLapse) Reset() { + *x = ReqStopTimeLapse{} + mi := &file_dwarf_proto_msgTypes[132] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStopTimeLapse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStopTimeLapse) ProtoMessage() {} + +func (x *ReqStopTimeLapse) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[132] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStopTimeLapse.ProtoReflect.Descriptor instead. +func (*ReqStopTimeLapse) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{132} +} + +// source: camera +type ReqSetAllParams struct { + state protoimpl.MessageState `protogen:"open.v1"` + ExpMode int32 `protobuf:"varint,1,opt,name=exp_mode,json=expMode,proto3" json:"exp_mode,omitempty"` + ExpIndex int32 `protobuf:"varint,2,opt,name=exp_index,json=expIndex,proto3" json:"exp_index,omitempty"` + GainMode int32 `protobuf:"varint,3,opt,name=gain_mode,json=gainMode,proto3" json:"gain_mode,omitempty"` + GainIndex int32 `protobuf:"varint,4,opt,name=gain_index,json=gainIndex,proto3" json:"gain_index,omitempty"` + IrcutValue int32 `protobuf:"varint,5,opt,name=ircut_value,json=ircutValue,proto3" json:"ircut_value,omitempty"` + WbMode int32 `protobuf:"varint,6,opt,name=wb_mode,json=wbMode,proto3" json:"wb_mode,omitempty"` + WbIndexType int32 `protobuf:"varint,7,opt,name=wb_index_type,json=wbIndexType,proto3" json:"wb_index_type,omitempty"` + WbIndex int32 `protobuf:"varint,8,opt,name=wb_index,json=wbIndex,proto3" json:"wb_index,omitempty"` + Brightness int32 `protobuf:"varint,9,opt,name=brightness,proto3" json:"brightness,omitempty"` + Contrast int32 `protobuf:"varint,10,opt,name=contrast,proto3" json:"contrast,omitempty"` + Hue int32 `protobuf:"varint,11,opt,name=hue,proto3" json:"hue,omitempty"` + Saturation int32 `protobuf:"varint,12,opt,name=saturation,proto3" json:"saturation,omitempty"` + Sharpness int32 `protobuf:"varint,13,opt,name=sharpness,proto3" json:"sharpness,omitempty"` + JpgQuality int32 `protobuf:"varint,14,opt,name=jpg_quality,json=jpgQuality,proto3" json:"jpg_quality,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSetAllParams) Reset() { + *x = ReqSetAllParams{} + mi := &file_dwarf_proto_msgTypes[133] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSetAllParams) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSetAllParams) ProtoMessage() {} + +func (x *ReqSetAllParams) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[133] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSetAllParams.ProtoReflect.Descriptor instead. +func (*ReqSetAllParams) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{133} +} + +func (x *ReqSetAllParams) GetExpMode() int32 { + if x != nil { + return x.ExpMode + } + return 0 +} + +func (x *ReqSetAllParams) GetExpIndex() int32 { + if x != nil { + return x.ExpIndex + } + return 0 +} + +func (x *ReqSetAllParams) GetGainMode() int32 { + if x != nil { + return x.GainMode + } + return 0 +} + +func (x *ReqSetAllParams) GetGainIndex() int32 { + if x != nil { + return x.GainIndex + } + return 0 +} + +func (x *ReqSetAllParams) GetIrcutValue() int32 { + if x != nil { + return x.IrcutValue + } + return 0 +} + +func (x *ReqSetAllParams) GetWbMode() int32 { + if x != nil { + return x.WbMode + } + return 0 +} + +func (x *ReqSetAllParams) GetWbIndexType() int32 { + if x != nil { + return x.WbIndexType + } + return 0 +} + +func (x *ReqSetAllParams) GetWbIndex() int32 { + if x != nil { + return x.WbIndex + } + return 0 +} + +func (x *ReqSetAllParams) GetBrightness() int32 { + if x != nil { + return x.Brightness + } + return 0 +} + +func (x *ReqSetAllParams) GetContrast() int32 { + if x != nil { + return x.Contrast + } + return 0 +} + +func (x *ReqSetAllParams) GetHue() int32 { + if x != nil { + return x.Hue + } + return 0 +} + +func (x *ReqSetAllParams) GetSaturation() int32 { + if x != nil { + return x.Saturation + } + return 0 +} + +func (x *ReqSetAllParams) GetSharpness() int32 { + if x != nil { + return x.Sharpness + } + return 0 +} + +func (x *ReqSetAllParams) GetJpgQuality() int32 { + if x != nil { + return x.JpgQuality + } + return 0 +} + +// source: camera +type ReqGetAllParams struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGetAllParams) Reset() { + *x = ReqGetAllParams{} + mi := &file_dwarf_proto_msgTypes[134] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGetAllParams) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGetAllParams) ProtoMessage() {} + +func (x *ReqGetAllParams) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[134] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGetAllParams.ProtoReflect.Descriptor instead. +func (*ReqGetAllParams) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{134} +} + +// source: camera +type ResGetAllParams struct { + state protoimpl.MessageState `protogen:"open.v1"` + AllParams []*CommonParam `protobuf:"bytes,1,rep,name=all_params,json=allParams,proto3" json:"all_params,omitempty"` + Code int32 `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResGetAllParams) Reset() { + *x = ResGetAllParams{} + mi := &file_dwarf_proto_msgTypes[135] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResGetAllParams) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResGetAllParams) ProtoMessage() {} + +func (x *ResGetAllParams) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[135] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResGetAllParams.ProtoReflect.Descriptor instead. +func (*ResGetAllParams) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{135} +} + +func (x *ResGetAllParams) GetAllParams() []*CommonParam { + if x != nil { + return x.AllParams + } + return nil +} + +func (x *ResGetAllParams) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +// source: camera +type ReqSetFeatureParams struct { + state protoimpl.MessageState `protogen:"open.v1"` + Param *CommonParam `protobuf:"bytes,1,opt,name=param,proto3" json:"param,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSetFeatureParams) Reset() { + *x = ReqSetFeatureParams{} + mi := &file_dwarf_proto_msgTypes[136] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSetFeatureParams) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSetFeatureParams) ProtoMessage() {} + +func (x *ReqSetFeatureParams) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[136] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSetFeatureParams.ProtoReflect.Descriptor instead. +func (*ReqSetFeatureParams) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{136} +} + +func (x *ReqSetFeatureParams) GetParam() *CommonParam { + if x != nil { + return x.Param + } + return nil +} + +// source: camera +type ReqGetAllFeatureParams struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGetAllFeatureParams) Reset() { + *x = ReqGetAllFeatureParams{} + mi := &file_dwarf_proto_msgTypes[137] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGetAllFeatureParams) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGetAllFeatureParams) ProtoMessage() {} + +func (x *ReqGetAllFeatureParams) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[137] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGetAllFeatureParams.ProtoReflect.Descriptor instead. +func (*ReqGetAllFeatureParams) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{137} +} + +// source: camera +type ResGetAllFeatureParams struct { + state protoimpl.MessageState `protogen:"open.v1"` + AllFeatureParams []*CommonParam `protobuf:"bytes,1,rep,name=all_feature_params,json=allFeatureParams,proto3" json:"all_feature_params,omitempty"` + Code int32 `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResGetAllFeatureParams) Reset() { + *x = ResGetAllFeatureParams{} + mi := &file_dwarf_proto_msgTypes[138] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResGetAllFeatureParams) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResGetAllFeatureParams) ProtoMessage() {} + +func (x *ResGetAllFeatureParams) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[138] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResGetAllFeatureParams.ProtoReflect.Descriptor instead. +func (*ResGetAllFeatureParams) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{138} +} + +func (x *ResGetAllFeatureParams) GetAllFeatureParams() []*CommonParam { + if x != nil { + return x.AllFeatureParams + } + return nil +} + +func (x *ResGetAllFeatureParams) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +// source: camera +type ReqGetSystemWorkingState struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGetSystemWorkingState) Reset() { + *x = ReqGetSystemWorkingState{} + mi := &file_dwarf_proto_msgTypes[139] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGetSystemWorkingState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGetSystemWorkingState) ProtoMessage() {} + +func (x *ReqGetSystemWorkingState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[139] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGetSystemWorkingState.ProtoReflect.Descriptor instead. +func (*ReqGetSystemWorkingState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{139} +} + +// source: camera +type ReqSetJpgQuality struct { + state protoimpl.MessageState `protogen:"open.v1"` + Quality int32 `protobuf:"varint,1,opt,name=quality,proto3" json:"quality,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSetJpgQuality) Reset() { + *x = ReqSetJpgQuality{} + mi := &file_dwarf_proto_msgTypes[140] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSetJpgQuality) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSetJpgQuality) ProtoMessage() {} + +func (x *ReqSetJpgQuality) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[140] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSetJpgQuality.ProtoReflect.Descriptor instead. +func (*ReqSetJpgQuality) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{140} +} + +func (x *ReqSetJpgQuality) GetQuality() int32 { + if x != nil { + return x.Quality + } + return 0 +} + +// source: camera +type ReqGetJpgQuality struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGetJpgQuality) Reset() { + *x = ReqGetJpgQuality{} + mi := &file_dwarf_proto_msgTypes[141] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGetJpgQuality) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGetJpgQuality) ProtoMessage() {} + +func (x *ReqGetJpgQuality) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[141] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGetJpgQuality.ProtoReflect.Descriptor instead. +func (*ReqGetJpgQuality) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{141} +} + +// source: camera +type ReqPhotoRaw struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqPhotoRaw) Reset() { + *x = ReqPhotoRaw{} + mi := &file_dwarf_proto_msgTypes[142] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqPhotoRaw) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqPhotoRaw) ProtoMessage() {} + +func (x *ReqPhotoRaw) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[142] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqPhotoRaw.ProtoReflect.Descriptor instead. +func (*ReqPhotoRaw) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{142} +} + +// source: camera +type ReqSetRtspBitRateType struct { + state protoimpl.MessageState `protogen:"open.v1"` + BitrateType int32 `protobuf:"varint,1,opt,name=bitrate_type,json=bitrateType,proto3" json:"bitrate_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSetRtspBitRateType) Reset() { + *x = ReqSetRtspBitRateType{} + mi := &file_dwarf_proto_msgTypes[143] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSetRtspBitRateType) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSetRtspBitRateType) ProtoMessage() {} + +func (x *ReqSetRtspBitRateType) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[143] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSetRtspBitRateType.ProtoReflect.Descriptor instead. +func (*ReqSetRtspBitRateType) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{143} +} + +func (x *ReqSetRtspBitRateType) GetBitrateType() int32 { + if x != nil { + return x.BitrateType + } + return 0 +} + +// source: camera +type ReqDisableAllIspProcessing struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqDisableAllIspProcessing) Reset() { + *x = ReqDisableAllIspProcessing{} + mi := &file_dwarf_proto_msgTypes[144] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqDisableAllIspProcessing) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqDisableAllIspProcessing) ProtoMessage() {} + +func (x *ReqDisableAllIspProcessing) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[144] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqDisableAllIspProcessing.ProtoReflect.Descriptor instead. +func (*ReqDisableAllIspProcessing) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{144} +} + +// source: camera +type ReqEnableAllIspProcessing struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqEnableAllIspProcessing) Reset() { + *x = ReqEnableAllIspProcessing{} + mi := &file_dwarf_proto_msgTypes[145] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqEnableAllIspProcessing) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqEnableAllIspProcessing) ProtoMessage() {} + +func (x *ReqEnableAllIspProcessing) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[145] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqEnableAllIspProcessing.ProtoReflect.Descriptor instead. +func (*ReqEnableAllIspProcessing) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{145} +} + +// source: camera +type IspModuleState struct { + state protoimpl.MessageState `protogen:"open.v1"` + ModuleId int32 `protobuf:"varint,1,opt,name=module_id,json=moduleId,proto3" json:"module_id,omitempty"` + State bool `protobuf:"varint,2,opt,name=state,proto3" json:"state,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *IspModuleState) Reset() { + *x = IspModuleState{} + mi := &file_dwarf_proto_msgTypes[146] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *IspModuleState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*IspModuleState) ProtoMessage() {} + +func (x *IspModuleState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[146] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use IspModuleState.ProtoReflect.Descriptor instead. +func (*IspModuleState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{146} +} + +func (x *IspModuleState) GetModuleId() int32 { + if x != nil { + return x.ModuleId + } + return 0 +} + +func (x *IspModuleState) GetState() bool { + if x != nil { + return x.State + } + return false +} + +// source: camera +type ReqSetIspModuleState struct { + state protoimpl.MessageState `protogen:"open.v1"` + ModuleStates []*IspModuleState `protobuf:"bytes,1,rep,name=module_states,json=moduleStates,proto3" json:"module_states,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSetIspModuleState) Reset() { + *x = ReqSetIspModuleState{} + mi := &file_dwarf_proto_msgTypes[147] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSetIspModuleState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSetIspModuleState) ProtoMessage() {} + +func (x *ReqSetIspModuleState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[147] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSetIspModuleState.ProtoReflect.Descriptor instead. +func (*ReqSetIspModuleState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{147} +} + +func (x *ReqSetIspModuleState) GetModuleStates() []*IspModuleState { + if x != nil { + return x.ModuleStates + } + return nil +} + +// source: camera +type ReqGetIspModuleState struct { + state protoimpl.MessageState `protogen:"open.v1"` + ModuleIds []int32 `protobuf:"varint,1,rep,packed,name=module_ids,json=moduleIds,proto3" json:"module_ids,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGetIspModuleState) Reset() { + *x = ReqGetIspModuleState{} + mi := &file_dwarf_proto_msgTypes[148] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGetIspModuleState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGetIspModuleState) ProtoMessage() {} + +func (x *ReqGetIspModuleState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[148] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGetIspModuleState.ProtoReflect.Descriptor instead. +func (*ReqGetIspModuleState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{148} +} + +func (x *ReqGetIspModuleState) GetModuleIds() []int32 { + if x != nil { + return x.ModuleIds + } + return nil +} + +// source: camera +type ReqSwitchResolution struct { + state protoimpl.MessageState `protogen:"open.v1"` + ResolutionIndex int32 `protobuf:"varint,1,opt,name=resolution_index,json=resolutionIndex,proto3" json:"resolution_index,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSwitchResolution) Reset() { + *x = ReqSwitchResolution{} + mi := &file_dwarf_proto_msgTypes[149] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSwitchResolution) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSwitchResolution) ProtoMessage() {} + +func (x *ReqSwitchResolution) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[149] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSwitchResolution.ProtoReflect.Descriptor instead. +func (*ReqSwitchResolution) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{149} +} + +func (x *ReqSwitchResolution) GetResolutionIndex() int32 { + if x != nil { + return x.ResolutionIndex + } + return 0 +} + +// source: camera +type ReqSwitchFrameRate struct { + state protoimpl.MessageState `protogen:"open.v1"` + FpsIndex int32 `protobuf:"varint,1,opt,name=fps_index,json=fpsIndex,proto3" json:"fps_index,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSwitchFrameRate) Reset() { + *x = ReqSwitchFrameRate{} + mi := &file_dwarf_proto_msgTypes[150] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSwitchFrameRate) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSwitchFrameRate) ProtoMessage() {} + +func (x *ReqSwitchFrameRate) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[150] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSwitchFrameRate.ProtoReflect.Descriptor instead. +func (*ReqSwitchFrameRate) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{150} +} + +func (x *ReqSwitchFrameRate) GetFpsIndex() int32 { + if x != nil { + return x.FpsIndex + } + return 0 +} + +// source: camera +type ReqSwitchCropRatio struct { + state protoimpl.MessageState `protogen:"open.v1"` + CropRatio int32 `protobuf:"varint,1,opt,name=crop_ratio,json=cropRatio,proto3" json:"crop_ratio,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSwitchCropRatio) Reset() { + *x = ReqSwitchCropRatio{} + mi := &file_dwarf_proto_msgTypes[151] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSwitchCropRatio) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSwitchCropRatio) ProtoMessage() {} + +func (x *ReqSwitchCropRatio) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[151] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSwitchCropRatio.ProtoReflect.Descriptor instead. +func (*ReqSwitchCropRatio) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{151} +} + +func (x *ReqSwitchCropRatio) GetCropRatio() int32 { + if x != nil { + return x.CropRatio + } + return 0 +} + +// source: camera +type ReqSetPreviewQuality struct { + state protoimpl.MessageState `protogen:"open.v1"` + Level uint32 `protobuf:"varint,1,opt,name=level,proto3" json:"level,omitempty"` + Quality uint32 `protobuf:"varint,2,opt,name=quality,proto3" json:"quality,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSetPreviewQuality) Reset() { + *x = ReqSetPreviewQuality{} + mi := &file_dwarf_proto_msgTypes[152] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSetPreviewQuality) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSetPreviewQuality) ProtoMessage() {} + +func (x *ReqSetPreviewQuality) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[152] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSetPreviewQuality.ProtoReflect.Descriptor instead. +func (*ReqSetPreviewQuality) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{152} +} + +func (x *ReqSetPreviewQuality) GetLevel() uint32 { + if x != nil { + return x.Level + } + return 0 +} + +func (x *ReqSetPreviewQuality) GetQuality() uint32 { + if x != nil { + return x.Quality + } + return 0 +} + +// source: device +type ReqLensDefog struct { + state protoimpl.MessageState `protogen:"open.v1"` + State int32 `protobuf:"varint,1,opt,name=state,proto3" json:"state,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqLensDefog) Reset() { + *x = ReqLensDefog{} + mi := &file_dwarf_proto_msgTypes[153] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqLensDefog) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqLensDefog) ProtoMessage() {} + +func (x *ReqLensDefog) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[153] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqLensDefog.ProtoReflect.Descriptor instead. +func (*ReqLensDefog) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{153} +} + +func (x *ReqLensDefog) GetState() int32 { + if x != nil { + return x.State + } + return 0 +} + +// source: device +type ReqAutoCooling struct { + state protoimpl.MessageState `protogen:"open.v1"` + State int32 `protobuf:"varint,1,opt,name=state,proto3" json:"state,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqAutoCooling) Reset() { + *x = ReqAutoCooling{} + mi := &file_dwarf_proto_msgTypes[154] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqAutoCooling) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqAutoCooling) ProtoMessage() {} + +func (x *ReqAutoCooling) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[154] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqAutoCooling.ProtoReflect.Descriptor instead. +func (*ReqAutoCooling) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{154} +} + +func (x *ReqAutoCooling) GetState() int32 { + if x != nil { + return x.State + } + return 0 +} + +// source: device +type ReqAutoShutdown struct { + state protoimpl.MessageState `protogen:"open.v1"` + State int32 `protobuf:"varint,1,opt,name=state,proto3" json:"state,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqAutoShutdown) Reset() { + *x = ReqAutoShutdown{} + mi := &file_dwarf_proto_msgTypes[155] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqAutoShutdown) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqAutoShutdown) ProtoMessage() {} + +func (x *ReqAutoShutdown) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[155] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqAutoShutdown.ProtoReflect.Descriptor instead. +func (*ReqAutoShutdown) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{155} +} + +func (x *ReqAutoShutdown) GetState() int32 { + if x != nil { + return x.State + } + return 0 +} + +// source: focus +type ReqManualSingleStepFocus struct { + state protoimpl.MessageState `protogen:"open.v1"` + Direction uint32 `protobuf:"varint,1,opt,name=direction,proto3" json:"direction,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqManualSingleStepFocus) Reset() { + *x = ReqManualSingleStepFocus{} + mi := &file_dwarf_proto_msgTypes[156] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqManualSingleStepFocus) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqManualSingleStepFocus) ProtoMessage() {} + +func (x *ReqManualSingleStepFocus) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[156] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqManualSingleStepFocus.ProtoReflect.Descriptor instead. +func (*ReqManualSingleStepFocus) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{156} +} + +func (x *ReqManualSingleStepFocus) GetDirection() uint32 { + if x != nil { + return x.Direction + } + return 0 +} + +// source: focus +type ReqManualContinuFocus struct { + state protoimpl.MessageState `protogen:"open.v1"` + Direction uint32 `protobuf:"varint,1,opt,name=direction,proto3" json:"direction,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqManualContinuFocus) Reset() { + *x = ReqManualContinuFocus{} + mi := &file_dwarf_proto_msgTypes[157] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqManualContinuFocus) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqManualContinuFocus) ProtoMessage() {} + +func (x *ReqManualContinuFocus) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[157] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqManualContinuFocus.ProtoReflect.Descriptor instead. +func (*ReqManualContinuFocus) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{157} +} + +func (x *ReqManualContinuFocus) GetDirection() uint32 { + if x != nil { + return x.Direction + } + return 0 +} + +// source: focus +type ReqStopManualContinuFocus struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStopManualContinuFocus) Reset() { + *x = ReqStopManualContinuFocus{} + mi := &file_dwarf_proto_msgTypes[158] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStopManualContinuFocus) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStopManualContinuFocus) ProtoMessage() {} + +func (x *ReqStopManualContinuFocus) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[158] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStopManualContinuFocus.ProtoReflect.Descriptor instead. +func (*ReqStopManualContinuFocus) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{158} +} + +// source: focus +type ReqNormalAutoFocus struct { + state protoimpl.MessageState `protogen:"open.v1"` + Mode uint32 `protobuf:"varint,1,opt,name=mode,proto3" json:"mode,omitempty"` + CenterX uint32 `protobuf:"varint,2,opt,name=center_x,json=centerX,proto3" json:"center_x,omitempty"` + CenterY uint32 `protobuf:"varint,3,opt,name=center_y,json=centerY,proto3" json:"center_y,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqNormalAutoFocus) Reset() { + *x = ReqNormalAutoFocus{} + mi := &file_dwarf_proto_msgTypes[159] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqNormalAutoFocus) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqNormalAutoFocus) ProtoMessage() {} + +func (x *ReqNormalAutoFocus) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[159] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqNormalAutoFocus.ProtoReflect.Descriptor instead. +func (*ReqNormalAutoFocus) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{159} +} + +func (x *ReqNormalAutoFocus) GetMode() uint32 { + if x != nil { + return x.Mode + } + return 0 +} + +func (x *ReqNormalAutoFocus) GetCenterX() uint32 { + if x != nil { + return x.CenterX + } + return 0 +} + +func (x *ReqNormalAutoFocus) GetCenterY() uint32 { + if x != nil { + return x.CenterY + } + return 0 +} + +// source: focus +type ReqAstroAutoFocus struct { + state protoimpl.MessageState `protogen:"open.v1"` + Mode uint32 `protobuf:"varint,1,opt,name=mode,proto3" json:"mode,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqAstroAutoFocus) Reset() { + *x = ReqAstroAutoFocus{} + mi := &file_dwarf_proto_msgTypes[160] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqAstroAutoFocus) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqAstroAutoFocus) ProtoMessage() {} + +func (x *ReqAstroAutoFocus) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[160] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqAstroAutoFocus.ProtoReflect.Descriptor instead. +func (*ReqAstroAutoFocus) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{160} +} + +func (x *ReqAstroAutoFocus) GetMode() uint32 { + if x != nil { + return x.Mode + } + return 0 +} + +// source: focus +type ReqStopAstroAutoFocus struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStopAstroAutoFocus) Reset() { + *x = ReqStopAstroAutoFocus{} + mi := &file_dwarf_proto_msgTypes[161] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStopAstroAutoFocus) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStopAstroAutoFocus) ProtoMessage() {} + +func (x *ReqStopAstroAutoFocus) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[161] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStopAstroAutoFocus.ProtoReflect.Descriptor instead. +func (*ReqStopAstroAutoFocus) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{161} +} + +// source: focus +type ReqGetUserInfinityPos struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGetUserInfinityPos) Reset() { + *x = ReqGetUserInfinityPos{} + mi := &file_dwarf_proto_msgTypes[162] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGetUserInfinityPos) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGetUserInfinityPos) ProtoMessage() {} + +func (x *ReqGetUserInfinityPos) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[162] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGetUserInfinityPos.ProtoReflect.Descriptor instead. +func (*ReqGetUserInfinityPos) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{162} +} + +// source: focus +type ReqSetUserInfinityPos struct { + state protoimpl.MessageState `protogen:"open.v1"` + Pos int32 `protobuf:"varint,1,opt,name=pos,proto3" json:"pos,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSetUserInfinityPos) Reset() { + *x = ReqSetUserInfinityPos{} + mi := &file_dwarf_proto_msgTypes[163] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSetUserInfinityPos) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSetUserInfinityPos) ProtoMessage() {} + +func (x *ReqSetUserInfinityPos) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[163] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSetUserInfinityPos.ProtoReflect.Descriptor instead. +func (*ReqSetUserInfinityPos) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{163} +} + +func (x *ReqSetUserInfinityPos) GetPos() int32 { + if x != nil { + return x.Pos + } + return 0 +} + +// source: focus +type ResUserInfinityPos struct { + state protoimpl.MessageState `protogen:"open.v1"` + Code int32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"` + Pos int32 `protobuf:"varint,2,opt,name=pos,proto3" json:"pos,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResUserInfinityPos) Reset() { + *x = ResUserInfinityPos{} + mi := &file_dwarf_proto_msgTypes[164] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResUserInfinityPos) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResUserInfinityPos) ProtoMessage() {} + +func (x *ResUserInfinityPos) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[164] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResUserInfinityPos.ProtoReflect.Descriptor instead. +func (*ResUserInfinityPos) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{164} +} + +func (x *ResUserInfinityPos) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResUserInfinityPos) GetPos() int32 { + if x != nil { + return x.Pos + } + return 0 +} + +// source: itips +type ReqITipsGet struct { + state protoimpl.MessageState `protogen:"open.v1"` + Mode int32 `protobuf:"varint,1,opt,name=mode,proto3" json:"mode,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqITipsGet) Reset() { + *x = ReqITipsGet{} + mi := &file_dwarf_proto_msgTypes[165] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqITipsGet) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqITipsGet) ProtoMessage() {} + +func (x *ReqITipsGet) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[165] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqITipsGet.ProtoReflect.Descriptor instead. +func (*ReqITipsGet) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{165} +} + +func (x *ReqITipsGet) GetMode() int32 { + if x != nil { + return x.Mode + } + return 0 +} + +// source: itips +type ResITipsGet struct { + state protoimpl.MessageState `protogen:"open.v1"` + Mode int32 `protobuf:"varint,1,opt,name=mode,proto3" json:"mode,omitempty"` + ItipsCode string `protobuf:"bytes,2,opt,name=itips_code,json=itipsCode,proto3" json:"itips_code,omitempty"` + Code int32 `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResITipsGet) Reset() { + *x = ResITipsGet{} + mi := &file_dwarf_proto_msgTypes[166] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResITipsGet) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResITipsGet) ProtoMessage() {} + +func (x *ResITipsGet) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[166] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResITipsGet.ProtoReflect.Descriptor instead. +func (*ResITipsGet) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{166} +} + +func (x *ResITipsGet) GetMode() int32 { + if x != nil { + return x.Mode + } + return 0 +} + +func (x *ResITipsGet) GetItipsCode() string { + if x != nil { + return x.ItipsCode + } + return "" +} + +func (x *ResITipsGet) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +// source: itips +type CommonITips struct { + state protoimpl.MessageState `protogen:"open.v1"` + ItipsStatus int32 `protobuf:"varint,1,opt,name=itips_status,json=itipsStatus,proto3" json:"itips_status,omitempty"` + ItipsCode string `protobuf:"bytes,2,opt,name=itips_code,json=itipsCode,proto3" json:"itips_code,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *CommonITips) Reset() { + *x = CommonITips{} + mi := &file_dwarf_proto_msgTypes[167] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *CommonITips) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CommonITips) ProtoMessage() {} + +func (x *CommonITips) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[167] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CommonITips.ProtoReflect.Descriptor instead. +func (*CommonITips) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{167} +} + +func (x *CommonITips) GetItipsStatus() int32 { + if x != nil { + return x.ItipsStatus + } + return 0 +} + +func (x *CommonITips) GetItipsCode() string { + if x != nil { + return x.ItipsCode + } + return "" +} + +// source: itips +type CommonStepITips struct { + state protoimpl.MessageState `protogen:"open.v1"` + StepId int32 `protobuf:"varint,1,opt,name=step_id,json=stepId,proto3" json:"step_id,omitempty"` + StepStatus int32 `protobuf:"varint,2,opt,name=step_status,json=stepStatus,proto3" json:"step_status,omitempty"` + StepItips []*CommonITips `protobuf:"bytes,3,rep,name=step_itips,json=stepItips,proto3" json:"step_itips,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *CommonStepITips) Reset() { + *x = CommonStepITips{} + mi := &file_dwarf_proto_msgTypes[168] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *CommonStepITips) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CommonStepITips) ProtoMessage() {} + +func (x *CommonStepITips) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[168] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CommonStepITips.ProtoReflect.Descriptor instead. +func (*CommonStepITips) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{168} +} + +func (x *CommonStepITips) GetStepId() int32 { + if x != nil { + return x.StepId + } + return 0 +} + +func (x *CommonStepITips) GetStepStatus() int32 { + if x != nil { + return x.StepStatus + } + return 0 +} + +func (x *CommonStepITips) GetStepItips() []*CommonITips { + if x != nil { + return x.StepItips + } + return nil +} + +// source: itips +type ResITipsList struct { + state protoimpl.MessageState `protogen:"open.v1"` + ItipsList []*CommonStepITips `protobuf:"bytes,1,rep,name=itips_list,json=itipsList,proto3" json:"itips_list,omitempty"` + Mode int32 `protobuf:"varint,2,opt,name=mode,proto3" json:"mode,omitempty"` + Code int32 `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResITipsList) Reset() { + *x = ResITipsList{} + mi := &file_dwarf_proto_msgTypes[169] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResITipsList) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResITipsList) ProtoMessage() {} + +func (x *ResITipsList) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[169] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResITipsList.ProtoReflect.Descriptor instead. +func (*ResITipsList) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{169} +} + +func (x *ResITipsList) GetItipsList() []*CommonStepITips { + if x != nil { + return x.ItipsList + } + return nil +} + +func (x *ResITipsList) GetMode() int32 { + if x != nil { + return x.Mode + } + return 0 +} + +func (x *ResITipsList) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +// source: motor_control +type ReqMotorServiceJoystick struct { + state protoimpl.MessageState `protogen:"open.v1"` + VectorAngle float64 `protobuf:"fixed64,1,opt,name=vector_angle,json=vectorAngle,proto3" json:"vector_angle,omitempty"` + VectorLength float64 `protobuf:"fixed64,2,opt,name=vector_length,json=vectorLength,proto3" json:"vector_length,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqMotorServiceJoystick) Reset() { + *x = ReqMotorServiceJoystick{} + mi := &file_dwarf_proto_msgTypes[170] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqMotorServiceJoystick) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqMotorServiceJoystick) ProtoMessage() {} + +func (x *ReqMotorServiceJoystick) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[170] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqMotorServiceJoystick.ProtoReflect.Descriptor instead. +func (*ReqMotorServiceJoystick) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{170} +} + +func (x *ReqMotorServiceJoystick) GetVectorAngle() float64 { + if x != nil { + return x.VectorAngle + } + return 0 +} + +func (x *ReqMotorServiceJoystick) GetVectorLength() float64 { + if x != nil { + return x.VectorLength + } + return 0 +} + +// source: motor_control +type ReqMotorServiceJoystickFixedAngle struct { + state protoimpl.MessageState `protogen:"open.v1"` + VectorAngle float64 `protobuf:"fixed64,1,opt,name=vector_angle,json=vectorAngle,proto3" json:"vector_angle,omitempty"` + VectorLength float64 `protobuf:"fixed64,2,opt,name=vector_length,json=vectorLength,proto3" json:"vector_length,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqMotorServiceJoystickFixedAngle) Reset() { + *x = ReqMotorServiceJoystickFixedAngle{} + mi := &file_dwarf_proto_msgTypes[171] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqMotorServiceJoystickFixedAngle) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqMotorServiceJoystickFixedAngle) ProtoMessage() {} + +func (x *ReqMotorServiceJoystickFixedAngle) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[171] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqMotorServiceJoystickFixedAngle.ProtoReflect.Descriptor instead. +func (*ReqMotorServiceJoystickFixedAngle) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{171} +} + +func (x *ReqMotorServiceJoystickFixedAngle) GetVectorAngle() float64 { + if x != nil { + return x.VectorAngle + } + return 0 +} + +func (x *ReqMotorServiceJoystickFixedAngle) GetVectorLength() float64 { + if x != nil { + return x.VectorLength + } + return 0 +} + +// source: motor_control +type ReqMotorServiceJoystickStop struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqMotorServiceJoystickStop) Reset() { + *x = ReqMotorServiceJoystickStop{} + mi := &file_dwarf_proto_msgTypes[172] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqMotorServiceJoystickStop) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqMotorServiceJoystickStop) ProtoMessage() {} + +func (x *ReqMotorServiceJoystickStop) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[172] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqMotorServiceJoystickStop.ProtoReflect.Descriptor instead. +func (*ReqMotorServiceJoystickStop) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{172} +} + +// source: motor_control +type ReqMotorRun struct { + state protoimpl.MessageState `protogen:"open.v1"` + Id int32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` + Speed float64 `protobuf:"fixed64,2,opt,name=speed,proto3" json:"speed,omitempty"` + Direction bool `protobuf:"varint,3,opt,name=direction,proto3" json:"direction,omitempty"` + SpeedRamping int32 `protobuf:"varint,4,opt,name=speed_ramping,json=speedRamping,proto3" json:"speed_ramping,omitempty"` + ResolutionLevel int32 `protobuf:"varint,5,opt,name=resolution_level,json=resolutionLevel,proto3" json:"resolution_level,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqMotorRun) Reset() { + *x = ReqMotorRun{} + mi := &file_dwarf_proto_msgTypes[173] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqMotorRun) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqMotorRun) ProtoMessage() {} + +func (x *ReqMotorRun) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[173] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqMotorRun.ProtoReflect.Descriptor instead. +func (*ReqMotorRun) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{173} +} + +func (x *ReqMotorRun) GetId() int32 { + if x != nil { + return x.Id + } + return 0 +} + +func (x *ReqMotorRun) GetSpeed() float64 { + if x != nil { + return x.Speed + } + return 0 +} + +func (x *ReqMotorRun) GetDirection() bool { + if x != nil { + return x.Direction + } + return false +} + +func (x *ReqMotorRun) GetSpeedRamping() int32 { + if x != nil { + return x.SpeedRamping + } + return 0 +} + +func (x *ReqMotorRun) GetResolutionLevel() int32 { + if x != nil { + return x.ResolutionLevel + } + return 0 +} + +// source: motor_control +type ReqMotorRunInPulse struct { + state protoimpl.MessageState `protogen:"open.v1"` + Id int32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` + Frequency int32 `protobuf:"varint,2,opt,name=frequency,proto3" json:"frequency,omitempty"` + Direction bool `protobuf:"varint,3,opt,name=direction,proto3" json:"direction,omitempty"` + SpeedRamping int32 `protobuf:"varint,4,opt,name=speed_ramping,json=speedRamping,proto3" json:"speed_ramping,omitempty"` + Resolution int32 `protobuf:"varint,5,opt,name=resolution,proto3" json:"resolution,omitempty"` + Pulse int32 `protobuf:"varint,6,opt,name=pulse,proto3" json:"pulse,omitempty"` + Mode bool `protobuf:"varint,7,opt,name=mode,proto3" json:"mode,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqMotorRunInPulse) Reset() { + *x = ReqMotorRunInPulse{} + mi := &file_dwarf_proto_msgTypes[174] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqMotorRunInPulse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqMotorRunInPulse) ProtoMessage() {} + +func (x *ReqMotorRunInPulse) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[174] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqMotorRunInPulse.ProtoReflect.Descriptor instead. +func (*ReqMotorRunInPulse) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{174} +} + +func (x *ReqMotorRunInPulse) GetId() int32 { + if x != nil { + return x.Id + } + return 0 +} + +func (x *ReqMotorRunInPulse) GetFrequency() int32 { + if x != nil { + return x.Frequency + } + return 0 +} + +func (x *ReqMotorRunInPulse) GetDirection() bool { + if x != nil { + return x.Direction + } + return false +} + +func (x *ReqMotorRunInPulse) GetSpeedRamping() int32 { + if x != nil { + return x.SpeedRamping + } + return 0 +} + +func (x *ReqMotorRunInPulse) GetResolution() int32 { + if x != nil { + return x.Resolution + } + return 0 +} + +func (x *ReqMotorRunInPulse) GetPulse() int32 { + if x != nil { + return x.Pulse + } + return 0 +} + +func (x *ReqMotorRunInPulse) GetMode() bool { + if x != nil { + return x.Mode + } + return false +} + +// source: motor_control +type ReqMotorRunTo struct { + state protoimpl.MessageState `protogen:"open.v1"` + Id int32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` + EndPosition float64 `protobuf:"fixed64,2,opt,name=end_position,json=endPosition,proto3" json:"end_position,omitempty"` + Speed float64 `protobuf:"fixed64,3,opt,name=speed,proto3" json:"speed,omitempty"` + SpeedRamping int32 `protobuf:"varint,4,opt,name=speed_ramping,json=speedRamping,proto3" json:"speed_ramping,omitempty"` + ResolutionLevel int32 `protobuf:"varint,5,opt,name=resolution_level,json=resolutionLevel,proto3" json:"resolution_level,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqMotorRunTo) Reset() { + *x = ReqMotorRunTo{} + mi := &file_dwarf_proto_msgTypes[175] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqMotorRunTo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqMotorRunTo) ProtoMessage() {} + +func (x *ReqMotorRunTo) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[175] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqMotorRunTo.ProtoReflect.Descriptor instead. +func (*ReqMotorRunTo) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{175} +} + +func (x *ReqMotorRunTo) GetId() int32 { + if x != nil { + return x.Id + } + return 0 +} + +func (x *ReqMotorRunTo) GetEndPosition() float64 { + if x != nil { + return x.EndPosition + } + return 0 +} + +func (x *ReqMotorRunTo) GetSpeed() float64 { + if x != nil { + return x.Speed + } + return 0 +} + +func (x *ReqMotorRunTo) GetSpeedRamping() int32 { + if x != nil { + return x.SpeedRamping + } + return 0 +} + +func (x *ReqMotorRunTo) GetResolutionLevel() int32 { + if x != nil { + return x.ResolutionLevel + } + return 0 +} + +// source: motor_control +type ReqMotorGetPosition struct { + state protoimpl.MessageState `protogen:"open.v1"` + Id int32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqMotorGetPosition) Reset() { + *x = ReqMotorGetPosition{} + mi := &file_dwarf_proto_msgTypes[176] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqMotorGetPosition) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqMotorGetPosition) ProtoMessage() {} + +func (x *ReqMotorGetPosition) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[176] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqMotorGetPosition.ProtoReflect.Descriptor instead. +func (*ReqMotorGetPosition) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{176} +} + +func (x *ReqMotorGetPosition) GetId() int32 { + if x != nil { + return x.Id + } + return 0 +} + +// source: motor_control +type ReqMotorStop struct { + state protoimpl.MessageState `protogen:"open.v1"` + Id int32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqMotorStop) Reset() { + *x = ReqMotorStop{} + mi := &file_dwarf_proto_msgTypes[177] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqMotorStop) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqMotorStop) ProtoMessage() {} + +func (x *ReqMotorStop) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[177] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqMotorStop.ProtoReflect.Descriptor instead. +func (*ReqMotorStop) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{177} +} + +func (x *ReqMotorStop) GetId() int32 { + if x != nil { + return x.Id + } + return 0 +} + +// source: motor_control +type ReqMotorReset struct { + state protoimpl.MessageState `protogen:"open.v1"` + Id int32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` + Direction bool `protobuf:"varint,2,opt,name=direction,proto3" json:"direction,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqMotorReset) Reset() { + *x = ReqMotorReset{} + mi := &file_dwarf_proto_msgTypes[178] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqMotorReset) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqMotorReset) ProtoMessage() {} + +func (x *ReqMotorReset) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[178] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqMotorReset.ProtoReflect.Descriptor instead. +func (*ReqMotorReset) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{178} +} + +func (x *ReqMotorReset) GetId() int32 { + if x != nil { + return x.Id + } + return 0 +} + +func (x *ReqMotorReset) GetDirection() bool { + if x != nil { + return x.Direction + } + return false +} + +// source: motor_control +type ReqMotorChangeSpeed struct { + state protoimpl.MessageState `protogen:"open.v1"` + Id int32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` + Speed float64 `protobuf:"fixed64,2,opt,name=speed,proto3" json:"speed,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqMotorChangeSpeed) Reset() { + *x = ReqMotorChangeSpeed{} + mi := &file_dwarf_proto_msgTypes[179] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqMotorChangeSpeed) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqMotorChangeSpeed) ProtoMessage() {} + +func (x *ReqMotorChangeSpeed) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[179] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqMotorChangeSpeed.ProtoReflect.Descriptor instead. +func (*ReqMotorChangeSpeed) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{179} +} + +func (x *ReqMotorChangeSpeed) GetId() int32 { + if x != nil { + return x.Id + } + return 0 +} + +func (x *ReqMotorChangeSpeed) GetSpeed() float64 { + if x != nil { + return x.Speed + } + return 0 +} + +// source: motor_control +type ReqMotorChangeDirection struct { + state protoimpl.MessageState `protogen:"open.v1"` + Id int32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` + Direction bool `protobuf:"varint,2,opt,name=direction,proto3" json:"direction,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqMotorChangeDirection) Reset() { + *x = ReqMotorChangeDirection{} + mi := &file_dwarf_proto_msgTypes[180] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqMotorChangeDirection) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqMotorChangeDirection) ProtoMessage() {} + +func (x *ReqMotorChangeDirection) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[180] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqMotorChangeDirection.ProtoReflect.Descriptor instead. +func (*ReqMotorChangeDirection) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{180} +} + +func (x *ReqMotorChangeDirection) GetId() int32 { + if x != nil { + return x.Id + } + return 0 +} + +func (x *ReqMotorChangeDirection) GetDirection() bool { + if x != nil { + return x.Direction + } + return false +} + +// source: motor_control +type ResMotor struct { + state protoimpl.MessageState `protogen:"open.v1"` + Id int32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` + Code int32 `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResMotor) Reset() { + *x = ResMotor{} + mi := &file_dwarf_proto_msgTypes[181] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResMotor) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResMotor) ProtoMessage() {} + +func (x *ResMotor) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[181] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResMotor.ProtoReflect.Descriptor instead. +func (*ResMotor) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{181} +} + +func (x *ResMotor) GetId() int32 { + if x != nil { + return x.Id + } + return 0 +} + +func (x *ResMotor) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +// source: motor_control +type ResMotorPosition struct { + state protoimpl.MessageState `protogen:"open.v1"` + Id int32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` + Code int32 `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"` + Position float64 `protobuf:"fixed64,3,opt,name=position,proto3" json:"position,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResMotorPosition) Reset() { + *x = ResMotorPosition{} + mi := &file_dwarf_proto_msgTypes[182] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResMotorPosition) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResMotorPosition) ProtoMessage() {} + +func (x *ResMotorPosition) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[182] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResMotorPosition.ProtoReflect.Descriptor instead. +func (*ResMotorPosition) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{182} +} + +func (x *ResMotorPosition) GetId() int32 { + if x != nil { + return x.Id + } + return 0 +} + +func (x *ResMotorPosition) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResMotorPosition) GetPosition() float64 { + if x != nil { + return x.Position + } + return 0 +} + +// source: motor_control +type ReqDualCameraLinkage struct { + state protoimpl.MessageState `protogen:"open.v1"` + X int32 `protobuf:"varint,1,opt,name=x,proto3" json:"x,omitempty"` + Y int32 `protobuf:"varint,2,opt,name=y,proto3" json:"y,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqDualCameraLinkage) Reset() { + *x = ReqDualCameraLinkage{} + mi := &file_dwarf_proto_msgTypes[183] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqDualCameraLinkage) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqDualCameraLinkage) ProtoMessage() {} + +func (x *ReqDualCameraLinkage) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[183] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqDualCameraLinkage.ProtoReflect.Descriptor instead. +func (*ReqDualCameraLinkage) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{183} +} + +func (x *ReqDualCameraLinkage) GetX() int32 { + if x != nil { + return x.X + } + return 0 +} + +func (x *ReqDualCameraLinkage) GetY() int32 { + if x != nil { + return x.Y + } + return 0 +} + +// source: notify +type PictureMatching struct { + state protoimpl.MessageState `protogen:"open.v1"` + X uint32 `protobuf:"varint,1,opt,name=x,proto3" json:"x,omitempty"` + Y uint32 `protobuf:"varint,2,opt,name=y,proto3" json:"y,omitempty"` + Width uint32 `protobuf:"varint,3,opt,name=width,proto3" json:"width,omitempty"` + Height uint32 `protobuf:"varint,4,opt,name=height,proto3" json:"height,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *PictureMatching) Reset() { + *x = PictureMatching{} + mi := &file_dwarf_proto_msgTypes[184] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *PictureMatching) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PictureMatching) ProtoMessage() {} + +func (x *PictureMatching) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[184] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PictureMatching.ProtoReflect.Descriptor instead. +func (*PictureMatching) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{184} +} + +func (x *PictureMatching) GetX() uint32 { + if x != nil { + return x.X + } + return 0 +} + +func (x *PictureMatching) GetY() uint32 { + if x != nil { + return x.Y + } + return 0 +} + +func (x *PictureMatching) GetWidth() uint32 { + if x != nil { + return x.Width + } + return 0 +} + +func (x *PictureMatching) GetHeight() uint32 { + if x != nil { + return x.Height + } + return 0 +} + +// source: notify +type StorageInfo struct { + state protoimpl.MessageState `protogen:"open.v1"` + AvailableSize uint32 `protobuf:"varint,1,opt,name=available_size,json=availableSize,proto3" json:"available_size,omitempty"` + TotalSize uint32 `protobuf:"varint,2,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"` + StorageType int32 `protobuf:"varint,3,opt,name=storage_type,json=storageType,proto3" json:"storage_type,omitempty"` + IsValid bool `protobuf:"varint,4,opt,name=is_valid,json=isValid,proto3" json:"is_valid,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *StorageInfo) Reset() { + *x = StorageInfo{} + mi := &file_dwarf_proto_msgTypes[185] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *StorageInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*StorageInfo) ProtoMessage() {} + +func (x *StorageInfo) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[185] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use StorageInfo.ProtoReflect.Descriptor instead. +func (*StorageInfo) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{185} +} + +func (x *StorageInfo) GetAvailableSize() uint32 { + if x != nil { + return x.AvailableSize + } + return 0 +} + +func (x *StorageInfo) GetTotalSize() uint32 { + if x != nil { + return x.TotalSize + } + return 0 +} + +func (x *StorageInfo) GetStorageType() int32 { + if x != nil { + return x.StorageType + } + return 0 +} + +func (x *StorageInfo) GetIsValid() bool { + if x != nil { + return x.IsValid + } + return false +} + +// source: notify +type Temperature struct { + state protoimpl.MessageState `protogen:"open.v1"` + Code int32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"` + Temperature int32 `protobuf:"varint,2,opt,name=temperature,proto3" json:"temperature,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *Temperature) Reset() { + *x = Temperature{} + mi := &file_dwarf_proto_msgTypes[186] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *Temperature) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Temperature) ProtoMessage() {} + +func (x *Temperature) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[186] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Temperature.ProtoReflect.Descriptor instead. +func (*Temperature) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{186} +} + +func (x *Temperature) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *Temperature) GetTemperature() int32 { + if x != nil { + return x.Temperature + } + return 0 +} + +// source: notify +type CmosTemperature struct { + state protoimpl.MessageState `protogen:"open.v1"` + // oneof _temperature + Temperature int32 `protobuf:"varint,1,opt,name=temperature,proto3" json:"temperature,omitempty"` + CameraType int32 `protobuf:"varint,2,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *CmosTemperature) Reset() { + *x = CmosTemperature{} + mi := &file_dwarf_proto_msgTypes[187] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *CmosTemperature) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CmosTemperature) ProtoMessage() {} + +func (x *CmosTemperature) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[187] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CmosTemperature.ProtoReflect.Descriptor instead. +func (*CmosTemperature) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{187} +} + +func (x *CmosTemperature) GetTemperature() int32 { + if x != nil { + return x.Temperature + } + return 0 +} + +func (x *CmosTemperature) GetCameraType() int32 { + if x != nil { + return x.CameraType + } + return 0 +} + +// source: notify +type RecordTime struct { + state protoimpl.MessageState `protogen:"open.v1"` + RecordTime uint32 `protobuf:"varint,1,opt,name=record_time,json=recordTime,proto3" json:"record_time,omitempty"` + CameraType uint32 `protobuf:"varint,2,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *RecordTime) Reset() { + *x = RecordTime{} + mi := &file_dwarf_proto_msgTypes[188] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *RecordTime) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*RecordTime) ProtoMessage() {} + +func (x *RecordTime) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[188] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use RecordTime.ProtoReflect.Descriptor instead. +func (*RecordTime) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{188} +} + +func (x *RecordTime) GetRecordTime() uint32 { + if x != nil { + return x.RecordTime + } + return 0 +} + +func (x *RecordTime) GetCameraType() uint32 { + if x != nil { + return x.CameraType + } + return 0 +} + +// source: notify +type TimeLapseOutTime struct { + state protoimpl.MessageState `protogen:"open.v1"` + Interval uint32 `protobuf:"varint,1,opt,name=interval,proto3" json:"interval,omitempty"` + OutTime uint32 `protobuf:"varint,2,opt,name=out_time,json=outTime,proto3" json:"out_time,omitempty"` + TotalTime uint32 `protobuf:"varint,3,opt,name=total_time,json=totalTime,proto3" json:"total_time,omitempty"` + CameraType uint32 `protobuf:"varint,4,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *TimeLapseOutTime) Reset() { + *x = TimeLapseOutTime{} + mi := &file_dwarf_proto_msgTypes[189] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *TimeLapseOutTime) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*TimeLapseOutTime) ProtoMessage() {} + +func (x *TimeLapseOutTime) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[189] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use TimeLapseOutTime.ProtoReflect.Descriptor instead. +func (*TimeLapseOutTime) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{189} +} + +func (x *TimeLapseOutTime) GetInterval() uint32 { + if x != nil { + return x.Interval + } + return 0 +} + +func (x *TimeLapseOutTime) GetOutTime() uint32 { + if x != nil { + return x.OutTime + } + return 0 +} + +func (x *TimeLapseOutTime) GetTotalTime() uint32 { + if x != nil { + return x.TotalTime + } + return 0 +} + +func (x *TimeLapseOutTime) GetCameraType() uint32 { + if x != nil { + return x.CameraType + } + return 0 +} + +// source: notify +type OperationStateNotify struct { + state protoimpl.MessageState `protogen:"open.v1"` + State OperationState `protobuf:"varint,1,opt,name=state,proto3,enum=OperationState" json:"state,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *OperationStateNotify) Reset() { + *x = OperationStateNotify{} + mi := &file_dwarf_proto_msgTypes[190] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *OperationStateNotify) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*OperationStateNotify) ProtoMessage() {} + +func (x *OperationStateNotify) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[190] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use OperationStateNotify.ProtoReflect.Descriptor instead. +func (*OperationStateNotify) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{190} +} + +func (x *OperationStateNotify) GetState() OperationState { + if x != nil { + return x.State + } + return OperationState_OPERATION_STATE_IDLE +} + +// source: notify +type AstroCalibrationState struct { + state protoimpl.MessageState `protogen:"open.v1"` + State AstroState `protobuf:"varint,1,opt,name=state,proto3,enum=AstroState" json:"state,omitempty"` + PlateSolvingTimes int32 `protobuf:"varint,2,opt,name=plate_solving_times,json=plateSolvingTimes,proto3" json:"plate_solving_times,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *AstroCalibrationState) Reset() { + *x = AstroCalibrationState{} + mi := &file_dwarf_proto_msgTypes[191] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *AstroCalibrationState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AstroCalibrationState) ProtoMessage() {} + +func (x *AstroCalibrationState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[191] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AstroCalibrationState.ProtoReflect.Descriptor instead. +func (*AstroCalibrationState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{191} +} + +func (x *AstroCalibrationState) GetState() AstroState { + if x != nil { + return x.State + } + return AstroState_ASTRO_STATE_IDLE +} + +func (x *AstroCalibrationState) GetPlateSolvingTimes() int32 { + if x != nil { + return x.PlateSolvingTimes + } + return 0 +} + +// source: notify +type AstroGotoState struct { + state protoimpl.MessageState `protogen:"open.v1"` + State AstroState `protobuf:"varint,1,opt,name=state,proto3,enum=AstroState" json:"state,omitempty"` + TargetName string `protobuf:"bytes,2,opt,name=target_name,json=targetName,proto3" json:"target_name,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *AstroGotoState) Reset() { + *x = AstroGotoState{} + mi := &file_dwarf_proto_msgTypes[192] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *AstroGotoState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AstroGotoState) ProtoMessage() {} + +func (x *AstroGotoState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[192] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AstroGotoState.ProtoReflect.Descriptor instead. +func (*AstroGotoState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{192} +} + +func (x *AstroGotoState) GetState() AstroState { + if x != nil { + return x.State + } + return AstroState_ASTRO_STATE_IDLE +} + +func (x *AstroGotoState) GetTargetName() string { + if x != nil { + return x.TargetName + } + return "" +} + +// source: notify +type AstroTrackingState struct { + state protoimpl.MessageState `protogen:"open.v1"` + State OperationState `protobuf:"varint,1,opt,name=state,proto3,enum=OperationState" json:"state,omitempty"` + TargetName string `protobuf:"bytes,2,opt,name=target_name,json=targetName,proto3" json:"target_name,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *AstroTrackingState) Reset() { + *x = AstroTrackingState{} + mi := &file_dwarf_proto_msgTypes[193] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *AstroTrackingState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AstroTrackingState) ProtoMessage() {} + +func (x *AstroTrackingState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[193] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AstroTrackingState.ProtoReflect.Descriptor instead. +func (*AstroTrackingState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{193} +} + +func (x *AstroTrackingState) GetState() OperationState { + if x != nil { + return x.State + } + return OperationState_OPERATION_STATE_IDLE +} + +func (x *AstroTrackingState) GetTargetName() string { + if x != nil { + return x.TargetName + } + return "" +} + +// source: notify +type ProgressCaptureRawDark struct { + state protoimpl.MessageState `protogen:"open.v1"` + Progress int32 `protobuf:"varint,1,opt,name=progress,proto3" json:"progress,omitempty"` + RemainingTime int32 `protobuf:"varint,2,opt,name=remaining_time,json=remainingTime,proto3" json:"remaining_time,omitempty"` + CameraType int32 `protobuf:"varint,3,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ProgressCaptureRawDark) Reset() { + *x = ProgressCaptureRawDark{} + mi := &file_dwarf_proto_msgTypes[194] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ProgressCaptureRawDark) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ProgressCaptureRawDark) ProtoMessage() {} + +func (x *ProgressCaptureRawDark) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[194] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ProgressCaptureRawDark.ProtoReflect.Descriptor instead. +func (*ProgressCaptureRawDark) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{194} +} + +func (x *ProgressCaptureRawDark) GetProgress() int32 { + if x != nil { + return x.Progress + } + return 0 +} + +func (x *ProgressCaptureRawDark) GetRemainingTime() int32 { + if x != nil { + return x.RemainingTime + } + return 0 +} + +func (x *ProgressCaptureRawDark) GetCameraType() int32 { + if x != nil { + return x.CameraType + } + return 0 +} + +// source: notify +type ProgressCaptureRawLiveStacking struct { + state protoimpl.MessageState `protogen:"open.v1"` + // oneof _shooting_time + // oneof _stacked_time + TotalCount int32 `protobuf:"varint,1,opt,name=total_count,json=totalCount,proto3" json:"total_count,omitempty"` + UpdateType int32 `protobuf:"varint,2,opt,name=update_type,json=updateType,proto3" json:"update_type,omitempty"` + CurrentCount int32 `protobuf:"varint,3,opt,name=current_count,json=currentCount,proto3" json:"current_count,omitempty"` + StackedCount int32 `protobuf:"varint,4,opt,name=stacked_count,json=stackedCount,proto3" json:"stacked_count,omitempty"` + ExpIndex int32 `protobuf:"varint,5,opt,name=exp_index,json=expIndex,proto3" json:"exp_index,omitempty"` + GainIndex int32 `protobuf:"varint,6,opt,name=gain_index,json=gainIndex,proto3" json:"gain_index,omitempty"` + TargetName string `protobuf:"bytes,7,opt,name=target_name,json=targetName,proto3" json:"target_name,omitempty"` + CameraType int32 `protobuf:"varint,8,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + ShootingTime int32 `protobuf:"varint,9,opt,name=shooting_time,json=shootingTime,proto3" json:"shooting_time,omitempty"` + StackedTime int32 `protobuf:"varint,10,opt,name=stacked_time,json=stackedTime,proto3" json:"stacked_time,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ProgressCaptureRawLiveStacking) Reset() { + *x = ProgressCaptureRawLiveStacking{} + mi := &file_dwarf_proto_msgTypes[195] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ProgressCaptureRawLiveStacking) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ProgressCaptureRawLiveStacking) ProtoMessage() {} + +func (x *ProgressCaptureRawLiveStacking) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[195] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ProgressCaptureRawLiveStacking.ProtoReflect.Descriptor instead. +func (*ProgressCaptureRawLiveStacking) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{195} +} + +func (x *ProgressCaptureRawLiveStacking) GetTotalCount() int32 { + if x != nil { + return x.TotalCount + } + return 0 +} + +func (x *ProgressCaptureRawLiveStacking) GetUpdateType() int32 { + if x != nil { + return x.UpdateType + } + return 0 +} + +func (x *ProgressCaptureRawLiveStacking) GetCurrentCount() int32 { + if x != nil { + return x.CurrentCount + } + return 0 +} + +func (x *ProgressCaptureRawLiveStacking) GetStackedCount() int32 { + if x != nil { + return x.StackedCount + } + return 0 +} + +func (x *ProgressCaptureRawLiveStacking) GetExpIndex() int32 { + if x != nil { + return x.ExpIndex + } + return 0 +} + +func (x *ProgressCaptureRawLiveStacking) GetGainIndex() int32 { + if x != nil { + return x.GainIndex + } + return 0 +} + +func (x *ProgressCaptureRawLiveStacking) GetTargetName() string { + if x != nil { + return x.TargetName + } + return "" +} + +func (x *ProgressCaptureRawLiveStacking) GetCameraType() int32 { + if x != nil { + return x.CameraType + } + return 0 +} + +func (x *ProgressCaptureRawLiveStacking) GetShootingTime() int32 { + if x != nil { + return x.ShootingTime + } + return 0 +} + +func (x *ProgressCaptureRawLiveStacking) GetStackedTime() int32 { + if x != nil { + return x.StackedTime + } + return 0 +} + +// source: notify +type Param struct { + state protoimpl.MessageState `protogen:"open.v1"` + Param []*CommonParam `protobuf:"bytes,1,rep,name=param,proto3" json:"param,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *Param) Reset() { + *x = Param{} + mi := &file_dwarf_proto_msgTypes[196] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *Param) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Param) ProtoMessage() {} + +func (x *Param) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[196] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Param.ProtoReflect.Descriptor instead. +func (*Param) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{196} +} + +func (x *Param) GetParam() []*CommonParam { + if x != nil { + return x.Param + } + return nil +} + +// source: notify +type BurstProgress struct { + state protoimpl.MessageState `protogen:"open.v1"` + TotalCount uint32 `protobuf:"varint,1,opt,name=total_count,json=totalCount,proto3" json:"total_count,omitempty"` + CompletedCount uint32 `protobuf:"varint,2,opt,name=completed_count,json=completedCount,proto3" json:"completed_count,omitempty"` + CameraType uint32 `protobuf:"varint,3,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *BurstProgress) Reset() { + *x = BurstProgress{} + mi := &file_dwarf_proto_msgTypes[197] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *BurstProgress) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*BurstProgress) ProtoMessage() {} + +func (x *BurstProgress) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[197] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use BurstProgress.ProtoReflect.Descriptor instead. +func (*BurstProgress) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{197} +} + +func (x *BurstProgress) GetTotalCount() uint32 { + if x != nil { + return x.TotalCount + } + return 0 +} + +func (x *BurstProgress) GetCompletedCount() uint32 { + if x != nil { + return x.CompletedCount + } + return 0 +} + +func (x *BurstProgress) GetCameraType() uint32 { + if x != nil { + return x.CameraType + } + return 0 +} + +// source: notify +type PanoramaProgress struct { + state protoimpl.MessageState `protogen:"open.v1"` + TotalCount int32 `protobuf:"varint,1,opt,name=total_count,json=totalCount,proto3" json:"total_count,omitempty"` + CompletedCount int32 `protobuf:"varint,2,opt,name=completed_count,json=completedCount,proto3" json:"completed_count,omitempty"` + CameraType uint32 `protobuf:"varint,3,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *PanoramaProgress) Reset() { + *x = PanoramaProgress{} + mi := &file_dwarf_proto_msgTypes[198] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *PanoramaProgress) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PanoramaProgress) ProtoMessage() {} + +func (x *PanoramaProgress) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[198] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PanoramaProgress.ProtoReflect.Descriptor instead. +func (*PanoramaProgress) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{198} +} + +func (x *PanoramaProgress) GetTotalCount() int32 { + if x != nil { + return x.TotalCount + } + return 0 +} + +func (x *PanoramaProgress) GetCompletedCount() int32 { + if x != nil { + return x.CompletedCount + } + return 0 +} + +func (x *PanoramaProgress) GetCameraType() uint32 { + if x != nil { + return x.CameraType + } + return 0 +} + +// source: notify +type RgbState struct { + state protoimpl.MessageState `protogen:"open.v1"` + State int32 `protobuf:"varint,1,opt,name=state,proto3" json:"state,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *RgbState) Reset() { + *x = RgbState{} + mi := &file_dwarf_proto_msgTypes[199] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *RgbState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*RgbState) ProtoMessage() {} + +func (x *RgbState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[199] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use RgbState.ProtoReflect.Descriptor instead. +func (*RgbState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{199} +} + +func (x *RgbState) GetState() int32 { + if x != nil { + return x.State + } + return 0 +} + +// source: notify +type PowerIndState struct { + state protoimpl.MessageState `protogen:"open.v1"` + State int32 `protobuf:"varint,1,opt,name=state,proto3" json:"state,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *PowerIndState) Reset() { + *x = PowerIndState{} + mi := &file_dwarf_proto_msgTypes[200] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *PowerIndState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PowerIndState) ProtoMessage() {} + +func (x *PowerIndState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[200] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PowerIndState.ProtoReflect.Descriptor instead. +func (*PowerIndState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{200} +} + +func (x *PowerIndState) GetState() int32 { + if x != nil { + return x.State + } + return 0 +} + +// source: notify +type ChargingState struct { + state protoimpl.MessageState `protogen:"open.v1"` + State int32 `protobuf:"varint,1,opt,name=state,proto3" json:"state,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ChargingState) Reset() { + *x = ChargingState{} + mi := &file_dwarf_proto_msgTypes[201] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ChargingState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ChargingState) ProtoMessage() {} + +func (x *ChargingState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[201] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ChargingState.ProtoReflect.Descriptor instead. +func (*ChargingState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{201} +} + +func (x *ChargingState) GetState() int32 { + if x != nil { + return x.State + } + return 0 +} + +// source: notify +type BatteryInfo struct { + state protoimpl.MessageState `protogen:"open.v1"` + Percentage int32 `protobuf:"varint,1,opt,name=percentage,proto3" json:"percentage,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *BatteryInfo) Reset() { + *x = BatteryInfo{} + mi := &file_dwarf_proto_msgTypes[202] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *BatteryInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*BatteryInfo) ProtoMessage() {} + +func (x *BatteryInfo) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[202] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use BatteryInfo.ProtoReflect.Descriptor instead. +func (*BatteryInfo) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{202} +} + +func (x *BatteryInfo) GetPercentage() int32 { + if x != nil { + return x.Percentage + } + return 0 +} + +// source: notify +type HostSlaveMode struct { + state protoimpl.MessageState `protogen:"open.v1"` + Mode int32 `protobuf:"varint,1,opt,name=mode,proto3" json:"mode,omitempty"` + Lock bool `protobuf:"varint,2,opt,name=lock,proto3" json:"lock,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *HostSlaveMode) Reset() { + *x = HostSlaveMode{} + mi := &file_dwarf_proto_msgTypes[203] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *HostSlaveMode) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*HostSlaveMode) ProtoMessage() {} + +func (x *HostSlaveMode) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[203] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use HostSlaveMode.ProtoReflect.Descriptor instead. +func (*HostSlaveMode) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{203} +} + +func (x *HostSlaveMode) GetMode() int32 { + if x != nil { + return x.Mode + } + return 0 +} + +func (x *HostSlaveMode) GetLock() bool { + if x != nil { + return x.Lock + } + return false +} + +// source: notify +type MTPState struct { + state protoimpl.MessageState `protogen:"open.v1"` + Mode int32 `protobuf:"varint,1,opt,name=mode,proto3" json:"mode,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *MTPState) Reset() { + *x = MTPState{} + mi := &file_dwarf_proto_msgTypes[204] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *MTPState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MTPState) ProtoMessage() {} + +func (x *MTPState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[204] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use MTPState.ProtoReflect.Descriptor instead. +func (*MTPState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{204} +} + +func (x *MTPState) GetMode() int32 { + if x != nil { + return x.Mode + } + return 0 +} + +// source: notify +type TrackResult struct { + state protoimpl.MessageState `protogen:"open.v1"` + X int32 `protobuf:"varint,1,opt,name=x,proto3" json:"x,omitempty"` + Y int32 `protobuf:"varint,2,opt,name=y,proto3" json:"y,omitempty"` + W int32 `protobuf:"varint,3,opt,name=w,proto3" json:"w,omitempty"` + H int32 `protobuf:"varint,4,opt,name=h,proto3" json:"h,omitempty"` + Id int32 `protobuf:"varint,5,opt,name=id,proto3" json:"id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *TrackResult) Reset() { + *x = TrackResult{} + mi := &file_dwarf_proto_msgTypes[205] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *TrackResult) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*TrackResult) ProtoMessage() {} + +func (x *TrackResult) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[205] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use TrackResult.ProtoReflect.Descriptor instead. +func (*TrackResult) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{205} +} + +func (x *TrackResult) GetX() int32 { + if x != nil { + return x.X + } + return 0 +} + +func (x *TrackResult) GetY() int32 { + if x != nil { + return x.Y + } + return 0 +} + +func (x *TrackResult) GetW() int32 { + if x != nil { + return x.W + } + return 0 +} + +func (x *TrackResult) GetH() int32 { + if x != nil { + return x.H + } + return 0 +} + +func (x *TrackResult) GetId() int32 { + if x != nil { + return x.Id + } + return 0 +} + +// source: notify +type CPUMode struct { + state protoimpl.MessageState `protogen:"open.v1"` + Mode int32 `protobuf:"varint,1,opt,name=mode,proto3" json:"mode,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *CPUMode) Reset() { + *x = CPUMode{} + mi := &file_dwarf_proto_msgTypes[206] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *CPUMode) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CPUMode) ProtoMessage() {} + +func (x *CPUMode) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[206] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CPUMode.ProtoReflect.Descriptor instead. +func (*CPUMode) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{206} +} + +func (x *CPUMode) GetMode() int32 { + if x != nil { + return x.Mode + } + return 0 +} + +// source: notify +type AstroTrackingSpecialState struct { + state protoimpl.MessageState `protogen:"open.v1"` + State OperationState `protobuf:"varint,1,opt,name=state,proto3,enum=OperationState" json:"state,omitempty"` + TargetName string `protobuf:"bytes,2,opt,name=target_name,json=targetName,proto3" json:"target_name,omitempty"` + Index int32 `protobuf:"varint,3,opt,name=index,proto3" json:"index,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *AstroTrackingSpecialState) Reset() { + *x = AstroTrackingSpecialState{} + mi := &file_dwarf_proto_msgTypes[207] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *AstroTrackingSpecialState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AstroTrackingSpecialState) ProtoMessage() {} + +func (x *AstroTrackingSpecialState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[207] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AstroTrackingSpecialState.ProtoReflect.Descriptor instead. +func (*AstroTrackingSpecialState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{207} +} + +func (x *AstroTrackingSpecialState) GetState() OperationState { + if x != nil { + return x.State + } + return OperationState_OPERATION_STATE_IDLE +} + +func (x *AstroTrackingSpecialState) GetTargetName() string { + if x != nil { + return x.TargetName + } + return "" +} + +func (x *AstroTrackingSpecialState) GetIndex() int32 { + if x != nil { + return x.Index + } + return 0 +} + +// source: notify +type PowerOff struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *PowerOff) Reset() { + *x = PowerOff{} + mi := &file_dwarf_proto_msgTypes[208] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *PowerOff) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PowerOff) ProtoMessage() {} + +func (x *PowerOff) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[208] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PowerOff.ProtoReflect.Descriptor instead. +func (*PowerOff) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{208} +} + +// source: notify +type AlbumUpdate struct { + state protoimpl.MessageState `protogen:"open.v1"` + MediaType int32 `protobuf:"varint,1,opt,name=media_type,json=mediaType,proto3" json:"media_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *AlbumUpdate) Reset() { + *x = AlbumUpdate{} + mi := &file_dwarf_proto_msgTypes[209] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *AlbumUpdate) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AlbumUpdate) ProtoMessage() {} + +func (x *AlbumUpdate) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[209] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AlbumUpdate.ProtoReflect.Descriptor instead. +func (*AlbumUpdate) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{209} +} + +func (x *AlbumUpdate) GetMediaType() int32 { + if x != nil { + return x.MediaType + } + return 0 +} + +// source: notify +type SentryState struct { + state protoimpl.MessageState `protogen:"open.v1"` + State SentryModeState `protobuf:"varint,1,opt,name=state,proto3,enum=SentryModeState" json:"state,omitempty"` + ObjectType SentryObjectType `protobuf:"varint,2,opt,name=object_type,json=objectType,proto3,enum=SentryObjectType" json:"object_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *SentryState) Reset() { + *x = SentryState{} + mi := &file_dwarf_proto_msgTypes[210] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *SentryState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SentryState) ProtoMessage() {} + +func (x *SentryState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[210] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SentryState.ProtoReflect.Descriptor instead. +func (*SentryState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{210} +} + +func (x *SentryState) GetState() SentryModeState { + if x != nil { + return x.State + } + return SentryModeState_SENTRY_MODE_STATE_IDLE +} + +func (x *SentryState) GetObjectType() SentryObjectType { + if x != nil { + return x.ObjectType + } + return SentryObjectType_SENTRY_OBJECT_TYPE_UNKNOWN +} + +// source: notify +type OneClickGotoState struct { + state protoimpl.MessageState `protogen:"open.v1"` + // oneof current_state + AstroAutoFocusState *AstroAutoFocusState `protobuf:"bytes,1,opt,name=astro_auto_focus_state,json=astroAutoFocusState,proto3" json:"astro_auto_focus_state,omitempty"` + AstroCalibrationState *AstroCalibrationState `protobuf:"bytes,2,opt,name=astro_calibration_state,json=astroCalibrationState,proto3" json:"astro_calibration_state,omitempty"` + AstroGotoState *AstroGotoState `protobuf:"bytes,3,opt,name=astro_goto_state,json=astroGotoState,proto3" json:"astro_goto_state,omitempty"` + AstroTrackingState *AstroTrackingState `protobuf:"bytes,4,opt,name=astro_tracking_state,json=astroTrackingState,proto3" json:"astro_tracking_state,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *OneClickGotoState) Reset() { + *x = OneClickGotoState{} + mi := &file_dwarf_proto_msgTypes[211] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *OneClickGotoState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*OneClickGotoState) ProtoMessage() {} + +func (x *OneClickGotoState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[211] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use OneClickGotoState.ProtoReflect.Descriptor instead. +func (*OneClickGotoState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{211} +} + +func (x *OneClickGotoState) GetAstroAutoFocusState() *AstroAutoFocusState { + if x != nil { + return x.AstroAutoFocusState + } + return nil +} + +func (x *OneClickGotoState) GetAstroCalibrationState() *AstroCalibrationState { + if x != nil { + return x.AstroCalibrationState + } + return nil +} + +func (x *OneClickGotoState) GetAstroGotoState() *AstroGotoState { + if x != nil { + return x.AstroGotoState + } + return nil +} + +func (x *OneClickGotoState) GetAstroTrackingState() *AstroTrackingState { + if x != nil { + return x.AstroTrackingState + } + return nil +} + +// source: notify +type StreamType struct { + state protoimpl.MessageState `protogen:"open.v1"` + StreamType int32 `protobuf:"varint,1,opt,name=stream_type,json=streamType,proto3" json:"stream_type,omitempty"` + CamId int32 `protobuf:"varint,2,opt,name=cam_id,json=camId,proto3" json:"cam_id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *StreamType) Reset() { + *x = StreamType{} + mi := &file_dwarf_proto_msgTypes[212] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *StreamType) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*StreamType) ProtoMessage() {} + +func (x *StreamType) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[212] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use StreamType.ProtoReflect.Descriptor instead. +func (*StreamType) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{212} +} + +func (x *StreamType) GetStreamType() int32 { + if x != nil { + return x.StreamType + } + return 0 +} + +func (x *StreamType) GetCamId() int32 { + if x != nil { + return x.CamId + } + return 0 +} + +// source: notify +type MultiTrackResult struct { + state protoimpl.MessageState `protogen:"open.v1"` + Results []*TrackResult `protobuf:"bytes,1,rep,name=results,proto3" json:"results,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *MultiTrackResult) Reset() { + *x = MultiTrackResult{} + mi := &file_dwarf_proto_msgTypes[213] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *MultiTrackResult) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MultiTrackResult) ProtoMessage() {} + +func (x *MultiTrackResult) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[213] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use MultiTrackResult.ProtoReflect.Descriptor instead. +func (*MultiTrackResult) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{213} +} + +func (x *MultiTrackResult) GetResults() []*TrackResult { + if x != nil { + return x.Results + } + return nil +} + +// source: notify +type EqSolvingState struct { + state protoimpl.MessageState `protogen:"open.v1"` + State OperationState `protobuf:"varint,1,opt,name=state,proto3,enum=OperationState" json:"state,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *EqSolvingState) Reset() { + *x = EqSolvingState{} + mi := &file_dwarf_proto_msgTypes[214] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *EqSolvingState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*EqSolvingState) ProtoMessage() {} + +func (x *EqSolvingState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[214] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use EqSolvingState.ProtoReflect.Descriptor instead. +func (*EqSolvingState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{214} +} + +func (x *EqSolvingState) GetState() OperationState { + if x != nil { + return x.State + } + return OperationState_OPERATION_STATE_IDLE +} + +// source: notify +type LongExpPhotoProgress struct { + state protoimpl.MessageState `protogen:"open.v1"` + TotalTime float64 `protobuf:"fixed64,1,opt,name=total_time,json=totalTime,proto3" json:"total_time,omitempty"` + ExposuredTime float64 `protobuf:"fixed64,2,opt,name=exposured_time,json=exposuredTime,proto3" json:"exposured_time,omitempty"` + CameraType uint32 `protobuf:"varint,3,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *LongExpPhotoProgress) Reset() { + *x = LongExpPhotoProgress{} + mi := &file_dwarf_proto_msgTypes[215] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *LongExpPhotoProgress) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*LongExpPhotoProgress) ProtoMessage() {} + +func (x *LongExpPhotoProgress) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[215] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use LongExpPhotoProgress.ProtoReflect.Descriptor instead. +func (*LongExpPhotoProgress) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{215} +} + +func (x *LongExpPhotoProgress) GetTotalTime() float64 { + if x != nil { + return x.TotalTime + } + return 0 +} + +func (x *LongExpPhotoProgress) GetExposuredTime() float64 { + if x != nil { + return x.ExposuredTime + } + return 0 +} + +func (x *LongExpPhotoProgress) GetCameraType() uint32 { + if x != nil { + return x.CameraType + } + return 0 +} + +// source: notify +type ShootingScheduleResultAndState struct { + state protoimpl.MessageState `protogen:"open.v1"` + ScheduleId string `protobuf:"bytes,1,opt,name=schedule_id,json=scheduleId,proto3" json:"schedule_id,omitempty"` + Result int32 `protobuf:"varint,2,opt,name=result,proto3" json:"result,omitempty"` + State int32 `protobuf:"varint,3,opt,name=state,proto3" json:"state,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ShootingScheduleResultAndState) Reset() { + *x = ShootingScheduleResultAndState{} + mi := &file_dwarf_proto_msgTypes[216] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ShootingScheduleResultAndState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ShootingScheduleResultAndState) ProtoMessage() {} + +func (x *ShootingScheduleResultAndState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[216] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ShootingScheduleResultAndState.ProtoReflect.Descriptor instead. +func (*ShootingScheduleResultAndState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{216} +} + +func (x *ShootingScheduleResultAndState) GetScheduleId() string { + if x != nil { + return x.ScheduleId + } + return "" +} + +func (x *ShootingScheduleResultAndState) GetResult() int32 { + if x != nil { + return x.Result + } + return 0 +} + +func (x *ShootingScheduleResultAndState) GetState() int32 { + if x != nil { + return x.State + } + return 0 +} + +// source: notify +type ShootingTaskState struct { + state protoimpl.MessageState `protogen:"open.v1"` + ScheduleTaskId string `protobuf:"bytes,1,opt,name=schedule_task_id,json=scheduleTaskId,proto3" json:"schedule_task_id,omitempty"` + State int32 `protobuf:"varint,2,opt,name=state,proto3" json:"state,omitempty"` + Code int32 `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ShootingTaskState) Reset() { + *x = ShootingTaskState{} + mi := &file_dwarf_proto_msgTypes[217] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ShootingTaskState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ShootingTaskState) ProtoMessage() {} + +func (x *ShootingTaskState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[217] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ShootingTaskState.ProtoReflect.Descriptor instead. +func (*ShootingTaskState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{217} +} + +func (x *ShootingTaskState) GetScheduleTaskId() string { + if x != nil { + return x.ScheduleTaskId + } + return "" +} + +func (x *ShootingTaskState) GetState() int32 { + if x != nil { + return x.State + } + return 0 +} + +func (x *ShootingTaskState) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +// source: notify +type SkySeacherState struct { + state protoimpl.MessageState `protogen:"open.v1"` + State OperationState `protobuf:"varint,1,opt,name=state,proto3,enum=OperationState" json:"state,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *SkySeacherState) Reset() { + *x = SkySeacherState{} + mi := &file_dwarf_proto_msgTypes[218] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *SkySeacherState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SkySeacherState) ProtoMessage() {} + +func (x *SkySeacherState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[218] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SkySeacherState.ProtoReflect.Descriptor instead. +func (*SkySeacherState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{218} +} + +func (x *SkySeacherState) GetState() OperationState { + if x != nil { + return x.State + } + return OperationState_OPERATION_STATE_IDLE +} + +// source: notify +type ProgressAiEnhance struct { + state protoimpl.MessageState `protogen:"open.v1"` + Progress int32 `protobuf:"varint,1,opt,name=progress,proto3" json:"progress,omitempty"` + TotalTime int32 `protobuf:"varint,2,opt,name=total_time,json=totalTime,proto3" json:"total_time,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ProgressAiEnhance) Reset() { + *x = ProgressAiEnhance{} + mi := &file_dwarf_proto_msgTypes[219] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ProgressAiEnhance) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ProgressAiEnhance) ProtoMessage() {} + +func (x *ProgressAiEnhance) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[219] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ProgressAiEnhance.ProtoReflect.Descriptor instead. +func (*ProgressAiEnhance) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{219} +} + +func (x *ProgressAiEnhance) GetProgress() int32 { + if x != nil { + return x.Progress + } + return 0 +} + +func (x *ProgressAiEnhance) GetTotalTime() int32 { + if x != nil { + return x.TotalTime + } + return 0 +} + +// source: notify +type CommonProgress struct { + state protoimpl.MessageState `protogen:"open.v1"` + Current int32 `protobuf:"varint,1,opt,name=current,proto3" json:"current,omitempty"` + Total int32 `protobuf:"varint,2,opt,name=total,proto3" json:"total,omitempty"` + ProgressType CommonProgress_ProgressType `protobuf:"varint,3,opt,name=progress_type,json=progressType,proto3,enum=CommonProgress_ProgressType" json:"progress_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *CommonProgress) Reset() { + *x = CommonProgress{} + mi := &file_dwarf_proto_msgTypes[220] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *CommonProgress) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CommonProgress) ProtoMessage() {} + +func (x *CommonProgress) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[220] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CommonProgress.ProtoReflect.Descriptor instead. +func (*CommonProgress) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{220} +} + +func (x *CommonProgress) GetCurrent() int32 { + if x != nil { + return x.Current + } + return 0 +} + +func (x *CommonProgress) GetTotal() int32 { + if x != nil { + return x.Total + } + return 0 +} + +func (x *CommonProgress) GetProgressType() CommonProgress_ProgressType { + if x != nil { + return x.ProgressType + } + return CommonProgress_PROGRESS_TYPE_INITING +} + +// source: notify +type CalibrationResult struct { + state protoimpl.MessageState `protogen:"open.v1"` + Azi float64 `protobuf:"fixed64,1,opt,name=azi,proto3" json:"azi,omitempty"` + Alt float64 `protobuf:"fixed64,2,opt,name=alt,proto3" json:"alt,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *CalibrationResult) Reset() { + *x = CalibrationResult{} + mi := &file_dwarf_proto_msgTypes[221] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *CalibrationResult) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CalibrationResult) ProtoMessage() {} + +func (x *CalibrationResult) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[221] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CalibrationResult.ProtoReflect.Descriptor instead. +func (*CalibrationResult) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{221} +} + +func (x *CalibrationResult) GetAzi() float64 { + if x != nil { + return x.Azi + } + return 0 +} + +func (x *CalibrationResult) GetAlt() float64 { + if x != nil { + return x.Alt + } + return 0 +} + +// source: notify +type FocusPosition struct { + state protoimpl.MessageState `protogen:"open.v1"` + Pos int32 `protobuf:"varint,1,opt,name=pos,proto3" json:"pos,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *FocusPosition) Reset() { + *x = FocusPosition{} + mi := &file_dwarf_proto_msgTypes[222] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *FocusPosition) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*FocusPosition) ProtoMessage() {} + +func (x *FocusPosition) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[222] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use FocusPosition.ProtoReflect.Descriptor instead. +func (*FocusPosition) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{222} +} + +func (x *FocusPosition) GetPos() int32 { + if x != nil { + return x.Pos + } + return 0 +} + +// source: notify +type SentryAutoHand struct { + state protoimpl.MessageState `protogen:"open.v1"` + Mode int32 `protobuf:"varint,1,opt,name=mode,proto3" json:"mode,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *SentryAutoHand) Reset() { + *x = SentryAutoHand{} + mi := &file_dwarf_proto_msgTypes[223] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *SentryAutoHand) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SentryAutoHand) ProtoMessage() {} + +func (x *SentryAutoHand) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[223] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SentryAutoHand.ProtoReflect.Descriptor instead. +func (*SentryAutoHand) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{223} +} + +func (x *SentryAutoHand) GetMode() int32 { + if x != nil { + return x.Mode + } + return 0 +} + +// source: notify +type PanoramaStitchUploadComplete struct { + state protoimpl.MessageState `protogen:"open.v1"` + Code int32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"` + UserId string `protobuf:"bytes,2,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` + BusiNo string `protobuf:"bytes,3,opt,name=busi_no,json=busiNo,proto3" json:"busi_no,omitempty"` + PanoramaName string `protobuf:"bytes,4,opt,name=panorama_name,json=panoramaName,proto3" json:"panorama_name,omitempty"` + Mac string `protobuf:"bytes,5,opt,name=mac,proto3" json:"mac,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *PanoramaStitchUploadComplete) Reset() { + *x = PanoramaStitchUploadComplete{} + mi := &file_dwarf_proto_msgTypes[224] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *PanoramaStitchUploadComplete) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PanoramaStitchUploadComplete) ProtoMessage() {} + +func (x *PanoramaStitchUploadComplete) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[224] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PanoramaStitchUploadComplete.ProtoReflect.Descriptor instead. +func (*PanoramaStitchUploadComplete) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{224} +} + +func (x *PanoramaStitchUploadComplete) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *PanoramaStitchUploadComplete) GetUserId() string { + if x != nil { + return x.UserId + } + return "" +} + +func (x *PanoramaStitchUploadComplete) GetBusiNo() string { + if x != nil { + return x.BusiNo + } + return "" +} + +func (x *PanoramaStitchUploadComplete) GetPanoramaName() string { + if x != nil { + return x.PanoramaName + } + return "" +} + +func (x *PanoramaStitchUploadComplete) GetMac() string { + if x != nil { + return x.Mac + } + return "" +} + +// source: notify +type PanoramaCompressionComplete struct { + state protoimpl.MessageState `protogen:"open.v1"` + Code int32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"` + PanoramaName string `protobuf:"bytes,2,opt,name=panorama_name,json=panoramaName,proto3" json:"panorama_name,omitempty"` + ZipFilePath string `protobuf:"bytes,3,opt,name=zip_file_path,json=zipFilePath,proto3" json:"zip_file_path,omitempty"` + ZipFileMd5 string `protobuf:"bytes,4,opt,name=zip_file_md5,json=zipFileMd5,proto3" json:"zip_file_md5,omitempty"` + ZipFileSize uint64 `protobuf:"varint,5,opt,name=zip_file_size,json=zipFileSize,proto3" json:"zip_file_size,omitempty"` + StitchParam string `protobuf:"bytes,6,opt,name=stitch_param,json=stitchParam,proto3" json:"stitch_param,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *PanoramaCompressionComplete) Reset() { + *x = PanoramaCompressionComplete{} + mi := &file_dwarf_proto_msgTypes[225] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *PanoramaCompressionComplete) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PanoramaCompressionComplete) ProtoMessage() {} + +func (x *PanoramaCompressionComplete) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[225] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PanoramaCompressionComplete.ProtoReflect.Descriptor instead. +func (*PanoramaCompressionComplete) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{225} +} + +func (x *PanoramaCompressionComplete) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *PanoramaCompressionComplete) GetPanoramaName() string { + if x != nil { + return x.PanoramaName + } + return "" +} + +func (x *PanoramaCompressionComplete) GetZipFilePath() string { + if x != nil { + return x.ZipFilePath + } + return "" +} + +func (x *PanoramaCompressionComplete) GetZipFileMd5() string { + if x != nil { + return x.ZipFileMd5 + } + return "" +} + +func (x *PanoramaCompressionComplete) GetZipFileSize() uint64 { + if x != nil { + return x.ZipFileSize + } + return 0 +} + +func (x *PanoramaCompressionComplete) GetStitchParam() string { + if x != nil { + return x.StitchParam + } + return "" +} + +// source: notify +type PanoramaCompressionProgress struct { + state protoimpl.MessageState `protogen:"open.v1"` + PanoramaName string `protobuf:"bytes,1,opt,name=panorama_name,json=panoramaName,proto3" json:"panorama_name,omitempty"` + TotalFilesNum uint32 `protobuf:"varint,2,opt,name=total_files_num,json=totalFilesNum,proto3" json:"total_files_num,omitempty"` + CompressedFilesNum uint32 `protobuf:"varint,3,opt,name=compressed_files_num,json=compressedFilesNum,proto3" json:"compressed_files_num,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *PanoramaCompressionProgress) Reset() { + *x = PanoramaCompressionProgress{} + mi := &file_dwarf_proto_msgTypes[226] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *PanoramaCompressionProgress) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PanoramaCompressionProgress) ProtoMessage() {} + +func (x *PanoramaCompressionProgress) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[226] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PanoramaCompressionProgress.ProtoReflect.Descriptor instead. +func (*PanoramaCompressionProgress) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{226} +} + +func (x *PanoramaCompressionProgress) GetPanoramaName() string { + if x != nil { + return x.PanoramaName + } + return "" +} + +func (x *PanoramaCompressionProgress) GetTotalFilesNum() uint32 { + if x != nil { + return x.TotalFilesNum + } + return 0 +} + +func (x *PanoramaCompressionProgress) GetCompressedFilesNum() uint32 { + if x != nil { + return x.CompressedFilesNum + } + return 0 +} + +// source: notify +type PanoramaUploadCompressionProgress struct { + state protoimpl.MessageState `protogen:"open.v1"` + UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` + BusiNo string `protobuf:"bytes,2,opt,name=busi_no,json=busiNo,proto3" json:"busi_no,omitempty"` + PanoramaName string `protobuf:"bytes,3,opt,name=panorama_name,json=panoramaName,proto3" json:"panorama_name,omitempty"` + Mac string `protobuf:"bytes,4,opt,name=mac,proto3" json:"mac,omitempty"` + TotalFilesNum uint32 `protobuf:"varint,5,opt,name=total_files_num,json=totalFilesNum,proto3" json:"total_files_num,omitempty"` + CompressedFilesNum uint32 `protobuf:"varint,6,opt,name=compressed_files_num,json=compressedFilesNum,proto3" json:"compressed_files_num,omitempty"` + Speed float64 `protobuf:"fixed64,7,opt,name=speed,proto3" json:"speed,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *PanoramaUploadCompressionProgress) Reset() { + *x = PanoramaUploadCompressionProgress{} + mi := &file_dwarf_proto_msgTypes[227] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *PanoramaUploadCompressionProgress) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PanoramaUploadCompressionProgress) ProtoMessage() {} + +func (x *PanoramaUploadCompressionProgress) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[227] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PanoramaUploadCompressionProgress.ProtoReflect.Descriptor instead. +func (*PanoramaUploadCompressionProgress) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{227} +} + +func (x *PanoramaUploadCompressionProgress) GetUserId() string { + if x != nil { + return x.UserId + } + return "" +} + +func (x *PanoramaUploadCompressionProgress) GetBusiNo() string { + if x != nil { + return x.BusiNo + } + return "" +} + +func (x *PanoramaUploadCompressionProgress) GetPanoramaName() string { + if x != nil { + return x.PanoramaName + } + return "" +} + +func (x *PanoramaUploadCompressionProgress) GetMac() string { + if x != nil { + return x.Mac + } + return "" +} + +func (x *PanoramaUploadCompressionProgress) GetTotalFilesNum() uint32 { + if x != nil { + return x.TotalFilesNum + } + return 0 +} + +func (x *PanoramaUploadCompressionProgress) GetCompressedFilesNum() uint32 { + if x != nil { + return x.CompressedFilesNum + } + return 0 +} + +func (x *PanoramaUploadCompressionProgress) GetSpeed() float64 { + if x != nil { + return x.Speed + } + return 0 +} + +// source: notify +type PanoramaUploadProgress struct { + state protoimpl.MessageState `protogen:"open.v1"` + UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` + BusiNo string `protobuf:"bytes,2,opt,name=busi_no,json=busiNo,proto3" json:"busi_no,omitempty"` + PanoramaName string `protobuf:"bytes,3,opt,name=panorama_name,json=panoramaName,proto3" json:"panorama_name,omitempty"` + Mac string `protobuf:"bytes,4,opt,name=mac,proto3" json:"mac,omitempty"` + TotalSize uint64 `protobuf:"varint,5,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"` + UploadedSize uint64 `protobuf:"varint,6,opt,name=uploaded_size,json=uploadedSize,proto3" json:"uploaded_size,omitempty"` + Speed float64 `protobuf:"fixed64,7,opt,name=speed,proto3" json:"speed,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *PanoramaUploadProgress) Reset() { + *x = PanoramaUploadProgress{} + mi := &file_dwarf_proto_msgTypes[228] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *PanoramaUploadProgress) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PanoramaUploadProgress) ProtoMessage() {} + +func (x *PanoramaUploadProgress) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[228] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PanoramaUploadProgress.ProtoReflect.Descriptor instead. +func (*PanoramaUploadProgress) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{228} +} + +func (x *PanoramaUploadProgress) GetUserId() string { + if x != nil { + return x.UserId + } + return "" +} + +func (x *PanoramaUploadProgress) GetBusiNo() string { + if x != nil { + return x.BusiNo + } + return "" +} + +func (x *PanoramaUploadProgress) GetPanoramaName() string { + if x != nil { + return x.PanoramaName + } + return "" +} + +func (x *PanoramaUploadProgress) GetMac() string { + if x != nil { + return x.Mac + } + return "" +} + +func (x *PanoramaUploadProgress) GetTotalSize() uint64 { + if x != nil { + return x.TotalSize + } + return 0 +} + +func (x *PanoramaUploadProgress) GetUploadedSize() uint64 { + if x != nil { + return x.UploadedSize + } + return 0 +} + +func (x *PanoramaUploadProgress) GetSpeed() float64 { + if x != nil { + return x.Speed + } + return 0 +} + +// source: notify +type PanoramaCurrentUploadState struct { + state protoimpl.MessageState `protogen:"open.v1"` + Code int32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"` + UserId string `protobuf:"bytes,2,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` + BusiNo string `protobuf:"bytes,3,opt,name=busi_no,json=busiNo,proto3" json:"busi_no,omitempty"` + PanoramaName string `protobuf:"bytes,4,opt,name=panorama_name,json=panoramaName,proto3" json:"panorama_name,omitempty"` + Mac string `protobuf:"bytes,5,opt,name=mac,proto3" json:"mac,omitempty"` + TotalFilesNum uint32 `protobuf:"varint,6,opt,name=total_files_num,json=totalFilesNum,proto3" json:"total_files_num,omitempty"` + CompressedFilesNum uint32 `protobuf:"varint,7,opt,name=compressed_files_num,json=compressedFilesNum,proto3" json:"compressed_files_num,omitempty"` + TotalSize uint64 `protobuf:"varint,8,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"` + UploadedSize uint64 `protobuf:"varint,9,opt,name=uploaded_size,json=uploadedSize,proto3" json:"uploaded_size,omitempty"` + Step uint32 `protobuf:"varint,10,opt,name=step,proto3" json:"step,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *PanoramaCurrentUploadState) Reset() { + *x = PanoramaCurrentUploadState{} + mi := &file_dwarf_proto_msgTypes[229] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *PanoramaCurrentUploadState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PanoramaCurrentUploadState) ProtoMessage() {} + +func (x *PanoramaCurrentUploadState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[229] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PanoramaCurrentUploadState.ProtoReflect.Descriptor instead. +func (*PanoramaCurrentUploadState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{229} +} + +func (x *PanoramaCurrentUploadState) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *PanoramaCurrentUploadState) GetUserId() string { + if x != nil { + return x.UserId + } + return "" +} + +func (x *PanoramaCurrentUploadState) GetBusiNo() string { + if x != nil { + return x.BusiNo + } + return "" +} + +func (x *PanoramaCurrentUploadState) GetPanoramaName() string { + if x != nil { + return x.PanoramaName + } + return "" +} + +func (x *PanoramaCurrentUploadState) GetMac() string { + if x != nil { + return x.Mac + } + return "" +} + +func (x *PanoramaCurrentUploadState) GetTotalFilesNum() uint32 { + if x != nil { + return x.TotalFilesNum + } + return 0 +} + +func (x *PanoramaCurrentUploadState) GetCompressedFilesNum() uint32 { + if x != nil { + return x.CompressedFilesNum + } + return 0 +} + +func (x *PanoramaCurrentUploadState) GetTotalSize() uint64 { + if x != nil { + return x.TotalSize + } + return 0 +} + +func (x *PanoramaCurrentUploadState) GetUploadedSize() uint64 { + if x != nil { + return x.UploadedSize + } + return 0 +} + +func (x *PanoramaCurrentUploadState) GetStep() uint32 { + if x != nil { + return x.Step + } + return 0 +} + +// source: notify +type LowTempProtectionMode struct { + state protoimpl.MessageState `protogen:"open.v1"` + Mode int32 `protobuf:"varint,1,opt,name=mode,proto3" json:"mode,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *LowTempProtectionMode) Reset() { + *x = LowTempProtectionMode{} + mi := &file_dwarf_proto_msgTypes[230] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *LowTempProtectionMode) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*LowTempProtectionMode) ProtoMessage() {} + +func (x *LowTempProtectionMode) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[230] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use LowTempProtectionMode.ProtoReflect.Descriptor instead. +func (*LowTempProtectionMode) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{230} +} + +func (x *LowTempProtectionMode) GetMode() int32 { + if x != nil { + return x.Mode + } + return 0 +} + +// source: notify +type StateSystemResourceOccupation struct { + state protoimpl.MessageState `protogen:"open.v1"` + TaskId StateSystemResourceOccupation_TaskId `protobuf:"varint,1,opt,name=task_id,json=taskId,proto3,enum=StateSystemResourceOccupation_TaskId" json:"task_id,omitempty"` + State OperationState `protobuf:"varint,2,opt,name=state,proto3,enum=OperationState" json:"state,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *StateSystemResourceOccupation) Reset() { + *x = StateSystemResourceOccupation{} + mi := &file_dwarf_proto_msgTypes[231] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *StateSystemResourceOccupation) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*StateSystemResourceOccupation) ProtoMessage() {} + +func (x *StateSystemResourceOccupation) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[231] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use StateSystemResourceOccupation.ProtoReflect.Descriptor instead. +func (*StateSystemResourceOccupation) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{231} +} + +func (x *StateSystemResourceOccupation) GetTaskId() StateSystemResourceOccupation_TaskId { + if x != nil { + return x.TaskId + } + return StateSystemResourceOccupation_IDLE +} + +func (x *StateSystemResourceOccupation) GetState() OperationState { + if x != nil { + return x.State + } + return OperationState_OPERATION_STATE_IDLE +} + +// source: notify +type BodyStatus struct { + state protoimpl.MessageState `protogen:"open.v1"` + BodyStatus BodyStatus_BodyStatusEnum `protobuf:"varint,1,opt,name=body_status,json=bodyStatus,proto3,enum=BodyStatus_BodyStatusEnum" json:"body_status,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *BodyStatus) Reset() { + *x = BodyStatus{} + mi := &file_dwarf_proto_msgTypes[232] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *BodyStatus) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*BodyStatus) ProtoMessage() {} + +func (x *BodyStatus) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[232] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use BodyStatus.ProtoReflect.Descriptor instead. +func (*BodyStatus) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{232} +} + +func (x *BodyStatus) GetBodyStatus() BodyStatus_BodyStatusEnum { + if x != nil { + return x.BodyStatus + } + return BodyStatus_UNKNOWN +} + +// source: notify +type ProgressCaptureMosaic struct { + state protoimpl.MessageState `protogen:"open.v1"` + TotalCount int32 `protobuf:"varint,1,opt,name=total_count,json=totalCount,proto3" json:"total_count,omitempty"` + UpdateType int32 `protobuf:"varint,2,opt,name=update_type,json=updateType,proto3" json:"update_type,omitempty"` + CurrentCount int32 `protobuf:"varint,3,opt,name=current_count,json=currentCount,proto3" json:"current_count,omitempty"` + StackedCount int32 `protobuf:"varint,4,opt,name=stacked_count,json=stackedCount,proto3" json:"stacked_count,omitempty"` + ExpIndex int32 `protobuf:"varint,5,opt,name=exp_index,json=expIndex,proto3" json:"exp_index,omitempty"` + GainIndex int32 `protobuf:"varint,6,opt,name=gain_index,json=gainIndex,proto3" json:"gain_index,omitempty"` + TargetName string `protobuf:"bytes,7,opt,name=target_name,json=targetName,proto3" json:"target_name,omitempty"` + HorizontalScale int32 `protobuf:"varint,8,opt,name=horizontal_scale,json=horizontalScale,proto3" json:"horizontal_scale,omitempty"` + VerticalScale int32 `protobuf:"varint,9,opt,name=vertical_scale,json=verticalScale,proto3" json:"vertical_scale,omitempty"` + Rotation int32 `protobuf:"varint,10,opt,name=rotation,proto3" json:"rotation,omitempty"` + FovId int32 `protobuf:"varint,11,opt,name=fov_id,json=fovId,proto3" json:"fov_id,omitempty"` + FovTotal int32 `protobuf:"varint,12,opt,name=fov_total,json=fovTotal,proto3" json:"fov_total,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ProgressCaptureMosaic) Reset() { + *x = ProgressCaptureMosaic{} + mi := &file_dwarf_proto_msgTypes[233] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ProgressCaptureMosaic) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ProgressCaptureMosaic) ProtoMessage() {} + +func (x *ProgressCaptureMosaic) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[233] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ProgressCaptureMosaic.ProtoReflect.Descriptor instead. +func (*ProgressCaptureMosaic) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{233} +} + +func (x *ProgressCaptureMosaic) GetTotalCount() int32 { + if x != nil { + return x.TotalCount + } + return 0 +} + +func (x *ProgressCaptureMosaic) GetUpdateType() int32 { + if x != nil { + return x.UpdateType + } + return 0 +} + +func (x *ProgressCaptureMosaic) GetCurrentCount() int32 { + if x != nil { + return x.CurrentCount + } + return 0 +} + +func (x *ProgressCaptureMosaic) GetStackedCount() int32 { + if x != nil { + return x.StackedCount + } + return 0 +} + +func (x *ProgressCaptureMosaic) GetExpIndex() int32 { + if x != nil { + return x.ExpIndex + } + return 0 +} + +func (x *ProgressCaptureMosaic) GetGainIndex() int32 { + if x != nil { + return x.GainIndex + } + return 0 +} + +func (x *ProgressCaptureMosaic) GetTargetName() string { + if x != nil { + return x.TargetName + } + return "" +} + +func (x *ProgressCaptureMosaic) GetHorizontalScale() int32 { + if x != nil { + return x.HorizontalScale + } + return 0 +} + +func (x *ProgressCaptureMosaic) GetVerticalScale() int32 { + if x != nil { + return x.VerticalScale + } + return 0 +} + +func (x *ProgressCaptureMosaic) GetRotation() int32 { + if x != nil { + return x.Rotation + } + return 0 +} + +func (x *ProgressCaptureMosaic) GetFovId() int32 { + if x != nil { + return x.FovId + } + return 0 +} + +func (x *ProgressCaptureMosaic) GetFovTotal() int32 { + if x != nil { + return x.FovTotal + } + return 0 +} + +// source: notify +type Wb struct { + state protoimpl.MessageState `protogen:"open.v1"` + Mode uint64 `protobuf:"varint,1,opt,name=mode,proto3" json:"mode,omitempty"` + Ct int32 `protobuf:"varint,2,opt,name=ct,proto3" json:"ct,omitempty"` + Scene int32 `protobuf:"varint,3,opt,name=scene,proto3" json:"scene,omitempty"` + CameraType int32 `protobuf:"varint,4,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *Wb) Reset() { + *x = Wb{} + mi := &file_dwarf_proto_msgTypes[234] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *Wb) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Wb) ProtoMessage() {} + +func (x *Wb) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[234] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Wb.ProtoReflect.Descriptor instead. +func (*Wb) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{234} +} + +func (x *Wb) GetMode() uint64 { + if x != nil { + return x.Mode + } + return 0 +} + +func (x *Wb) GetCt() int32 { + if x != nil { + return x.Ct + } + return 0 +} + +func (x *Wb) GetScene() int32 { + if x != nil { + return x.Scene + } + return 0 +} + +func (x *Wb) GetCameraType() int32 { + if x != nil { + return x.CameraType + } + return 0 +} + +// source: notify +type GeneralIntParam struct { + state protoimpl.MessageState `protogen:"open.v1"` + ParamId uint64 `protobuf:"varint,1,opt,name=param_id,json=paramId,proto3" json:"param_id,omitempty"` + Mode int32 `protobuf:"varint,2,opt,name=mode,proto3" json:"mode,omitempty"` + Value int32 `protobuf:"varint,3,opt,name=value,proto3" json:"value,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *GeneralIntParam) Reset() { + *x = GeneralIntParam{} + mi := &file_dwarf_proto_msgTypes[235] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *GeneralIntParam) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GeneralIntParam) ProtoMessage() {} + +func (x *GeneralIntParam) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[235] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GeneralIntParam.ProtoReflect.Descriptor instead. +func (*GeneralIntParam) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{235} +} + +func (x *GeneralIntParam) GetParamId() uint64 { + if x != nil { + return x.ParamId + } + return 0 +} + +func (x *GeneralIntParam) GetMode() int32 { + if x != nil { + return x.Mode + } + return 0 +} + +func (x *GeneralIntParam) GetValue() int32 { + if x != nil { + return x.Value + } + return 0 +} + +// source: notify +type GeneralFloatParam struct { + state protoimpl.MessageState `protogen:"open.v1"` + ParamId uint64 `protobuf:"varint,1,opt,name=param_id,json=paramId,proto3" json:"param_id,omitempty"` + Value float32 `protobuf:"fixed32,2,opt,name=value,proto3" json:"value,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *GeneralFloatParam) Reset() { + *x = GeneralFloatParam{} + mi := &file_dwarf_proto_msgTypes[236] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *GeneralFloatParam) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GeneralFloatParam) ProtoMessage() {} + +func (x *GeneralFloatParam) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[236] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GeneralFloatParam.ProtoReflect.Descriptor instead. +func (*GeneralFloatParam) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{236} +} + +func (x *GeneralFloatParam) GetParamId() uint64 { + if x != nil { + return x.ParamId + } + return 0 +} + +func (x *GeneralFloatParam) GetValue() float32 { + if x != nil { + return x.Value + } + return 0 +} + +// source: notify +type GeneralBoolParams struct { + state protoimpl.MessageState `protogen:"open.v1"` + ParamId uint64 `protobuf:"varint,1,opt,name=param_id,json=paramId,proto3" json:"param_id,omitempty"` + Value bool `protobuf:"varint,2,opt,name=value,proto3" json:"value,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *GeneralBoolParams) Reset() { + *x = GeneralBoolParams{} + mi := &file_dwarf_proto_msgTypes[237] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *GeneralBoolParams) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GeneralBoolParams) ProtoMessage() {} + +func (x *GeneralBoolParams) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[237] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GeneralBoolParams.ProtoReflect.Descriptor instead. +func (*GeneralBoolParams) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{237} +} + +func (x *GeneralBoolParams) GetParamId() uint64 { + if x != nil { + return x.ParamId + } + return 0 +} + +func (x *GeneralBoolParams) GetValue() bool { + if x != nil { + return x.Value + } + return false +} + +// source: notify +type SwitchShootingMode struct { + state protoimpl.MessageState `protogen:"open.v1"` + State int32 `protobuf:"varint,1,opt,name=state,proto3" json:"state,omitempty"` + SourceMode int32 `protobuf:"varint,2,opt,name=source_mode,json=sourceMode,proto3" json:"source_mode,omitempty"` + DstMode int32 `protobuf:"varint,3,opt,name=dst_mode,json=dstMode,proto3" json:"dst_mode,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *SwitchShootingMode) Reset() { + *x = SwitchShootingMode{} + mi := &file_dwarf_proto_msgTypes[238] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *SwitchShootingMode) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SwitchShootingMode) ProtoMessage() {} + +func (x *SwitchShootingMode) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[238] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SwitchShootingMode.ProtoReflect.Descriptor instead. +func (*SwitchShootingMode) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{238} +} + +func (x *SwitchShootingMode) GetState() int32 { + if x != nil { + return x.State + } + return 0 +} + +func (x *SwitchShootingMode) GetSourceMode() int32 { + if x != nil { + return x.SourceMode + } + return 0 +} + +func (x *SwitchShootingMode) GetDstMode() int32 { + if x != nil { + return x.DstMode + } + return 0 +} + +// source: notify +type SwitchCropRatioState struct { + state protoimpl.MessageState `protogen:"open.v1"` + State int32 `protobuf:"varint,1,opt,name=state,proto3" json:"state,omitempty"` + CropRatio int32 `protobuf:"varint,2,opt,name=crop_ratio,json=cropRatio,proto3" json:"crop_ratio,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *SwitchCropRatioState) Reset() { + *x = SwitchCropRatioState{} + mi := &file_dwarf_proto_msgTypes[239] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *SwitchCropRatioState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SwitchCropRatioState) ProtoMessage() {} + +func (x *SwitchCropRatioState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[239] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SwitchCropRatioState.ProtoReflect.Descriptor instead. +func (*SwitchCropRatioState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{239} +} + +func (x *SwitchCropRatioState) GetState() int32 { + if x != nil { + return x.State + } + return 0 +} + +func (x *SwitchCropRatioState) GetCropRatio() int32 { + if x != nil { + return x.CropRatio + } + return 0 +} + +// source: notify +type ResolutionParam struct { + state protoimpl.MessageState `protogen:"open.v1"` + ParamId uint64 `protobuf:"varint,1,opt,name=param_id,json=paramId,proto3" json:"param_id,omitempty"` + CurrentResValue int32 `protobuf:"varint,2,opt,name=current_res_value,json=currentResValue,proto3" json:"current_res_value,omitempty"` + CurrentFpsValue int32 `protobuf:"varint,3,opt,name=current_fps_value,json=currentFpsValue,proto3" json:"current_fps_value,omitempty"` + SupportedFpsList []int32 `protobuf:"varint,4,rep,packed,name=supported_fps_list,json=supportedFpsList,proto3" json:"supported_fps_list,omitempty"` + SupportedResolutionList []int32 `protobuf:"varint,5,rep,packed,name=supported_resolution_list,json=supportedResolutionList,proto3" json:"supported_resolution_list,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResolutionParam) Reset() { + *x = ResolutionParam{} + mi := &file_dwarf_proto_msgTypes[240] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResolutionParam) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResolutionParam) ProtoMessage() {} + +func (x *ResolutionParam) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[240] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResolutionParam.ProtoReflect.Descriptor instead. +func (*ResolutionParam) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{240} +} + +func (x *ResolutionParam) GetParamId() uint64 { + if x != nil { + return x.ParamId + } + return 0 +} + +func (x *ResolutionParam) GetCurrentResValue() int32 { + if x != nil { + return x.CurrentResValue + } + return 0 +} + +func (x *ResolutionParam) GetCurrentFpsValue() int32 { + if x != nil { + return x.CurrentFpsValue + } + return 0 +} + +func (x *ResolutionParam) GetSupportedFpsList() []int32 { + if x != nil { + return x.SupportedFpsList + } + return nil +} + +func (x *ResolutionParam) GetSupportedResolutionList() []int32 { + if x != nil { + return x.SupportedResolutionList + } + return nil +} + +// source: notify +type CaptureRawState struct { + state protoimpl.MessageState `protogen:"open.v1"` + State OperationState `protobuf:"varint,1,opt,name=state,proto3,enum=OperationState" json:"state,omitempty"` + CameraType int32 `protobuf:"varint,2,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *CaptureRawState) Reset() { + *x = CaptureRawState{} + mi := &file_dwarf_proto_msgTypes[241] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *CaptureRawState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CaptureRawState) ProtoMessage() {} + +func (x *CaptureRawState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[241] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CaptureRawState.ProtoReflect.Descriptor instead. +func (*CaptureRawState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{241} +} + +func (x *CaptureRawState) GetState() OperationState { + if x != nil { + return x.State + } + return OperationState_OPERATION_STATE_IDLE +} + +func (x *CaptureRawState) GetCameraType() int32 { + if x != nil { + return x.CameraType + } + return 0 +} + +// source: notify +type PhotoState struct { + state protoimpl.MessageState `protogen:"open.v1"` + State OperationState `protobuf:"varint,1,opt,name=state,proto3,enum=OperationState" json:"state,omitempty"` + CameraType int32 `protobuf:"varint,2,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *PhotoState) Reset() { + *x = PhotoState{} + mi := &file_dwarf_proto_msgTypes[242] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *PhotoState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PhotoState) ProtoMessage() {} + +func (x *PhotoState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[242] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PhotoState.ProtoReflect.Descriptor instead. +func (*PhotoState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{242} +} + +func (x *PhotoState) GetState() OperationState { + if x != nil { + return x.State + } + return OperationState_OPERATION_STATE_IDLE +} + +func (x *PhotoState) GetCameraType() int32 { + if x != nil { + return x.CameraType + } + return 0 +} + +// source: notify +type BurstState struct { + state protoimpl.MessageState `protogen:"open.v1"` + State OperationState `protobuf:"varint,1,opt,name=state,proto3,enum=OperationState" json:"state,omitempty"` + CameraType int32 `protobuf:"varint,2,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *BurstState) Reset() { + *x = BurstState{} + mi := &file_dwarf_proto_msgTypes[243] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *BurstState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*BurstState) ProtoMessage() {} + +func (x *BurstState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[243] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use BurstState.ProtoReflect.Descriptor instead. +func (*BurstState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{243} +} + +func (x *BurstState) GetState() OperationState { + if x != nil { + return x.State + } + return OperationState_OPERATION_STATE_IDLE +} + +func (x *BurstState) GetCameraType() int32 { + if x != nil { + return x.CameraType + } + return 0 +} + +// source: notify +type RecordState struct { + state protoimpl.MessageState `protogen:"open.v1"` + State OperationState `protobuf:"varint,1,opt,name=state,proto3,enum=OperationState" json:"state,omitempty"` + CameraType int32 `protobuf:"varint,2,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *RecordState) Reset() { + *x = RecordState{} + mi := &file_dwarf_proto_msgTypes[244] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *RecordState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*RecordState) ProtoMessage() {} + +func (x *RecordState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[244] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use RecordState.ProtoReflect.Descriptor instead. +func (*RecordState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{244} +} + +func (x *RecordState) GetState() OperationState { + if x != nil { + return x.State + } + return OperationState_OPERATION_STATE_IDLE +} + +func (x *RecordState) GetCameraType() int32 { + if x != nil { + return x.CameraType + } + return 0 +} + +// source: notify +type TimeLapseState struct { + state protoimpl.MessageState `protogen:"open.v1"` + State OperationState `protobuf:"varint,1,opt,name=state,proto3,enum=OperationState" json:"state,omitempty"` + CameraType int32 `protobuf:"varint,2,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *TimeLapseState) Reset() { + *x = TimeLapseState{} + mi := &file_dwarf_proto_msgTypes[245] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *TimeLapseState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*TimeLapseState) ProtoMessage() {} + +func (x *TimeLapseState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[245] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use TimeLapseState.ProtoReflect.Descriptor instead. +func (*TimeLapseState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{245} +} + +func (x *TimeLapseState) GetState() OperationState { + if x != nil { + return x.State + } + return OperationState_OPERATION_STATE_IDLE +} + +func (x *TimeLapseState) GetCameraType() int32 { + if x != nil { + return x.CameraType + } + return 0 +} + +// source: notify +type CaptureRawDarkState struct { + state protoimpl.MessageState `protogen:"open.v1"` + State OperationState `protobuf:"varint,1,opt,name=state,proto3,enum=OperationState" json:"state,omitempty"` + CameraType int32 `protobuf:"varint,2,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *CaptureRawDarkState) Reset() { + *x = CaptureRawDarkState{} + mi := &file_dwarf_proto_msgTypes[246] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *CaptureRawDarkState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CaptureRawDarkState) ProtoMessage() {} + +func (x *CaptureRawDarkState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[246] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CaptureRawDarkState.ProtoReflect.Descriptor instead. +func (*CaptureRawDarkState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{246} +} + +func (x *CaptureRawDarkState) GetState() OperationState { + if x != nil { + return x.State + } + return OperationState_OPERATION_STATE_IDLE +} + +func (x *CaptureRawDarkState) GetCameraType() int32 { + if x != nil { + return x.CameraType + } + return 0 +} + +// source: notify +type PanoramaState struct { + state protoimpl.MessageState `protogen:"open.v1"` + State OperationState `protobuf:"varint,1,opt,name=state,proto3,enum=OperationState" json:"state,omitempty"` + CameraType int32 `protobuf:"varint,2,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *PanoramaState) Reset() { + *x = PanoramaState{} + mi := &file_dwarf_proto_msgTypes[247] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *PanoramaState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PanoramaState) ProtoMessage() {} + +func (x *PanoramaState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[247] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PanoramaState.ProtoReflect.Descriptor instead. +func (*PanoramaState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{247} +} + +func (x *PanoramaState) GetState() OperationState { + if x != nil { + return x.State + } + return OperationState_OPERATION_STATE_IDLE +} + +func (x *PanoramaState) GetCameraType() int32 { + if x != nil { + return x.CameraType + } + return 0 +} + +// source: notify +type AstroAutoFocusState struct { + state protoimpl.MessageState `protogen:"open.v1"` + State OperationState `protobuf:"varint,1,opt,name=state,proto3,enum=OperationState" json:"state,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *AstroAutoFocusState) Reset() { + *x = AstroAutoFocusState{} + mi := &file_dwarf_proto_msgTypes[248] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *AstroAutoFocusState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AstroAutoFocusState) ProtoMessage() {} + +func (x *AstroAutoFocusState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[248] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AstroAutoFocusState.ProtoReflect.Descriptor instead. +func (*AstroAutoFocusState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{248} +} + +func (x *AstroAutoFocusState) GetState() OperationState { + if x != nil { + return x.State + } + return OperationState_OPERATION_STATE_IDLE +} + +// source: notify +type NormalAutoFocusState struct { + state protoimpl.MessageState `protogen:"open.v1"` + State OperationState `protobuf:"varint,1,opt,name=state,proto3,enum=OperationState" json:"state,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *NormalAutoFocusState) Reset() { + *x = NormalAutoFocusState{} + mi := &file_dwarf_proto_msgTypes[249] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *NormalAutoFocusState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*NormalAutoFocusState) ProtoMessage() {} + +func (x *NormalAutoFocusState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[249] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use NormalAutoFocusState.ProtoReflect.Descriptor instead. +func (*NormalAutoFocusState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{249} +} + +func (x *NormalAutoFocusState) GetState() OperationState { + if x != nil { + return x.State + } + return OperationState_OPERATION_STATE_IDLE +} + +// source: notify +type AstroAutoFocusFastState struct { + state protoimpl.MessageState `protogen:"open.v1"` + State OperationState `protobuf:"varint,1,opt,name=state,proto3,enum=OperationState" json:"state,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *AstroAutoFocusFastState) Reset() { + *x = AstroAutoFocusFastState{} + mi := &file_dwarf_proto_msgTypes[250] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *AstroAutoFocusFastState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AstroAutoFocusFastState) ProtoMessage() {} + +func (x *AstroAutoFocusFastState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[250] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AstroAutoFocusFastState.ProtoReflect.Descriptor instead. +func (*AstroAutoFocusFastState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{250} +} + +func (x *AstroAutoFocusFastState) GetState() OperationState { + if x != nil { + return x.State + } + return OperationState_OPERATION_STATE_IDLE +} + +// source: notify +type AreaAutoFocusState struct { + state protoimpl.MessageState `protogen:"open.v1"` + State OperationState `protobuf:"varint,1,opt,name=state,proto3,enum=OperationState" json:"state,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *AreaAutoFocusState) Reset() { + *x = AreaAutoFocusState{} + mi := &file_dwarf_proto_msgTypes[251] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *AreaAutoFocusState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AreaAutoFocusState) ProtoMessage() {} + +func (x *AreaAutoFocusState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[251] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AreaAutoFocusState.ProtoReflect.Descriptor instead. +func (*AreaAutoFocusState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{251} +} + +func (x *AreaAutoFocusState) GetState() OperationState { + if x != nil { + return x.State + } + return OperationState_OPERATION_STATE_IDLE +} + +// source: notify +type DualCameraLinkageState struct { + state protoimpl.MessageState `protogen:"open.v1"` + State OperationState `protobuf:"varint,1,opt,name=state,proto3,enum=OperationState" json:"state,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *DualCameraLinkageState) Reset() { + *x = DualCameraLinkageState{} + mi := &file_dwarf_proto_msgTypes[252] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *DualCameraLinkageState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DualCameraLinkageState) ProtoMessage() {} + +func (x *DualCameraLinkageState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[252] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DualCameraLinkageState.ProtoReflect.Descriptor instead. +func (*DualCameraLinkageState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{252} +} + +func (x *DualCameraLinkageState) GetState() OperationState { + if x != nil { + return x.State + } + return OperationState_OPERATION_STATE_IDLE +} + +// source: notify +type NormalTrackState struct { + state protoimpl.MessageState `protogen:"open.v1"` + State OperationState `protobuf:"varint,1,opt,name=state,proto3,enum=OperationState" json:"state,omitempty"` + CameraType int32 `protobuf:"varint,2,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *NormalTrackState) Reset() { + *x = NormalTrackState{} + mi := &file_dwarf_proto_msgTypes[253] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *NormalTrackState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*NormalTrackState) ProtoMessage() {} + +func (x *NormalTrackState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[253] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use NormalTrackState.ProtoReflect.Descriptor instead. +func (*NormalTrackState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{253} +} + +func (x *NormalTrackState) GetState() OperationState { + if x != nil { + return x.State + } + return OperationState_OPERATION_STATE_IDLE +} + +func (x *NormalTrackState) GetCameraType() int32 { + if x != nil { + return x.CameraType + } + return 0 +} + +// source: notify +type SwitchResolutionFpsState struct { + state protoimpl.MessageState `protogen:"open.v1"` + State OperationState `protobuf:"varint,1,opt,name=state,proto3,enum=OperationState" json:"state,omitempty"` + CameraType int32 `protobuf:"varint,2,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *SwitchResolutionFpsState) Reset() { + *x = SwitchResolutionFpsState{} + mi := &file_dwarf_proto_msgTypes[254] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *SwitchResolutionFpsState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SwitchResolutionFpsState) ProtoMessage() {} + +func (x *SwitchResolutionFpsState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[254] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SwitchResolutionFpsState.ProtoReflect.Descriptor instead. +func (*SwitchResolutionFpsState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{254} +} + +func (x *SwitchResolutionFpsState) GetState() OperationState { + if x != nil { + return x.State + } + return OperationState_OPERATION_STATE_IDLE +} + +func (x *SwitchResolutionFpsState) GetCameraType() int32 { + if x != nil { + return x.CameraType + } + return 0 +} + +// source: notify +type CaptureCaliFrameState struct { + state protoimpl.MessageState `protogen:"open.v1"` + State OperationState `protobuf:"varint,1,opt,name=state,proto3,enum=OperationState" json:"state,omitempty"` + CameraType int32 `protobuf:"varint,2,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + CaliFrameType int32 `protobuf:"varint,3,opt,name=cali_frame_type,json=caliFrameType,proto3" json:"cali_frame_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *CaptureCaliFrameState) Reset() { + *x = CaptureCaliFrameState{} + mi := &file_dwarf_proto_msgTypes[255] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *CaptureCaliFrameState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CaptureCaliFrameState) ProtoMessage() {} + +func (x *CaptureCaliFrameState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[255] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CaptureCaliFrameState.ProtoReflect.Descriptor instead. +func (*CaptureCaliFrameState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{255} +} + +func (x *CaptureCaliFrameState) GetState() OperationState { + if x != nil { + return x.State + } + return OperationState_OPERATION_STATE_IDLE +} + +func (x *CaptureCaliFrameState) GetCameraType() int32 { + if x != nil { + return x.CameraType + } + return 0 +} + +func (x *CaptureCaliFrameState) GetCaliFrameType() int32 { + if x != nil { + return x.CaliFrameType + } + return 0 +} + +// source: notify +type CaptureCaliFrameProgress struct { + state protoimpl.MessageState `protogen:"open.v1"` + Progress int32 `protobuf:"varint,1,opt,name=progress,proto3" json:"progress,omitempty"` + CameraType int32 `protobuf:"varint,2,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + CaliFrameType int32 `protobuf:"varint,3,opt,name=cali_frame_type,json=caliFrameType,proto3" json:"cali_frame_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *CaptureCaliFrameProgress) Reset() { + *x = CaptureCaliFrameProgress{} + mi := &file_dwarf_proto_msgTypes[256] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *CaptureCaliFrameProgress) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CaptureCaliFrameProgress) ProtoMessage() {} + +func (x *CaptureCaliFrameProgress) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[256] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CaptureCaliFrameProgress.ProtoReflect.Descriptor instead. +func (*CaptureCaliFrameProgress) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{256} +} + +func (x *CaptureCaliFrameProgress) GetProgress() int32 { + if x != nil { + return x.Progress + } + return 0 +} + +func (x *CaptureCaliFrameProgress) GetCameraType() int32 { + if x != nil { + return x.CameraType + } + return 0 +} + +func (x *CaptureCaliFrameProgress) GetCaliFrameType() int32 { + if x != nil { + return x.CaliFrameType + } + return 0 +} + +// source: notify +type DeviceAttitude struct { + state protoimpl.MessageState `protogen:"open.v1"` + Pitch float64 `protobuf:"fixed64,1,opt,name=pitch,proto3" json:"pitch,omitempty"` + Yaw float64 `protobuf:"fixed64,2,opt,name=yaw,proto3" json:"yaw,omitempty"` + Roll float64 `protobuf:"fixed64,3,opt,name=roll,proto3" json:"roll,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *DeviceAttitude) Reset() { + *x = DeviceAttitude{} + mi := &file_dwarf_proto_msgTypes[257] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *DeviceAttitude) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DeviceAttitude) ProtoMessage() {} + +func (x *DeviceAttitude) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[257] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DeviceAttitude.ProtoReflect.Descriptor instead. +func (*DeviceAttitude) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{257} +} + +func (x *DeviceAttitude) GetPitch() float64 { + if x != nil { + return x.Pitch + } + return 0 +} + +func (x *DeviceAttitude) GetYaw() float64 { + if x != nil { + return x.Yaw + } + return 0 +} + +func (x *DeviceAttitude) GetRoll() float64 { + if x != nil { + return x.Roll + } + return 0 +} + +// source: notify +type SkyTargetFinderState struct { + state protoimpl.MessageState `protogen:"open.v1"` + State OperationState `protobuf:"varint,1,opt,name=state,proto3,enum=OperationState" json:"state,omitempty"` + SceneType int32 `protobuf:"varint,2,opt,name=scene_type,json=sceneType,proto3" json:"scene_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *SkyTargetFinderState) Reset() { + *x = SkyTargetFinderState{} + mi := &file_dwarf_proto_msgTypes[258] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *SkyTargetFinderState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SkyTargetFinderState) ProtoMessage() {} + +func (x *SkyTargetFinderState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[258] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SkyTargetFinderState.ProtoReflect.Descriptor instead. +func (*SkyTargetFinderState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{258} +} + +func (x *SkyTargetFinderState) GetState() OperationState { + if x != nil { + return x.State + } + return OperationState_OPERATION_STATE_IDLE +} + +func (x *SkyTargetFinderState) GetSceneType() int32 { + if x != nil { + return x.SceneType + } + return 0 +} + +// source: notify +type PanoFramingThumbnailUpdateNotify struct { + state protoimpl.MessageState `protogen:"open.v1"` + WebpData []byte `protobuf:"bytes,1,opt,name=webp_data,json=webpData,proto3" json:"webp_data,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *PanoFramingThumbnailUpdateNotify) Reset() { + *x = PanoFramingThumbnailUpdateNotify{} + mi := &file_dwarf_proto_msgTypes[259] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *PanoFramingThumbnailUpdateNotify) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PanoFramingThumbnailUpdateNotify) ProtoMessage() {} + +func (x *PanoFramingThumbnailUpdateNotify) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[259] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PanoFramingThumbnailUpdateNotify.ProtoReflect.Descriptor instead. +func (*PanoFramingThumbnailUpdateNotify) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{259} +} + +func (x *PanoFramingThumbnailUpdateNotify) GetWebpData() []byte { + if x != nil { + return x.WebpData + } + return nil +} + +// source: notify +type PanoFramingRectUpdateNotify struct { + state protoimpl.MessageState `protogen:"open.v1"` + NormXTl float64 `protobuf:"fixed64,1,opt,name=norm_x_tl,json=normXTl,proto3" json:"norm_x_tl,omitempty"` + NormYTl float64 `protobuf:"fixed64,2,opt,name=norm_y_tl,json=normYTl,proto3" json:"norm_y_tl,omitempty"` + NormXBr float64 `protobuf:"fixed64,3,opt,name=norm_x_br,json=normXBr,proto3" json:"norm_x_br,omitempty"` + NormYBr float64 `protobuf:"fixed64,4,opt,name=norm_y_br,json=normYBr,proto3" json:"norm_y_br,omitempty"` + NormLimitXLeft float64 `protobuf:"fixed64,5,opt,name=norm_limit_x_left,json=normLimitXLeft,proto3" json:"norm_limit_x_left,omitempty"` + NormLimitYTop float64 `protobuf:"fixed64,6,opt,name=norm_limit_y_top,json=normLimitYTop,proto3" json:"norm_limit_y_top,omitempty"` + NormLimitXRight float64 `protobuf:"fixed64,7,opt,name=norm_limit_x_right,json=normLimitXRight,proto3" json:"norm_limit_x_right,omitempty"` + NormLimitYBottom float64 `protobuf:"fixed64,8,opt,name=norm_limit_y_bottom,json=normLimitYBottom,proto3" json:"norm_limit_y_bottom,omitempty"` + RectHorFov float64 `protobuf:"fixed64,9,opt,name=rect_hor_fov,json=rectHorFov,proto3" json:"rect_hor_fov,omitempty"` + RectVerFov float64 `protobuf:"fixed64,10,opt,name=rect_ver_fov,json=rectVerFov,proto3" json:"rect_ver_fov,omitempty"` + ErrorCode int32 `protobuf:"varint,11,opt,name=error_code,json=errorCode,proto3" json:"error_code,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *PanoFramingRectUpdateNotify) Reset() { + *x = PanoFramingRectUpdateNotify{} + mi := &file_dwarf_proto_msgTypes[260] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *PanoFramingRectUpdateNotify) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PanoFramingRectUpdateNotify) ProtoMessage() {} + +func (x *PanoFramingRectUpdateNotify) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[260] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PanoFramingRectUpdateNotify.ProtoReflect.Descriptor instead. +func (*PanoFramingRectUpdateNotify) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{260} +} + +func (x *PanoFramingRectUpdateNotify) GetNormXTl() float64 { + if x != nil { + return x.NormXTl + } + return 0 +} + +func (x *PanoFramingRectUpdateNotify) GetNormYTl() float64 { + if x != nil { + return x.NormYTl + } + return 0 +} + +func (x *PanoFramingRectUpdateNotify) GetNormXBr() float64 { + if x != nil { + return x.NormXBr + } + return 0 +} + +func (x *PanoFramingRectUpdateNotify) GetNormYBr() float64 { + if x != nil { + return x.NormYBr + } + return 0 +} + +func (x *PanoFramingRectUpdateNotify) GetNormLimitXLeft() float64 { + if x != nil { + return x.NormLimitXLeft + } + return 0 +} + +func (x *PanoFramingRectUpdateNotify) GetNormLimitYTop() float64 { + if x != nil { + return x.NormLimitYTop + } + return 0 +} + +func (x *PanoFramingRectUpdateNotify) GetNormLimitXRight() float64 { + if x != nil { + return x.NormLimitXRight + } + return 0 +} + +func (x *PanoFramingRectUpdateNotify) GetNormLimitYBottom() float64 { + if x != nil { + return x.NormLimitYBottom + } + return 0 +} + +func (x *PanoFramingRectUpdateNotify) GetRectHorFov() float64 { + if x != nil { + return x.RectHorFov + } + return 0 +} + +func (x *PanoFramingRectUpdateNotify) GetRectVerFov() float64 { + if x != nil { + return x.RectVerFov + } + return 0 +} + +func (x *PanoFramingRectUpdateNotify) GetErrorCode() int32 { + if x != nil { + return x.ErrorCode + } + return 0 +} + +// source: notify +type PanoFramingStateNotify struct { + state protoimpl.MessageState `protogen:"open.v1"` + State int32 `protobuf:"varint,1,opt,name=state,proto3" json:"state,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *PanoFramingStateNotify) Reset() { + *x = PanoFramingStateNotify{} + mi := &file_dwarf_proto_msgTypes[261] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *PanoFramingStateNotify) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PanoFramingStateNotify) ProtoMessage() {} + +func (x *PanoFramingStateNotify) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[261] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PanoFramingStateNotify.ProtoReflect.Descriptor instead. +func (*PanoFramingStateNotify) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{261} +} + +func (x *PanoFramingStateNotify) GetState() int32 { + if x != nil { + return x.State + } + return 0 +} + +// source: notify +type AutoShutdown struct { + state protoimpl.MessageState `protogen:"open.v1"` + State int32 `protobuf:"varint,1,opt,name=state,proto3" json:"state,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *AutoShutdown) Reset() { + *x = AutoShutdown{} + mi := &file_dwarf_proto_msgTypes[262] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *AutoShutdown) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AutoShutdown) ProtoMessage() {} + +func (x *AutoShutdown) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[262] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AutoShutdown.ProtoReflect.Descriptor instead. +func (*AutoShutdown) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{262} +} + +func (x *AutoShutdown) GetState() int32 { + if x != nil { + return x.State + } + return 0 +} + +// source: notify +type LensDefog struct { + state protoimpl.MessageState `protogen:"open.v1"` + State int32 `protobuf:"varint,1,opt,name=state,proto3" json:"state,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *LensDefog) Reset() { + *x = LensDefog{} + mi := &file_dwarf_proto_msgTypes[263] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *LensDefog) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*LensDefog) ProtoMessage() {} + +func (x *LensDefog) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[263] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use LensDefog.ProtoReflect.Descriptor instead. +func (*LensDefog) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{263} +} + +func (x *LensDefog) GetState() int32 { + if x != nil { + return x.State + } + return 0 +} + +// source: notify +type AutoCooling struct { + state protoimpl.MessageState `protogen:"open.v1"` + State int32 `protobuf:"varint,1,opt,name=state,proto3" json:"state,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *AutoCooling) Reset() { + *x = AutoCooling{} + mi := &file_dwarf_proto_msgTypes[264] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *AutoCooling) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AutoCooling) ProtoMessage() {} + +func (x *AutoCooling) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[264] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AutoCooling.ProtoReflect.Descriptor instead. +func (*AutoCooling) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{264} +} + +func (x *AutoCooling) GetState() int32 { + if x != nil { + return x.State + } + return 0 +} + +// source: panorama +type ReqStartPanoramaByGrid struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStartPanoramaByGrid) Reset() { + *x = ReqStartPanoramaByGrid{} + mi := &file_dwarf_proto_msgTypes[265] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStartPanoramaByGrid) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStartPanoramaByGrid) ProtoMessage() {} + +func (x *ReqStartPanoramaByGrid) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[265] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStartPanoramaByGrid.ProtoReflect.Descriptor instead. +func (*ReqStartPanoramaByGrid) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{265} +} + +// source: panorama +type ReqStartPanoramaByEulerRange struct { + state protoimpl.MessageState `protogen:"open.v1"` + YawRange float32 `protobuf:"fixed32,1,opt,name=yaw_range,json=yawRange,proto3" json:"yaw_range,omitempty"` + PitchRange float32 `protobuf:"fixed32,2,opt,name=pitch_range,json=pitchRange,proto3" json:"pitch_range,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStartPanoramaByEulerRange) Reset() { + *x = ReqStartPanoramaByEulerRange{} + mi := &file_dwarf_proto_msgTypes[266] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStartPanoramaByEulerRange) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStartPanoramaByEulerRange) ProtoMessage() {} + +func (x *ReqStartPanoramaByEulerRange) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[266] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStartPanoramaByEulerRange.ProtoReflect.Descriptor instead. +func (*ReqStartPanoramaByEulerRange) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{266} +} + +func (x *ReqStartPanoramaByEulerRange) GetYawRange() float32 { + if x != nil { + return x.YawRange + } + return 0 +} + +func (x *ReqStartPanoramaByEulerRange) GetPitchRange() float32 { + if x != nil { + return x.PitchRange + } + return 0 +} + +// source: panorama +type ReqStartPanoramaStitchUpload struct { + state protoimpl.MessageState `protogen:"open.v1"` + ResourceId uint64 `protobuf:"varint,1,opt,name=resource_id,json=resourceId,proto3" json:"resource_id,omitempty"` + UserId string `protobuf:"bytes,2,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` + AppPlatform int32 `protobuf:"varint,3,opt,name=app_platform,json=appPlatform,proto3" json:"app_platform,omitempty"` + PanoramaName string `protobuf:"bytes,4,opt,name=panorama_name,json=panoramaName,proto3" json:"panorama_name,omitempty"` + Ak string `protobuf:"bytes,5,opt,name=ak,proto3" json:"ak,omitempty"` + Sk string `protobuf:"bytes,6,opt,name=sk,proto3" json:"sk,omitempty"` + Token string `protobuf:"bytes,7,opt,name=token,proto3" json:"token,omitempty"` + Bucket string `protobuf:"bytes,8,opt,name=bucket,proto3" json:"bucket,omitempty"` + BucketPrefix string `protobuf:"bytes,9,opt,name=bucket_prefix,json=bucketPrefix,proto3" json:"bucket_prefix,omitempty"` + From string `protobuf:"bytes,10,opt,name=from,proto3" json:"from,omitempty"` + EnvType string `protobuf:"bytes,11,opt,name=env_type,json=envType,proto3" json:"env_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStartPanoramaStitchUpload) Reset() { + *x = ReqStartPanoramaStitchUpload{} + mi := &file_dwarf_proto_msgTypes[267] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStartPanoramaStitchUpload) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStartPanoramaStitchUpload) ProtoMessage() {} + +func (x *ReqStartPanoramaStitchUpload) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[267] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStartPanoramaStitchUpload.ProtoReflect.Descriptor instead. +func (*ReqStartPanoramaStitchUpload) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{267} +} + +func (x *ReqStartPanoramaStitchUpload) GetResourceId() uint64 { + if x != nil { + return x.ResourceId + } + return 0 +} + +func (x *ReqStartPanoramaStitchUpload) GetUserId() string { + if x != nil { + return x.UserId + } + return "" +} + +func (x *ReqStartPanoramaStitchUpload) GetAppPlatform() int32 { + if x != nil { + return x.AppPlatform + } + return 0 +} + +func (x *ReqStartPanoramaStitchUpload) GetPanoramaName() string { + if x != nil { + return x.PanoramaName + } + return "" +} + +func (x *ReqStartPanoramaStitchUpload) GetAk() string { + if x != nil { + return x.Ak + } + return "" +} + +func (x *ReqStartPanoramaStitchUpload) GetSk() string { + if x != nil { + return x.Sk + } + return "" +} + +func (x *ReqStartPanoramaStitchUpload) GetToken() string { + if x != nil { + return x.Token + } + return "" +} + +func (x *ReqStartPanoramaStitchUpload) GetBucket() string { + if x != nil { + return x.Bucket + } + return "" +} + +func (x *ReqStartPanoramaStitchUpload) GetBucketPrefix() string { + if x != nil { + return x.BucketPrefix + } + return "" +} + +func (x *ReqStartPanoramaStitchUpload) GetFrom() string { + if x != nil { + return x.From + } + return "" +} + +func (x *ReqStartPanoramaStitchUpload) GetEnvType() string { + if x != nil { + return x.EnvType + } + return "" +} + +// source: panorama +type ReqStopPanorama struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStopPanorama) Reset() { + *x = ReqStopPanorama{} + mi := &file_dwarf_proto_msgTypes[268] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStopPanorama) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStopPanorama) ProtoMessage() {} + +func (x *ReqStopPanorama) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[268] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStopPanorama.ProtoReflect.Descriptor instead. +func (*ReqStopPanorama) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{268} +} + +// source: panorama +type ReqStopPanoramaStitchUpload struct { + state protoimpl.MessageState `protogen:"open.v1"` + UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStopPanoramaStitchUpload) Reset() { + *x = ReqStopPanoramaStitchUpload{} + mi := &file_dwarf_proto_msgTypes[269] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStopPanoramaStitchUpload) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStopPanoramaStitchUpload) ProtoMessage() {} + +func (x *ReqStopPanoramaStitchUpload) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[269] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStopPanoramaStitchUpload.ProtoReflect.Descriptor instead. +func (*ReqStopPanoramaStitchUpload) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{269} +} + +func (x *ReqStopPanoramaStitchUpload) GetUserId() string { + if x != nil { + return x.UserId + } + return "" +} + +// source: panorama +type ReqGetPanoramaCurrentUploadState struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGetPanoramaCurrentUploadState) Reset() { + *x = ReqGetPanoramaCurrentUploadState{} + mi := &file_dwarf_proto_msgTypes[270] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGetPanoramaCurrentUploadState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGetPanoramaCurrentUploadState) ProtoMessage() {} + +func (x *ReqGetPanoramaCurrentUploadState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[270] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGetPanoramaCurrentUploadState.ProtoReflect.Descriptor instead. +func (*ReqGetPanoramaCurrentUploadState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{270} +} + +// source: panorama +type ResGetPanoramaCurrentUploadState struct { + state protoimpl.MessageState `protogen:"open.v1"` + Code int32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"` + UserId string `protobuf:"bytes,2,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` + BusiNo string `protobuf:"bytes,3,opt,name=busi_no,json=busiNo,proto3" json:"busi_no,omitempty"` + PanoramaName string `protobuf:"bytes,4,opt,name=panorama_name,json=panoramaName,proto3" json:"panorama_name,omitempty"` + Mac string `protobuf:"bytes,5,opt,name=mac,proto3" json:"mac,omitempty"` + TotalFilesNum uint32 `protobuf:"varint,6,opt,name=total_files_num,json=totalFilesNum,proto3" json:"total_files_num,omitempty"` + CompressedFilesNum uint32 `protobuf:"varint,7,opt,name=compressed_files_num,json=compressedFilesNum,proto3" json:"compressed_files_num,omitempty"` + TotalSize uint64 `protobuf:"varint,8,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"` + UploadedSize uint64 `protobuf:"varint,9,opt,name=uploaded_size,json=uploadedSize,proto3" json:"uploaded_size,omitempty"` + Step uint32 `protobuf:"varint,10,opt,name=step,proto3" json:"step,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResGetPanoramaCurrentUploadState) Reset() { + *x = ResGetPanoramaCurrentUploadState{} + mi := &file_dwarf_proto_msgTypes[271] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResGetPanoramaCurrentUploadState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResGetPanoramaCurrentUploadState) ProtoMessage() {} + +func (x *ResGetPanoramaCurrentUploadState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[271] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResGetPanoramaCurrentUploadState.ProtoReflect.Descriptor instead. +func (*ResGetPanoramaCurrentUploadState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{271} +} + +func (x *ResGetPanoramaCurrentUploadState) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResGetPanoramaCurrentUploadState) GetUserId() string { + if x != nil { + return x.UserId + } + return "" +} + +func (x *ResGetPanoramaCurrentUploadState) GetBusiNo() string { + if x != nil { + return x.BusiNo + } + return "" +} + +func (x *ResGetPanoramaCurrentUploadState) GetPanoramaName() string { + if x != nil { + return x.PanoramaName + } + return "" +} + +func (x *ResGetPanoramaCurrentUploadState) GetMac() string { + if x != nil { + return x.Mac + } + return "" +} + +func (x *ResGetPanoramaCurrentUploadState) GetTotalFilesNum() uint32 { + if x != nil { + return x.TotalFilesNum + } + return 0 +} + +func (x *ResGetPanoramaCurrentUploadState) GetCompressedFilesNum() uint32 { + if x != nil { + return x.CompressedFilesNum + } + return 0 +} + +func (x *ResGetPanoramaCurrentUploadState) GetTotalSize() uint64 { + if x != nil { + return x.TotalSize + } + return 0 +} + +func (x *ResGetPanoramaCurrentUploadState) GetUploadedSize() uint64 { + if x != nil { + return x.UploadedSize + } + return 0 +} + +func (x *ResGetPanoramaCurrentUploadState) GetStep() uint32 { + if x != nil { + return x.Step + } + return 0 +} + +// source: panorama +type ReqGetUploadPredict struct { + state protoimpl.MessageState `protogen:"open.v1"` + PanoramaName string `protobuf:"bytes,1,opt,name=panorama_name,json=panoramaName,proto3" json:"panorama_name,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGetUploadPredict) Reset() { + *x = ReqGetUploadPredict{} + mi := &file_dwarf_proto_msgTypes[272] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGetUploadPredict) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGetUploadPredict) ProtoMessage() {} + +func (x *ReqGetUploadPredict) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[272] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGetUploadPredict.ProtoReflect.Descriptor instead. +func (*ReqGetUploadPredict) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{272} +} + +func (x *ReqGetUploadPredict) GetPanoramaName() string { + if x != nil { + return x.PanoramaName + } + return "" +} + +// source: panorama +type ResGetUploadPredict struct { + state protoimpl.MessageState `protogen:"open.v1"` + Code int32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"` + PanoramaName string `protobuf:"bytes,2,opt,name=panorama_name,json=panoramaName,proto3" json:"panorama_name,omitempty"` + FileNums uint32 `protobuf:"varint,3,opt,name=file_nums,json=fileNums,proto3" json:"file_nums,omitempty"` + Resolution string `protobuf:"bytes,4,opt,name=resolution,proto3" json:"resolution,omitempty"` + CloudDataSize uint64 `protobuf:"varint,5,opt,name=cloud_data_size,json=cloudDataSize,proto3" json:"cloud_data_size,omitempty"` + ZipDataSize uint64 `protobuf:"varint,6,opt,name=zip_data_size,json=zipDataSize,proto3" json:"zip_data_size,omitempty"` + AppZipDataSize uint64 `protobuf:"varint,7,opt,name=app_zip_data_size,json=appZipDataSize,proto3" json:"app_zip_data_size,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResGetUploadPredict) Reset() { + *x = ResGetUploadPredict{} + mi := &file_dwarf_proto_msgTypes[273] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResGetUploadPredict) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResGetUploadPredict) ProtoMessage() {} + +func (x *ResGetUploadPredict) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[273] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResGetUploadPredict.ProtoReflect.Descriptor instead. +func (*ResGetUploadPredict) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{273} +} + +func (x *ResGetUploadPredict) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResGetUploadPredict) GetPanoramaName() string { + if x != nil { + return x.PanoramaName + } + return "" +} + +func (x *ResGetUploadPredict) GetFileNums() uint32 { + if x != nil { + return x.FileNums + } + return 0 +} + +func (x *ResGetUploadPredict) GetResolution() string { + if x != nil { + return x.Resolution + } + return "" +} + +func (x *ResGetUploadPredict) GetCloudDataSize() uint64 { + if x != nil { + return x.CloudDataSize + } + return 0 +} + +func (x *ResGetUploadPredict) GetZipDataSize() uint64 { + if x != nil { + return x.ZipDataSize + } + return 0 +} + +func (x *ResGetUploadPredict) GetAppZipDataSize() uint64 { + if x != nil { + return x.AppZipDataSize + } + return 0 +} + +// source: panorama +type PanoramaUploadParam struct { + state protoimpl.MessageState `protogen:"open.v1"` + UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` + BusiNo string `protobuf:"bytes,2,opt,name=busi_no,json=busiNo,proto3" json:"busi_no,omitempty"` + PanoramaName string `protobuf:"bytes,3,opt,name=panorama_name,json=panoramaName,proto3" json:"panorama_name,omitempty"` + Mac string `protobuf:"bytes,4,opt,name=mac,proto3" json:"mac,omitempty"` + TotalFilesNum uint32 `protobuf:"varint,5,opt,name=total_files_num,json=totalFilesNum,proto3" json:"total_files_num,omitempty"` + CompressedFilesNum uint32 `protobuf:"varint,6,opt,name=compressed_files_num,json=compressedFilesNum,proto3" json:"compressed_files_num,omitempty"` + TotalSize uint64 `protobuf:"varint,7,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"` + UploadedSize uint64 `protobuf:"varint,8,opt,name=uploaded_size,json=uploadedSize,proto3" json:"uploaded_size,omitempty"` + Step uint32 `protobuf:"varint,9,opt,name=step,proto3" json:"step,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *PanoramaUploadParam) Reset() { + *x = PanoramaUploadParam{} + mi := &file_dwarf_proto_msgTypes[274] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *PanoramaUploadParam) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PanoramaUploadParam) ProtoMessage() {} + +func (x *PanoramaUploadParam) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[274] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PanoramaUploadParam.ProtoReflect.Descriptor instead. +func (*PanoramaUploadParam) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{274} +} + +func (x *PanoramaUploadParam) GetUserId() string { + if x != nil { + return x.UserId + } + return "" +} + +func (x *PanoramaUploadParam) GetBusiNo() string { + if x != nil { + return x.BusiNo + } + return "" +} + +func (x *PanoramaUploadParam) GetPanoramaName() string { + if x != nil { + return x.PanoramaName + } + return "" +} + +func (x *PanoramaUploadParam) GetMac() string { + if x != nil { + return x.Mac + } + return "" +} + +func (x *PanoramaUploadParam) GetTotalFilesNum() uint32 { + if x != nil { + return x.TotalFilesNum + } + return 0 +} + +func (x *PanoramaUploadParam) GetCompressedFilesNum() uint32 { + if x != nil { + return x.CompressedFilesNum + } + return 0 +} + +func (x *PanoramaUploadParam) GetTotalSize() uint64 { + if x != nil { + return x.TotalSize + } + return 0 +} + +func (x *PanoramaUploadParam) GetUploadedSize() uint64 { + if x != nil { + return x.UploadedSize + } + return 0 +} + +func (x *PanoramaUploadParam) GetStep() uint32 { + if x != nil { + return x.Step + } + return 0 +} + +// source: panorama +type ReqCompressPanorama struct { + state protoimpl.MessageState `protogen:"open.v1"` + PanoramaName string `protobuf:"bytes,1,opt,name=panorama_name,json=panoramaName,proto3" json:"panorama_name,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqCompressPanorama) Reset() { + *x = ReqCompressPanorama{} + mi := &file_dwarf_proto_msgTypes[275] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqCompressPanorama) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqCompressPanorama) ProtoMessage() {} + +func (x *ReqCompressPanorama) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[275] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqCompressPanorama.ProtoReflect.Descriptor instead. +func (*ReqCompressPanorama) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{275} +} + +func (x *ReqCompressPanorama) GetPanoramaName() string { + if x != nil { + return x.PanoramaName + } + return "" +} + +// source: panorama +type ReqStopCompressPanorama struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStopCompressPanorama) Reset() { + *x = ReqStopCompressPanorama{} + mi := &file_dwarf_proto_msgTypes[276] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStopCompressPanorama) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStopCompressPanorama) ProtoMessage() {} + +func (x *ReqStopCompressPanorama) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[276] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStopCompressPanorama.ProtoReflect.Descriptor instead. +func (*ReqStopCompressPanorama) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{276} +} + +// source: panorama +type ReqStartPanoramaFraming struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStartPanoramaFraming) Reset() { + *x = ReqStartPanoramaFraming{} + mi := &file_dwarf_proto_msgTypes[277] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStartPanoramaFraming) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStartPanoramaFraming) ProtoMessage() {} + +func (x *ReqStartPanoramaFraming) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[277] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStartPanoramaFraming.ProtoReflect.Descriptor instead. +func (*ReqStartPanoramaFraming) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{277} +} + +// source: panorama +type ReqResetPanoramaFraming struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqResetPanoramaFraming) Reset() { + *x = ReqResetPanoramaFraming{} + mi := &file_dwarf_proto_msgTypes[278] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqResetPanoramaFraming) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqResetPanoramaFraming) ProtoMessage() {} + +func (x *ReqResetPanoramaFraming) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[278] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqResetPanoramaFraming.ProtoReflect.Descriptor instead. +func (*ReqResetPanoramaFraming) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{278} +} + +// source: panorama +type ReqStopPanoramaFraming struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStopPanoramaFraming) Reset() { + *x = ReqStopPanoramaFraming{} + mi := &file_dwarf_proto_msgTypes[279] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStopPanoramaFraming) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStopPanoramaFraming) ProtoMessage() {} + +func (x *ReqStopPanoramaFraming) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[279] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStopPanoramaFraming.ProtoReflect.Descriptor instead. +func (*ReqStopPanoramaFraming) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{279} +} + +// source: panorama +type ReqStopPanoramaFramingAndStartGrid struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStopPanoramaFramingAndStartGrid) Reset() { + *x = ReqStopPanoramaFramingAndStartGrid{} + mi := &file_dwarf_proto_msgTypes[280] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStopPanoramaFramingAndStartGrid) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStopPanoramaFramingAndStartGrid) ProtoMessage() {} + +func (x *ReqStopPanoramaFramingAndStartGrid) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[280] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStopPanoramaFramingAndStartGrid.ProtoReflect.Descriptor instead. +func (*ReqStopPanoramaFramingAndStartGrid) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{280} +} + +// source: panorama +type ResStopPanoramaFraming struct { + state protoimpl.MessageState `protogen:"open.v1"` + Code int32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"` + CenterXDegreeOffset float64 `protobuf:"fixed64,2,opt,name=centerX_degree_offset,json=centerXDegreeOffset,proto3" json:"centerX_degree_offset,omitempty"` + CenterYDegreeOffset float64 `protobuf:"fixed64,3,opt,name=centerY_degree_offset,json=centerYDegreeOffset,proto3" json:"centerY_degree_offset,omitempty"` + FramingRows uint32 `protobuf:"varint,4,opt,name=framing_rows,json=framingRows,proto3" json:"framing_rows,omitempty"` + FramingCols uint32 `protobuf:"varint,5,opt,name=framing_cols,json=framingCols,proto3" json:"framing_cols,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResStopPanoramaFraming) Reset() { + *x = ResStopPanoramaFraming{} + mi := &file_dwarf_proto_msgTypes[281] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResStopPanoramaFraming) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResStopPanoramaFraming) ProtoMessage() {} + +func (x *ResStopPanoramaFraming) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[281] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResStopPanoramaFraming.ProtoReflect.Descriptor instead. +func (*ResStopPanoramaFraming) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{281} +} + +func (x *ResStopPanoramaFraming) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResStopPanoramaFraming) GetCenterXDegreeOffset() float64 { + if x != nil { + return x.CenterXDegreeOffset + } + return 0 +} + +func (x *ResStopPanoramaFraming) GetCenterYDegreeOffset() float64 { + if x != nil { + return x.CenterYDegreeOffset + } + return 0 +} + +func (x *ResStopPanoramaFraming) GetFramingRows() uint32 { + if x != nil { + return x.FramingRows + } + return 0 +} + +func (x *ResStopPanoramaFraming) GetFramingCols() uint32 { + if x != nil { + return x.FramingCols + } + return 0 +} + +// source: panorama +type ReqUpdatePanoramaFramingRect struct { + state protoimpl.MessageState `protogen:"open.v1"` + NormXTl float64 `protobuf:"fixed64,1,opt,name=norm_x_tl,json=normXTl,proto3" json:"norm_x_tl,omitempty"` + NormYTl float64 `protobuf:"fixed64,2,opt,name=norm_y_tl,json=normYTl,proto3" json:"norm_y_tl,omitempty"` + NormXBr float64 `protobuf:"fixed64,3,opt,name=norm_x_br,json=normXBr,proto3" json:"norm_x_br,omitempty"` + NormYBr float64 `protobuf:"fixed64,4,opt,name=norm_y_br,json=normYBr,proto3" json:"norm_y_br,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqUpdatePanoramaFramingRect) Reset() { + *x = ReqUpdatePanoramaFramingRect{} + mi := &file_dwarf_proto_msgTypes[282] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqUpdatePanoramaFramingRect) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqUpdatePanoramaFramingRect) ProtoMessage() {} + +func (x *ReqUpdatePanoramaFramingRect) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[282] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqUpdatePanoramaFramingRect.ProtoReflect.Descriptor instead. +func (*ReqUpdatePanoramaFramingRect) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{282} +} + +func (x *ReqUpdatePanoramaFramingRect) GetNormXTl() float64 { + if x != nil { + return x.NormXTl + } + return 0 +} + +func (x *ReqUpdatePanoramaFramingRect) GetNormYTl() float64 { + if x != nil { + return x.NormYTl + } + return 0 +} + +func (x *ReqUpdatePanoramaFramingRect) GetNormXBr() float64 { + if x != nil { + return x.NormXBr + } + return 0 +} + +func (x *ReqUpdatePanoramaFramingRect) GetNormYBr() float64 { + if x != nil { + return x.NormYBr + } + return 0 +} + +// source: param +type ReqSetExposure struct { + state protoimpl.MessageState `protogen:"open.v1"` + ParamId uint64 `protobuf:"varint,1,opt,name=param_id,json=paramId,proto3" json:"param_id,omitempty"` + Mode int32 `protobuf:"varint,2,opt,name=mode,proto3" json:"mode,omitempty"` + Value int32 `protobuf:"varint,3,opt,name=value,proto3" json:"value,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSetExposure) Reset() { + *x = ReqSetExposure{} + mi := &file_dwarf_proto_msgTypes[283] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSetExposure) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSetExposure) ProtoMessage() {} + +func (x *ReqSetExposure) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[283] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSetExposure.ProtoReflect.Descriptor instead. +func (*ReqSetExposure) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{283} +} + +func (x *ReqSetExposure) GetParamId() uint64 { + if x != nil { + return x.ParamId + } + return 0 +} + +func (x *ReqSetExposure) GetMode() int32 { + if x != nil { + return x.Mode + } + return 0 +} + +func (x *ReqSetExposure) GetValue() int32 { + if x != nil { + return x.Value + } + return 0 +} + +// source: param +type ParamReqSetGain struct { + state protoimpl.MessageState `protogen:"open.v1"` + ParamId uint64 `protobuf:"varint,1,opt,name=param_id,json=paramId,proto3" json:"param_id,omitempty"` + Mode int32 `protobuf:"varint,2,opt,name=mode,proto3" json:"mode,omitempty"` + Value int32 `protobuf:"varint,3,opt,name=value,proto3" json:"value,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ParamReqSetGain) Reset() { + *x = ParamReqSetGain{} + mi := &file_dwarf_proto_msgTypes[284] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ParamReqSetGain) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ParamReqSetGain) ProtoMessage() {} + +func (x *ParamReqSetGain) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[284] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ParamReqSetGain.ProtoReflect.Descriptor instead. +func (*ParamReqSetGain) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{284} +} + +func (x *ParamReqSetGain) GetParamId() uint64 { + if x != nil { + return x.ParamId + } + return 0 +} + +func (x *ParamReqSetGain) GetMode() int32 { + if x != nil { + return x.Mode + } + return 0 +} + +func (x *ParamReqSetGain) GetValue() int32 { + if x != nil { + return x.Value + } + return 0 +} + +// source: param +type ReqSetWb struct { + state protoimpl.MessageState `protogen:"open.v1"` + ParamId uint64 `protobuf:"varint,1,opt,name=param_id,json=paramId,proto3" json:"param_id,omitempty"` + Mode int32 `protobuf:"varint,2,opt,name=mode,proto3" json:"mode,omitempty"` + Value int32 `protobuf:"varint,3,opt,name=value,proto3" json:"value,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSetWb) Reset() { + *x = ReqSetWb{} + mi := &file_dwarf_proto_msgTypes[285] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSetWb) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSetWb) ProtoMessage() {} + +func (x *ReqSetWb) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[285] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSetWb.ProtoReflect.Descriptor instead. +func (*ReqSetWb) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{285} +} + +func (x *ReqSetWb) GetParamId() uint64 { + if x != nil { + return x.ParamId + } + return 0 +} + +func (x *ReqSetWb) GetMode() int32 { + if x != nil { + return x.Mode + } + return 0 +} + +func (x *ReqSetWb) GetValue() int32 { + if x != nil { + return x.Value + } + return 0 +} + +// source: param +type ReqSetGeneralIntParam struct { + state protoimpl.MessageState `protogen:"open.v1"` + ParamId uint64 `protobuf:"varint,1,opt,name=param_id,json=paramId,proto3" json:"param_id,omitempty"` + Value int32 `protobuf:"varint,2,opt,name=value,proto3" json:"value,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSetGeneralIntParam) Reset() { + *x = ReqSetGeneralIntParam{} + mi := &file_dwarf_proto_msgTypes[286] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSetGeneralIntParam) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSetGeneralIntParam) ProtoMessage() {} + +func (x *ReqSetGeneralIntParam) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[286] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSetGeneralIntParam.ProtoReflect.Descriptor instead. +func (*ReqSetGeneralIntParam) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{286} +} + +func (x *ReqSetGeneralIntParam) GetParamId() uint64 { + if x != nil { + return x.ParamId + } + return 0 +} + +func (x *ReqSetGeneralIntParam) GetValue() int32 { + if x != nil { + return x.Value + } + return 0 +} + +// source: param +type ReqSetGeneralFloatParam struct { + state protoimpl.MessageState `protogen:"open.v1"` + ParamId uint64 `protobuf:"varint,1,opt,name=param_id,json=paramId,proto3" json:"param_id,omitempty"` + Value float32 `protobuf:"fixed32,2,opt,name=value,proto3" json:"value,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSetGeneralFloatParam) Reset() { + *x = ReqSetGeneralFloatParam{} + mi := &file_dwarf_proto_msgTypes[287] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSetGeneralFloatParam) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSetGeneralFloatParam) ProtoMessage() {} + +func (x *ReqSetGeneralFloatParam) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[287] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSetGeneralFloatParam.ProtoReflect.Descriptor instead. +func (*ReqSetGeneralFloatParam) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{287} +} + +func (x *ReqSetGeneralFloatParam) GetParamId() uint64 { + if x != nil { + return x.ParamId + } + return 0 +} + +func (x *ReqSetGeneralFloatParam) GetValue() float32 { + if x != nil { + return x.Value + } + return 0 +} + +// source: param +type ReqSetGeneralBoolParams struct { + state protoimpl.MessageState `protogen:"open.v1"` + ParamId uint64 `protobuf:"varint,1,opt,name=param_id,json=paramId,proto3" json:"param_id,omitempty"` + Value bool `protobuf:"varint,2,opt,name=value,proto3" json:"value,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSetGeneralBoolParams) Reset() { + *x = ReqSetGeneralBoolParams{} + mi := &file_dwarf_proto_msgTypes[288] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSetGeneralBoolParams) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSetGeneralBoolParams) ProtoMessage() {} + +func (x *ReqSetGeneralBoolParams) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[288] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSetGeneralBoolParams.ProtoReflect.Descriptor instead. +func (*ReqSetGeneralBoolParams) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{288} +} + +func (x *ReqSetGeneralBoolParams) GetParamId() uint64 { + if x != nil { + return x.ParamId + } + return 0 +} + +func (x *ReqSetGeneralBoolParams) GetValue() bool { + if x != nil { + return x.Value + } + return false +} + +// source: param +type ReqSetAutoParam struct { + state protoimpl.MessageState `protogen:"open.v1"` + CameraType int32 `protobuf:"varint,1,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + ShootingTech int32 `protobuf:"varint,2,opt,name=shooting_tech,json=shootingTech,proto3" json:"shooting_tech,omitempty"` + IsAuto bool `protobuf:"varint,3,opt,name=is_auto,json=isAuto,proto3" json:"is_auto,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSetAutoParam) Reset() { + *x = ReqSetAutoParam{} + mi := &file_dwarf_proto_msgTypes[289] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSetAutoParam) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSetAutoParam) ProtoMessage() {} + +func (x *ReqSetAutoParam) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[289] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSetAutoParam.ProtoReflect.Descriptor instead. +func (*ReqSetAutoParam) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{289} +} + +func (x *ReqSetAutoParam) GetCameraType() int32 { + if x != nil { + return x.CameraType + } + return 0 +} + +func (x *ReqSetAutoParam) GetShootingTech() int32 { + if x != nil { + return x.ShootingTech + } + return 0 +} + +func (x *ReqSetAutoParam) GetIsAuto() bool { + if x != nil { + return x.IsAuto + } + return false +} + +// source: param +type ResSetAutoParam struct { + state protoimpl.MessageState `protogen:"open.v1"` + ShootingMode int32 `protobuf:"varint,1,opt,name=shooting_mode,json=shootingMode,proto3" json:"shooting_mode,omitempty"` + CameraType int32 `protobuf:"varint,2,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + ShootingTech int32 `protobuf:"varint,3,opt,name=shooting_tech,json=shootingTech,proto3" json:"shooting_tech,omitempty"` + IsAuto bool `protobuf:"varint,4,opt,name=is_auto,json=isAuto,proto3" json:"is_auto,omitempty"` + UpdateAll bool `protobuf:"varint,5,opt,name=update_all,json=updateAll,proto3" json:"update_all,omitempty"` + Code int32 `protobuf:"varint,6,opt,name=code,proto3" json:"code,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResSetAutoParam) Reset() { + *x = ResSetAutoParam{} + mi := &file_dwarf_proto_msgTypes[290] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResSetAutoParam) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResSetAutoParam) ProtoMessage() {} + +func (x *ResSetAutoParam) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[290] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResSetAutoParam.ProtoReflect.Descriptor instead. +func (*ResSetAutoParam) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{290} +} + +func (x *ResSetAutoParam) GetShootingMode() int32 { + if x != nil { + return x.ShootingMode + } + return 0 +} + +func (x *ResSetAutoParam) GetCameraType() int32 { + if x != nil { + return x.CameraType + } + return 0 +} + +func (x *ResSetAutoParam) GetShootingTech() int32 { + if x != nil { + return x.ShootingTech + } + return 0 +} + +func (x *ResSetAutoParam) GetIsAuto() bool { + if x != nil { + return x.IsAuto + } + return false +} + +func (x *ResSetAutoParam) GetUpdateAll() bool { + if x != nil { + return x.UpdateAll + } + return false +} + +func (x *ResSetAutoParam) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +// source: rgb +type ReqOpenRgb struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqOpenRgb) Reset() { + *x = ReqOpenRgb{} + mi := &file_dwarf_proto_msgTypes[291] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqOpenRgb) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqOpenRgb) ProtoMessage() {} + +func (x *ReqOpenRgb) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[291] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqOpenRgb.ProtoReflect.Descriptor instead. +func (*ReqOpenRgb) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{291} +} + +// source: rgb +type ReqCloseRgb struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqCloseRgb) Reset() { + *x = ReqCloseRgb{} + mi := &file_dwarf_proto_msgTypes[292] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqCloseRgb) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqCloseRgb) ProtoMessage() {} + +func (x *ReqCloseRgb) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[292] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqCloseRgb.ProtoReflect.Descriptor instead. +func (*ReqCloseRgb) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{292} +} + +// source: rgb +type ReqPowerDown struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqPowerDown) Reset() { + *x = ReqPowerDown{} + mi := &file_dwarf_proto_msgTypes[293] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqPowerDown) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqPowerDown) ProtoMessage() {} + +func (x *ReqPowerDown) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[293] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqPowerDown.ProtoReflect.Descriptor instead. +func (*ReqPowerDown) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{293} +} + +// source: rgb +type ReqOpenPowerInd struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqOpenPowerInd) Reset() { + *x = ReqOpenPowerInd{} + mi := &file_dwarf_proto_msgTypes[294] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqOpenPowerInd) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqOpenPowerInd) ProtoMessage() {} + +func (x *ReqOpenPowerInd) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[294] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqOpenPowerInd.ProtoReflect.Descriptor instead. +func (*ReqOpenPowerInd) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{294} +} + +// source: rgb +type ReqClosePowerInd struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqClosePowerInd) Reset() { + *x = ReqClosePowerInd{} + mi := &file_dwarf_proto_msgTypes[295] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqClosePowerInd) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqClosePowerInd) ProtoMessage() {} + +func (x *ReqClosePowerInd) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[295] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqClosePowerInd.ProtoReflect.Descriptor instead. +func (*ReqClosePowerInd) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{295} +} + +// source: rgb +type ReqReboot struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqReboot) Reset() { + *x = ReqReboot{} + mi := &file_dwarf_proto_msgTypes[296] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqReboot) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqReboot) ProtoMessage() {} + +func (x *ReqReboot) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[296] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqReboot.ProtoReflect.Descriptor instead. +func (*ReqReboot) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{296} +} + +// source: schedule +type ShootingTaskMsg struct { + state protoimpl.MessageState `protogen:"open.v1"` + ScheduleId string `protobuf:"bytes,1,opt,name=schedule_id,json=scheduleId,proto3" json:"schedule_id,omitempty"` + Params string `protobuf:"bytes,2,opt,name=params,proto3" json:"params,omitempty"` + State *ShootingTaskState `protobuf:"bytes,3,opt,name=state,proto3" json:"state,omitempty"` + Code int32 `protobuf:"varint,4,opt,name=code,proto3" json:"code,omitempty"` + CreatedTime int64 `protobuf:"varint,5,opt,name=created_time,json=createdTime,proto3" json:"created_time,omitempty"` + UpdatedTime int64 `protobuf:"varint,6,opt,name=updated_time,json=updatedTime,proto3" json:"updated_time,omitempty"` + ScheduleTaskId string `protobuf:"bytes,7,opt,name=schedule_task_id,json=scheduleTaskId,proto3" json:"schedule_task_id,omitempty"` + ParamMode int32 `protobuf:"varint,8,opt,name=param_mode,json=paramMode,proto3" json:"param_mode,omitempty"` + ParamVersion int32 `protobuf:"varint,9,opt,name=param_version,json=paramVersion,proto3" json:"param_version,omitempty"` + CreateFrom int32 `protobuf:"varint,10,opt,name=create_from,json=createFrom,proto3" json:"create_from,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ShootingTaskMsg) Reset() { + *x = ShootingTaskMsg{} + mi := &file_dwarf_proto_msgTypes[297] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ShootingTaskMsg) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ShootingTaskMsg) ProtoMessage() {} + +func (x *ShootingTaskMsg) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[297] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ShootingTaskMsg.ProtoReflect.Descriptor instead. +func (*ShootingTaskMsg) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{297} +} + +func (x *ShootingTaskMsg) GetScheduleId() string { + if x != nil { + return x.ScheduleId + } + return "" +} + +func (x *ShootingTaskMsg) GetParams() string { + if x != nil { + return x.Params + } + return "" +} + +func (x *ShootingTaskMsg) GetState() *ShootingTaskState { + if x != nil { + return x.State + } + return nil +} + +func (x *ShootingTaskMsg) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ShootingTaskMsg) GetCreatedTime() int64 { + if x != nil { + return x.CreatedTime + } + return 0 +} + +func (x *ShootingTaskMsg) GetUpdatedTime() int64 { + if x != nil { + return x.UpdatedTime + } + return 0 +} + +func (x *ShootingTaskMsg) GetScheduleTaskId() string { + if x != nil { + return x.ScheduleTaskId + } + return "" +} + +func (x *ShootingTaskMsg) GetParamMode() int32 { + if x != nil { + return x.ParamMode + } + return 0 +} + +func (x *ShootingTaskMsg) GetParamVersion() int32 { + if x != nil { + return x.ParamVersion + } + return 0 +} + +func (x *ShootingTaskMsg) GetCreateFrom() int32 { + if x != nil { + return x.CreateFrom + } + return 0 +} + +// source: schedule +type ShootingScheduleMsg struct { + state protoimpl.MessageState `protogen:"open.v1"` + ScheduleId string `protobuf:"bytes,1,opt,name=schedule_id,json=scheduleId,proto3" json:"schedule_id,omitempty"` + ScheduleName string `protobuf:"bytes,2,opt,name=schedule_name,json=scheduleName,proto3" json:"schedule_name,omitempty"` + DeviceId int32 `protobuf:"varint,3,opt,name=device_id,json=deviceId,proto3" json:"device_id,omitempty"` + MacAddress string `protobuf:"bytes,4,opt,name=mac_address,json=macAddress,proto3" json:"mac_address,omitempty"` + StartTime int64 `protobuf:"varint,5,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"` + EndTime int64 `protobuf:"varint,6,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"` + Result ShootingScheduleResult `protobuf:"varint,7,opt,name=result,proto3,enum=ShootingScheduleResult" json:"result,omitempty"` + CreatedTime int64 `protobuf:"varint,8,opt,name=created_time,json=createdTime,proto3" json:"created_time,omitempty"` + UpdatedTime int64 `protobuf:"varint,9,opt,name=updated_time,json=updatedTime,proto3" json:"updated_time,omitempty"` + State ShootingScheduleState `protobuf:"varint,10,opt,name=state,proto3,enum=ShootingScheduleState" json:"state,omitempty"` + Lock int32 `protobuf:"varint,11,opt,name=lock,proto3" json:"lock,omitempty"` + Password string `protobuf:"bytes,12,opt,name=password,proto3" json:"password,omitempty"` + ShootingTasks []*ShootingTaskMsg `protobuf:"bytes,13,rep,name=shooting_tasks,json=shootingTasks,proto3" json:"shooting_tasks,omitempty"` + ParamMode int32 `protobuf:"varint,14,opt,name=param_mode,json=paramMode,proto3" json:"param_mode,omitempty"` + ParamVersion int32 `protobuf:"varint,15,opt,name=param_version,json=paramVersion,proto3" json:"param_version,omitempty"` + Params string `protobuf:"bytes,16,opt,name=params,proto3" json:"params,omitempty"` + ScheduleTime int64 `protobuf:"varint,17,opt,name=schedule_time,json=scheduleTime,proto3" json:"schedule_time,omitempty"` + SyncState ShootingScheduleSyncState `protobuf:"varint,18,opt,name=sync_state,json=syncState,proto3,enum=ShootingScheduleSyncState" json:"sync_state,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ShootingScheduleMsg) Reset() { + *x = ShootingScheduleMsg{} + mi := &file_dwarf_proto_msgTypes[298] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ShootingScheduleMsg) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ShootingScheduleMsg) ProtoMessage() {} + +func (x *ShootingScheduleMsg) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[298] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ShootingScheduleMsg.ProtoReflect.Descriptor instead. +func (*ShootingScheduleMsg) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{298} +} + +func (x *ShootingScheduleMsg) GetScheduleId() string { + if x != nil { + return x.ScheduleId + } + return "" +} + +func (x *ShootingScheduleMsg) GetScheduleName() string { + if x != nil { + return x.ScheduleName + } + return "" +} + +func (x *ShootingScheduleMsg) GetDeviceId() int32 { + if x != nil { + return x.DeviceId + } + return 0 +} + +func (x *ShootingScheduleMsg) GetMacAddress() string { + if x != nil { + return x.MacAddress + } + return "" +} + +func (x *ShootingScheduleMsg) GetStartTime() int64 { + if x != nil { + return x.StartTime + } + return 0 +} + +func (x *ShootingScheduleMsg) GetEndTime() int64 { + if x != nil { + return x.EndTime + } + return 0 +} + +func (x *ShootingScheduleMsg) GetResult() ShootingScheduleResult { + if x != nil { + return x.Result + } + return ShootingScheduleResult_SHOOTING_SCHEDULE_RESULT_PENDING_START +} + +func (x *ShootingScheduleMsg) GetCreatedTime() int64 { + if x != nil { + return x.CreatedTime + } + return 0 +} + +func (x *ShootingScheduleMsg) GetUpdatedTime() int64 { + if x != nil { + return x.UpdatedTime + } + return 0 +} + +func (x *ShootingScheduleMsg) GetState() ShootingScheduleState { + if x != nil { + return x.State + } + return ShootingScheduleState_SHOOTING_SCHEDULE_STATE_INITIALIZED +} + +func (x *ShootingScheduleMsg) GetLock() int32 { + if x != nil { + return x.Lock + } + return 0 +} + +func (x *ShootingScheduleMsg) GetPassword() string { + if x != nil { + return x.Password + } + return "" +} + +func (x *ShootingScheduleMsg) GetShootingTasks() []*ShootingTaskMsg { + if x != nil { + return x.ShootingTasks + } + return nil +} + +func (x *ShootingScheduleMsg) GetParamMode() int32 { + if x != nil { + return x.ParamMode + } + return 0 +} + +func (x *ShootingScheduleMsg) GetParamVersion() int32 { + if x != nil { + return x.ParamVersion + } + return 0 +} + +func (x *ShootingScheduleMsg) GetParams() string { + if x != nil { + return x.Params + } + return "" +} + +func (x *ShootingScheduleMsg) GetScheduleTime() int64 { + if x != nil { + return x.ScheduleTime + } + return 0 +} + +func (x *ShootingScheduleMsg) GetSyncState() ShootingScheduleSyncState { + if x != nil { + return x.SyncState + } + return ShootingScheduleSyncState_SHOOTING_SCHEDULE_SYNC_STATE_PENDING_SYNC +} + +// source: schedule +type ReqSyncShootingSchedule struct { + state protoimpl.MessageState `protogen:"open.v1"` + ShootingSchedule *ShootingScheduleMsg `protobuf:"bytes,1,opt,name=shooting_schedule,json=shootingSchedule,proto3" json:"shooting_schedule,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSyncShootingSchedule) Reset() { + *x = ReqSyncShootingSchedule{} + mi := &file_dwarf_proto_msgTypes[299] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSyncShootingSchedule) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSyncShootingSchedule) ProtoMessage() {} + +func (x *ReqSyncShootingSchedule) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[299] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSyncShootingSchedule.ProtoReflect.Descriptor instead. +func (*ReqSyncShootingSchedule) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{299} +} + +func (x *ReqSyncShootingSchedule) GetShootingSchedule() *ShootingScheduleMsg { + if x != nil { + return x.ShootingSchedule + } + return nil +} + +// source: schedule +type ResSyncShootingSchedule struct { + state protoimpl.MessageState `protogen:"open.v1"` + ShootingSchedule *ShootingScheduleMsg `protobuf:"bytes,1,opt,name=shooting_schedule,json=shootingSchedule,proto3" json:"shooting_schedule,omitempty"` + TimeConflictScheduleIds []string `protobuf:"bytes,2,rep,name=time_conflict_schedule_ids,json=timeConflictScheduleIds,proto3" json:"time_conflict_schedule_ids,omitempty"` + Code int32 `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"` + CanReplace bool `protobuf:"varint,4,opt,name=can_replace,json=canReplace,proto3" json:"can_replace,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResSyncShootingSchedule) Reset() { + *x = ResSyncShootingSchedule{} + mi := &file_dwarf_proto_msgTypes[300] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResSyncShootingSchedule) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResSyncShootingSchedule) ProtoMessage() {} + +func (x *ResSyncShootingSchedule) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[300] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResSyncShootingSchedule.ProtoReflect.Descriptor instead. +func (*ResSyncShootingSchedule) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{300} +} + +func (x *ResSyncShootingSchedule) GetShootingSchedule() *ShootingScheduleMsg { + if x != nil { + return x.ShootingSchedule + } + return nil +} + +func (x *ResSyncShootingSchedule) GetTimeConflictScheduleIds() []string { + if x != nil { + return x.TimeConflictScheduleIds + } + return nil +} + +func (x *ResSyncShootingSchedule) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResSyncShootingSchedule) GetCanReplace() bool { + if x != nil { + return x.CanReplace + } + return false +} + +// source: schedule +type ReqCancelShootingSchedule struct { + state protoimpl.MessageState `protogen:"open.v1"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Password string `protobuf:"bytes,2,opt,name=password,proto3" json:"password,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqCancelShootingSchedule) Reset() { + *x = ReqCancelShootingSchedule{} + mi := &file_dwarf_proto_msgTypes[301] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqCancelShootingSchedule) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqCancelShootingSchedule) ProtoMessage() {} + +func (x *ReqCancelShootingSchedule) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[301] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqCancelShootingSchedule.ProtoReflect.Descriptor instead. +func (*ReqCancelShootingSchedule) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{301} +} + +func (x *ReqCancelShootingSchedule) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *ReqCancelShootingSchedule) GetPassword() string { + if x != nil { + return x.Password + } + return "" +} + +// source: schedule +type ResCancelShootingSchedule struct { + state protoimpl.MessageState `protogen:"open.v1"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Code int32 `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResCancelShootingSchedule) Reset() { + *x = ResCancelShootingSchedule{} + mi := &file_dwarf_proto_msgTypes[302] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResCancelShootingSchedule) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResCancelShootingSchedule) ProtoMessage() {} + +func (x *ResCancelShootingSchedule) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[302] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResCancelShootingSchedule.ProtoReflect.Descriptor instead. +func (*ResCancelShootingSchedule) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{302} +} + +func (x *ResCancelShootingSchedule) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *ResCancelShootingSchedule) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +// source: schedule +type ReqGetAllShootingSchedule struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGetAllShootingSchedule) Reset() { + *x = ReqGetAllShootingSchedule{} + mi := &file_dwarf_proto_msgTypes[303] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGetAllShootingSchedule) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGetAllShootingSchedule) ProtoMessage() {} + +func (x *ReqGetAllShootingSchedule) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[303] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGetAllShootingSchedule.ProtoReflect.Descriptor instead. +func (*ReqGetAllShootingSchedule) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{303} +} + +// source: schedule +type ResGetAllShootingSchedule struct { + state protoimpl.MessageState `protogen:"open.v1"` + ShootingSchedule []*ShootingScheduleMsg `protobuf:"bytes,1,rep,name=shooting_schedule,json=shootingSchedule,proto3" json:"shooting_schedule,omitempty"` + Code int32 `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResGetAllShootingSchedule) Reset() { + *x = ResGetAllShootingSchedule{} + mi := &file_dwarf_proto_msgTypes[304] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResGetAllShootingSchedule) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResGetAllShootingSchedule) ProtoMessage() {} + +func (x *ResGetAllShootingSchedule) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[304] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResGetAllShootingSchedule.ProtoReflect.Descriptor instead. +func (*ResGetAllShootingSchedule) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{304} +} + +func (x *ResGetAllShootingSchedule) GetShootingSchedule() []*ShootingScheduleMsg { + if x != nil { + return x.ShootingSchedule + } + return nil +} + +func (x *ResGetAllShootingSchedule) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +// source: schedule +type ReqGetShootingScheduleById struct { + state protoimpl.MessageState `protogen:"open.v1"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGetShootingScheduleById) Reset() { + *x = ReqGetShootingScheduleById{} + mi := &file_dwarf_proto_msgTypes[305] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGetShootingScheduleById) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGetShootingScheduleById) ProtoMessage() {} + +func (x *ReqGetShootingScheduleById) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[305] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGetShootingScheduleById.ProtoReflect.Descriptor instead. +func (*ReqGetShootingScheduleById) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{305} +} + +func (x *ReqGetShootingScheduleById) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +// source: schedule +type ResGetShootingScheduleById struct { + state protoimpl.MessageState `protogen:"open.v1"` + ShootingSchedule *ShootingScheduleMsg `protobuf:"bytes,1,opt,name=shooting_schedule,json=shootingSchedule,proto3" json:"shooting_schedule,omitempty"` + Code int32 `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResGetShootingScheduleById) Reset() { + *x = ResGetShootingScheduleById{} + mi := &file_dwarf_proto_msgTypes[306] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResGetShootingScheduleById) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResGetShootingScheduleById) ProtoMessage() {} + +func (x *ResGetShootingScheduleById) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[306] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResGetShootingScheduleById.ProtoReflect.Descriptor instead. +func (*ResGetShootingScheduleById) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{306} +} + +func (x *ResGetShootingScheduleById) GetShootingSchedule() *ShootingScheduleMsg { + if x != nil { + return x.ShootingSchedule + } + return nil +} + +func (x *ResGetShootingScheduleById) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +// source: schedule +type ReqGetShootingTaskById struct { + state protoimpl.MessageState `protogen:"open.v1"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGetShootingTaskById) Reset() { + *x = ReqGetShootingTaskById{} + mi := &file_dwarf_proto_msgTypes[307] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGetShootingTaskById) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGetShootingTaskById) ProtoMessage() {} + +func (x *ReqGetShootingTaskById) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[307] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGetShootingTaskById.ProtoReflect.Descriptor instead. +func (*ReqGetShootingTaskById) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{307} +} + +func (x *ReqGetShootingTaskById) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +// source: schedule +type ResGetShootingTaskById struct { + state protoimpl.MessageState `protogen:"open.v1"` + ShootingTask *ShootingTaskMsg `protobuf:"bytes,1,opt,name=shooting_task,json=shootingTask,proto3" json:"shooting_task,omitempty"` + Code int32 `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResGetShootingTaskById) Reset() { + *x = ResGetShootingTaskById{} + mi := &file_dwarf_proto_msgTypes[308] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResGetShootingTaskById) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResGetShootingTaskById) ProtoMessage() {} + +func (x *ResGetShootingTaskById) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[308] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResGetShootingTaskById.ProtoReflect.Descriptor instead. +func (*ResGetShootingTaskById) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{308} +} + +func (x *ResGetShootingTaskById) GetShootingTask() *ShootingTaskMsg { + if x != nil { + return x.ShootingTask + } + return nil +} + +func (x *ResGetShootingTaskById) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +// source: schedule +type ReqReplaceShootingSchedule struct { + state protoimpl.MessageState `protogen:"open.v1"` + ShootingSchedule *ShootingScheduleMsg `protobuf:"bytes,1,opt,name=shooting_schedule,json=shootingSchedule,proto3" json:"shooting_schedule,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqReplaceShootingSchedule) Reset() { + *x = ReqReplaceShootingSchedule{} + mi := &file_dwarf_proto_msgTypes[309] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqReplaceShootingSchedule) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqReplaceShootingSchedule) ProtoMessage() {} + +func (x *ReqReplaceShootingSchedule) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[309] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqReplaceShootingSchedule.ProtoReflect.Descriptor instead. +func (*ReqReplaceShootingSchedule) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{309} +} + +func (x *ReqReplaceShootingSchedule) GetShootingSchedule() *ShootingScheduleMsg { + if x != nil { + return x.ShootingSchedule + } + return nil +} + +// source: schedule +type ResReplaceShootingSchedule struct { + state protoimpl.MessageState `protogen:"open.v1"` + ShootingSchedule *ShootingScheduleMsg `protobuf:"bytes,1,opt,name=shooting_schedule,json=shootingSchedule,proto3" json:"shooting_schedule,omitempty"` + ReplacedShootingSchedule []*ShootingScheduleMsg `protobuf:"bytes,2,rep,name=replaced_shooting_schedule,json=replacedShootingSchedule,proto3" json:"replaced_shooting_schedule,omitempty"` + Code int32 `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResReplaceShootingSchedule) Reset() { + *x = ResReplaceShootingSchedule{} + mi := &file_dwarf_proto_msgTypes[310] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResReplaceShootingSchedule) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResReplaceShootingSchedule) ProtoMessage() {} + +func (x *ResReplaceShootingSchedule) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[310] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResReplaceShootingSchedule.ProtoReflect.Descriptor instead. +func (*ResReplaceShootingSchedule) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{310} +} + +func (x *ResReplaceShootingSchedule) GetShootingSchedule() *ShootingScheduleMsg { + if x != nil { + return x.ShootingSchedule + } + return nil +} + +func (x *ResReplaceShootingSchedule) GetReplacedShootingSchedule() []*ShootingScheduleMsg { + if x != nil { + return x.ReplacedShootingSchedule + } + return nil +} + +func (x *ResReplaceShootingSchedule) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +// source: schedule +type ReqUnlockShootingSchedule struct { + state protoimpl.MessageState `protogen:"open.v1"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Password string `protobuf:"bytes,2,opt,name=password,proto3" json:"password,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqUnlockShootingSchedule) Reset() { + *x = ReqUnlockShootingSchedule{} + mi := &file_dwarf_proto_msgTypes[311] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqUnlockShootingSchedule) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqUnlockShootingSchedule) ProtoMessage() {} + +func (x *ReqUnlockShootingSchedule) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[311] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqUnlockShootingSchedule.ProtoReflect.Descriptor instead. +func (*ReqUnlockShootingSchedule) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{311} +} + +func (x *ReqUnlockShootingSchedule) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *ReqUnlockShootingSchedule) GetPassword() string { + if x != nil { + return x.Password + } + return "" +} + +// source: schedule +type ResUnlockShootingSchedule struct { + state protoimpl.MessageState `protogen:"open.v1"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Code int32 `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResUnlockShootingSchedule) Reset() { + *x = ResUnlockShootingSchedule{} + mi := &file_dwarf_proto_msgTypes[312] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResUnlockShootingSchedule) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResUnlockShootingSchedule) ProtoMessage() {} + +func (x *ResUnlockShootingSchedule) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[312] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResUnlockShootingSchedule.ProtoReflect.Descriptor instead. +func (*ResUnlockShootingSchedule) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{312} +} + +func (x *ResUnlockShootingSchedule) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *ResUnlockShootingSchedule) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +// source: schedule +type ReqLockShootingSchedule struct { + state protoimpl.MessageState `protogen:"open.v1"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Password string `protobuf:"bytes,2,opt,name=password,proto3" json:"password,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqLockShootingSchedule) Reset() { + *x = ReqLockShootingSchedule{} + mi := &file_dwarf_proto_msgTypes[313] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqLockShootingSchedule) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqLockShootingSchedule) ProtoMessage() {} + +func (x *ReqLockShootingSchedule) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[313] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqLockShootingSchedule.ProtoReflect.Descriptor instead. +func (*ReqLockShootingSchedule) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{313} +} + +func (x *ReqLockShootingSchedule) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *ReqLockShootingSchedule) GetPassword() string { + if x != nil { + return x.Password + } + return "" +} + +// source: schedule +type ResLockShootingSchedule struct { + state protoimpl.MessageState `protogen:"open.v1"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Password string `protobuf:"bytes,2,opt,name=password,proto3" json:"password,omitempty"` + Code int32 `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResLockShootingSchedule) Reset() { + *x = ResLockShootingSchedule{} + mi := &file_dwarf_proto_msgTypes[314] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResLockShootingSchedule) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResLockShootingSchedule) ProtoMessage() {} + +func (x *ResLockShootingSchedule) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[314] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResLockShootingSchedule.ProtoReflect.Descriptor instead. +func (*ResLockShootingSchedule) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{314} +} + +func (x *ResLockShootingSchedule) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *ResLockShootingSchedule) GetPassword() string { + if x != nil { + return x.Password + } + return "" +} + +func (x *ResLockShootingSchedule) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +// source: schedule +type ReqDeleteShootingSchedule struct { + state protoimpl.MessageState `protogen:"open.v1"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Password string `protobuf:"bytes,2,opt,name=password,proto3" json:"password,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqDeleteShootingSchedule) Reset() { + *x = ReqDeleteShootingSchedule{} + mi := &file_dwarf_proto_msgTypes[315] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqDeleteShootingSchedule) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqDeleteShootingSchedule) ProtoMessage() {} + +func (x *ReqDeleteShootingSchedule) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[315] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqDeleteShootingSchedule.ProtoReflect.Descriptor instead. +func (*ReqDeleteShootingSchedule) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{315} +} + +func (x *ReqDeleteShootingSchedule) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *ReqDeleteShootingSchedule) GetPassword() string { + if x != nil { + return x.Password + } + return "" +} + +// source: schedule +type ResDeleteShootingSchedule struct { + state protoimpl.MessageState `protogen:"open.v1"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Code int32 `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResDeleteShootingSchedule) Reset() { + *x = ResDeleteShootingSchedule{} + mi := &file_dwarf_proto_msgTypes[316] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResDeleteShootingSchedule) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResDeleteShootingSchedule) ProtoMessage() {} + +func (x *ResDeleteShootingSchedule) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[316] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResDeleteShootingSchedule.ProtoReflect.Descriptor instead. +func (*ResDeleteShootingSchedule) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{316} +} + +func (x *ResDeleteShootingSchedule) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *ResDeleteShootingSchedule) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +// source: system +type ReqSetTime struct { + state protoimpl.MessageState `protogen:"open.v1"` + Timestamp uint64 `protobuf:"varint,1,opt,name=timestamp,proto3" json:"timestamp,omitempty"` + TimezoneOffset float64 `protobuf:"fixed64,2,opt,name=timezone_offset,json=timezoneOffset,proto3" json:"timezone_offset,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSetTime) Reset() { + *x = ReqSetTime{} + mi := &file_dwarf_proto_msgTypes[317] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSetTime) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSetTime) ProtoMessage() {} + +func (x *ReqSetTime) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[317] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSetTime.ProtoReflect.Descriptor instead. +func (*ReqSetTime) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{317} +} + +func (x *ReqSetTime) GetTimestamp() uint64 { + if x != nil { + return x.Timestamp + } + return 0 +} + +func (x *ReqSetTime) GetTimezoneOffset() float64 { + if x != nil { + return x.TimezoneOffset + } + return 0 +} + +// source: system +type ReqSetTimezone struct { + state protoimpl.MessageState `protogen:"open.v1"` + Timezone string `protobuf:"bytes,1,opt,name=timezone,proto3" json:"timezone,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSetTimezone) Reset() { + *x = ReqSetTimezone{} + mi := &file_dwarf_proto_msgTypes[318] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSetTimezone) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSetTimezone) ProtoMessage() {} + +func (x *ReqSetTimezone) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[318] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSetTimezone.ProtoReflect.Descriptor instead. +func (*ReqSetTimezone) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{318} +} + +func (x *ReqSetTimezone) GetTimezone() string { + if x != nil { + return x.Timezone + } + return "" +} + +// source: system +type ReqSetMtpMode struct { + state protoimpl.MessageState `protogen:"open.v1"` + Mode int32 `protobuf:"varint,1,opt,name=mode,proto3" json:"mode,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSetMtpMode) Reset() { + *x = ReqSetMtpMode{} + mi := &file_dwarf_proto_msgTypes[319] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSetMtpMode) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSetMtpMode) ProtoMessage() {} + +func (x *ReqSetMtpMode) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[319] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSetMtpMode.ProtoReflect.Descriptor instead. +func (*ReqSetMtpMode) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{319} +} + +func (x *ReqSetMtpMode) GetMode() int32 { + if x != nil { + return x.Mode + } + return 0 +} + +// source: system +type ReqSetCpuMode struct { + state protoimpl.MessageState `protogen:"open.v1"` + Mode int32 `protobuf:"varint,1,opt,name=mode,proto3" json:"mode,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSetCpuMode) Reset() { + *x = ReqSetCpuMode{} + mi := &file_dwarf_proto_msgTypes[320] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSetCpuMode) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSetCpuMode) ProtoMessage() {} + +func (x *ReqSetCpuMode) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[320] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSetCpuMode.ProtoReflect.Descriptor instead. +func (*ReqSetCpuMode) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{320} +} + +func (x *ReqSetCpuMode) GetMode() int32 { + if x != nil { + return x.Mode + } + return 0 +} + +// source: system +type ReqsetMasterLock struct { + state protoimpl.MessageState `protogen:"open.v1"` + Lock bool `protobuf:"varint,1,opt,name=lock,proto3" json:"lock,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqsetMasterLock) Reset() { + *x = ReqsetMasterLock{} + mi := &file_dwarf_proto_msgTypes[321] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqsetMasterLock) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqsetMasterLock) ProtoMessage() {} + +func (x *ReqsetMasterLock) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[321] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqsetMasterLock.ProtoReflect.Descriptor instead. +func (*ReqsetMasterLock) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{321} +} + +func (x *ReqsetMasterLock) GetLock() bool { + if x != nil { + return x.Lock + } + return false +} + +// source: system +type ReqGetDeviceActivateInfo struct { + state protoimpl.MessageState `protogen:"open.v1"` + Issuer int32 `protobuf:"varint,1,opt,name=issuer,proto3" json:"issuer,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGetDeviceActivateInfo) Reset() { + *x = ReqGetDeviceActivateInfo{} + mi := &file_dwarf_proto_msgTypes[322] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGetDeviceActivateInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGetDeviceActivateInfo) ProtoMessage() {} + +func (x *ReqGetDeviceActivateInfo) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[322] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGetDeviceActivateInfo.ProtoReflect.Descriptor instead. +func (*ReqGetDeviceActivateInfo) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{322} +} + +func (x *ReqGetDeviceActivateInfo) GetIssuer() int32 { + if x != nil { + return x.Issuer + } + return 0 +} + +// source: system +type ResDeviceActivateInfo struct { + state protoimpl.MessageState `protogen:"open.v1"` + ActivateState int32 `protobuf:"varint,1,opt,name=activate_state,json=activateState,proto3" json:"activate_state,omitempty"` + ActivateProcessState int32 `protobuf:"varint,2,opt,name=activate_process_state,json=activateProcessState,proto3" json:"activate_process_state,omitempty"` + RequestParam string `protobuf:"bytes,3,opt,name=request_param,json=requestParam,proto3" json:"request_param,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResDeviceActivateInfo) Reset() { + *x = ResDeviceActivateInfo{} + mi := &file_dwarf_proto_msgTypes[323] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResDeviceActivateInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResDeviceActivateInfo) ProtoMessage() {} + +func (x *ResDeviceActivateInfo) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[323] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResDeviceActivateInfo.ProtoReflect.Descriptor instead. +func (*ResDeviceActivateInfo) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{323} +} + +func (x *ResDeviceActivateInfo) GetActivateState() int32 { + if x != nil { + return x.ActivateState + } + return 0 +} + +func (x *ResDeviceActivateInfo) GetActivateProcessState() int32 { + if x != nil { + return x.ActivateProcessState + } + return 0 +} + +func (x *ResDeviceActivateInfo) GetRequestParam() string { + if x != nil { + return x.RequestParam + } + return "" +} + +// source: system +type ReqDeviceActivateWriteFile struct { + state protoimpl.MessageState `protogen:"open.v1"` + RequestParam string `protobuf:"bytes,1,opt,name=request_param,json=requestParam,proto3" json:"request_param,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqDeviceActivateWriteFile) Reset() { + *x = ReqDeviceActivateWriteFile{} + mi := &file_dwarf_proto_msgTypes[324] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqDeviceActivateWriteFile) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqDeviceActivateWriteFile) ProtoMessage() {} + +func (x *ReqDeviceActivateWriteFile) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[324] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqDeviceActivateWriteFile.ProtoReflect.Descriptor instead. +func (*ReqDeviceActivateWriteFile) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{324} +} + +func (x *ReqDeviceActivateWriteFile) GetRequestParam() string { + if x != nil { + return x.RequestParam + } + return "" +} + +// source: system +type ResDeviceActivateWriteFile struct { + state protoimpl.MessageState `protogen:"open.v1"` + Code int32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"` + RequestParam string `protobuf:"bytes,2,opt,name=request_param,json=requestParam,proto3" json:"request_param,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResDeviceActivateWriteFile) Reset() { + *x = ResDeviceActivateWriteFile{} + mi := &file_dwarf_proto_msgTypes[325] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResDeviceActivateWriteFile) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResDeviceActivateWriteFile) ProtoMessage() {} + +func (x *ResDeviceActivateWriteFile) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[325] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResDeviceActivateWriteFile.ProtoReflect.Descriptor instead. +func (*ResDeviceActivateWriteFile) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{325} +} + +func (x *ResDeviceActivateWriteFile) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResDeviceActivateWriteFile) GetRequestParam() string { + if x != nil { + return x.RequestParam + } + return "" +} + +// source: system +type ReqDeviceActivateSuccessfull struct { + state protoimpl.MessageState `protogen:"open.v1"` + RequestParam string `protobuf:"bytes,1,opt,name=request_param,json=requestParam,proto3" json:"request_param,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqDeviceActivateSuccessfull) Reset() { + *x = ReqDeviceActivateSuccessfull{} + mi := &file_dwarf_proto_msgTypes[326] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqDeviceActivateSuccessfull) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqDeviceActivateSuccessfull) ProtoMessage() {} + +func (x *ReqDeviceActivateSuccessfull) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[326] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqDeviceActivateSuccessfull.ProtoReflect.Descriptor instead. +func (*ReqDeviceActivateSuccessfull) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{326} +} + +func (x *ReqDeviceActivateSuccessfull) GetRequestParam() string { + if x != nil { + return x.RequestParam + } + return "" +} + +// source: system +type ResDeviceActivateSuccessfull struct { + state protoimpl.MessageState `protogen:"open.v1"` + Code int32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"` + ActivateState int32 `protobuf:"varint,2,opt,name=activate_state,json=activateState,proto3" json:"activate_state,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResDeviceActivateSuccessfull) Reset() { + *x = ResDeviceActivateSuccessfull{} + mi := &file_dwarf_proto_msgTypes[327] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResDeviceActivateSuccessfull) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResDeviceActivateSuccessfull) ProtoMessage() {} + +func (x *ResDeviceActivateSuccessfull) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[327] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResDeviceActivateSuccessfull.ProtoReflect.Descriptor instead. +func (*ResDeviceActivateSuccessfull) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{327} +} + +func (x *ResDeviceActivateSuccessfull) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResDeviceActivateSuccessfull) GetActivateState() int32 { + if x != nil { + return x.ActivateState + } + return 0 +} + +// source: system +type ReqDisableDeviceActivate struct { + state protoimpl.MessageState `protogen:"open.v1"` + RequestParam string `protobuf:"bytes,1,opt,name=request_param,json=requestParam,proto3" json:"request_param,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqDisableDeviceActivate) Reset() { + *x = ReqDisableDeviceActivate{} + mi := &file_dwarf_proto_msgTypes[328] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqDisableDeviceActivate) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqDisableDeviceActivate) ProtoMessage() {} + +func (x *ReqDisableDeviceActivate) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[328] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqDisableDeviceActivate.ProtoReflect.Descriptor instead. +func (*ReqDisableDeviceActivate) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{328} +} + +func (x *ReqDisableDeviceActivate) GetRequestParam() string { + if x != nil { + return x.RequestParam + } + return "" +} + +// source: system +type ResDisableDeviceActivate struct { + state protoimpl.MessageState `protogen:"open.v1"` + Code int32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"` + ActivateState int32 `protobuf:"varint,2,opt,name=activate_state,json=activateState,proto3" json:"activate_state,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResDisableDeviceActivate) Reset() { + *x = ResDisableDeviceActivate{} + mi := &file_dwarf_proto_msgTypes[329] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResDisableDeviceActivate) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResDisableDeviceActivate) ProtoMessage() {} + +func (x *ResDisableDeviceActivate) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[329] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResDisableDeviceActivate.ProtoReflect.Descriptor instead. +func (*ResDisableDeviceActivate) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{329} +} + +func (x *ResDisableDeviceActivate) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResDisableDeviceActivate) GetActivateState() int32 { + if x != nil { + return x.ActivateState + } + return 0 +} + +// source: system +type ReqSetLocation struct { + state protoimpl.MessageState `protogen:"open.v1"` + Latitude float64 `protobuf:"fixed64,1,opt,name=latitude,proto3" json:"latitude,omitempty"` + Longitude float64 `protobuf:"fixed64,2,opt,name=longitude,proto3" json:"longitude,omitempty"` + Altitude float64 `protobuf:"fixed64,3,opt,name=altitude,proto3" json:"altitude,omitempty"` + CountryRegion string `protobuf:"bytes,4,opt,name=country_region,json=countryRegion,proto3" json:"country_region,omitempty"` + Province string `protobuf:"bytes,5,opt,name=province,proto3" json:"province,omitempty"` + City string `protobuf:"bytes,6,opt,name=city,proto3" json:"city,omitempty"` + District string `protobuf:"bytes,7,opt,name=district,proto3" json:"district,omitempty"` + Enable bool `protobuf:"varint,8,opt,name=enable,proto3" json:"enable,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSetLocation) Reset() { + *x = ReqSetLocation{} + mi := &file_dwarf_proto_msgTypes[330] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSetLocation) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSetLocation) ProtoMessage() {} + +func (x *ReqSetLocation) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[330] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSetLocation.ProtoReflect.Descriptor instead. +func (*ReqSetLocation) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{330} +} + +func (x *ReqSetLocation) GetLatitude() float64 { + if x != nil { + return x.Latitude + } + return 0 +} + +func (x *ReqSetLocation) GetLongitude() float64 { + if x != nil { + return x.Longitude + } + return 0 +} + +func (x *ReqSetLocation) GetAltitude() float64 { + if x != nil { + return x.Altitude + } + return 0 +} + +func (x *ReqSetLocation) GetCountryRegion() string { + if x != nil { + return x.CountryRegion + } + return "" +} + +func (x *ReqSetLocation) GetProvince() string { + if x != nil { + return x.Province + } + return "" +} + +func (x *ReqSetLocation) GetCity() string { + if x != nil { + return x.City + } + return "" +} + +func (x *ReqSetLocation) GetDistrict() string { + if x != nil { + return x.District + } + return "" +} + +func (x *ReqSetLocation) GetEnable() bool { + if x != nil { + return x.Enable + } + return false +} + +// source: task_center +type TaskAttr struct { + state protoimpl.MessageState `protogen:"open.v1"` + ExclusiveMask int32 `protobuf:"varint,1,opt,name=exclusive_mask,json=exclusiveMask,proto3" json:"exclusive_mask,omitempty"` + Priority int32 `protobuf:"varint,2,opt,name=priority,proto3" json:"priority,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *TaskAttr) Reset() { + *x = TaskAttr{} + mi := &file_dwarf_proto_msgTypes[331] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *TaskAttr) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*TaskAttr) ProtoMessage() {} + +func (x *TaskAttr) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[331] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use TaskAttr.ProtoReflect.Descriptor instead. +func (*TaskAttr) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{331} +} + +func (x *TaskAttr) GetExclusiveMask() int32 { + if x != nil { + return x.ExclusiveMask + } + return 0 +} + +func (x *TaskAttr) GetPriority() int32 { + if x != nil { + return x.Priority + } + return 0 +} + +// source: task_center +type TaskState struct { + state protoimpl.MessageState `protogen:"open.v1"` + // oneof extendedState + BaseState OperationState `protobuf:"varint,1,opt,name=base_state,json=baseState,proto3,enum=OperationState" json:"base_state,omitempty"` + AstroExtendedState AstroState `protobuf:"varint,2,opt,name=astro_extended_state,json=astroExtendedState,proto3,enum=AstroState" json:"astro_extended_state,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *TaskState) Reset() { + *x = TaskState{} + mi := &file_dwarf_proto_msgTypes[332] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *TaskState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*TaskState) ProtoMessage() {} + +func (x *TaskState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[332] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use TaskState.ProtoReflect.Descriptor instead. +func (*TaskState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{332} +} + +func (x *TaskState) GetBaseState() OperationState { + if x != nil { + return x.BaseState + } + return OperationState_OPERATION_STATE_IDLE +} + +func (x *TaskState) GetAstroExtendedState() AstroState { + if x != nil { + return x.AstroExtendedState + } + return AstroState_ASTRO_STATE_IDLE +} + +// source: task_center +type TaskParam struct { + state protoimpl.MessageState `protogen:"open.v1"` + // oneof param + PanoramaUpload *PanoramaUploadParam `protobuf:"bytes,1,opt,name=panorama_upload,json=panoramaUpload,proto3" json:"panorama_upload,omitempty"` + MakeFitsThumbTaskParam *MakeFitsThumbTaskParam `protobuf:"bytes,2,opt,name=make_fits_thumb_task_param,json=makeFitsThumbTaskParam,proto3" json:"make_fits_thumb_task_param,omitempty"` + RepostprocessTaskParam *RepostprocessTaskParam `protobuf:"bytes,3,opt,name=repostprocess_task_param,json=repostprocessTaskParam,proto3" json:"repostprocess_task_param,omitempty"` + CaptureCaliFrameTaskParam *CaptureCaliFrameTaskParam `protobuf:"bytes,4,opt,name=capture_cali_frame_task_param,json=captureCaliFrameTaskParam,proto3" json:"capture_cali_frame_task_param,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *TaskParam) Reset() { + *x = TaskParam{} + mi := &file_dwarf_proto_msgTypes[333] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *TaskParam) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*TaskParam) ProtoMessage() {} + +func (x *TaskParam) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[333] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use TaskParam.ProtoReflect.Descriptor instead. +func (*TaskParam) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{333} +} + +func (x *TaskParam) GetPanoramaUpload() *PanoramaUploadParam { + if x != nil { + return x.PanoramaUpload + } + return nil +} + +func (x *TaskParam) GetMakeFitsThumbTaskParam() *MakeFitsThumbTaskParam { + if x != nil { + return x.MakeFitsThumbTaskParam + } + return nil +} + +func (x *TaskParam) GetRepostprocessTaskParam() *RepostprocessTaskParam { + if x != nil { + return x.RepostprocessTaskParam + } + return nil +} + +func (x *TaskParam) GetCaptureCaliFrameTaskParam() *CaptureCaliFrameTaskParam { + if x != nil { + return x.CaptureCaliFrameTaskParam + } + return nil +} + +// source: task_center +type ResNotifyTaskState struct { + state protoimpl.MessageState `protogen:"open.v1"` + TaskId TaskId `protobuf:"varint,1,opt,name=task_id,json=taskId,proto3,enum=TaskId" json:"task_id,omitempty"` + TaskAttr *TaskAttr `protobuf:"bytes,2,opt,name=task_attr,json=taskAttr,proto3" json:"task_attr,omitempty"` + State *TaskState `protobuf:"bytes,3,opt,name=state,proto3" json:"state,omitempty"` + Param *TaskParam `protobuf:"bytes,4,opt,name=param,proto3" json:"param,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResNotifyTaskState) Reset() { + *x = ResNotifyTaskState{} + mi := &file_dwarf_proto_msgTypes[334] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResNotifyTaskState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResNotifyTaskState) ProtoMessage() {} + +func (x *ResNotifyTaskState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[334] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResNotifyTaskState.ProtoReflect.Descriptor instead. +func (*ResNotifyTaskState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{334} +} + +func (x *ResNotifyTaskState) GetTaskId() TaskId { + if x != nil { + return x.TaskId + } + return TaskId_TASK_ID_IDLE +} + +func (x *ResNotifyTaskState) GetTaskAttr() *TaskAttr { + if x != nil { + return x.TaskAttr + } + return nil +} + +func (x *ResNotifyTaskState) GetState() *TaskState { + if x != nil { + return x.State + } + return nil +} + +func (x *ResNotifyTaskState) GetParam() *TaskParam { + if x != nil { + return x.Param + } + return nil +} + +// source: task_center +type ReqStartTask struct { + state protoimpl.MessageState `protogen:"open.v1"` + // oneof param + TaskId TaskId `protobuf:"varint,1,opt,name=task_id,json=taskId,proto3,enum=TaskId" json:"task_id,omitempty"` + ReqMakeFitsThumbParam *ReqStartMakeFitsThumb `protobuf:"bytes,2,opt,name=req_make_fits_thumb_param,json=reqMakeFitsThumbParam,proto3" json:"req_make_fits_thumb_param,omitempty"` + ReqRepostprocessParam *ReqStartRepostprocess `protobuf:"bytes,3,opt,name=req_repostprocess_param,json=reqRepostprocessParam,proto3" json:"req_repostprocess_param,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStartTask) Reset() { + *x = ReqStartTask{} + mi := &file_dwarf_proto_msgTypes[335] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStartTask) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStartTask) ProtoMessage() {} + +func (x *ReqStartTask) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[335] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStartTask.ProtoReflect.Descriptor instead. +func (*ReqStartTask) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{335} +} + +func (x *ReqStartTask) GetTaskId() TaskId { + if x != nil { + return x.TaskId + } + return TaskId_TASK_ID_IDLE +} + +func (x *ReqStartTask) GetReqMakeFitsThumbParam() *ReqStartMakeFitsThumb { + if x != nil { + return x.ReqMakeFitsThumbParam + } + return nil +} + +func (x *ReqStartTask) GetReqRepostprocessParam() *ReqStartRepostprocess { + if x != nil { + return x.ReqRepostprocessParam + } + return nil +} + +// source: task_center +type ReqStopTask struct { + state protoimpl.MessageState `protogen:"open.v1"` + TaskId TaskId `protobuf:"varint,1,opt,name=task_id,json=taskId,proto3,enum=TaskId" json:"task_id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStopTask) Reset() { + *x = ReqStopTask{} + mi := &file_dwarf_proto_msgTypes[336] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStopTask) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStopTask) ProtoMessage() {} + +func (x *ReqStopTask) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[336] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStopTask.ProtoReflect.Descriptor instead. +func (*ReqStopTask) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{336} +} + +func (x *ReqStopTask) GetTaskId() TaskId { + if x != nil { + return x.TaskId + } + return TaskId_TASK_ID_IDLE +} + +// source: task_center +type ResTaskCenter struct { + state protoimpl.MessageState `protogen:"open.v1"` + Code int32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"` + TaskId TaskId `protobuf:"varint,2,opt,name=task_id,json=taskId,proto3,enum=TaskId" json:"task_id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResTaskCenter) Reset() { + *x = ResTaskCenter{} + mi := &file_dwarf_proto_msgTypes[337] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResTaskCenter) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResTaskCenter) ProtoMessage() {} + +func (x *ResTaskCenter) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[337] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResTaskCenter.ProtoReflect.Descriptor instead. +func (*ResTaskCenter) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{337} +} + +func (x *ResTaskCenter) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResTaskCenter) GetTaskId() TaskId { + if x != nil { + return x.TaskId + } + return TaskId_TASK_ID_IDLE +} + +// source: task_center +type ClientParams struct { + state protoimpl.MessageState `protogen:"open.v1"` + EncodeType int32 `protobuf:"varint,1,opt,name=encode_type,json=encodeType,proto3" json:"encode_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ClientParams) Reset() { + *x = ClientParams{} + mi := &file_dwarf_proto_msgTypes[338] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ClientParams) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ClientParams) ProtoMessage() {} + +func (x *ClientParams) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[338] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ClientParams.ProtoReflect.Descriptor instead. +func (*ClientParams) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{338} +} + +func (x *ClientParams) GetEncodeType() int32 { + if x != nil { + return x.EncodeType + } + return 0 +} + +// source: task_center +type ReqEnterCamera struct { + state protoimpl.MessageState `protogen:"open.v1"` + ClientParam *ClientParams `protobuf:"bytes,3,opt,name=client_param,json=clientParam,proto3" json:"client_param,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqEnterCamera) Reset() { + *x = ReqEnterCamera{} + mi := &file_dwarf_proto_msgTypes[339] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqEnterCamera) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqEnterCamera) ProtoMessage() {} + +func (x *ReqEnterCamera) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[339] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqEnterCamera.ProtoReflect.Descriptor instead. +func (*ReqEnterCamera) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{339} +} + +func (x *ReqEnterCamera) GetClientParam() *ClientParams { + if x != nil { + return x.ClientParam + } + return nil +} + +// source: task_center +type ResEnterCamera struct { + state protoimpl.MessageState `protogen:"open.v1"` + Code int32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"` + ShootingModeId int32 `protobuf:"varint,2,opt,name=shooting_mode_id,json=shootingModeId,proto3" json:"shooting_mode_id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResEnterCamera) Reset() { + *x = ResEnterCamera{} + mi := &file_dwarf_proto_msgTypes[340] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResEnterCamera) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResEnterCamera) ProtoMessage() {} + +func (x *ResEnterCamera) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[340] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResEnterCamera.ProtoReflect.Descriptor instead. +func (*ResEnterCamera) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{340} +} + +func (x *ResEnterCamera) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResEnterCamera) GetShootingModeId() int32 { + if x != nil { + return x.ShootingModeId + } + return 0 +} + +// source: task_center +type ReqSwitchShootingMode struct { + state protoimpl.MessageState `protogen:"open.v1"` + Mode int32 `protobuf:"varint,1,opt,name=mode,proto3" json:"mode,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSwitchShootingMode) Reset() { + *x = ReqSwitchShootingMode{} + mi := &file_dwarf_proto_msgTypes[341] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSwitchShootingMode) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSwitchShootingMode) ProtoMessage() {} + +func (x *ReqSwitchShootingMode) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[341] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSwitchShootingMode.ProtoReflect.Descriptor instead. +func (*ReqSwitchShootingMode) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{341} +} + +func (x *ReqSwitchShootingMode) GetMode() int32 { + if x != nil { + return x.Mode + } + return 0 +} + +// source: task_center +type ResSwitchShootingMode struct { + state protoimpl.MessageState `protogen:"open.v1"` + Code int32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"` + ShootingModeId int32 `protobuf:"varint,2,opt,name=shooting_mode_id,json=shootingModeId,proto3" json:"shooting_mode_id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResSwitchShootingMode) Reset() { + *x = ResSwitchShootingMode{} + mi := &file_dwarf_proto_msgTypes[342] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResSwitchShootingMode) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResSwitchShootingMode) ProtoMessage() {} + +func (x *ResSwitchShootingMode) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[342] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResSwitchShootingMode.ProtoReflect.Descriptor instead. +func (*ResSwitchShootingMode) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{342} +} + +func (x *ResSwitchShootingMode) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResSwitchShootingMode) GetShootingModeId() int32 { + if x != nil { + return x.ShootingModeId + } + return 0 +} + +// source: task_center +type ReqSwitchShootingTech struct { + state protoimpl.MessageState `protogen:"open.v1"` + Tech int32 `protobuf:"varint,1,opt,name=tech,proto3" json:"tech,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqSwitchShootingTech) Reset() { + *x = ReqSwitchShootingTech{} + mi := &file_dwarf_proto_msgTypes[343] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqSwitchShootingTech) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqSwitchShootingTech) ProtoMessage() {} + +func (x *ReqSwitchShootingTech) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[343] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqSwitchShootingTech.ProtoReflect.Descriptor instead. +func (*ReqSwitchShootingTech) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{343} +} + +func (x *ReqSwitchShootingTech) GetTech() int32 { + if x != nil { + return x.Tech + } + return 0 +} + +// source: task_center +type ResSwitchShootingTech struct { + state protoimpl.MessageState `protogen:"open.v1"` + Code int32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"` + ShootingTechId int32 `protobuf:"varint,2,opt,name=shooting_tech_id,json=shootingTechId,proto3" json:"shooting_tech_id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResSwitchShootingTech) Reset() { + *x = ResSwitchShootingTech{} + mi := &file_dwarf_proto_msgTypes[344] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResSwitchShootingTech) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResSwitchShootingTech) ProtoMessage() {} + +func (x *ResSwitchShootingTech) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[344] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResSwitchShootingTech.ProtoReflect.Descriptor instead. +func (*ResSwitchShootingTech) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{344} +} + +func (x *ResSwitchShootingTech) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResSwitchShootingTech) GetShootingTechId() int32 { + if x != nil { + return x.ShootingTechId + } + return 0 +} + +// source: task_center +type ReqGetDeviceStateInfo struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqGetDeviceStateInfo) Reset() { + *x = ReqGetDeviceStateInfo{} + mi := &file_dwarf_proto_msgTypes[345] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGetDeviceStateInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGetDeviceStateInfo) ProtoMessage() {} + +func (x *ReqGetDeviceStateInfo) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[345] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGetDeviceStateInfo.ProtoReflect.Descriptor instead. +func (*ReqGetDeviceStateInfo) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{345} +} + +// source: task_center +type ExclusiveCameraState struct { + state protoimpl.MessageState `protogen:"open.v1"` + // oneof current_state + CaptureRawState *CaptureRawState `protobuf:"bytes,1,opt,name=capture_raw_state,json=captureRawState,proto3" json:"capture_raw_state,omitempty"` + PhotoState *PhotoState `protobuf:"bytes,2,opt,name=photo_state,json=photoState,proto3" json:"photo_state,omitempty"` + BurstState *BurstState `protobuf:"bytes,3,opt,name=burst_state,json=burstState,proto3" json:"burst_state,omitempty"` + RecordState *RecordState `protobuf:"bytes,4,opt,name=record_state,json=recordState,proto3" json:"record_state,omitempty"` + TimelapseState *TimeLapseState `protobuf:"bytes,5,opt,name=timelapse_state,json=timelapseState,proto3" json:"timelapse_state,omitempty"` + CaptureCaliFrameState *CaptureCaliFrameState `protobuf:"bytes,6,opt,name=capture_cali_frame_state,json=captureCaliFrameState,proto3" json:"capture_cali_frame_state,omitempty"` + PanoramaState *PanoramaState `protobuf:"bytes,7,opt,name=panorama_state,json=panoramaState,proto3" json:"panorama_state,omitempty"` + SentryState *SentryState `protobuf:"bytes,8,opt,name=sentry_state,json=sentryState,proto3" json:"sentry_state,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ExclusiveCameraState) Reset() { + *x = ExclusiveCameraState{} + mi := &file_dwarf_proto_msgTypes[346] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ExclusiveCameraState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ExclusiveCameraState) ProtoMessage() {} + +func (x *ExclusiveCameraState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[346] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ExclusiveCameraState.ProtoReflect.Descriptor instead. +func (*ExclusiveCameraState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{346} +} + +func (x *ExclusiveCameraState) GetCaptureRawState() *CaptureRawState { + if x != nil { + return x.CaptureRawState + } + return nil +} + +func (x *ExclusiveCameraState) GetPhotoState() *PhotoState { + if x != nil { + return x.PhotoState + } + return nil +} + +func (x *ExclusiveCameraState) GetBurstState() *BurstState { + if x != nil { + return x.BurstState + } + return nil +} + +func (x *ExclusiveCameraState) GetRecordState() *RecordState { + if x != nil { + return x.RecordState + } + return nil +} + +func (x *ExclusiveCameraState) GetTimelapseState() *TimeLapseState { + if x != nil { + return x.TimelapseState + } + return nil +} + +func (x *ExclusiveCameraState) GetCaptureCaliFrameState() *CaptureCaliFrameState { + if x != nil { + return x.CaptureCaliFrameState + } + return nil +} + +func (x *ExclusiveCameraState) GetPanoramaState() *PanoramaState { + if x != nil { + return x.PanoramaState + } + return nil +} + +func (x *ExclusiveCameraState) GetSentryState() *SentryState { + if x != nil { + return x.SentryState + } + return nil +} + +// source: task_center +type TeleCameraStateInfo struct { + state protoimpl.MessageState `protogen:"open.v1"` + // oneof _cmos_temperature + ExclusiveState *ExclusiveCameraState `protobuf:"bytes,1,opt,name=exclusive_state,json=exclusiveState,proto3" json:"exclusive_state,omitempty"` + StreamType *StreamType `protobuf:"bytes,2,opt,name=stream_type,json=streamType,proto3" json:"stream_type,omitempty"` + HFov float64 `protobuf:"fixed64,3,opt,name=h_fov,json=hFov,proto3" json:"h_fov,omitempty"` + VFov float64 `protobuf:"fixed64,4,opt,name=v_fov,json=vFov,proto3" json:"v_fov,omitempty"` + ResolutionWidth uint32 `protobuf:"varint,5,opt,name=resolution_width,json=resolutionWidth,proto3" json:"resolution_width,omitempty"` + ResolutionHeight uint32 `protobuf:"varint,6,opt,name=resolution_height,json=resolutionHeight,proto3" json:"resolution_height,omitempty"` + CmosTemperature *CmosTemperature `protobuf:"bytes,7,opt,name=cmos_temperature,json=cmosTemperature,proto3" json:"cmos_temperature,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *TeleCameraStateInfo) Reset() { + *x = TeleCameraStateInfo{} + mi := &file_dwarf_proto_msgTypes[347] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *TeleCameraStateInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*TeleCameraStateInfo) ProtoMessage() {} + +func (x *TeleCameraStateInfo) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[347] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use TeleCameraStateInfo.ProtoReflect.Descriptor instead. +func (*TeleCameraStateInfo) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{347} +} + +func (x *TeleCameraStateInfo) GetExclusiveState() *ExclusiveCameraState { + if x != nil { + return x.ExclusiveState + } + return nil +} + +func (x *TeleCameraStateInfo) GetStreamType() *StreamType { + if x != nil { + return x.StreamType + } + return nil +} + +func (x *TeleCameraStateInfo) GetHFov() float64 { + if x != nil { + return x.HFov + } + return 0 +} + +func (x *TeleCameraStateInfo) GetVFov() float64 { + if x != nil { + return x.VFov + } + return 0 +} + +func (x *TeleCameraStateInfo) GetResolutionWidth() uint32 { + if x != nil { + return x.ResolutionWidth + } + return 0 +} + +func (x *TeleCameraStateInfo) GetResolutionHeight() uint32 { + if x != nil { + return x.ResolutionHeight + } + return 0 +} + +func (x *TeleCameraStateInfo) GetCmosTemperature() *CmosTemperature { + if x != nil { + return x.CmosTemperature + } + return nil +} + +// source: task_center +type WideCameraStateInfo struct { + state protoimpl.MessageState `protogen:"open.v1"` + // oneof _cmos_temperature + ExclusiveState *ExclusiveCameraState `protobuf:"bytes,1,opt,name=exclusive_state,json=exclusiveState,proto3" json:"exclusive_state,omitempty"` + StreamType *StreamType `protobuf:"bytes,2,opt,name=stream_type,json=streamType,proto3" json:"stream_type,omitempty"` + HFov float64 `protobuf:"fixed64,3,opt,name=h_fov,json=hFov,proto3" json:"h_fov,omitempty"` + VFov float64 `protobuf:"fixed64,4,opt,name=v_fov,json=vFov,proto3" json:"v_fov,omitempty"` + ResolutionWidth uint32 `protobuf:"varint,5,opt,name=resolution_width,json=resolutionWidth,proto3" json:"resolution_width,omitempty"` + ResolutionHeight uint32 `protobuf:"varint,6,opt,name=resolution_height,json=resolutionHeight,proto3" json:"resolution_height,omitempty"` + CmosTemperature *CmosTemperature `protobuf:"bytes,7,opt,name=cmos_temperature,json=cmosTemperature,proto3" json:"cmos_temperature,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *WideCameraStateInfo) Reset() { + *x = WideCameraStateInfo{} + mi := &file_dwarf_proto_msgTypes[348] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *WideCameraStateInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*WideCameraStateInfo) ProtoMessage() {} + +func (x *WideCameraStateInfo) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[348] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use WideCameraStateInfo.ProtoReflect.Descriptor instead. +func (*WideCameraStateInfo) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{348} +} + +func (x *WideCameraStateInfo) GetExclusiveState() *ExclusiveCameraState { + if x != nil { + return x.ExclusiveState + } + return nil +} + +func (x *WideCameraStateInfo) GetStreamType() *StreamType { + if x != nil { + return x.StreamType + } + return nil +} + +func (x *WideCameraStateInfo) GetHFov() float64 { + if x != nil { + return x.HFov + } + return 0 +} + +func (x *WideCameraStateInfo) GetVFov() float64 { + if x != nil { + return x.VFov + } + return 0 +} + +func (x *WideCameraStateInfo) GetResolutionWidth() uint32 { + if x != nil { + return x.ResolutionWidth + } + return 0 +} + +func (x *WideCameraStateInfo) GetResolutionHeight() uint32 { + if x != nil { + return x.ResolutionHeight + } + return 0 +} + +func (x *WideCameraStateInfo) GetCmosTemperature() *CmosTemperature { + if x != nil { + return x.CmosTemperature + } + return nil +} + +// source: task_center +type ExclusiveFocusMotorState struct { + state protoimpl.MessageState `protogen:"open.v1"` + // oneof current_state + AstroAutoFocusState *AstroAutoFocusState `protobuf:"bytes,1,opt,name=astro_auto_focus_state,json=astroAutoFocusState,proto3" json:"astro_auto_focus_state,omitempty"` + NormalAutoFocusState *NormalAutoFocusState `protobuf:"bytes,2,opt,name=normal_auto_focus_state,json=normalAutoFocusState,proto3" json:"normal_auto_focus_state,omitempty"` + AstroAutoFocusFastState *AstroAutoFocusFastState `protobuf:"bytes,3,opt,name=astro_auto_focus_fast_state,json=astroAutoFocusFastState,proto3" json:"astro_auto_focus_fast_state,omitempty"` + AreaAutoFocusState *AreaAutoFocusState `protobuf:"bytes,4,opt,name=area_auto_focus_state,json=areaAutoFocusState,proto3" json:"area_auto_focus_state,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ExclusiveFocusMotorState) Reset() { + *x = ExclusiveFocusMotorState{} + mi := &file_dwarf_proto_msgTypes[349] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ExclusiveFocusMotorState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ExclusiveFocusMotorState) ProtoMessage() {} + +func (x *ExclusiveFocusMotorState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[349] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ExclusiveFocusMotorState.ProtoReflect.Descriptor instead. +func (*ExclusiveFocusMotorState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{349} +} + +func (x *ExclusiveFocusMotorState) GetAstroAutoFocusState() *AstroAutoFocusState { + if x != nil { + return x.AstroAutoFocusState + } + return nil +} + +func (x *ExclusiveFocusMotorState) GetNormalAutoFocusState() *NormalAutoFocusState { + if x != nil { + return x.NormalAutoFocusState + } + return nil +} + +func (x *ExclusiveFocusMotorState) GetAstroAutoFocusFastState() *AstroAutoFocusFastState { + if x != nil { + return x.AstroAutoFocusFastState + } + return nil +} + +func (x *ExclusiveFocusMotorState) GetAreaAutoFocusState() *AreaAutoFocusState { + if x != nil { + return x.AreaAutoFocusState + } + return nil +} + +// source: task_center +type FocusMotorStateInfo struct { + state protoimpl.MessageState `protogen:"open.v1"` + // oneof _focus_position + ExclusiveState *ExclusiveFocusMotorState `protobuf:"bytes,1,opt,name=exclusive_state,json=exclusiveState,proto3" json:"exclusive_state,omitempty"` + FocusPosition *FocusPosition `protobuf:"bytes,2,opt,name=focus_position,json=focusPosition,proto3" json:"focus_position,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *FocusMotorStateInfo) Reset() { + *x = FocusMotorStateInfo{} + mi := &file_dwarf_proto_msgTypes[350] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *FocusMotorStateInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*FocusMotorStateInfo) ProtoMessage() {} + +func (x *FocusMotorStateInfo) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[350] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use FocusMotorStateInfo.ProtoReflect.Descriptor instead. +func (*FocusMotorStateInfo) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{350} +} + +func (x *FocusMotorStateInfo) GetExclusiveState() *ExclusiveFocusMotorState { + if x != nil { + return x.ExclusiveState + } + return nil +} + +func (x *FocusMotorStateInfo) GetFocusPosition() *FocusPosition { + if x != nil { + return x.FocusPosition + } + return nil +} + +// source: task_center +type ExclusiveMotionMotorState struct { + state protoimpl.MessageState `protogen:"open.v1"` + // oneof current_state + AstroCalibrationState *AstroCalibrationState `protobuf:"bytes,1,opt,name=astro_calibration_state,json=astroCalibrationState,proto3" json:"astro_calibration_state,omitempty"` + AstroGotoState *AstroGotoState `protobuf:"bytes,2,opt,name=astro_goto_state,json=astroGotoState,proto3" json:"astro_goto_state,omitempty"` + AstroTrackingState *AstroTrackingState `protobuf:"bytes,3,opt,name=astro_tracking_state,json=astroTrackingState,proto3" json:"astro_tracking_state,omitempty"` + NormalTrackState *NormalTrackState `protobuf:"bytes,4,opt,name=normal_track_state,json=normalTrackState,proto3" json:"normal_track_state,omitempty"` + OneClickGotoState *OneClickGotoState `protobuf:"bytes,5,opt,name=one_click_goto_state,json=oneClickGotoState,proto3" json:"one_click_goto_state,omitempty"` + EqState *EqSolvingState `protobuf:"bytes,6,opt,name=eq_state,json=eqState,proto3" json:"eq_state,omitempty"` + SentryState *SentryState `protobuf:"bytes,7,opt,name=sentry_state,json=sentryState,proto3" json:"sentry_state,omitempty"` + SkyTargetFinderState *SkyTargetFinderState `protobuf:"bytes,8,opt,name=sky_target_finder_state,json=skyTargetFinderState,proto3" json:"sky_target_finder_state,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ExclusiveMotionMotorState) Reset() { + *x = ExclusiveMotionMotorState{} + mi := &file_dwarf_proto_msgTypes[351] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ExclusiveMotionMotorState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ExclusiveMotionMotorState) ProtoMessage() {} + +func (x *ExclusiveMotionMotorState) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[351] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ExclusiveMotionMotorState.ProtoReflect.Descriptor instead. +func (*ExclusiveMotionMotorState) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{351} +} + +func (x *ExclusiveMotionMotorState) GetAstroCalibrationState() *AstroCalibrationState { + if x != nil { + return x.AstroCalibrationState + } + return nil +} + +func (x *ExclusiveMotionMotorState) GetAstroGotoState() *AstroGotoState { + if x != nil { + return x.AstroGotoState + } + return nil +} + +func (x *ExclusiveMotionMotorState) GetAstroTrackingState() *AstroTrackingState { + if x != nil { + return x.AstroTrackingState + } + return nil +} + +func (x *ExclusiveMotionMotorState) GetNormalTrackState() *NormalTrackState { + if x != nil { + return x.NormalTrackState + } + return nil +} + +func (x *ExclusiveMotionMotorState) GetOneClickGotoState() *OneClickGotoState { + if x != nil { + return x.OneClickGotoState + } + return nil +} + +func (x *ExclusiveMotionMotorState) GetEqState() *EqSolvingState { + if x != nil { + return x.EqState + } + return nil +} + +func (x *ExclusiveMotionMotorState) GetSentryState() *SentryState { + if x != nil { + return x.SentryState + } + return nil +} + +func (x *ExclusiveMotionMotorState) GetSkyTargetFinderState() *SkyTargetFinderState { + if x != nil { + return x.SkyTargetFinderState + } + return nil +} + +// source: task_center +type MotionMotorStateInfo struct { + state protoimpl.MessageState `protogen:"open.v1"` + ExclusiveState *ExclusiveMotionMotorState `protobuf:"bytes,1,opt,name=exclusive_state,json=exclusiveState,proto3" json:"exclusive_state,omitempty"` + SentryAutoHand *SentryAutoHand `protobuf:"bytes,2,opt,name=sentry_auto_hand,json=sentryAutoHand,proto3" json:"sentry_auto_hand,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *MotionMotorStateInfo) Reset() { + *x = MotionMotorStateInfo{} + mi := &file_dwarf_proto_msgTypes[352] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *MotionMotorStateInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MotionMotorStateInfo) ProtoMessage() {} + +func (x *MotionMotorStateInfo) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[352] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use MotionMotorStateInfo.ProtoReflect.Descriptor instead. +func (*MotionMotorStateInfo) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{352} +} + +func (x *MotionMotorStateInfo) GetExclusiveState() *ExclusiveMotionMotorState { + if x != nil { + return x.ExclusiveState + } + return nil +} + +func (x *MotionMotorStateInfo) GetSentryAutoHand() *SentryAutoHand { + if x != nil { + return x.SentryAutoHand + } + return nil +} + +// source: task_center +type DeviceStateInfo struct { + state protoimpl.MessageState `protogen:"open.v1"` + RgbState *RgbState `protobuf:"bytes,1,opt,name=rgb_state,json=rgbState,proto3" json:"rgb_state,omitempty"` + PowerIndState *PowerIndState `protobuf:"bytes,2,opt,name=power_ind_state,json=powerIndState,proto3" json:"power_ind_state,omitempty"` + ChargingState *ChargingState `protobuf:"bytes,3,opt,name=charging_state,json=chargingState,proto3" json:"charging_state,omitempty"` + StorageInfo *StorageInfo `protobuf:"bytes,4,opt,name=storage_info,json=storageInfo,proto3" json:"storage_info,omitempty"` + MtpState *MTPState `protobuf:"bytes,5,opt,name=mtp_state,json=mtpState,proto3" json:"mtp_state,omitempty"` + CpuMode *CPUMode `protobuf:"bytes,6,opt,name=cpu_mode,json=cpuMode,proto3" json:"cpu_mode,omitempty"` + Temperature *Temperature `protobuf:"bytes,7,opt,name=temperature,proto3" json:"temperature,omitempty"` + BodyStatus *BodyStatus `protobuf:"bytes,8,opt,name=body_status,json=bodyStatus,proto3" json:"body_status,omitempty"` + BatteryInfo *BatteryInfo `protobuf:"bytes,9,opt,name=battery_info,json=batteryInfo,proto3" json:"battery_info,omitempty"` + CalibrationResult *CalibrationResult `protobuf:"bytes,10,opt,name=calibration_result,json=calibrationResult,proto3" json:"calibration_result,omitempty"` + PictureMatching *PictureMatching `protobuf:"bytes,11,opt,name=picture_matching,json=pictureMatching,proto3" json:"picture_matching,omitempty"` + AutoShutdown *AutoShutdown `protobuf:"bytes,12,opt,name=auto_shutdown,json=autoShutdown,proto3" json:"auto_shutdown,omitempty"` + LensDefog *LensDefog `protobuf:"bytes,13,opt,name=lens_defog,json=lensDefog,proto3" json:"lens_defog,omitempty"` + AutoCooling *AutoCooling `protobuf:"bytes,14,opt,name=auto_cooling,json=autoCooling,proto3" json:"auto_cooling,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *DeviceStateInfo) Reset() { + *x = DeviceStateInfo{} + mi := &file_dwarf_proto_msgTypes[353] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *DeviceStateInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DeviceStateInfo) ProtoMessage() {} + +func (x *DeviceStateInfo) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[353] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DeviceStateInfo.ProtoReflect.Descriptor instead. +func (*DeviceStateInfo) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{353} +} + +func (x *DeviceStateInfo) GetRgbState() *RgbState { + if x != nil { + return x.RgbState + } + return nil +} + +func (x *DeviceStateInfo) GetPowerIndState() *PowerIndState { + if x != nil { + return x.PowerIndState + } + return nil +} + +func (x *DeviceStateInfo) GetChargingState() *ChargingState { + if x != nil { + return x.ChargingState + } + return nil +} + +func (x *DeviceStateInfo) GetStorageInfo() *StorageInfo { + if x != nil { + return x.StorageInfo + } + return nil +} + +func (x *DeviceStateInfo) GetMtpState() *MTPState { + if x != nil { + return x.MtpState + } + return nil +} + +func (x *DeviceStateInfo) GetCpuMode() *CPUMode { + if x != nil { + return x.CpuMode + } + return nil +} + +func (x *DeviceStateInfo) GetTemperature() *Temperature { + if x != nil { + return x.Temperature + } + return nil +} + +func (x *DeviceStateInfo) GetBodyStatus() *BodyStatus { + if x != nil { + return x.BodyStatus + } + return nil +} + +func (x *DeviceStateInfo) GetBatteryInfo() *BatteryInfo { + if x != nil { + return x.BatteryInfo + } + return nil +} + +func (x *DeviceStateInfo) GetCalibrationResult() *CalibrationResult { + if x != nil { + return x.CalibrationResult + } + return nil +} + +func (x *DeviceStateInfo) GetPictureMatching() *PictureMatching { + if x != nil { + return x.PictureMatching + } + return nil +} + +func (x *DeviceStateInfo) GetAutoShutdown() *AutoShutdown { + if x != nil { + return x.AutoShutdown + } + return nil +} + +func (x *DeviceStateInfo) GetLensDefog() *LensDefog { + if x != nil { + return x.LensDefog + } + return nil +} + +func (x *DeviceStateInfo) GetAutoCooling() *AutoCooling { + if x != nil { + return x.AutoCooling + } + return nil +} + +// source: task_center +type ConnectionStateInfo struct { + state protoimpl.MessageState `protogen:"open.v1"` + HostSlaveMode *HostSlaveMode `protobuf:"bytes,1,opt,name=host_slave_mode,json=hostSlaveMode,proto3" json:"host_slave_mode,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ConnectionStateInfo) Reset() { + *x = ConnectionStateInfo{} + mi := &file_dwarf_proto_msgTypes[354] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ConnectionStateInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ConnectionStateInfo) ProtoMessage() {} + +func (x *ConnectionStateInfo) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[354] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ConnectionStateInfo.ProtoReflect.Descriptor instead. +func (*ConnectionStateInfo) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{354} +} + +func (x *ConnectionStateInfo) GetHostSlaveMode() *HostSlaveMode { + if x != nil { + return x.HostSlaveMode + } + return nil +} + +// source: task_center +type ShootingModeAndTech struct { + state protoimpl.MessageState `protogen:"open.v1"` + ShootingMode int32 `protobuf:"varint,1,opt,name=shooting_mode,json=shootingMode,proto3" json:"shooting_mode,omitempty"` + ParentShootingMode int32 `protobuf:"varint,2,opt,name=parent_shooting_mode,json=parentShootingMode,proto3" json:"parent_shooting_mode,omitempty"` + ShootingTechs []int32 `protobuf:"varint,3,rep,packed,name=shooting_techs,json=shootingTechs,proto3" json:"shooting_techs,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ShootingModeAndTech) Reset() { + *x = ShootingModeAndTech{} + mi := &file_dwarf_proto_msgTypes[355] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ShootingModeAndTech) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ShootingModeAndTech) ProtoMessage() {} + +func (x *ShootingModeAndTech) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[355] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ShootingModeAndTech.ProtoReflect.Descriptor instead. +func (*ShootingModeAndTech) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{355} +} + +func (x *ShootingModeAndTech) GetShootingMode() int32 { + if x != nil { + return x.ShootingMode + } + return 0 +} + +func (x *ShootingModeAndTech) GetParentShootingMode() int32 { + if x != nil { + return x.ParentShootingMode + } + return 0 +} + +func (x *ShootingModeAndTech) GetShootingTechs() []int32 { + if x != nil { + return x.ShootingTechs + } + return nil +} + +// source: task_center +type ResGetDeviceStateInfo struct { + state protoimpl.MessageState `protogen:"open.v1"` + ShootingMode int32 `protobuf:"varint,1,opt,name=shooting_mode,json=shootingMode,proto3" json:"shooting_mode,omitempty"` + TeleCameraStateInfo *TeleCameraStateInfo `protobuf:"bytes,2,opt,name=tele_camera_state_info,json=teleCameraStateInfo,proto3" json:"tele_camera_state_info,omitempty"` + WideCameraStateInfo *WideCameraStateInfo `protobuf:"bytes,3,opt,name=wide_camera_state_info,json=wideCameraStateInfo,proto3" json:"wide_camera_state_info,omitempty"` + FocusMotorStateInfo *FocusMotorStateInfo `protobuf:"bytes,4,opt,name=focus_motor_state_info,json=focusMotorStateInfo,proto3" json:"focus_motor_state_info,omitempty"` + MotionMotorStateInfo *MotionMotorStateInfo `protobuf:"bytes,5,opt,name=motion_motor_state_info,json=motionMotorStateInfo,proto3" json:"motion_motor_state_info,omitempty"` + DeviceStateInfo *DeviceStateInfo `protobuf:"bytes,6,opt,name=device_state_info,json=deviceStateInfo,proto3" json:"device_state_info,omitempty"` + Code int32 `protobuf:"varint,7,opt,name=code,proto3" json:"code,omitempty"` + ConnectionStateInfo *ConnectionStateInfo `protobuf:"bytes,8,opt,name=connection_state_info,json=connectionStateInfo,proto3" json:"connection_state_info,omitempty"` + ShootingModeAndTechs []*ShootingModeAndTech `protobuf:"bytes,9,rep,name=shooting_mode_and_techs,json=shootingModeAndTechs,proto3" json:"shooting_mode_and_techs,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResGetDeviceStateInfo) Reset() { + *x = ResGetDeviceStateInfo{} + mi := &file_dwarf_proto_msgTypes[356] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResGetDeviceStateInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResGetDeviceStateInfo) ProtoMessage() {} + +func (x *ResGetDeviceStateInfo) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[356] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResGetDeviceStateInfo.ProtoReflect.Descriptor instead. +func (*ResGetDeviceStateInfo) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{356} +} + +func (x *ResGetDeviceStateInfo) GetShootingMode() int32 { + if x != nil { + return x.ShootingMode + } + return 0 +} + +func (x *ResGetDeviceStateInfo) GetTeleCameraStateInfo() *TeleCameraStateInfo { + if x != nil { + return x.TeleCameraStateInfo + } + return nil +} + +func (x *ResGetDeviceStateInfo) GetWideCameraStateInfo() *WideCameraStateInfo { + if x != nil { + return x.WideCameraStateInfo + } + return nil +} + +func (x *ResGetDeviceStateInfo) GetFocusMotorStateInfo() *FocusMotorStateInfo { + if x != nil { + return x.FocusMotorStateInfo + } + return nil +} + +func (x *ResGetDeviceStateInfo) GetMotionMotorStateInfo() *MotionMotorStateInfo { + if x != nil { + return x.MotionMotorStateInfo + } + return nil +} + +func (x *ResGetDeviceStateInfo) GetDeviceStateInfo() *DeviceStateInfo { + if x != nil { + return x.DeviceStateInfo + } + return nil +} + +func (x *ResGetDeviceStateInfo) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResGetDeviceStateInfo) GetConnectionStateInfo() *ConnectionStateInfo { + if x != nil { + return x.ConnectionStateInfo + } + return nil +} + +func (x *ResGetDeviceStateInfo) GetShootingModeAndTechs() []*ShootingModeAndTech { + if x != nil { + return x.ShootingModeAndTechs + } + return nil +} + +// source: track +type ReqStartTrack struct { + state protoimpl.MessageState `protogen:"open.v1"` + X int32 `protobuf:"varint,1,opt,name=x,proto3" json:"x,omitempty"` + Y int32 `protobuf:"varint,2,opt,name=y,proto3" json:"y,omitempty"` + W int32 `protobuf:"varint,3,opt,name=w,proto3" json:"w,omitempty"` + H int32 `protobuf:"varint,4,opt,name=h,proto3" json:"h,omitempty"` + CamId int32 `protobuf:"varint,5,opt,name=cam_id,json=camId,proto3" json:"cam_id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStartTrack) Reset() { + *x = ReqStartTrack{} + mi := &file_dwarf_proto_msgTypes[357] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStartTrack) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStartTrack) ProtoMessage() {} + +func (x *ReqStartTrack) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[357] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStartTrack.ProtoReflect.Descriptor instead. +func (*ReqStartTrack) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{357} +} + +func (x *ReqStartTrack) GetX() int32 { + if x != nil { + return x.X + } + return 0 +} + +func (x *ReqStartTrack) GetY() int32 { + if x != nil { + return x.Y + } + return 0 +} + +func (x *ReqStartTrack) GetW() int32 { + if x != nil { + return x.W + } + return 0 +} + +func (x *ReqStartTrack) GetH() int32 { + if x != nil { + return x.H + } + return 0 +} + +func (x *ReqStartTrack) GetCamId() int32 { + if x != nil { + return x.CamId + } + return 0 +} + +// source: track +type ReqStopTrack struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStopTrack) Reset() { + *x = ReqStopTrack{} + mi := &file_dwarf_proto_msgTypes[358] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStopTrack) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStopTrack) ProtoMessage() {} + +func (x *ReqStopTrack) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[358] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStopTrack.ProtoReflect.Descriptor instead. +func (*ReqStopTrack) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{358} +} + +// source: track +type ReqPauseTrack struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqPauseTrack) Reset() { + *x = ReqPauseTrack{} + mi := &file_dwarf_proto_msgTypes[359] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqPauseTrack) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqPauseTrack) ProtoMessage() {} + +func (x *ReqPauseTrack) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[359] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqPauseTrack.ProtoReflect.Descriptor instead. +func (*ReqPauseTrack) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{359} +} + +// source: track +type ReqContinueTrack struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqContinueTrack) Reset() { + *x = ReqContinueTrack{} + mi := &file_dwarf_proto_msgTypes[360] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqContinueTrack) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqContinueTrack) ProtoMessage() {} + +func (x *ReqContinueTrack) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[360] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqContinueTrack.ProtoReflect.Descriptor instead. +func (*ReqContinueTrack) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{360} +} + +// source: track +type ReqStartSentryMode struct { + state protoimpl.MessageState `protogen:"open.v1"` + Type int32 `protobuf:"varint,1,opt,name=type,proto3" json:"type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStartSentryMode) Reset() { + *x = ReqStartSentryMode{} + mi := &file_dwarf_proto_msgTypes[361] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStartSentryMode) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStartSentryMode) ProtoMessage() {} + +func (x *ReqStartSentryMode) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[361] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStartSentryMode.ProtoReflect.Descriptor instead. +func (*ReqStartSentryMode) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{361} +} + +func (x *ReqStartSentryMode) GetType() int32 { + if x != nil { + return x.Type + } + return 0 +} + +// source: track +type ReqStopSentryMode struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStopSentryMode) Reset() { + *x = ReqStopSentryMode{} + mi := &file_dwarf_proto_msgTypes[362] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStopSentryMode) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStopSentryMode) ProtoMessage() {} + +func (x *ReqStopSentryMode) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[362] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStopSentryMode.ProtoReflect.Descriptor instead. +func (*ReqStopSentryMode) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{362} +} + +// source: track +type ReqMOTTrackOne struct { + state protoimpl.MessageState `protogen:"open.v1"` + Id int32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqMOTTrackOne) Reset() { + *x = ReqMOTTrackOne{} + mi := &file_dwarf_proto_msgTypes[363] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqMOTTrackOne) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqMOTTrackOne) ProtoMessage() {} + +func (x *ReqMOTTrackOne) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[363] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqMOTTrackOne.ProtoReflect.Descriptor instead. +func (*ReqMOTTrackOne) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{363} +} + +func (x *ReqMOTTrackOne) GetId() int32 { + if x != nil { + return x.Id + } + return 0 +} + +// source: track +type ReqUFOAutoHandMode struct { + state protoimpl.MessageState `protogen:"open.v1"` + Mode int32 `protobuf:"varint,1,opt,name=mode,proto3" json:"mode,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqUFOAutoHandMode) Reset() { + *x = ReqUFOAutoHandMode{} + mi := &file_dwarf_proto_msgTypes[364] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqUFOAutoHandMode) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqUFOAutoHandMode) ProtoMessage() {} + +func (x *ReqUFOAutoHandMode) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[364] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqUFOAutoHandMode.ProtoReflect.Descriptor instead. +func (*ReqUFOAutoHandMode) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{364} +} + +func (x *ReqUFOAutoHandMode) GetMode() int32 { + if x != nil { + return x.Mode + } + return 0 +} + +// source: track +type ReqStartTrackClick struct { + state protoimpl.MessageState `protogen:"open.v1"` + X int32 `protobuf:"varint,1,opt,name=x,proto3" json:"x,omitempty"` + Y int32 `protobuf:"varint,2,opt,name=y,proto3" json:"y,omitempty"` + CamId int32 `protobuf:"varint,3,opt,name=cam_id,json=camId,proto3" json:"cam_id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqStartTrackClick) Reset() { + *x = ReqStartTrackClick{} + mi := &file_dwarf_proto_msgTypes[365] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqStartTrackClick) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqStartTrackClick) ProtoMessage() {} + +func (x *ReqStartTrackClick) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[365] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqStartTrackClick.ProtoReflect.Descriptor instead. +func (*ReqStartTrackClick) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{365} +} + +func (x *ReqStartTrackClick) GetX() int32 { + if x != nil { + return x.X + } + return 0 +} + +func (x *ReqStartTrackClick) GetY() int32 { + if x != nil { + return x.Y + } + return 0 +} + +func (x *ReqStartTrackClick) GetCamId() int32 { + if x != nil { + return x.CamId + } + return 0 +} + +// source: voiceassistant +type ReqVoiceCommand struct { + state protoimpl.MessageState `protogen:"open.v1"` + // oneof params + CommandType VoiceCommandType `protobuf:"varint,1,opt,name=command_type,json=commandType,proto3,enum=VoiceCommandType" json:"command_type,omitempty"` + ShootingMode int32 `protobuf:"varint,2,opt,name=shooting_mode,json=shootingMode,proto3" json:"shooting_mode,omitempty"` + PhotoParams *VoicePhotoParams `protobuf:"bytes,10,opt,name=photo_params,json=photoParams,proto3" json:"photo_params,omitempty"` + RecordParams *VoiceRecordParams `protobuf:"bytes,11,opt,name=record_params,json=recordParams,proto3" json:"record_params,omitempty"` + TimelapseParams *VoiceTimelapseParams `protobuf:"bytes,12,opt,name=timelapse_params,json=timelapseParams,proto3" json:"timelapse_params,omitempty"` + BurstParams *VoiceBurstParams `protobuf:"bytes,13,opt,name=burst_params,json=burstParams,proto3" json:"burst_params,omitempty"` + AstroParams *VoiceAstroParams `protobuf:"bytes,14,opt,name=astro_params,json=astroParams,proto3" json:"astro_params,omitempty"` + SentryParams *VoiceSentryParams `protobuf:"bytes,15,opt,name=sentry_params,json=sentryParams,proto3" json:"sentry_params,omitempty"` + MoveParams *VoiceMoveParams `protobuf:"bytes,16,opt,name=move_params,json=moveParams,proto3" json:"move_params,omitempty"` + GotoParams *VoiceGotoParams `protobuf:"bytes,17,opt,name=goto_params,json=gotoParams,proto3" json:"goto_params,omitempty"` + CalibrationParams *VoiceCalibrationParams `protobuf:"bytes,18,opt,name=calibration_params,json=calibrationParams,proto3" json:"calibration_params,omitempty"` + FocusParams *VoiceFocusParams `protobuf:"bytes,19,opt,name=focus_params,json=focusParams,proto3" json:"focus_params,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReqVoiceCommand) Reset() { + *x = ReqVoiceCommand{} + mi := &file_dwarf_proto_msgTypes[366] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqVoiceCommand) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqVoiceCommand) ProtoMessage() {} + +func (x *ReqVoiceCommand) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[366] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqVoiceCommand.ProtoReflect.Descriptor instead. +func (*ReqVoiceCommand) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{366} +} + +func (x *ReqVoiceCommand) GetCommandType() VoiceCommandType { + if x != nil { + return x.CommandType + } + return VoiceCommandType_VOICE_CMD_UNKNOWN +} + +func (x *ReqVoiceCommand) GetShootingMode() int32 { + if x != nil { + return x.ShootingMode + } + return 0 +} + +func (x *ReqVoiceCommand) GetPhotoParams() *VoicePhotoParams { + if x != nil { + return x.PhotoParams + } + return nil +} + +func (x *ReqVoiceCommand) GetRecordParams() *VoiceRecordParams { + if x != nil { + return x.RecordParams + } + return nil +} + +func (x *ReqVoiceCommand) GetTimelapseParams() *VoiceTimelapseParams { + if x != nil { + return x.TimelapseParams + } + return nil +} + +func (x *ReqVoiceCommand) GetBurstParams() *VoiceBurstParams { + if x != nil { + return x.BurstParams + } + return nil +} + +func (x *ReqVoiceCommand) GetAstroParams() *VoiceAstroParams { + if x != nil { + return x.AstroParams + } + return nil +} + +func (x *ReqVoiceCommand) GetSentryParams() *VoiceSentryParams { + if x != nil { + return x.SentryParams + } + return nil +} + +func (x *ReqVoiceCommand) GetMoveParams() *VoiceMoveParams { + if x != nil { + return x.MoveParams + } + return nil +} + +func (x *ReqVoiceCommand) GetGotoParams() *VoiceGotoParams { + if x != nil { + return x.GotoParams + } + return nil +} + +func (x *ReqVoiceCommand) GetCalibrationParams() *VoiceCalibrationParams { + if x != nil { + return x.CalibrationParams + } + return nil +} + +func (x *ReqVoiceCommand) GetFocusParams() *VoiceFocusParams { + if x != nil { + return x.FocusParams + } + return nil +} + +// source: voiceassistant +type VoicePhotoParams struct { + state protoimpl.MessageState `protogen:"open.v1"` + CameraType int32 `protobuf:"varint,1,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *VoicePhotoParams) Reset() { + *x = VoicePhotoParams{} + mi := &file_dwarf_proto_msgTypes[367] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *VoicePhotoParams) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*VoicePhotoParams) ProtoMessage() {} + +func (x *VoicePhotoParams) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[367] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use VoicePhotoParams.ProtoReflect.Descriptor instead. +func (*VoicePhotoParams) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{367} +} + +func (x *VoicePhotoParams) GetCameraType() int32 { + if x != nil { + return x.CameraType + } + return 0 +} + +// source: voiceassistant +type VoiceRecordParams struct { + state protoimpl.MessageState `protogen:"open.v1"` + CameraType int32 `protobuf:"varint,1,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + DurationSeconds int32 `protobuf:"varint,2,opt,name=duration_seconds,json=durationSeconds,proto3" json:"duration_seconds,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *VoiceRecordParams) Reset() { + *x = VoiceRecordParams{} + mi := &file_dwarf_proto_msgTypes[368] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *VoiceRecordParams) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*VoiceRecordParams) ProtoMessage() {} + +func (x *VoiceRecordParams) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[368] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use VoiceRecordParams.ProtoReflect.Descriptor instead. +func (*VoiceRecordParams) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{368} +} + +func (x *VoiceRecordParams) GetCameraType() int32 { + if x != nil { + return x.CameraType + } + return 0 +} + +func (x *VoiceRecordParams) GetDurationSeconds() int32 { + if x != nil { + return x.DurationSeconds + } + return 0 +} + +// source: voiceassistant +type VoiceTimelapseParams struct { + state protoimpl.MessageState `protogen:"open.v1"` + CameraType int32 `protobuf:"varint,1,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + IntervalSeconds int32 `protobuf:"varint,2,opt,name=interval_seconds,json=intervalSeconds,proto3" json:"interval_seconds,omitempty"` + DurationSeconds int32 `protobuf:"varint,3,opt,name=duration_seconds,json=durationSeconds,proto3" json:"duration_seconds,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *VoiceTimelapseParams) Reset() { + *x = VoiceTimelapseParams{} + mi := &file_dwarf_proto_msgTypes[369] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *VoiceTimelapseParams) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*VoiceTimelapseParams) ProtoMessage() {} + +func (x *VoiceTimelapseParams) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[369] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use VoiceTimelapseParams.ProtoReflect.Descriptor instead. +func (*VoiceTimelapseParams) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{369} +} + +func (x *VoiceTimelapseParams) GetCameraType() int32 { + if x != nil { + return x.CameraType + } + return 0 +} + +func (x *VoiceTimelapseParams) GetIntervalSeconds() int32 { + if x != nil { + return x.IntervalSeconds + } + return 0 +} + +func (x *VoiceTimelapseParams) GetDurationSeconds() int32 { + if x != nil { + return x.DurationSeconds + } + return 0 +} + +// source: voiceassistant +type VoiceBurstParams struct { + state protoimpl.MessageState `protogen:"open.v1"` + CameraType int32 `protobuf:"varint,1,opt,name=camera_type,json=cameraType,proto3" json:"camera_type,omitempty"` + Count int32 `protobuf:"varint,2,opt,name=count,proto3" json:"count,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *VoiceBurstParams) Reset() { + *x = VoiceBurstParams{} + mi := &file_dwarf_proto_msgTypes[370] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *VoiceBurstParams) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*VoiceBurstParams) ProtoMessage() {} + +func (x *VoiceBurstParams) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[370] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use VoiceBurstParams.ProtoReflect.Descriptor instead. +func (*VoiceBurstParams) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{370} +} + +func (x *VoiceBurstParams) GetCameraType() int32 { + if x != nil { + return x.CameraType + } + return 0 +} + +func (x *VoiceBurstParams) GetCount() int32 { + if x != nil { + return x.Count + } + return 0 +} + +// source: voiceassistant +type VoiceAstroParams struct { + state protoimpl.MessageState `protogen:"open.v1"` + TargetName string `protobuf:"bytes,1,opt,name=target_name,json=targetName,proto3" json:"target_name,omitempty"` + Ra float64 `protobuf:"fixed64,2,opt,name=ra,proto3" json:"ra,omitempty"` + Dec float64 `protobuf:"fixed64,3,opt,name=dec,proto3" json:"dec,omitempty"` + Index int32 `protobuf:"varint,4,opt,name=index,proto3" json:"index,omitempty"` + Lon float64 `protobuf:"fixed64,5,opt,name=lon,proto3" json:"lon,omitempty"` + Lat float64 `protobuf:"fixed64,6,opt,name=lat,proto3" json:"lat,omitempty"` + AutoGoto bool `protobuf:"varint,7,opt,name=auto_goto,json=autoGoto,proto3" json:"auto_goto,omitempty"` + ForceStart bool `protobuf:"varint,8,opt,name=force_start,json=forceStart,proto3" json:"force_start,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *VoiceAstroParams) Reset() { + *x = VoiceAstroParams{} + mi := &file_dwarf_proto_msgTypes[371] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *VoiceAstroParams) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*VoiceAstroParams) ProtoMessage() {} + +func (x *VoiceAstroParams) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[371] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use VoiceAstroParams.ProtoReflect.Descriptor instead. +func (*VoiceAstroParams) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{371} +} + +func (x *VoiceAstroParams) GetTargetName() string { + if x != nil { + return x.TargetName + } + return "" +} + +func (x *VoiceAstroParams) GetRa() float64 { + if x != nil { + return x.Ra + } + return 0 +} + +func (x *VoiceAstroParams) GetDec() float64 { + if x != nil { + return x.Dec + } + return 0 +} + +func (x *VoiceAstroParams) GetIndex() int32 { + if x != nil { + return x.Index + } + return 0 +} + +func (x *VoiceAstroParams) GetLon() float64 { + if x != nil { + return x.Lon + } + return 0 +} + +func (x *VoiceAstroParams) GetLat() float64 { + if x != nil { + return x.Lat + } + return 0 +} + +func (x *VoiceAstroParams) GetAutoGoto() bool { + if x != nil { + return x.AutoGoto + } + return false +} + +func (x *VoiceAstroParams) GetForceStart() bool { + if x != nil { + return x.ForceStart + } + return false +} + +// source: voiceassistant +type VoiceSentryParams struct { + state protoimpl.MessageState `protogen:"open.v1"` + Type int32 `protobuf:"varint,1,opt,name=type,proto3" json:"type,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *VoiceSentryParams) Reset() { + *x = VoiceSentryParams{} + mi := &file_dwarf_proto_msgTypes[372] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *VoiceSentryParams) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*VoiceSentryParams) ProtoMessage() {} + +func (x *VoiceSentryParams) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[372] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use VoiceSentryParams.ProtoReflect.Descriptor instead. +func (*VoiceSentryParams) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{372} +} + +func (x *VoiceSentryParams) GetType() int32 { + if x != nil { + return x.Type + } + return 0 +} + +// source: voiceassistant +type VoiceMoveParams struct { + state protoimpl.MessageState `protogen:"open.v1"` + AzimuthAngle float64 `protobuf:"fixed64,1,opt,name=azimuth_angle,json=azimuthAngle,proto3" json:"azimuth_angle,omitempty"` + AltitudeAngle float64 `protobuf:"fixed64,2,opt,name=altitude_angle,json=altitudeAngle,proto3" json:"altitude_angle,omitempty"` + Speed int32 `protobuf:"varint,3,opt,name=speed,proto3" json:"speed,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *VoiceMoveParams) Reset() { + *x = VoiceMoveParams{} + mi := &file_dwarf_proto_msgTypes[373] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *VoiceMoveParams) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*VoiceMoveParams) ProtoMessage() {} + +func (x *VoiceMoveParams) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[373] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use VoiceMoveParams.ProtoReflect.Descriptor instead. +func (*VoiceMoveParams) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{373} +} + +func (x *VoiceMoveParams) GetAzimuthAngle() float64 { + if x != nil { + return x.AzimuthAngle + } + return 0 +} + +func (x *VoiceMoveParams) GetAltitudeAngle() float64 { + if x != nil { + return x.AltitudeAngle + } + return 0 +} + +func (x *VoiceMoveParams) GetSpeed() int32 { + if x != nil { + return x.Speed + } + return 0 +} + +// source: voiceassistant +type VoiceGotoParams struct { + state protoimpl.MessageState `protogen:"open.v1"` + TargetName string `protobuf:"bytes,1,opt,name=target_name,json=targetName,proto3" json:"target_name,omitempty"` + Ra float64 `protobuf:"fixed64,2,opt,name=ra,proto3" json:"ra,omitempty"` + Dec float64 `protobuf:"fixed64,3,opt,name=dec,proto3" json:"dec,omitempty"` + Index int32 `protobuf:"varint,4,opt,name=index,proto3" json:"index,omitempty"` + Lon float64 `protobuf:"fixed64,5,opt,name=lon,proto3" json:"lon,omitempty"` + Lat float64 `protobuf:"fixed64,6,opt,name=lat,proto3" json:"lat,omitempty"` + ShootingMode int32 `protobuf:"varint,7,opt,name=shooting_mode,json=shootingMode,proto3" json:"shooting_mode,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *VoiceGotoParams) Reset() { + *x = VoiceGotoParams{} + mi := &file_dwarf_proto_msgTypes[374] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *VoiceGotoParams) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*VoiceGotoParams) ProtoMessage() {} + +func (x *VoiceGotoParams) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[374] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use VoiceGotoParams.ProtoReflect.Descriptor instead. +func (*VoiceGotoParams) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{374} +} + +func (x *VoiceGotoParams) GetTargetName() string { + if x != nil { + return x.TargetName + } + return "" +} + +func (x *VoiceGotoParams) GetRa() float64 { + if x != nil { + return x.Ra + } + return 0 +} + +func (x *VoiceGotoParams) GetDec() float64 { + if x != nil { + return x.Dec + } + return 0 +} + +func (x *VoiceGotoParams) GetIndex() int32 { + if x != nil { + return x.Index + } + return 0 +} + +func (x *VoiceGotoParams) GetLon() float64 { + if x != nil { + return x.Lon + } + return 0 +} + +func (x *VoiceGotoParams) GetLat() float64 { + if x != nil { + return x.Lat + } + return 0 +} + +func (x *VoiceGotoParams) GetShootingMode() int32 { + if x != nil { + return x.ShootingMode + } + return 0 +} + +// source: voiceassistant +type VoiceCalibrationParams struct { + state protoimpl.MessageState `protogen:"open.v1"` + Lon float64 `protobuf:"fixed64,1,opt,name=lon,proto3" json:"lon,omitempty"` + Lat float64 `protobuf:"fixed64,2,opt,name=lat,proto3" json:"lat,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *VoiceCalibrationParams) Reset() { + *x = VoiceCalibrationParams{} + mi := &file_dwarf_proto_msgTypes[375] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *VoiceCalibrationParams) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*VoiceCalibrationParams) ProtoMessage() {} + +func (x *VoiceCalibrationParams) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[375] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use VoiceCalibrationParams.ProtoReflect.Descriptor instead. +func (*VoiceCalibrationParams) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{375} +} + +func (x *VoiceCalibrationParams) GetLon() float64 { + if x != nil { + return x.Lon + } + return 0 +} + +func (x *VoiceCalibrationParams) GetLat() float64 { + if x != nil { + return x.Lat + } + return 0 +} + +// source: voiceassistant +type VoiceFocusParams struct { + state protoimpl.MessageState `protogen:"open.v1"` + IsInfinity bool `protobuf:"varint,1,opt,name=is_infinity,json=isInfinity,proto3" json:"is_infinity,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *VoiceFocusParams) Reset() { + *x = VoiceFocusParams{} + mi := &file_dwarf_proto_msgTypes[376] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *VoiceFocusParams) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*VoiceFocusParams) ProtoMessage() {} + +func (x *VoiceFocusParams) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[376] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use VoiceFocusParams.ProtoReflect.Descriptor instead. +func (*VoiceFocusParams) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{376} +} + +func (x *VoiceFocusParams) GetIsInfinity() bool { + if x != nil { + return x.IsInfinity + } + return false +} + +// source: voiceassistant +type ResVoiceCommand struct { + state protoimpl.MessageState `protogen:"open.v1"` + // oneof result + Code int32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"` + Message string `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"` + CommandType VoiceCommandType `protobuf:"varint,3,opt,name=command_type,json=commandType,proto3,enum=VoiceCommandType" json:"command_type,omitempty"` + StatusResult *VoiceStatusResult `protobuf:"bytes,10,opt,name=status_result,json=statusResult,proto3" json:"status_result,omitempty"` + OperationResult *VoiceOperationResult `protobuf:"bytes,11,opt,name=operation_result,json=operationResult,proto3" json:"operation_result,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResVoiceCommand) Reset() { + *x = ResVoiceCommand{} + mi := &file_dwarf_proto_msgTypes[377] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResVoiceCommand) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResVoiceCommand) ProtoMessage() {} + +func (x *ResVoiceCommand) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[377] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResVoiceCommand.ProtoReflect.Descriptor instead. +func (*ResVoiceCommand) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{377} +} + +func (x *ResVoiceCommand) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ResVoiceCommand) GetMessage() string { + if x != nil { + return x.Message + } + return "" +} + +func (x *ResVoiceCommand) GetCommandType() VoiceCommandType { + if x != nil { + return x.CommandType + } + return VoiceCommandType_VOICE_CMD_UNKNOWN +} + +func (x *ResVoiceCommand) GetStatusResult() *VoiceStatusResult { + if x != nil { + return x.StatusResult + } + return nil +} + +func (x *ResVoiceCommand) GetOperationResult() *VoiceOperationResult { + if x != nil { + return x.OperationResult + } + return nil +} + +// source: voiceassistant +type AstroShootingProgress struct { + state protoimpl.MessageState `protogen:"open.v1"` + TargetName string `protobuf:"bytes,1,opt,name=target_name,json=targetName,proto3" json:"target_name,omitempty"` + CapturedCount int32 `protobuf:"varint,2,opt,name=captured_count,json=capturedCount,proto3" json:"captured_count,omitempty"` + TotalCount int32 `protobuf:"varint,3,opt,name=total_count,json=totalCount,proto3" json:"total_count,omitempty"` + StackedCount int32 `protobuf:"varint,4,opt,name=stacked_count,json=stackedCount,proto3" json:"stacked_count,omitempty"` + ProgressPercentage int32 `protobuf:"varint,5,opt,name=progress_percentage,json=progressPercentage,proto3" json:"progress_percentage,omitempty"` + ElapsedTime int64 `protobuf:"varint,6,opt,name=elapsed_time,json=elapsedTime,proto3" json:"elapsed_time,omitempty"` + RemainingTime int64 `protobuf:"varint,7,opt,name=remaining_time,json=remainingTime,proto3" json:"remaining_time,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *AstroShootingProgress) Reset() { + *x = AstroShootingProgress{} + mi := &file_dwarf_proto_msgTypes[378] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *AstroShootingProgress) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AstroShootingProgress) ProtoMessage() {} + +func (x *AstroShootingProgress) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[378] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AstroShootingProgress.ProtoReflect.Descriptor instead. +func (*AstroShootingProgress) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{378} +} + +func (x *AstroShootingProgress) GetTargetName() string { + if x != nil { + return x.TargetName + } + return "" +} + +func (x *AstroShootingProgress) GetCapturedCount() int32 { + if x != nil { + return x.CapturedCount + } + return 0 +} + +func (x *AstroShootingProgress) GetTotalCount() int32 { + if x != nil { + return x.TotalCount + } + return 0 +} + +func (x *AstroShootingProgress) GetStackedCount() int32 { + if x != nil { + return x.StackedCount + } + return 0 +} + +func (x *AstroShootingProgress) GetProgressPercentage() int32 { + if x != nil { + return x.ProgressPercentage + } + return 0 +} + +func (x *AstroShootingProgress) GetElapsedTime() int64 { + if x != nil { + return x.ElapsedTime + } + return 0 +} + +func (x *AstroShootingProgress) GetRemainingTime() int64 { + if x != nil { + return x.RemainingTime + } + return 0 +} + +// source: voiceassistant +type VoiceStatusResult struct { + state protoimpl.MessageState `protogen:"open.v1"` + DeviceStateInfo *ResGetDeviceStateInfo `protobuf:"bytes,1,opt,name=device_state_info,json=deviceStateInfo,proto3" json:"device_state_info,omitempty"` + AstroProgress *AstroShootingProgress `protobuf:"bytes,2,opt,name=astro_progress,json=astroProgress,proto3" json:"astro_progress,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *VoiceStatusResult) Reset() { + *x = VoiceStatusResult{} + mi := &file_dwarf_proto_msgTypes[379] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *VoiceStatusResult) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*VoiceStatusResult) ProtoMessage() {} + +func (x *VoiceStatusResult) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[379] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use VoiceStatusResult.ProtoReflect.Descriptor instead. +func (*VoiceStatusResult) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{379} +} + +func (x *VoiceStatusResult) GetDeviceStateInfo() *ResGetDeviceStateInfo { + if x != nil { + return x.DeviceStateInfo + } + return nil +} + +func (x *VoiceStatusResult) GetAstroProgress() *AstroShootingProgress { + if x != nil { + return x.AstroProgress + } + return nil +} + +// source: voiceassistant +type VoiceOperationResult struct { + state protoimpl.MessageState `protogen:"open.v1"` + Success bool `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"` + DetailMessage string `protobuf:"bytes,2,opt,name=detail_message,json=detailMessage,proto3" json:"detail_message,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *VoiceOperationResult) Reset() { + *x = VoiceOperationResult{} + mi := &file_dwarf_proto_msgTypes[380] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *VoiceOperationResult) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*VoiceOperationResult) ProtoMessage() {} + +func (x *VoiceOperationResult) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[380] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use VoiceOperationResult.ProtoReflect.Descriptor instead. +func (*VoiceOperationResult) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{380} +} + +func (x *VoiceOperationResult) GetSuccess() bool { + if x != nil { + return x.Success + } + return false +} + +func (x *VoiceOperationResult) GetDetailMessage() string { + if x != nil { + return x.DetailMessage + } + return "" +} + +// source: voiceassistant +type ResNotifyVoiceAssistant struct { + state protoimpl.MessageState `protogen:"open.v1"` + CommandType VoiceCommandType `protobuf:"varint,1,opt,name=command_type,json=commandType,proto3,enum=VoiceCommandType" json:"command_type,omitempty"` + State OperationState `protobuf:"varint,2,opt,name=state,proto3,enum=OperationState" json:"state,omitempty"` + Message string `protobuf:"bytes,4,opt,name=message,proto3" json:"message,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ResNotifyVoiceAssistant) Reset() { + *x = ResNotifyVoiceAssistant{} + mi := &file_dwarf_proto_msgTypes[381] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResNotifyVoiceAssistant) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResNotifyVoiceAssistant) ProtoMessage() {} + +func (x *ResNotifyVoiceAssistant) ProtoReflect() protoreflect.Message { + mi := &file_dwarf_proto_msgTypes[381] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResNotifyVoiceAssistant.ProtoReflect.Descriptor instead. +func (*ResNotifyVoiceAssistant) Descriptor() ([]byte, []int) { + return file_dwarf_proto_rawDescGZIP(), []int{381} +} + +func (x *ResNotifyVoiceAssistant) GetCommandType() VoiceCommandType { + if x != nil { + return x.CommandType + } + return VoiceCommandType_VOICE_CMD_UNKNOWN +} + +func (x *ResNotifyVoiceAssistant) GetState() OperationState { + if x != nil { + return x.State + } + return OperationState_OPERATION_STATE_IDLE +} + +func (x *ResNotifyVoiceAssistant) GetMessage() string { + if x != nil { + return x.Message + } + return "" +} + +var File_dwarf_proto protoreflect.FileDescriptor + +const file_dwarf_proto_rawDesc = "" + + "\n" + + "\vdwarf.proto\"9\n" + + "\x13ReqStartCalibration\x12\x10\n" + + "\x03lon\x18\x01 \x01(\x01R\x03lon\x12\x10\n" + + "\x03lat\x18\x02 \x01(\x01R\x03lat\"\x14\n" + + "\x12ReqStopCalibration\"l\n" + + "\n" + + "ReqGotoDSO\x12\x0e\n" + + "\x02ra\x18\x01 \x01(\x01R\x02ra\x12\x10\n" + + "\x03dec\x18\x02 \x01(\x01R\x03dec\x12\x1f\n" + + "\vtarget_name\x18\x03 \x01(\tR\n" + + "targetName\x12\x1b\n" + + "\tgoto_only\x18\x04 \x01(\bR\bgotoOnly\"\x90\x01\n" + + "\x12ReqGotoSolarSystem\x12\x14\n" + + "\x05index\x18\x01 \x01(\x05R\x05index\x12\x10\n" + + "\x03lon\x18\x02 \x01(\x01R\x03lon\x12\x10\n" + + "\x03lat\x18\x03 \x01(\x01R\x03lat\x12\x1f\n" + + "\vtarget_name\x18\x04 \x01(\tR\n" + + "targetName\x12\x1f\n" + + "\vforce_start\x18\x05 \x01(\bR\n" + + "forceStart\"O\n" + + "\x12ResGotoSolarSystem\x12\x12\n" + + "\x04code\x18\x01 \x01(\x05R\x04code\x12%\n" + + "\x03req\x18\x02 \x01(\v2\x13.ReqGotoSolarSystemR\x03req\"\r\n" + + "\vReqStopGoto\"W\n" + + "\x19ReqCaptureRawLiveStacking\x12\x19\n" + + "\bir_index\x18\x01 \x01(\x05R\airIndex\x12\x1f\n" + + "\vforce_start\x18\x02 \x01(\bR\n" + + "forceStart\"\x1f\n" + + "\x1dReqStopCaptureRawLiveStacking\"#\n" + + "!ReqFastStopCaptureRawLiveStacking\"\x13\n" + + "\x11ReqCheckDarkFrame\"C\n" + + "\x11ResCheckDarkFrame\x12\x1a\n" + + "\bprogress\x18\x01 \x01(\x05R\bprogress\x12\x12\n" + + "\x04code\x18\x02 \x01(\x05R\x04code\"/\n" + + "\x13ReqCaptureDarkFrame\x12\x18\n" + + "\areshoot\x18\x01 \x01(\x05R\areshoot\"\x19\n" + + "\x17ReqStopCaptureDarkFrame\"\x92\x01\n" + + "\x1cReqCaptureDarkFrameWithParam\x12\x1b\n" + + "\texp_index\x18\x01 \x01(\x05R\bexpIndex\x12\x1d\n" + + "\n" + + "gain_index\x18\x02 \x01(\x05R\tgainIndex\x12\x1b\n" + + "\tbin_index\x18\x03 \x01(\x05R\bbinIndex\x12\x19\n" + + "\bcap_size\x18\x04 \x01(\x05R\acapSize\"\"\n" + + " ReqStopCaptureDarkFrameWithParam\"\x15\n" + + "\x13ReqGetDarkFrameList\"\xe3\x01\n" + + "\x13ResGetDarkFrameInfo\x12\x1b\n" + + "\texp_index\x18\x01 \x01(\x05R\bexpIndex\x12\x1d\n" + + "\n" + + "gain_index\x18\x02 \x01(\x05R\tgainIndex\x12\x1b\n" + + "\tbin_index\x18\x03 \x01(\x05R\bbinIndex\x12\x19\n" + + "\bexp_name\x18\x04 \x01(\tR\aexpName\x12\x1b\n" + + "\tgain_name\x18\x05 \x01(\tR\bgainName\x12\x19\n" + + "\bbin_name\x18\x06 \x01(\tR\abinName\x12 \n" + + "\vtemperature\x18\a \x01(\x05R\vtemperature\"]\n" + + "\x17ResGetDarkFrameInfoList\x12\x12\n" + + "\x04code\x18\x01 \x01(\x05R\x04code\x12.\n" + + "\aresults\x18\x02 \x03(\v2\x14.ResGetDarkFrameInfoR\aresults\"\x89\x01\n" + + "\x0fReqDelDarkFrame\x12\x1b\n" + + "\texp_index\x18\x01 \x01(\x05R\bexpIndex\x12\x1d\n" + + "\n" + + "gain_index\x18\x02 \x01(\x05R\tgainIndex\x12\x1b\n" + + "\tbin_index\x18\x03 \x01(\x05R\bbinIndex\x12\x1d\n" + + "\n" + + "temp_value\x18\x04 \x01(\x05R\ttempValue\"D\n" + + "\x13ReqDelDarkFrameList\x12-\n" + + "\tdark_list\x18\x01 \x03(\v2\x10.ReqDelDarkFrameR\bdarkList\")\n" + + "\x13ResDelDarkFrameList\x12\x12\n" + + "\x04code\x18\x01 \x01(\x05R\x04code\"\v\n" + + "\tReqGoLive\"Q\n" + + "\x15ReqTrackSpecialTarget\x12\x14\n" + + "\x05index\x18\x01 \x01(\x05R\x05index\x12\x10\n" + + "\x03lon\x18\x02 \x01(\x01R\x03lon\x12\x10\n" + + "\x03lat\x18\x03 \x01(\x01R\x03lat\"\x1b\n" + + "\x19ReqStopTrackSpecialTarget\"\xbd\x01\n" + + "\x12ReqOneClickGotoDSO\x12\x0e\n" + + "\x02ra\x18\x01 \x01(\x01R\x02ra\x12\x10\n" + + "\x03dec\x18\x02 \x01(\x01R\x03dec\x12\x1f\n" + + "\vtarget_name\x18\x03 \x01(\tR\n" + + "targetName\x12\x10\n" + + "\x03lon\x18\x04 \x01(\x01R\x03lon\x12\x10\n" + + "\x03lat\x18\x05 \x01(\x01R\x03lat\x12#\n" + + "\rshooting_mode\x18\x06 \x01(\x05R\fshootingMode\x12\x1b\n" + + "\tgoto_only\x18\a \x01(\bR\bgotoOnly\"R\n" + + "\x0fResOneClickGoto\x12\x12\n" + + "\x04step\x18\x01 \x01(\x05R\x04step\x12\x12\n" + + "\x04code\x18\x02 \x01(\x05R\x04code\x12\x17\n" + + "\aall_end\x18\x03 \x01(\bR\x06allEnd\"\xbd\x01\n" + + "\x1aReqOneClickGotoSolarSystem\x12\x14\n" + + "\x05index\x18\x01 \x01(\x05R\x05index\x12\x10\n" + + "\x03lon\x18\x02 \x01(\x01R\x03lon\x12\x10\n" + + "\x03lat\x18\x03 \x01(\x01R\x03lat\x12\x1f\n" + + "\vtarget_name\x18\x04 \x01(\tR\n" + + "targetName\x12#\n" + + "\rshooting_mode\x18\x05 \x01(\x05R\fshootingMode\x12\x1f\n" + + "\vforce_start\x18\x06 \x01(\bR\n" + + "forceStart\"\x8c\x01\n" + + "\x1aResOneClickGotoSolarSystem\x12\x12\n" + + "\x04step\x18\x01 \x01(\x05R\x04step\x12\x12\n" + + "\x04code\x18\x02 \x01(\x05R\x04code\x12\x17\n" + + "\aall_end\x18\x03 \x01(\bR\x06allEnd\x12-\n" + + "\x03req\x18\x04 \x01(\v2\x1b.ReqOneClickGotoSolarSystemR\x03req\"\x15\n" + + "\x13ReqStopOneClickGoto\"@\n" + + "\x1dReqCaptureWideRawLiveStacking\x12\x1f\n" + + "\vforce_start\x18\x01 \x01(\bR\n" + + "forceStart\"#\n" + + "!ReqStopCaptureWideRawLiveStacking\"'\n" + + "%ReqFastStopCaptureWideRawLiveStacking\"7\n" + + "\x11ReqStartEqSolving\x12\x10\n" + + "\x03lon\x18\x01 \x01(\x01R\x03lon\x12\x10\n" + + "\x03lat\x18\x02 \x01(\x01R\x03lat\"Y\n" + + "\x11ResStartEqSolving\x12\x17\n" + + "\aazi_err\x18\x01 \x01(\x01R\x06aziErr\x12\x17\n" + + "\aalt_err\x18\x02 \x01(\x01R\x06altErr\x12\x12\n" + + "\x04code\x18\x03 \x01(\x05R\x04code\"\x12\n" + + "\x10ReqStopEqSolving\"\x13\n" + + "\x11ReqStartAiEnhance\"\x12\n" + + "\x10ReqStopAiEnhance\"\xba\x01\n" + + "\x0eReqStartMosaic\x12)\n" + + "\x10horizontal_scale\x18\x01 \x01(\x05R\x0fhorizontalScale\x12%\n" + + "\x0evertical_scale\x18\x02 \x01(\x05R\rverticalScale\x12\x1a\n" + + "\brotation\x18\x03 \x01(\x05R\brotation\x12\x19\n" + + "\bir_index\x18\x04 \x01(\x05R\airIndex\x12\x1f\n" + + "\vforce_start\x18\x05 \x01(\bR\n" + + "forceStart\"0\n" + + "\x15ReqStartMakeFitsThumb\x12\x17\n" + + "\asrc_dir\x18\x01 \x01(\tR\x06srcDir\"\x16\n" + + "\x14ReqStopMakeFitsThumb\"?\n" + + "\x10ResMakeFitsThumb\x12\x12\n" + + "\x04code\x18\x01 \x01(\x05R\x04code\x12\x17\n" + + "\asrc_dir\x18\x02 \x01(\tR\x06srcDir\"1\n" + + "\x16MakeFitsThumbTaskParam\x12\x17\n" + + "\asrc_dir\x18\x01 \x01(\tR\x06srcDir\"0\n" + + "\x13ReqIsImageStackable\x12\x19\n" + + "\bsrc_dirs\x18\x01 \x03(\tR\asrcDirs\"p\n" + + "\x13ResIsImageStackable\x12\x12\n" + + "\x04code\x18\x01 \x01(\x05R\x04code\x12E\n" + + "\x14need_dark_frame_info\x18\x02 \x03(\v2\x14.ResGetDarkFrameInfoR\x11needDarkFrameInfo\"2\n" + + "\x15ReqStartRepostprocess\x12\x19\n" + + "\bsrc_dirs\x18\x01 \x03(\tR\asrcDirs\"\x16\n" + + "\x14ReqStopRepostprocess\"E\n" + + "\x10ResRepostprocess\x12\x12\n" + + "\x04code\x18\x01 \x01(\x05R\x04code\x12\x1d\n" + + "\n" + + "result_dir\x18\x02 \x01(\tR\tresultDir\"7\n" + + "\x16RepostprocessTaskParam\x12\x1d\n" + + "\n" + + "result_dir\x18\x01 \x01(\tR\tresultDir\"\xe0\x01\n" + + "\x17ReqGetAstroShootingTime\x12\x1b\n" + + "\texp_index\x18\x01 \x01(\x05R\bexpIndex\x12)\n" + + "\x10horizontal_scale\x18\x02 \x01(\x05R\x0fhorizontalScale\x12%\n" + + "\x0evertical_scale\x18\x03 \x01(\x05R\rverticalScale\x12\x1a\n" + + "\brotation\x18\x04 \x01(\x05R\brotation\x12\x15\n" + + "\x06cam_id\x18\x05 \x01(\x05R\x05camId\x12#\n" + + "\rshooting_mode\x18\x06 \x01(\x05R\fshootingMode\"\xf6\x01\n" + + "\x17ResGetAstroShootingTime\x12\x12\n" + + "\x04code\x18\x01 \x01(\x05R\x04code\x12#\n" + + "\rshooting_time\x18\x02 \x01(\x05R\fshootingTime\x12\x15\n" + + "\x06cam_id\x18\x03 \x01(\x05R\x05camId\x12A\n" + + "\n" + + "astro_mode\x18\x04 \x01(\x0e2\".ResGetAstroShootingTime.AstroModeR\tastroMode\x12#\n" + + "\rshooting_mode\x18\x05 \x01(\x05R\fshootingMode\"#\n" + + "\tAstroMode\x12\n" + + "\n" + + "\x06NORMAL\x10\x00\x12\n" + + "\n" + + "\x06MOSAIC\x10\x01\"^\n" + + "\x13ReqGetCaliFrameList\x12\x1f\n" + + "\vcamera_type\x18\x01 \x01(\x05R\n" + + "cameraType\x12&\n" + + "\x0fcali_frame_type\x18\x02 \x01(\x05R\rcaliFrameType\"\x9c\x02\n" + + "\rCaliFrameInfo\x12\x19\n" + + "\bexp_name\x18\x01 \x01(\tR\aexpName\x12\x12\n" + + "\x04gain\x18\x02 \x01(\x05R\x04gain\x12\x1e\n" + + "\n" + + "resolution\x18\x03 \x01(\x05R\n" + + "resolution\x12\x1f\n" + + "\vcamera_type\x18\x04 \x01(\x05R\n" + + "cameraType\x12\x1a\n" + + "\bprogress\x18\x05 \x01(\x05R\bprogress\x12&\n" + + "\x0fcali_frame_type\x18\x06 \x01(\x05R\rcaliFrameType\x12\x1f\n" + + "\vfilter_type\x18\a \x01(\x05R\n" + + "filterType\x12\x17\n" + + "\ainfo_id\x18\b \x01(\x05R\x06infoId\x12\x1d\n" + + "\n" + + "temp_value\x18\t \x01(\x05R\ttempValue\"\x96\x01\n" + + "\x13ResGetCaliFrameList\x12\x12\n" + + "\x04code\x18\x01 \x01(\x05R\x04code\x12\"\n" + + "\x04list\x18\x02 \x03(\v2\x0e.CaliFrameInfoR\x04list\x12\x1f\n" + + "\vcamera_type\x18\x03 \x01(\x05R\n" + + "cameraType\x12&\n" + + "\x0fcali_frame_type\x18\x04 \x01(\x05R\rcaliFrameType\"0\n" + + "\x13ReqDelCaliFrameList\x12\x19\n" + + "\binfo_ids\x18\x01 \x03(\x05R\ainfoIds\"\x8a\x02\n" + + "\x13ReqCaptureCaliFrame\x12\x1b\n" + + "\texp_index\x18\x01 \x01(\x05R\bexpIndex\x12\x12\n" + + "\x04gain\x18\x02 \x01(\x05R\x04gain\x12\x1e\n" + + "\n" + + "resolution\x18\x03 \x01(\x05R\n" + + "resolution\x12\x19\n" + + "\bcap_size\x18\x04 \x01(\x05R\acapSize\x12\x1f\n" + + "\vcamera_type\x18\x05 \x01(\x05R\n" + + "cameraType\x12&\n" + + "\x0fcali_frame_type\x18\x06 \x01(\x05R\rcaliFrameType\x12\x1f\n" + + "\vfilter_type\x18\a \x01(\x05R\n" + + "filterType\x12\x1d\n" + + "\n" + + "scene_type\x18\b \x01(\x05R\tsceneType\":\n" + + "\x17ReqStopCaptureCaliFrame\x12\x1f\n" + + "\vcamera_type\x18\x01 \x01(\x05R\n" + + "cameraType\"d\n" + + "\x19CaptureCaliFrameTaskParam\x12\x1f\n" + + "\vcamera_type\x18\x01 \x01(\x05R\n" + + "cameraType\x12&\n" + + "\x0fcali_frame_type\x18\x02 \x01(\x05R\rcaliFrameType\"5\n" + + "\x12ReqGetQuickSetList\x12\x1f\n" + + "\vcamera_type\x18\x01 \x01(\x05R\n" + + "cameraType\"\xb3\x01\n" + + "\vQuikSetInfo\x12\x19\n" + + "\bexp_name\x18\x01 \x01(\tR\aexpName\x12\x1b\n" + + "\texp_index\x18\x02 \x01(\x05R\bexpIndex\x12\x12\n" + + "\x04gain\x18\x03 \x01(\x05R\x04gain\x12\x1e\n" + + "\n" + + "resolution\x18\x04 \x01(\x05R\n" + + "resolution\x12\x1f\n" + + "\vcamera_type\x18\x05 \x01(\x05R\n" + + "cameraType\x12\x17\n" + + "\ainfo_id\x18\x06 \x01(\tR\x06infoId\"|\n" + + "\x11ResGetQuikSetList\x12\x12\n" + + "\x04code\x18\x01 \x01(\x05R\x04code\x122\n" + + "\x0equick_set_list\x18\x02 \x03(\v2\f.QuikSetInfoR\fquickSetList\x12\x1f\n" + + "\vcamera_type\x18\x03 \x01(\x05R\n" + + "cameraType\")\n" + + "\x0eReqSetQuickSet\x12\x17\n" + + "\ainfo_id\x18\x01 \x01(\tR\x06infoId\"=\n" + + "\x0eResSetQuickSet\x12\x12\n" + + "\x04code\x18\x01 \x01(\x05R\x04code\x12\x17\n" + + "\ainfo_id\x18\x02 \x01(\tR\x06infoId\"\x15\n" + + "\x13ReqOneClickShooting\"\xbd\x01\n" + + "\x10ResAstroShooting\x12\x12\n" + + "\x04code\x18\x01 \x01(\x05R\x04code\x12\x19\n" + + "\bexp_name\x18\x02 \x01(\tR\aexpName\x12\x12\n" + + "\x04gain\x18\x03 \x01(\x05R\x04gain\x12\x1e\n" + + "\n" + + "resolution\x18\x04 \x01(\x05R\n" + + "resolution\x12\x1f\n" + + "\vfilter_type\x18\x05 \x01(\x05R\n" + + "filterType\x12%\n" + + "\x0etemp_threshold\x18\x06 \x01(\x05R\rtempThreshold\"\x81\x01\n" + + "\x17ReqStartSkyTargetFinder\x12\x10\n" + + "\x03lon\x18\x01 \x01(\x01R\x03lon\x12\x10\n" + + "\x03lat\x18\x02 \x01(\x01R\x03lat\x12#\n" + + "\rforce_restart\x18\x03 \x01(\bR\fforceRestart\x12\x1d\n" + + "\n" + + "scene_type\x18\x04 \x01(\x05R\tsceneType\"\xe9\x01\n" + + "\x17ResStartSkyTargetFinder\x12\x12\n" + + "\x04code\x18\x01 \x01(\x05R\x04code\x12\x1d\n" + + "\n" + + "zenith_azi\x18\x02 \x01(\x01R\tzenithAzi\x12\x1d\n" + + "\n" + + "zenith_alt\x18\x03 \x01(\x01R\tzenithAlt\x12\x1d\n" + + "\n" + + "center_azi\x18\x04 \x01(\x01R\tcenterAzi\x12\x1d\n" + + "\n" + + "center_alt\x18\x05 \x01(\x01R\tcenterAlt\x12\x1f\n" + + "\vcenter_roll\x18\x06 \x01(\x01R\n" + + "centerRoll\x12\x1d\n" + + "\n" + + "scene_type\x18\a \x01(\x05R\tsceneType\"\x18\n" + + "\x16ReqStopSkyTargetFinder\"\xe5\x01\n" + + "\bWsPacket\x12#\n" + + "\rmajor_version\x18\x01 \x01(\rR\fmajorVersion\x12#\n" + + "\rminor_version\x18\x02 \x01(\rR\fminorVersion\x12\x1b\n" + + "\tdevice_id\x18\x03 \x01(\rR\bdeviceId\x12\x1b\n" + + "\tmodule_id\x18\x04 \x01(\rR\bmoduleId\x12\x10\n" + + "\x03cmd\x18\x05 \x01(\rR\x03cmd\x12\x12\n" + + "\x04type\x18\x06 \x01(\rR\x04type\x12\x12\n" + + "\x04data\x18\a \x01(\fR\x04data\x12\x1b\n" + + "\tclient_id\x18\b \x01(\tR\bclientId\"!\n" + + "\vComResponse\x12\x12\n" + + "\x04code\x18\x01 \x01(\x05R\x04code\"9\n" + + "\rComResWithInt\x12\x14\n" + + "\x05value\x18\x01 \x01(\x05R\x05value\x12\x12\n" + + "\x04code\x18\x02 \x01(\x05R\x04code\"<\n" + + "\x10ComResWithDouble\x12\x14\n" + + "\x05value\x18\x01 \x01(\x01R\x05value\x12\x12\n" + + "\x04code\x18\x02 \x01(\x05R\x04code\"8\n" + + "\x10ComResWithString\x12\x10\n" + + "\x03str\x18\x01 \x01(\tR\x03str\x12\x12\n" + + "\x04code\x18\x02 \x01(\x05R\x04code\"\xb0\x01\n" + + "\vCommonParam\x12\x18\n" + + "\ahasAuto\x18\x01 \x01(\bR\ahasAuto\x12\x1b\n" + + "\tauto_mode\x18\x02 \x01(\x05R\bautoMode\x12\x0e\n" + + "\x02id\x18\x03 \x01(\x05R\x02id\x12\x1d\n" + + "\n" + + "mode_index\x18\x04 \x01(\x05R\tmodeIndex\x12\x14\n" + + "\x05index\x18\x05 \x01(\x05R\x05index\x12%\n" + + "\x0econtinue_value\x18\x06 \x01(\x01R\rcontinueValue\"V\n" + + "\fReqGetconfig\x12\x10\n" + + "\x03cmd\x18\x01 \x01(\x05R\x03cmd\x12\x17\n" + + "\able_psd\x18\x02 \x01(\tR\x06blePsd\x12\x1b\n" + + "\tclient_id\x18\x03 \x01(\tR\bclientId\"\xed\x01\n" + + "\x05ReqAp\x12\x10\n" + + "\x03cmd\x18\x01 \x01(\x05R\x03cmd\x12\x1b\n" + + "\twifi_type\x18\x02 \x01(\x05R\bwifiType\x12\x1d\n" + + "\n" + + "auto_start\x18\x03 \x01(\x05R\tautoStart\x12!\n" + + "\fcountry_list\x18\x04 \x01(\x05R\vcountryList\x12\x18\n" + + "\acountry\x18\x05 \x01(\tR\acountry\x12\x17\n" + + "\able_psd\x18\x06 \x01(\tR\x06blePsd\x12\x1b\n" + + "\tclient_id\x18\a \x01(\tR\bclientId\x12#\n" + + "\rforce_restart\x18\b \x01(\bR\fforceRestart\"\x95\x01\n" + + "\x06ReqSta\x12\x10\n" + + "\x03cmd\x18\x01 \x01(\x05R\x03cmd\x12\x1d\n" + + "\n" + + "auto_start\x18\x02 \x01(\x05R\tautoStart\x12\x17\n" + + "\able_psd\x18\x03 \x01(\tR\x06blePsd\x12\x12\n" + + "\x04ssid\x18\x04 \x01(\tR\x04ssid\x12\x10\n" + + "\x03psd\x18\x05 \x01(\tR\x03psd\x12\x1b\n" + + "\tclient_id\x18\x06 \x01(\tR\bclientId\"\x81\x01\n" + + "\rReqSetblewifi\x12\x10\n" + + "\x03cmd\x18\x01 \x01(\x05R\x03cmd\x12\x12\n" + + "\x04mode\x18\x02 \x01(\x05R\x04mode\x12\x17\n" + + "\able_psd\x18\x03 \x01(\tR\x06blePsd\x12\x14\n" + + "\x05value\x18\x04 \x01(\tR\x05value\x12\x1b\n" + + "\tclient_id\x18\x05 \x01(\tR\bclientId\"9\n" + + "\bReqReset\x12\x10\n" + + "\x03cmd\x18\x01 \x01(\x05R\x03cmd\x12\x1b\n" + + "\tclient_id\x18\x02 \x01(\tR\bclientId\"?\n" + + "\x0eReqGetwifilist\x12\x10\n" + + "\x03cmd\x18\x01 \x01(\x05R\x03cmd\x12\x1b\n" + + "\tclient_id\x18\x02 \x01(\tR\bclientId\"A\n" + + "\x10ReqGetsysteminfo\x12\x10\n" + + "\x03cmd\x18\x01 \x01(\x05R\x03cmd\x12\x1b\n" + + "\tclient_id\x18\x02 \x01(\tR\bclientId\"O\n" + + "\fReqCheckFile\x12\x10\n" + + "\x03cmd\x18\x01 \x01(\x05R\x03cmd\x12\x1b\n" + + "\tfile_path\x18\x02 \x01(\tR\bfilePath\x12\x10\n" + + "\x03md5\x18\x03 \x01(\tR\x03md5\"1\n" + + "\tResCommon\x12\x10\n" + + "\x03cmd\x18\x01 \x01(\x05R\x03cmd\x12\x12\n" + + "\x04code\x18\x02 \x01(\x05R\x04code\"\x9c\x02\n" + + "\fResGetconfig\x12\x10\n" + + "\x03cmd\x18\x01 \x01(\x05R\x03cmd\x12\x12\n" + + "\x04code\x18\x02 \x01(\x05R\x04code\x12\x14\n" + + "\x05state\x18\x03 \x01(\x05R\x05state\x12\x1b\n" + + "\twifi_mode\x18\x04 \x01(\x05R\bwifiMode\x12\x17\n" + + "\aap_mode\x18\x05 \x01(\x05R\x06apMode\x12\x1d\n" + + "\n" + + "auto_start\x18\x06 \x01(\x05R\tautoStart\x12&\n" + + "\x0fap_country_list\x18\a \x01(\x05R\rapCountryList\x12\x12\n" + + "\x04ssid\x18\b \x01(\tR\x04ssid\x12\x10\n" + + "\x03psd\x18\t \x01(\tR\x03psd\x12\x0e\n" + + "\x02ip\x18\n" + + " \x01(\tR\x02ip\x12\x1d\n" + + "\n" + + "ap_country\x18\v \x01(\tR\tapCountry\"g\n" + + "\x05ResAp\x12\x10\n" + + "\x03cmd\x18\x01 \x01(\x05R\x03cmd\x12\x12\n" + + "\x04code\x18\x02 \x01(\x05R\x04code\x12\x12\n" + + "\x04mode\x18\x03 \x01(\x05R\x04mode\x12\x12\n" + + "\x04ssid\x18\x04 \x01(\tR\x04ssid\x12\x10\n" + + "\x03psd\x18\x05 \x01(\tR\x03psd\"d\n" + + "\x06ResSta\x12\x10\n" + + "\x03cmd\x18\x01 \x01(\x05R\x03cmd\x12\x12\n" + + "\x04code\x18\x02 \x01(\x05R\x04code\x12\x12\n" + + "\x04ssid\x18\x03 \x01(\tR\x04ssid\x12\x10\n" + + "\x03psd\x18\x04 \x01(\tR\x03psd\x12\x0e\n" + + "\x02ip\x18\x05 \x01(\tR\x02ip\"_\n" + + "\rResSetblewifi\x12\x10\n" + + "\x03cmd\x18\x01 \x01(\x05R\x03cmd\x12\x12\n" + + "\x04code\x18\x02 \x01(\x05R\x04code\x12\x12\n" + + "\x04mode\x18\x03 \x01(\x05R\x04mode\x12\x14\n" + + "\x05value\x18\x04 \x01(\tR\x05value\"0\n" + + "\bResReset\x12\x10\n" + + "\x03cmd\x18\x01 \x01(\x05R\x03cmd\x12\x12\n" + + "\x04code\x18\x02 \x01(\x05R\x04code\"r\n" + + "\bWifiInfo\x12!\n" + + "\fsignal_level\x18\x01 \x01(\x05R\vsignalLevel\x12\x12\n" + + "\x04ssid\x18\x02 \x01(\tR\x04ssid\x12/\n" + + "\x13security_capability\x18\x03 \x01(\tR\x12securityCapability\"x\n" + + "\vResWifilist\x12\x10\n" + + "\x03cmd\x18\x01 \x01(\x05R\x03cmd\x12\x12\n" + + "\x04code\x18\x02 \x01(\x05R\x04code\x12\x12\n" + + "\x04ssid\x18\x04 \x03(\tR\x04ssid\x12/\n" + + "\x0ewifi_info_list\x18\x05 \x03(\v2\t.WifiInfoR\fwifiInfoList\"\xc8\x01\n" + + "\x10ResGetsysteminfo\x12\x10\n" + + "\x03cmd\x18\x01 \x01(\x05R\x03cmd\x12\x12\n" + + "\x04code\x18\x02 \x01(\x05R\x04code\x12)\n" + + "\x10protocol_version\x18\x03 \x01(\x05R\x0fprotocolVersion\x12\x16\n" + + "\x06device\x18\x04 \x01(\tR\x06device\x12\x1f\n" + + "\vmac_address\x18\x05 \x01(\tR\n" + + "macAddress\x12*\n" + + "\x11dwarf_ota_version\x18\x06 \x01(\tR\x0fdwarfOtaVersion\";\n" + + "\x13ResReceiveDataError\x12\x10\n" + + "\x03cmd\x18\x01 \x01(\x05R\x03cmd\x12\x12\n" + + "\x04code\x18\x02 \x01(\x05R\x04code\"4\n" + + "\fResCheckFile\x12\x10\n" + + "\x03cmd\x18\x01 \x01(\x05R\x03cmd\x12\x12\n" + + "\x04code\x18\x02 \x01(\x05R\x04code\"7\n" + + "\vComDwarfMsg\x12(\n" + + "\tvocaltype\x18\x01 \x01(\x0e2\n" + + ".VocalTypeR\tvocaltype\"\x97\x01\n" + + "\tDwarfPing\x12(\n" + + "\tvocaltype\x18\x01 \x01(\x0e2\n" + + ".VocalTypeR\tvocaltype\x12\x1c\n" + + "\ttimestamp\x18\x02 \x01(\x04R\ttimestamp\x12\x14\n" + + "\x05magic\x18\x03 \x01(\fR\x05magic\x12\x16\n" + + "\x06vocals\x18\x04 \x03(\fR\x06vocals\x12\x14\n" + + "\x05mutes\x18\x05 \x03(\fR\x05mutes\"B\n" + + "\fStationModel\x12\x16\n" + + "\x06family\x18\x01 \x01(\rR\x06family\x12\x1a\n" + + "\brevision\x18\x02 \x01(\rR\brevision\"\xb6\x01\n" + + "\x05NifAP\x12\x16\n" + + "\x06ifname\x18\x01 \x01(\tR\x06ifname\x12\x12\n" + + "\x04mode\x18\x02 \x01(\x05R\x04mode\x12!\n" + + "\fcountry_code\x18\x03 \x01(\tR\vcountryCode\x12\x12\n" + + "\x04ssid\x18\x04 \x01(\tR\x04ssid\x12\x10\n" + + "\x03sec\x18\x05 \x01(\tR\x03sec\x12\x10\n" + + "\x03psw\x18\x06 \x01(\tR\x03psw\x12\x12\n" + + "\x04ipv4\x18\a \x01(\fR\x04ipv4\x12\x12\n" + + "\x04ipv6\x18\b \x01(\fR\x04ipv6\"\x82\x01\n" + + "\x06NifSTA\x12\x16\n" + + "\x06ifname\x18\x01 \x01(\tR\x06ifname\x12\x12\n" + + "\x04ssid\x18\x02 \x01(\tR\x04ssid\x12\x10\n" + + "\x03psw\x18\x03 \x01(\tR\x03psw\x12\x12\n" + + "\x04rssi\x18\x04 \x01(\x05R\x04rssi\x12\x12\n" + + "\x04ipv4\x18\x05 \x01(\fR\x04ipv4\x12\x12\n" + + "\x04ipv6\x18\x06 \x01(\fR\x04ipv6\"\x87\x03\n" + + "\tDwarfEcho\x12(\n" + + "\tvocaltype\x18\x01 \x01(\x0e2\n" + + ".VocalTypeR\tvocaltype\x12\x1c\n" + + "\ttimestamp\x18\x02 \x01(\x04R\ttimestamp\x12\x14\n" + + "\x05magic\x18\x03 \x01(\fR\x05magic\x12\x17\n" + + "\ats_ping\x18\x04 \x01(\x04R\x06tsPing\x12\x1f\n" + + "\vmac_address\x18\x05 \x01(\fR\n" + + "macAddress\x12#\n" + + "\x05model\x18\x06 \x01(\v2\r.StationModelR\x05model\x12\x0e\n" + + "\x02sn\x18\a \x01(\tR\x02sn\x12\x12\n" + + "\x04name\x18\b \x01(\tR\x04name\x12\x10\n" + + "\x03psw\x18\t \x01(\tR\x03psw\x12\x1d\n" + + "\n" + + "fw_version\x18\n" + + " \x01(\tR\tfwVersion\x12\x1b\n" + + "\tws_scheme\x18\v \x01(\tR\bwsScheme\x12\x18\n" + + "\asession\x18\f \x01(\rR\asession\x12\x16\n" + + "\x02ap\x18\r \x01(\v2\x06.NifAPR\x02ap\x12\x19\n" + + "\x03sta\x18\x0e \x01(\v2\a.NifSTAR\x03sta\"S\n" + + "\rReqOpenCamera\x12\x18\n" + + "\abinning\x18\x01 \x01(\bR\abinning\x12(\n" + + "\x10rtsp_encode_type\x18\x02 \x01(\x05R\x0ertspEncodeType\"\x10\n" + + "\x0eReqCloseCamera\"\n" + + "\n" + + "\bReqPhoto\"%\n" + + "\rReqBurstPhoto\x12\x14\n" + + "\x05count\x18\x01 \x01(\x05R\x05count\"\x13\n" + + "\x11ReqStopBurstPhoto\"1\n" + + "\x0eReqStartRecord\x12\x1f\n" + + "\vencode_type\x18\x01 \x01(\x05R\n" + + "encodeType\"\x0f\n" + + "\rReqStopRecord\"#\n" + + "\rReqSetExpMode\x12\x12\n" + + "\x04mode\x18\x01 \x01(\x05R\x04mode\"\x0f\n" + + "\rReqGetExpMode\"!\n" + + "\tReqSetExp\x12\x14\n" + + "\x05index\x18\x01 \x01(\x05R\x05index\"\v\n" + + "\tReqGetExp\"$\n" + + "\x0eReqSetGainMode\x12\x12\n" + + "\x04mode\x18\x01 \x01(\x05R\x04mode\"\x10\n" + + "\x0eReqGetGainMode\"\"\n" + + "\n" + + "ReqSetGain\x12\x14\n" + + "\x05index\x18\x01 \x01(\x05R\x05index\"\f\n" + + "\n" + + "ReqGetGain\"(\n" + + "\x10ReqSetBrightness\x12\x14\n" + + "\x05value\x18\x01 \x01(\x05R\x05value\"\x12\n" + + "\x10ReqGetBrightness\"&\n" + + "\x0eReqSetContrast\x12\x14\n" + + "\x05value\x18\x01 \x01(\x05R\x05value\"\x10\n" + + "\x0eReqGetContrast\"!\n" + + "\tReqSetHue\x12\x14\n" + + "\x05value\x18\x01 \x01(\x05R\x05value\"\v\n" + + "\tReqGetHue\"(\n" + + "\x10ReqSetSaturation\x12\x14\n" + + "\x05value\x18\x01 \x01(\x05R\x05value\"\x12\n" + + "\x10ReqGetSaturation\"'\n" + + "\x0fReqSetSharpness\x12\x14\n" + + "\x05value\x18\x01 \x01(\x05R\x05value\"\x11\n" + + "\x0fReqGetSharpness\"\"\n" + + "\fReqSetWBMode\x12\x12\n" + + "\x04mode\x18\x01 \x01(\x05R\x04mode\"\x0e\n" + + "\fReqGetWBMode\"%\n" + + "\rReqSetWBSence\x12\x14\n" + + "\x05value\x18\x01 \x01(\x05R\x05value\"\x0f\n" + + "\rReqGetWBSence\"\"\n" + + "\n" + + "ReqSetWBCT\x12\x14\n" + + "\x05index\x18\x01 \x01(\x05R\x05index\"\f\n" + + "\n" + + "ReqGetWBCT\"#\n" + + "\vReqSetIrCut\x12\x14\n" + + "\x05value\x18\x01 \x01(\x05R\x05value\"\r\n" + + "\vReqGetIrcut\"\x13\n" + + "\x11ReqStartTimeLapse\"\x12\n" + + "\x10ReqStopTimeLapse\"\xab\x03\n" + + "\x0fReqSetAllParams\x12\x19\n" + + "\bexp_mode\x18\x01 \x01(\x05R\aexpMode\x12\x1b\n" + + "\texp_index\x18\x02 \x01(\x05R\bexpIndex\x12\x1b\n" + + "\tgain_mode\x18\x03 \x01(\x05R\bgainMode\x12\x1d\n" + + "\n" + + "gain_index\x18\x04 \x01(\x05R\tgainIndex\x12\x1f\n" + + "\vircut_value\x18\x05 \x01(\x05R\n" + + "ircutValue\x12\x17\n" + + "\awb_mode\x18\x06 \x01(\x05R\x06wbMode\x12\"\n" + + "\rwb_index_type\x18\a \x01(\x05R\vwbIndexType\x12\x19\n" + + "\bwb_index\x18\b \x01(\x05R\awbIndex\x12\x1e\n" + + "\n" + + "brightness\x18\t \x01(\x05R\n" + + "brightness\x12\x1a\n" + + "\bcontrast\x18\n" + + " \x01(\x05R\bcontrast\x12\x10\n" + + "\x03hue\x18\v \x01(\x05R\x03hue\x12\x1e\n" + + "\n" + + "saturation\x18\f \x01(\x05R\n" + + "saturation\x12\x1c\n" + + "\tsharpness\x18\r \x01(\x05R\tsharpness\x12\x1f\n" + + "\vjpg_quality\x18\x0e \x01(\x05R\n" + + "jpgQuality\"\x11\n" + + "\x0fReqGetAllParams\"R\n" + + "\x0fResGetAllParams\x12+\n" + + "\n" + + "all_params\x18\x01 \x03(\v2\f.CommonParamR\tallParams\x12\x12\n" + + "\x04code\x18\x02 \x01(\x05R\x04code\"9\n" + + "\x13ReqSetFeatureParams\x12\"\n" + + "\x05param\x18\x01 \x01(\v2\f.CommonParamR\x05param\"\x18\n" + + "\x16ReqGetAllFeatureParams\"h\n" + + "\x16ResGetAllFeatureParams\x12:\n" + + "\x12all_feature_params\x18\x01 \x03(\v2\f.CommonParamR\x10allFeatureParams\x12\x12\n" + + "\x04code\x18\x02 \x01(\x05R\x04code\"\x1a\n" + + "\x18ReqGetSystemWorkingState\",\n" + + "\x10ReqSetJpgQuality\x12\x18\n" + + "\aquality\x18\x01 \x01(\x05R\aquality\"\x12\n" + + "\x10ReqGetJpgQuality\"\r\n" + + "\vReqPhotoRaw\":\n" + + "\x15ReqSetRtspBitRateType\x12!\n" + + "\fbitrate_type\x18\x01 \x01(\x05R\vbitrateType\"\x1c\n" + + "\x1aReqDisableAllIspProcessing\"\x1b\n" + + "\x19ReqEnableAllIspProcessing\"C\n" + + "\x0eIspModuleState\x12\x1b\n" + + "\tmodule_id\x18\x01 \x01(\x05R\bmoduleId\x12\x14\n" + + "\x05state\x18\x02 \x01(\bR\x05state\"L\n" + + "\x14ReqSetIspModuleState\x124\n" + + "\rmodule_states\x18\x01 \x03(\v2\x0f.IspModuleStateR\fmoduleStates\"5\n" + + "\x14ReqGetIspModuleState\x12\x1d\n" + + "\n" + + "module_ids\x18\x01 \x03(\x05R\tmoduleIds\"@\n" + + "\x13ReqSwitchResolution\x12)\n" + + "\x10resolution_index\x18\x01 \x01(\x05R\x0fresolutionIndex\"1\n" + + "\x12ReqSwitchFrameRate\x12\x1b\n" + + "\tfps_index\x18\x01 \x01(\x05R\bfpsIndex\"3\n" + + "\x12ReqSwitchCropRatio\x12\x1d\n" + + "\n" + + "crop_ratio\x18\x01 \x01(\x05R\tcropRatio\"F\n" + + "\x14ReqSetPreviewQuality\x12\x14\n" + + "\x05level\x18\x01 \x01(\rR\x05level\x12\x18\n" + + "\aquality\x18\x02 \x01(\rR\aquality\"$\n" + + "\fReqLensDefog\x12\x14\n" + + "\x05state\x18\x01 \x01(\x05R\x05state\"&\n" + + "\x0eReqAutoCooling\x12\x14\n" + + "\x05state\x18\x01 \x01(\x05R\x05state\"'\n" + + "\x0fReqAutoShutdown\x12\x14\n" + + "\x05state\x18\x01 \x01(\x05R\x05state\"8\n" + + "\x18ReqManualSingleStepFocus\x12\x1c\n" + + "\tdirection\x18\x01 \x01(\rR\tdirection\"5\n" + + "\x15ReqManualContinuFocus\x12\x1c\n" + + "\tdirection\x18\x01 \x01(\rR\tdirection\"\x1b\n" + + "\x19ReqStopManualContinuFocus\"^\n" + + "\x12ReqNormalAutoFocus\x12\x12\n" + + "\x04mode\x18\x01 \x01(\rR\x04mode\x12\x19\n" + + "\bcenter_x\x18\x02 \x01(\rR\acenterX\x12\x19\n" + + "\bcenter_y\x18\x03 \x01(\rR\acenterY\"'\n" + + "\x11ReqAstroAutoFocus\x12\x12\n" + + "\x04mode\x18\x01 \x01(\rR\x04mode\"\x17\n" + + "\x15ReqStopAstroAutoFocus\"\x17\n" + + "\x15ReqGetUserInfinityPos\")\n" + + "\x15ReqSetUserInfinityPos\x12\x10\n" + + "\x03pos\x18\x01 \x01(\x05R\x03pos\":\n" + + "\x12ResUserInfinityPos\x12\x12\n" + + "\x04code\x18\x01 \x01(\x05R\x04code\x12\x10\n" + + "\x03pos\x18\x02 \x01(\x05R\x03pos\"!\n" + + "\vReqITipsGet\x12\x12\n" + + "\x04mode\x18\x01 \x01(\x05R\x04mode\"T\n" + + "\vResITipsGet\x12\x12\n" + + "\x04mode\x18\x01 \x01(\x05R\x04mode\x12\x1d\n" + + "\n" + + "itips_code\x18\x02 \x01(\tR\titipsCode\x12\x12\n" + + "\x04code\x18\x03 \x01(\x05R\x04code\"O\n" + + "\vCommonITips\x12!\n" + + "\fitips_status\x18\x01 \x01(\x05R\vitipsStatus\x12\x1d\n" + + "\n" + + "itips_code\x18\x02 \x01(\tR\titipsCode\"x\n" + + "\x0fCommonStepITips\x12\x17\n" + + "\astep_id\x18\x01 \x01(\x05R\x06stepId\x12\x1f\n" + + "\vstep_status\x18\x02 \x01(\x05R\n" + + "stepStatus\x12+\n" + + "\n" + + "step_itips\x18\x03 \x03(\v2\f.CommonITipsR\tstepItips\"g\n" + + "\fResITipsList\x12/\n" + + "\n" + + "itips_list\x18\x01 \x03(\v2\x10.CommonStepITipsR\titipsList\x12\x12\n" + + "\x04mode\x18\x02 \x01(\x05R\x04mode\x12\x12\n" + + "\x04code\x18\x03 \x01(\x05R\x04code\"a\n" + + "\x17ReqMotorServiceJoystick\x12!\n" + + "\fvector_angle\x18\x01 \x01(\x01R\vvectorAngle\x12#\n" + + "\rvector_length\x18\x02 \x01(\x01R\fvectorLength\"k\n" + + "!ReqMotorServiceJoystickFixedAngle\x12!\n" + + "\fvector_angle\x18\x01 \x01(\x01R\vvectorAngle\x12#\n" + + "\rvector_length\x18\x02 \x01(\x01R\fvectorLength\"\x1d\n" + + "\x1bReqMotorServiceJoystickStop\"\xa1\x01\n" + + "\vReqMotorRun\x12\x0e\n" + + "\x02id\x18\x01 \x01(\x05R\x02id\x12\x14\n" + + "\x05speed\x18\x02 \x01(\x01R\x05speed\x12\x1c\n" + + "\tdirection\x18\x03 \x01(\bR\tdirection\x12#\n" + + "\rspeed_ramping\x18\x04 \x01(\x05R\fspeedRamping\x12)\n" + + "\x10resolution_level\x18\x05 \x01(\x05R\x0fresolutionLevel\"\xcf\x01\n" + + "\x12ReqMotorRunInPulse\x12\x0e\n" + + "\x02id\x18\x01 \x01(\x05R\x02id\x12\x1c\n" + + "\tfrequency\x18\x02 \x01(\x05R\tfrequency\x12\x1c\n" + + "\tdirection\x18\x03 \x01(\bR\tdirection\x12#\n" + + "\rspeed_ramping\x18\x04 \x01(\x05R\fspeedRamping\x12\x1e\n" + + "\n" + + "resolution\x18\x05 \x01(\x05R\n" + + "resolution\x12\x14\n" + + "\x05pulse\x18\x06 \x01(\x05R\x05pulse\x12\x12\n" + + "\x04mode\x18\a \x01(\bR\x04mode\"\xa8\x01\n" + + "\rReqMotorRunTo\x12\x0e\n" + + "\x02id\x18\x01 \x01(\x05R\x02id\x12!\n" + + "\fend_position\x18\x02 \x01(\x01R\vendPosition\x12\x14\n" + + "\x05speed\x18\x03 \x01(\x01R\x05speed\x12#\n" + + "\rspeed_ramping\x18\x04 \x01(\x05R\fspeedRamping\x12)\n" + + "\x10resolution_level\x18\x05 \x01(\x05R\x0fresolutionLevel\"%\n" + + "\x13ReqMotorGetPosition\x12\x0e\n" + + "\x02id\x18\x01 \x01(\x05R\x02id\"\x1e\n" + + "\fReqMotorStop\x12\x0e\n" + + "\x02id\x18\x01 \x01(\x05R\x02id\"=\n" + + "\rReqMotorReset\x12\x0e\n" + + "\x02id\x18\x01 \x01(\x05R\x02id\x12\x1c\n" + + "\tdirection\x18\x02 \x01(\bR\tdirection\";\n" + + "\x13ReqMotorChangeSpeed\x12\x0e\n" + + "\x02id\x18\x01 \x01(\x05R\x02id\x12\x14\n" + + "\x05speed\x18\x02 \x01(\x01R\x05speed\"G\n" + + "\x17ReqMotorChangeDirection\x12\x0e\n" + + "\x02id\x18\x01 \x01(\x05R\x02id\x12\x1c\n" + + "\tdirection\x18\x02 \x01(\bR\tdirection\".\n" + + "\bResMotor\x12\x0e\n" + + "\x02id\x18\x01 \x01(\x05R\x02id\x12\x12\n" + + "\x04code\x18\x02 \x01(\x05R\x04code\"R\n" + + "\x10ResMotorPosition\x12\x0e\n" + + "\x02id\x18\x01 \x01(\x05R\x02id\x12\x12\n" + + "\x04code\x18\x02 \x01(\x05R\x04code\x12\x1a\n" + + "\bposition\x18\x03 \x01(\x01R\bposition\"2\n" + + "\x14ReqDualCameraLinkage\x12\f\n" + + "\x01x\x18\x01 \x01(\x05R\x01x\x12\f\n" + + "\x01y\x18\x02 \x01(\x05R\x01y\"[\n" + + "\x0fPictureMatching\x12\f\n" + + "\x01x\x18\x01 \x01(\rR\x01x\x12\f\n" + + "\x01y\x18\x02 \x01(\rR\x01y\x12\x14\n" + + "\x05width\x18\x03 \x01(\rR\x05width\x12\x16\n" + + "\x06height\x18\x04 \x01(\rR\x06height\"\x91\x01\n" + + "\vStorageInfo\x12%\n" + + "\x0eavailable_size\x18\x01 \x01(\rR\ravailableSize\x12\x1d\n" + + "\n" + + "total_size\x18\x02 \x01(\rR\ttotalSize\x12!\n" + + "\fstorage_type\x18\x03 \x01(\x05R\vstorageType\x12\x19\n" + + "\bis_valid\x18\x04 \x01(\bR\aisValid\"C\n" + + "\vTemperature\x12\x12\n" + + "\x04code\x18\x01 \x01(\x05R\x04code\x12 \n" + + "\vtemperature\x18\x02 \x01(\x05R\vtemperature\"T\n" + + "\x0fCmosTemperature\x12 \n" + + "\vtemperature\x18\x01 \x01(\x05R\vtemperature\x12\x1f\n" + + "\vcamera_type\x18\x02 \x01(\x05R\n" + + "cameraType\"N\n" + + "\n" + + "RecordTime\x12\x1f\n" + + "\vrecord_time\x18\x01 \x01(\rR\n" + + "recordTime\x12\x1f\n" + + "\vcamera_type\x18\x02 \x01(\rR\n" + + "cameraType\"\x89\x01\n" + + "\x10TimeLapseOutTime\x12\x1a\n" + + "\binterval\x18\x01 \x01(\rR\binterval\x12\x19\n" + + "\bout_time\x18\x02 \x01(\rR\aoutTime\x12\x1d\n" + + "\n" + + "total_time\x18\x03 \x01(\rR\ttotalTime\x12\x1f\n" + + "\vcamera_type\x18\x04 \x01(\rR\n" + + "cameraType\"=\n" + + "\x14OperationStateNotify\x12%\n" + + "\x05state\x18\x01 \x01(\x0e2\x0f.OperationStateR\x05state\"j\n" + + "\x15AstroCalibrationState\x12!\n" + + "\x05state\x18\x01 \x01(\x0e2\v.AstroStateR\x05state\x12.\n" + + "\x13plate_solving_times\x18\x02 \x01(\x05R\x11plateSolvingTimes\"T\n" + + "\x0eAstroGotoState\x12!\n" + + "\x05state\x18\x01 \x01(\x0e2\v.AstroStateR\x05state\x12\x1f\n" + + "\vtarget_name\x18\x02 \x01(\tR\n" + + "targetName\"\\\n" + + "\x12AstroTrackingState\x12%\n" + + "\x05state\x18\x01 \x01(\x0e2\x0f.OperationStateR\x05state\x12\x1f\n" + + "\vtarget_name\x18\x02 \x01(\tR\n" + + "targetName\"|\n" + + "\x16ProgressCaptureRawDark\x12\x1a\n" + + "\bprogress\x18\x01 \x01(\x05R\bprogress\x12%\n" + + "\x0eremaining_time\x18\x02 \x01(\x05R\rremainingTime\x12\x1f\n" + + "\vcamera_type\x18\x03 \x01(\x05R\n" + + "cameraType\"\xf2\x02\n" + + "\x1eProgressCaptureRawLiveStacking\x12\x1f\n" + + "\vtotal_count\x18\x01 \x01(\x05R\n" + + "totalCount\x12\x1f\n" + + "\vupdate_type\x18\x02 \x01(\x05R\n" + + "updateType\x12#\n" + + "\rcurrent_count\x18\x03 \x01(\x05R\fcurrentCount\x12#\n" + + "\rstacked_count\x18\x04 \x01(\x05R\fstackedCount\x12\x1b\n" + + "\texp_index\x18\x05 \x01(\x05R\bexpIndex\x12\x1d\n" + + "\n" + + "gain_index\x18\x06 \x01(\x05R\tgainIndex\x12\x1f\n" + + "\vtarget_name\x18\a \x01(\tR\n" + + "targetName\x12\x1f\n" + + "\vcamera_type\x18\b \x01(\x05R\n" + + "cameraType\x12#\n" + + "\rshooting_time\x18\t \x01(\x05R\fshootingTime\x12!\n" + + "\fstacked_time\x18\n" + + " \x01(\x05R\vstackedTime\"+\n" + + "\x05Param\x12\"\n" + + "\x05param\x18\x01 \x03(\v2\f.CommonParamR\x05param\"z\n" + + "\rBurstProgress\x12\x1f\n" + + "\vtotal_count\x18\x01 \x01(\rR\n" + + "totalCount\x12'\n" + + "\x0fcompleted_count\x18\x02 \x01(\rR\x0ecompletedCount\x12\x1f\n" + + "\vcamera_type\x18\x03 \x01(\rR\n" + + "cameraType\"}\n" + + "\x10PanoramaProgress\x12\x1f\n" + + "\vtotal_count\x18\x01 \x01(\x05R\n" + + "totalCount\x12'\n" + + "\x0fcompleted_count\x18\x02 \x01(\x05R\x0ecompletedCount\x12\x1f\n" + + "\vcamera_type\x18\x03 \x01(\rR\n" + + "cameraType\" \n" + + "\bRgbState\x12\x14\n" + + "\x05state\x18\x01 \x01(\x05R\x05state\"%\n" + + "\rPowerIndState\x12\x14\n" + + "\x05state\x18\x01 \x01(\x05R\x05state\"%\n" + + "\rChargingState\x12\x14\n" + + "\x05state\x18\x01 \x01(\x05R\x05state\"-\n" + + "\vBatteryInfo\x12\x1e\n" + + "\n" + + "percentage\x18\x01 \x01(\x05R\n" + + "percentage\"7\n" + + "\rHostSlaveMode\x12\x12\n" + + "\x04mode\x18\x01 \x01(\x05R\x04mode\x12\x12\n" + + "\x04lock\x18\x02 \x01(\bR\x04lock\"\x1e\n" + + "\bMTPState\x12\x12\n" + + "\x04mode\x18\x01 \x01(\x05R\x04mode\"U\n" + + "\vTrackResult\x12\f\n" + + "\x01x\x18\x01 \x01(\x05R\x01x\x12\f\n" + + "\x01y\x18\x02 \x01(\x05R\x01y\x12\f\n" + + "\x01w\x18\x03 \x01(\x05R\x01w\x12\f\n" + + "\x01h\x18\x04 \x01(\x05R\x01h\x12\x0e\n" + + "\x02id\x18\x05 \x01(\x05R\x02id\"\x1d\n" + + "\aCPUMode\x12\x12\n" + + "\x04mode\x18\x01 \x01(\x05R\x04mode\"y\n" + + "\x19AstroTrackingSpecialState\x12%\n" + + "\x05state\x18\x01 \x01(\x0e2\x0f.OperationStateR\x05state\x12\x1f\n" + + "\vtarget_name\x18\x02 \x01(\tR\n" + + "targetName\x12\x14\n" + + "\x05index\x18\x03 \x01(\x05R\x05index\"\n" + + "\n" + + "\bPowerOff\",\n" + + "\vAlbumUpdate\x12\x1d\n" + + "\n" + + "media_type\x18\x01 \x01(\x05R\tmediaType\"i\n" + + "\vSentryState\x12&\n" + + "\x05state\x18\x01 \x01(\x0e2\x10.SentryModeStateR\x05state\x122\n" + + "\vobject_type\x18\x02 \x01(\x0e2\x11.SentryObjectTypeR\n" + + "objectType\"\xb0\x02\n" + + "\x11OneClickGotoState\x12I\n" + + "\x16astro_auto_focus_state\x18\x01 \x01(\v2\x14.AstroAutoFocusStateR\x13astroAutoFocusState\x12N\n" + + "\x17astro_calibration_state\x18\x02 \x01(\v2\x16.AstroCalibrationStateR\x15astroCalibrationState\x129\n" + + "\x10astro_goto_state\x18\x03 \x01(\v2\x0f.AstroGotoStateR\x0eastroGotoState\x12E\n" + + "\x14astro_tracking_state\x18\x04 \x01(\v2\x13.AstroTrackingStateR\x12astroTrackingState\"D\n" + + "\n" + + "StreamType\x12\x1f\n" + + "\vstream_type\x18\x01 \x01(\x05R\n" + + "streamType\x12\x15\n" + + "\x06cam_id\x18\x02 \x01(\x05R\x05camId\":\n" + + "\x10MultiTrackResult\x12&\n" + + "\aresults\x18\x01 \x03(\v2\f.TrackResultR\aresults\"7\n" + + "\x0eEqSolvingState\x12%\n" + + "\x05state\x18\x01 \x01(\x0e2\x0f.OperationStateR\x05state\"}\n" + + "\x14LongExpPhotoProgress\x12\x1d\n" + + "\n" + + "total_time\x18\x01 \x01(\x01R\ttotalTime\x12%\n" + + "\x0eexposured_time\x18\x02 \x01(\x01R\rexposuredTime\x12\x1f\n" + + "\vcamera_type\x18\x03 \x01(\rR\n" + + "cameraType\"o\n" + + "\x1eShootingScheduleResultAndState\x12\x1f\n" + + "\vschedule_id\x18\x01 \x01(\tR\n" + + "scheduleId\x12\x16\n" + + "\x06result\x18\x02 \x01(\x05R\x06result\x12\x14\n" + + "\x05state\x18\x03 \x01(\x05R\x05state\"g\n" + + "\x11ShootingTaskState\x12(\n" + + "\x10schedule_task_id\x18\x01 \x01(\tR\x0escheduleTaskId\x12\x14\n" + + "\x05state\x18\x02 \x01(\x05R\x05state\x12\x12\n" + + "\x04code\x18\x03 \x01(\x05R\x04code\"8\n" + + "\x0fSkySeacherState\x12%\n" + + "\x05state\x18\x01 \x01(\x0e2\x0f.OperationStateR\x05state\"N\n" + + "\x11ProgressAiEnhance\x12\x1a\n" + + "\bprogress\x18\x01 \x01(\x05R\bprogress\x12\x1d\n" + + "\n" + + "total_time\x18\x02 \x01(\x05R\ttotalTime\"\xcf\x01\n" + + "\x0eCommonProgress\x12\x18\n" + + "\acurrent\x18\x01 \x01(\x05R\acurrent\x12\x14\n" + + "\x05total\x18\x02 \x01(\x05R\x05total\x12A\n" + + "\rprogress_type\x18\x03 \x01(\x0e2\x1c.CommonProgress.ProgressTypeR\fprogressType\"J\n" + + "\fProgressType\x12\x19\n" + + "\x15PROGRESS_TYPE_INITING\x10\x00\x12\x1f\n" + + "\x1bPROGRESS_TYPE_MOSAIC_MOVING\x10\x01\"7\n" + + "\x11CalibrationResult\x12\x10\n" + + "\x03azi\x18\x01 \x01(\x01R\x03azi\x12\x10\n" + + "\x03alt\x18\x02 \x01(\x01R\x03alt\"!\n" + + "\rFocusPosition\x12\x10\n" + + "\x03pos\x18\x01 \x01(\x05R\x03pos\"$\n" + + "\x0eSentryAutoHand\x12\x12\n" + + "\x04mode\x18\x01 \x01(\x05R\x04mode\"\x9b\x01\n" + + "\x1cPanoramaStitchUploadComplete\x12\x12\n" + + "\x04code\x18\x01 \x01(\x05R\x04code\x12\x17\n" + + "\auser_id\x18\x02 \x01(\tR\x06userId\x12\x17\n" + + "\abusi_no\x18\x03 \x01(\tR\x06busiNo\x12#\n" + + "\rpanorama_name\x18\x04 \x01(\tR\fpanoramaName\x12\x10\n" + + "\x03mac\x18\x05 \x01(\tR\x03mac\"\xe3\x01\n" + + "\x1bPanoramaCompressionComplete\x12\x12\n" + + "\x04code\x18\x01 \x01(\x05R\x04code\x12#\n" + + "\rpanorama_name\x18\x02 \x01(\tR\fpanoramaName\x12\"\n" + + "\rzip_file_path\x18\x03 \x01(\tR\vzipFilePath\x12 \n" + + "\fzip_file_md5\x18\x04 \x01(\tR\n" + + "zipFileMd5\x12\"\n" + + "\rzip_file_size\x18\x05 \x01(\x04R\vzipFileSize\x12!\n" + + "\fstitch_param\x18\x06 \x01(\tR\vstitchParam\"\x9c\x01\n" + + "\x1bPanoramaCompressionProgress\x12#\n" + + "\rpanorama_name\x18\x01 \x01(\tR\fpanoramaName\x12&\n" + + "\x0ftotal_files_num\x18\x02 \x01(\rR\rtotalFilesNum\x120\n" + + "\x14compressed_files_num\x18\x03 \x01(\rR\x12compressedFilesNum\"\xfc\x01\n" + + "!PanoramaUploadCompressionProgress\x12\x17\n" + + "\auser_id\x18\x01 \x01(\tR\x06userId\x12\x17\n" + + "\abusi_no\x18\x02 \x01(\tR\x06busiNo\x12#\n" + + "\rpanorama_name\x18\x03 \x01(\tR\fpanoramaName\x12\x10\n" + + "\x03mac\x18\x04 \x01(\tR\x03mac\x12&\n" + + "\x0ftotal_files_num\x18\x05 \x01(\rR\rtotalFilesNum\x120\n" + + "\x14compressed_files_num\x18\x06 \x01(\rR\x12compressedFilesNum\x12\x14\n" + + "\x05speed\x18\a \x01(\x01R\x05speed\"\xdb\x01\n" + + "\x16PanoramaUploadProgress\x12\x17\n" + + "\auser_id\x18\x01 \x01(\tR\x06userId\x12\x17\n" + + "\abusi_no\x18\x02 \x01(\tR\x06busiNo\x12#\n" + + "\rpanorama_name\x18\x03 \x01(\tR\fpanoramaName\x12\x10\n" + + "\x03mac\x18\x04 \x01(\tR\x03mac\x12\x1d\n" + + "\n" + + "total_size\x18\x05 \x01(\x04R\ttotalSize\x12#\n" + + "\ruploaded_size\x18\x06 \x01(\x04R\fuploadedSize\x12\x14\n" + + "\x05speed\x18\a \x01(\x01R\x05speed\"\xcb\x02\n" + + "\x1aPanoramaCurrentUploadState\x12\x12\n" + + "\x04code\x18\x01 \x01(\x05R\x04code\x12\x17\n" + + "\auser_id\x18\x02 \x01(\tR\x06userId\x12\x17\n" + + "\abusi_no\x18\x03 \x01(\tR\x06busiNo\x12#\n" + + "\rpanorama_name\x18\x04 \x01(\tR\fpanoramaName\x12\x10\n" + + "\x03mac\x18\x05 \x01(\tR\x03mac\x12&\n" + + "\x0ftotal_files_num\x18\x06 \x01(\rR\rtotalFilesNum\x120\n" + + "\x14compressed_files_num\x18\a \x01(\rR\x12compressedFilesNum\x12\x1d\n" + + "\n" + + "total_size\x18\b \x01(\x04R\ttotalSize\x12#\n" + + "\ruploaded_size\x18\t \x01(\x04R\fuploadedSize\x12\x12\n" + + "\x04step\x18\n" + + " \x01(\rR\x04step\"+\n" + + "\x15LowTempProtectionMode\x12\x12\n" + + "\x04mode\x18\x01 \x01(\x05R\x04mode\"\xc6\x01\n" + + "\x1dStateSystemResourceOccupation\x12>\n" + + "\atask_id\x18\x01 \x01(\x0e2%.StateSystemResourceOccupation.TaskIdR\x06taskId\x12%\n" + + "\x05state\x18\x02 \x01(\x0e2\x0f.OperationStateR\x05state\">\n" + + "\x06TaskId\x12\b\n" + + "\x04IDLE\x10\x00\x12\x13\n" + + "\x0fPANORAMA_UPLOAD\x10\x01\x12\x15\n" + + "\x11ASTRO_MULTI_STACK\x10\x02\"\x83\x01\n" + + "\n" + + "BodyStatus\x12;\n" + + "\vbody_status\x18\x01 \x01(\x0e2\x1a.BodyStatus.BodyStatusEnumR\n" + + "bodyStatus\"8\n" + + "\x0eBodyStatusEnum\x12\v\n" + + "\aUNKNOWN\x10\x00\x12\v\n" + + "\aEQ_MODE\x10\x01\x12\f\n" + + "\bAZI_MODE\x10\x02\"\xa2\x03\n" + + "\x15ProgressCaptureMosaic\x12\x1f\n" + + "\vtotal_count\x18\x01 \x01(\x05R\n" + + "totalCount\x12\x1f\n" + + "\vupdate_type\x18\x02 \x01(\x05R\n" + + "updateType\x12#\n" + + "\rcurrent_count\x18\x03 \x01(\x05R\fcurrentCount\x12#\n" + + "\rstacked_count\x18\x04 \x01(\x05R\fstackedCount\x12\x1b\n" + + "\texp_index\x18\x05 \x01(\x05R\bexpIndex\x12\x1d\n" + + "\n" + + "gain_index\x18\x06 \x01(\x05R\tgainIndex\x12\x1f\n" + + "\vtarget_name\x18\a \x01(\tR\n" + + "targetName\x12)\n" + + "\x10horizontal_scale\x18\b \x01(\x05R\x0fhorizontalScale\x12%\n" + + "\x0evertical_scale\x18\t \x01(\x05R\rverticalScale\x12\x1a\n" + + "\brotation\x18\n" + + " \x01(\x05R\brotation\x12\x15\n" + + "\x06fov_id\x18\v \x01(\x05R\x05fovId\x12\x1b\n" + + "\tfov_total\x18\f \x01(\x05R\bfovTotal\"_\n" + + "\x02Wb\x12\x12\n" + + "\x04mode\x18\x01 \x01(\x04R\x04mode\x12\x0e\n" + + "\x02ct\x18\x02 \x01(\x05R\x02ct\x12\x14\n" + + "\x05scene\x18\x03 \x01(\x05R\x05scene\x12\x1f\n" + + "\vcamera_type\x18\x04 \x01(\x05R\n" + + "cameraType\"V\n" + + "\x0fGeneralIntParam\x12\x19\n" + + "\bparam_id\x18\x01 \x01(\x04R\aparamId\x12\x12\n" + + "\x04mode\x18\x02 \x01(\x05R\x04mode\x12\x14\n" + + "\x05value\x18\x03 \x01(\x05R\x05value\"D\n" + + "\x11GeneralFloatParam\x12\x19\n" + + "\bparam_id\x18\x01 \x01(\x04R\aparamId\x12\x14\n" + + "\x05value\x18\x02 \x01(\x02R\x05value\"D\n" + + "\x11GeneralBoolParams\x12\x19\n" + + "\bparam_id\x18\x01 \x01(\x04R\aparamId\x12\x14\n" + + "\x05value\x18\x02 \x01(\bR\x05value\"f\n" + + "\x12SwitchShootingMode\x12\x14\n" + + "\x05state\x18\x01 \x01(\x05R\x05state\x12\x1f\n" + + "\vsource_mode\x18\x02 \x01(\x05R\n" + + "sourceMode\x12\x19\n" + + "\bdst_mode\x18\x03 \x01(\x05R\adstMode\"K\n" + + "\x14SwitchCropRatioState\x12\x14\n" + + "\x05state\x18\x01 \x01(\x05R\x05state\x12\x1d\n" + + "\n" + + "crop_ratio\x18\x02 \x01(\x05R\tcropRatio\"\xee\x01\n" + + "\x0fResolutionParam\x12\x19\n" + + "\bparam_id\x18\x01 \x01(\x04R\aparamId\x12*\n" + + "\x11current_res_value\x18\x02 \x01(\x05R\x0fcurrentResValue\x12*\n" + + "\x11current_fps_value\x18\x03 \x01(\x05R\x0fcurrentFpsValue\x12,\n" + + "\x12supported_fps_list\x18\x04 \x03(\x05R\x10supportedFpsList\x12:\n" + + "\x19supported_resolution_list\x18\x05 \x03(\x05R\x17supportedResolutionList\"Y\n" + + "\x0fCaptureRawState\x12%\n" + + "\x05state\x18\x01 \x01(\x0e2\x0f.OperationStateR\x05state\x12\x1f\n" + + "\vcamera_type\x18\x02 \x01(\x05R\n" + + "cameraType\"T\n" + + "\n" + + "PhotoState\x12%\n" + + "\x05state\x18\x01 \x01(\x0e2\x0f.OperationStateR\x05state\x12\x1f\n" + + "\vcamera_type\x18\x02 \x01(\x05R\n" + + "cameraType\"T\n" + + "\n" + + "BurstState\x12%\n" + + "\x05state\x18\x01 \x01(\x0e2\x0f.OperationStateR\x05state\x12\x1f\n" + + "\vcamera_type\x18\x02 \x01(\x05R\n" + + "cameraType\"U\n" + + "\vRecordState\x12%\n" + + "\x05state\x18\x01 \x01(\x0e2\x0f.OperationStateR\x05state\x12\x1f\n" + + "\vcamera_type\x18\x02 \x01(\x05R\n" + + "cameraType\"X\n" + + "\x0eTimeLapseState\x12%\n" + + "\x05state\x18\x01 \x01(\x0e2\x0f.OperationStateR\x05state\x12\x1f\n" + + "\vcamera_type\x18\x02 \x01(\x05R\n" + + "cameraType\"]\n" + + "\x13CaptureRawDarkState\x12%\n" + + "\x05state\x18\x01 \x01(\x0e2\x0f.OperationStateR\x05state\x12\x1f\n" + + "\vcamera_type\x18\x02 \x01(\x05R\n" + + "cameraType\"W\n" + + "\rPanoramaState\x12%\n" + + "\x05state\x18\x01 \x01(\x0e2\x0f.OperationStateR\x05state\x12\x1f\n" + + "\vcamera_type\x18\x02 \x01(\x05R\n" + + "cameraType\"<\n" + + "\x13AstroAutoFocusState\x12%\n" + + "\x05state\x18\x01 \x01(\x0e2\x0f.OperationStateR\x05state\"=\n" + + "\x14NormalAutoFocusState\x12%\n" + + "\x05state\x18\x01 \x01(\x0e2\x0f.OperationStateR\x05state\"@\n" + + "\x17AstroAutoFocusFastState\x12%\n" + + "\x05state\x18\x01 \x01(\x0e2\x0f.OperationStateR\x05state\";\n" + + "\x12AreaAutoFocusState\x12%\n" + + "\x05state\x18\x01 \x01(\x0e2\x0f.OperationStateR\x05state\"?\n" + + "\x16DualCameraLinkageState\x12%\n" + + "\x05state\x18\x01 \x01(\x0e2\x0f.OperationStateR\x05state\"Z\n" + + "\x10NormalTrackState\x12%\n" + + "\x05state\x18\x01 \x01(\x0e2\x0f.OperationStateR\x05state\x12\x1f\n" + + "\vcamera_type\x18\x02 \x01(\x05R\n" + + "cameraType\"b\n" + + "\x18SwitchResolutionFpsState\x12%\n" + + "\x05state\x18\x01 \x01(\x0e2\x0f.OperationStateR\x05state\x12\x1f\n" + + "\vcamera_type\x18\x02 \x01(\x05R\n" + + "cameraType\"\x87\x01\n" + + "\x15CaptureCaliFrameState\x12%\n" + + "\x05state\x18\x01 \x01(\x0e2\x0f.OperationStateR\x05state\x12\x1f\n" + + "\vcamera_type\x18\x02 \x01(\x05R\n" + + "cameraType\x12&\n" + + "\x0fcali_frame_type\x18\x03 \x01(\x05R\rcaliFrameType\"\x7f\n" + + "\x18CaptureCaliFrameProgress\x12\x1a\n" + + "\bprogress\x18\x01 \x01(\x05R\bprogress\x12\x1f\n" + + "\vcamera_type\x18\x02 \x01(\x05R\n" + + "cameraType\x12&\n" + + "\x0fcali_frame_type\x18\x03 \x01(\x05R\rcaliFrameType\"L\n" + + "\x0eDeviceAttitude\x12\x14\n" + + "\x05pitch\x18\x01 \x01(\x01R\x05pitch\x12\x10\n" + + "\x03yaw\x18\x02 \x01(\x01R\x03yaw\x12\x12\n" + + "\x04roll\x18\x03 \x01(\x01R\x04roll\"\\\n" + + "\x14SkyTargetFinderState\x12%\n" + + "\x05state\x18\x01 \x01(\x0e2\x0f.OperationStateR\x05state\x12\x1d\n" + + "\n" + + "scene_type\x18\x02 \x01(\x05R\tsceneType\"?\n" + + " PanoFramingThumbnailUpdateNotify\x12\x1b\n" + + "\twebp_data\x18\x01 \x01(\fR\bwebpData\"\xa0\x03\n" + + "\x1bPanoFramingRectUpdateNotify\x12\x1a\n" + + "\tnorm_x_tl\x18\x01 \x01(\x01R\anormXTl\x12\x1a\n" + + "\tnorm_y_tl\x18\x02 \x01(\x01R\anormYTl\x12\x1a\n" + + "\tnorm_x_br\x18\x03 \x01(\x01R\anormXBr\x12\x1a\n" + + "\tnorm_y_br\x18\x04 \x01(\x01R\anormYBr\x12)\n" + + "\x11norm_limit_x_left\x18\x05 \x01(\x01R\x0enormLimitXLeft\x12'\n" + + "\x10norm_limit_y_top\x18\x06 \x01(\x01R\rnormLimitYTop\x12+\n" + + "\x12norm_limit_x_right\x18\a \x01(\x01R\x0fnormLimitXRight\x12-\n" + + "\x13norm_limit_y_bottom\x18\b \x01(\x01R\x10normLimitYBottom\x12 \n" + + "\frect_hor_fov\x18\t \x01(\x01R\n" + + "rectHorFov\x12 \n" + + "\frect_ver_fov\x18\n" + + " \x01(\x01R\n" + + "rectVerFov\x12\x1d\n" + + "\n" + + "error_code\x18\v \x01(\x05R\terrorCode\".\n" + + "\x16PanoFramingStateNotify\x12\x14\n" + + "\x05state\x18\x01 \x01(\x05R\x05state\"$\n" + + "\fAutoShutdown\x12\x14\n" + + "\x05state\x18\x01 \x01(\x05R\x05state\"!\n" + + "\tLensDefog\x12\x14\n" + + "\x05state\x18\x01 \x01(\x05R\x05state\"#\n" + + "\vAutoCooling\x12\x14\n" + + "\x05state\x18\x01 \x01(\x05R\x05state\"\x18\n" + + "\x16ReqStartPanoramaByGrid\"\\\n" + + "\x1cReqStartPanoramaByEulerRange\x12\x1b\n" + + "\tyaw_range\x18\x01 \x01(\x02R\byawRange\x12\x1f\n" + + "\vpitch_range\x18\x02 \x01(\x02R\n" + + "pitchRange\"\xc2\x02\n" + + "\x1cReqStartPanoramaStitchUpload\x12\x1f\n" + + "\vresource_id\x18\x01 \x01(\x04R\n" + + "resourceId\x12\x17\n" + + "\auser_id\x18\x02 \x01(\tR\x06userId\x12!\n" + + "\fapp_platform\x18\x03 \x01(\x05R\vappPlatform\x12#\n" + + "\rpanorama_name\x18\x04 \x01(\tR\fpanoramaName\x12\x0e\n" + + "\x02ak\x18\x05 \x01(\tR\x02ak\x12\x0e\n" + + "\x02sk\x18\x06 \x01(\tR\x02sk\x12\x14\n" + + "\x05token\x18\a \x01(\tR\x05token\x12\x16\n" + + "\x06bucket\x18\b \x01(\tR\x06bucket\x12#\n" + + "\rbucket_prefix\x18\t \x01(\tR\fbucketPrefix\x12\x12\n" + + "\x04from\x18\n" + + " \x01(\tR\x04from\x12\x19\n" + + "\benv_type\x18\v \x01(\tR\aenvType\"\x11\n" + + "\x0fReqStopPanorama\"6\n" + + "\x1bReqStopPanoramaStitchUpload\x12\x17\n" + + "\auser_id\x18\x01 \x01(\tR\x06userId\"\"\n" + + " ReqGetPanoramaCurrentUploadState\"\xd1\x02\n" + + " ResGetPanoramaCurrentUploadState\x12\x12\n" + + "\x04code\x18\x01 \x01(\x05R\x04code\x12\x17\n" + + "\auser_id\x18\x02 \x01(\tR\x06userId\x12\x17\n" + + "\abusi_no\x18\x03 \x01(\tR\x06busiNo\x12#\n" + + "\rpanorama_name\x18\x04 \x01(\tR\fpanoramaName\x12\x10\n" + + "\x03mac\x18\x05 \x01(\tR\x03mac\x12&\n" + + "\x0ftotal_files_num\x18\x06 \x01(\rR\rtotalFilesNum\x120\n" + + "\x14compressed_files_num\x18\a \x01(\rR\x12compressedFilesNum\x12\x1d\n" + + "\n" + + "total_size\x18\b \x01(\x04R\ttotalSize\x12#\n" + + "\ruploaded_size\x18\t \x01(\x04R\fuploadedSize\x12\x12\n" + + "\x04step\x18\n" + + " \x01(\rR\x04step\":\n" + + "\x13ReqGetUploadPredict\x12#\n" + + "\rpanorama_name\x18\x01 \x01(\tR\fpanoramaName\"\x82\x02\n" + + "\x13ResGetUploadPredict\x12\x12\n" + + "\x04code\x18\x01 \x01(\x05R\x04code\x12#\n" + + "\rpanorama_name\x18\x02 \x01(\tR\fpanoramaName\x12\x1b\n" + + "\tfile_nums\x18\x03 \x01(\rR\bfileNums\x12\x1e\n" + + "\n" + + "resolution\x18\x04 \x01(\tR\n" + + "resolution\x12&\n" + + "\x0fcloud_data_size\x18\x05 \x01(\x04R\rcloudDataSize\x12\"\n" + + "\rzip_data_size\x18\x06 \x01(\x04R\vzipDataSize\x12)\n" + + "\x11app_zip_data_size\x18\a \x01(\x04R\x0eappZipDataSize\"\xb0\x02\n" + + "\x13PanoramaUploadParam\x12\x17\n" + + "\auser_id\x18\x01 \x01(\tR\x06userId\x12\x17\n" + + "\abusi_no\x18\x02 \x01(\tR\x06busiNo\x12#\n" + + "\rpanorama_name\x18\x03 \x01(\tR\fpanoramaName\x12\x10\n" + + "\x03mac\x18\x04 \x01(\tR\x03mac\x12&\n" + + "\x0ftotal_files_num\x18\x05 \x01(\rR\rtotalFilesNum\x120\n" + + "\x14compressed_files_num\x18\x06 \x01(\rR\x12compressedFilesNum\x12\x1d\n" + + "\n" + + "total_size\x18\a \x01(\x04R\ttotalSize\x12#\n" + + "\ruploaded_size\x18\b \x01(\x04R\fuploadedSize\x12\x12\n" + + "\x04step\x18\t \x01(\rR\x04step\":\n" + + "\x13ReqCompressPanorama\x12#\n" + + "\rpanorama_name\x18\x01 \x01(\tR\fpanoramaName\"\x19\n" + + "\x17ReqStopCompressPanorama\"\x19\n" + + "\x17ReqStartPanoramaFraming\"\x19\n" + + "\x17ReqResetPanoramaFraming\"\x18\n" + + "\x16ReqStopPanoramaFraming\"$\n" + + "\"ReqStopPanoramaFramingAndStartGrid\"\xda\x01\n" + + "\x16ResStopPanoramaFraming\x12\x12\n" + + "\x04code\x18\x01 \x01(\x05R\x04code\x122\n" + + "\x15centerX_degree_offset\x18\x02 \x01(\x01R\x13centerXDegreeOffset\x122\n" + + "\x15centerY_degree_offset\x18\x03 \x01(\x01R\x13centerYDegreeOffset\x12!\n" + + "\fframing_rows\x18\x04 \x01(\rR\vframingRows\x12!\n" + + "\fframing_cols\x18\x05 \x01(\rR\vframingCols\"\x8e\x01\n" + + "\x1cReqUpdatePanoramaFramingRect\x12\x1a\n" + + "\tnorm_x_tl\x18\x01 \x01(\x01R\anormXTl\x12\x1a\n" + + "\tnorm_y_tl\x18\x02 \x01(\x01R\anormYTl\x12\x1a\n" + + "\tnorm_x_br\x18\x03 \x01(\x01R\anormXBr\x12\x1a\n" + + "\tnorm_y_br\x18\x04 \x01(\x01R\anormYBr\"U\n" + + "\x0eReqSetExposure\x12\x19\n" + + "\bparam_id\x18\x01 \x01(\x04R\aparamId\x12\x12\n" + + "\x04mode\x18\x02 \x01(\x05R\x04mode\x12\x14\n" + + "\x05value\x18\x03 \x01(\x05R\x05value\"V\n" + + "\x0fParamReqSetGain\x12\x19\n" + + "\bparam_id\x18\x01 \x01(\x04R\aparamId\x12\x12\n" + + "\x04mode\x18\x02 \x01(\x05R\x04mode\x12\x14\n" + + "\x05value\x18\x03 \x01(\x05R\x05value\"O\n" + + "\bReqSetWb\x12\x19\n" + + "\bparam_id\x18\x01 \x01(\x04R\aparamId\x12\x12\n" + + "\x04mode\x18\x02 \x01(\x05R\x04mode\x12\x14\n" + + "\x05value\x18\x03 \x01(\x05R\x05value\"H\n" + + "\x15ReqSetGeneralIntParam\x12\x19\n" + + "\bparam_id\x18\x01 \x01(\x04R\aparamId\x12\x14\n" + + "\x05value\x18\x02 \x01(\x05R\x05value\"J\n" + + "\x17ReqSetGeneralFloatParam\x12\x19\n" + + "\bparam_id\x18\x01 \x01(\x04R\aparamId\x12\x14\n" + + "\x05value\x18\x02 \x01(\x02R\x05value\"J\n" + + "\x17ReqSetGeneralBoolParams\x12\x19\n" + + "\bparam_id\x18\x01 \x01(\x04R\aparamId\x12\x14\n" + + "\x05value\x18\x02 \x01(\bR\x05value\"p\n" + + "\x0fReqSetAutoParam\x12\x1f\n" + + "\vcamera_type\x18\x01 \x01(\x05R\n" + + "cameraType\x12#\n" + + "\rshooting_tech\x18\x02 \x01(\x05R\fshootingTech\x12\x17\n" + + "\ais_auto\x18\x03 \x01(\bR\x06isAuto\"\xc8\x01\n" + + "\x0fResSetAutoParam\x12#\n" + + "\rshooting_mode\x18\x01 \x01(\x05R\fshootingMode\x12\x1f\n" + + "\vcamera_type\x18\x02 \x01(\x05R\n" + + "cameraType\x12#\n" + + "\rshooting_tech\x18\x03 \x01(\x05R\fshootingTech\x12\x17\n" + + "\ais_auto\x18\x04 \x01(\bR\x06isAuto\x12\x1d\n" + + "\n" + + "update_all\x18\x05 \x01(\bR\tupdateAll\x12\x12\n" + + "\x04code\x18\x06 \x01(\x05R\x04code\"\f\n" + + "\n" + + "ReqOpenRgb\"\r\n" + + "\vReqCloseRgb\"\x0e\n" + + "\fReqPowerDown\"\x11\n" + + "\x0fReqOpenPowerInd\"\x12\n" + + "\x10ReqClosePowerInd\"\v\n" + + "\tReqReboot\"\xdd\x02\n" + + "\x0fShootingTaskMsg\x12\x1f\n" + + "\vschedule_id\x18\x01 \x01(\tR\n" + + "scheduleId\x12\x16\n" + + "\x06params\x18\x02 \x01(\tR\x06params\x12(\n" + + "\x05state\x18\x03 \x01(\v2\x12.ShootingTaskStateR\x05state\x12\x12\n" + + "\x04code\x18\x04 \x01(\x05R\x04code\x12!\n" + + "\fcreated_time\x18\x05 \x01(\x03R\vcreatedTime\x12!\n" + + "\fupdated_time\x18\x06 \x01(\x03R\vupdatedTime\x12(\n" + + "\x10schedule_task_id\x18\a \x01(\tR\x0escheduleTaskId\x12\x1d\n" + + "\n" + + "param_mode\x18\b \x01(\x05R\tparamMode\x12#\n" + + "\rparam_version\x18\t \x01(\x05R\fparamVersion\x12\x1f\n" + + "\vcreate_from\x18\n" + + " \x01(\x05R\n" + + "createFrom\"\x9d\x05\n" + + "\x13ShootingScheduleMsg\x12\x1f\n" + + "\vschedule_id\x18\x01 \x01(\tR\n" + + "scheduleId\x12#\n" + + "\rschedule_name\x18\x02 \x01(\tR\fscheduleName\x12\x1b\n" + + "\tdevice_id\x18\x03 \x01(\x05R\bdeviceId\x12\x1f\n" + + "\vmac_address\x18\x04 \x01(\tR\n" + + "macAddress\x12\x1d\n" + + "\n" + + "start_time\x18\x05 \x01(\x03R\tstartTime\x12\x19\n" + + "\bend_time\x18\x06 \x01(\x03R\aendTime\x12/\n" + + "\x06result\x18\a \x01(\x0e2\x17.ShootingScheduleResultR\x06result\x12!\n" + + "\fcreated_time\x18\b \x01(\x03R\vcreatedTime\x12!\n" + + "\fupdated_time\x18\t \x01(\x03R\vupdatedTime\x12,\n" + + "\x05state\x18\n" + + " \x01(\x0e2\x16.ShootingScheduleStateR\x05state\x12\x12\n" + + "\x04lock\x18\v \x01(\x05R\x04lock\x12\x1a\n" + + "\bpassword\x18\f \x01(\tR\bpassword\x127\n" + + "\x0eshooting_tasks\x18\r \x03(\v2\x10.ShootingTaskMsgR\rshootingTasks\x12\x1d\n" + + "\n" + + "param_mode\x18\x0e \x01(\x05R\tparamMode\x12#\n" + + "\rparam_version\x18\x0f \x01(\x05R\fparamVersion\x12\x16\n" + + "\x06params\x18\x10 \x01(\tR\x06params\x12#\n" + + "\rschedule_time\x18\x11 \x01(\x03R\fscheduleTime\x129\n" + + "\n" + + "sync_state\x18\x12 \x01(\x0e2\x1a.ShootingScheduleSyncStateR\tsyncState\"\\\n" + + "\x17ReqSyncShootingSchedule\x12A\n" + + "\x11shooting_schedule\x18\x01 \x01(\v2\x14.ShootingScheduleMsgR\x10shootingSchedule\"\xce\x01\n" + + "\x17ResSyncShootingSchedule\x12A\n" + + "\x11shooting_schedule\x18\x01 \x01(\v2\x14.ShootingScheduleMsgR\x10shootingSchedule\x12;\n" + + "\x1atime_conflict_schedule_ids\x18\x02 \x03(\tR\x17timeConflictScheduleIds\x12\x12\n" + + "\x04code\x18\x03 \x01(\x05R\x04code\x12\x1f\n" + + "\vcan_replace\x18\x04 \x01(\bR\n" + + "canReplace\"G\n" + + "\x19ReqCancelShootingSchedule\x12\x0e\n" + + "\x02id\x18\x01 \x01(\tR\x02id\x12\x1a\n" + + "\bpassword\x18\x02 \x01(\tR\bpassword\"?\n" + + "\x19ResCancelShootingSchedule\x12\x0e\n" + + "\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n" + + "\x04code\x18\x02 \x01(\x05R\x04code\"\x1b\n" + + "\x19ReqGetAllShootingSchedule\"r\n" + + "\x19ResGetAllShootingSchedule\x12A\n" + + "\x11shooting_schedule\x18\x01 \x03(\v2\x14.ShootingScheduleMsgR\x10shootingSchedule\x12\x12\n" + + "\x04code\x18\x02 \x01(\x05R\x04code\",\n" + + "\x1aReqGetShootingScheduleById\x12\x0e\n" + + "\x02id\x18\x01 \x01(\tR\x02id\"s\n" + + "\x1aResGetShootingScheduleById\x12A\n" + + "\x11shooting_schedule\x18\x01 \x01(\v2\x14.ShootingScheduleMsgR\x10shootingSchedule\x12\x12\n" + + "\x04code\x18\x02 \x01(\x05R\x04code\"(\n" + + "\x16ReqGetShootingTaskById\x12\x0e\n" + + "\x02id\x18\x01 \x01(\tR\x02id\"c\n" + + "\x16ResGetShootingTaskById\x125\n" + + "\rshooting_task\x18\x01 \x01(\v2\x10.ShootingTaskMsgR\fshootingTask\x12\x12\n" + + "\x04code\x18\x02 \x01(\x05R\x04code\"_\n" + + "\x1aReqReplaceShootingSchedule\x12A\n" + + "\x11shooting_schedule\x18\x01 \x01(\v2\x14.ShootingScheduleMsgR\x10shootingSchedule\"\xc7\x01\n" + + "\x1aResReplaceShootingSchedule\x12A\n" + + "\x11shooting_schedule\x18\x01 \x01(\v2\x14.ShootingScheduleMsgR\x10shootingSchedule\x12R\n" + + "\x1areplaced_shooting_schedule\x18\x02 \x03(\v2\x14.ShootingScheduleMsgR\x18replacedShootingSchedule\x12\x12\n" + + "\x04code\x18\x03 \x01(\x05R\x04code\"G\n" + + "\x19ReqUnlockShootingSchedule\x12\x0e\n" + + "\x02id\x18\x01 \x01(\tR\x02id\x12\x1a\n" + + "\bpassword\x18\x02 \x01(\tR\bpassword\"?\n" + + "\x19ResUnlockShootingSchedule\x12\x0e\n" + + "\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n" + + "\x04code\x18\x02 \x01(\x05R\x04code\"E\n" + + "\x17ReqLockShootingSchedule\x12\x0e\n" + + "\x02id\x18\x01 \x01(\tR\x02id\x12\x1a\n" + + "\bpassword\x18\x02 \x01(\tR\bpassword\"Y\n" + + "\x17ResLockShootingSchedule\x12\x0e\n" + + "\x02id\x18\x01 \x01(\tR\x02id\x12\x1a\n" + + "\bpassword\x18\x02 \x01(\tR\bpassword\x12\x12\n" + + "\x04code\x18\x03 \x01(\x05R\x04code\"G\n" + + "\x19ReqDeleteShootingSchedule\x12\x0e\n" + + "\x02id\x18\x01 \x01(\tR\x02id\x12\x1a\n" + + "\bpassword\x18\x02 \x01(\tR\bpassword\"?\n" + + "\x19ResDeleteShootingSchedule\x12\x0e\n" + + "\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n" + + "\x04code\x18\x02 \x01(\x05R\x04code\"S\n" + + "\n" + + "ReqSetTime\x12\x1c\n" + + "\ttimestamp\x18\x01 \x01(\x04R\ttimestamp\x12'\n" + + "\x0ftimezone_offset\x18\x02 \x01(\x01R\x0etimezoneOffset\",\n" + + "\x0eReqSetTimezone\x12\x1a\n" + + "\btimezone\x18\x01 \x01(\tR\btimezone\"#\n" + + "\rReqSetMtpMode\x12\x12\n" + + "\x04mode\x18\x01 \x01(\x05R\x04mode\"#\n" + + "\rReqSetCpuMode\x12\x12\n" + + "\x04mode\x18\x01 \x01(\x05R\x04mode\"&\n" + + "\x10ReqsetMasterLock\x12\x12\n" + + "\x04lock\x18\x01 \x01(\bR\x04lock\"2\n" + + "\x18ReqGetDeviceActivateInfo\x12\x16\n" + + "\x06issuer\x18\x01 \x01(\x05R\x06issuer\"\x99\x01\n" + + "\x15ResDeviceActivateInfo\x12%\n" + + "\x0eactivate_state\x18\x01 \x01(\x05R\ractivateState\x124\n" + + "\x16activate_process_state\x18\x02 \x01(\x05R\x14activateProcessState\x12#\n" + + "\rrequest_param\x18\x03 \x01(\tR\frequestParam\"A\n" + + "\x1aReqDeviceActivateWriteFile\x12#\n" + + "\rrequest_param\x18\x01 \x01(\tR\frequestParam\"U\n" + + "\x1aResDeviceActivateWriteFile\x12\x12\n" + + "\x04code\x18\x01 \x01(\x05R\x04code\x12#\n" + + "\rrequest_param\x18\x02 \x01(\tR\frequestParam\"C\n" + + "\x1cReqDeviceActivateSuccessfull\x12#\n" + + "\rrequest_param\x18\x01 \x01(\tR\frequestParam\"Y\n" + + "\x1cResDeviceActivateSuccessfull\x12\x12\n" + + "\x04code\x18\x01 \x01(\x05R\x04code\x12%\n" + + "\x0eactivate_state\x18\x02 \x01(\x05R\ractivateState\"?\n" + + "\x18ReqDisableDeviceActivate\x12#\n" + + "\rrequest_param\x18\x01 \x01(\tR\frequestParam\"U\n" + + "\x18ResDisableDeviceActivate\x12\x12\n" + + "\x04code\x18\x01 \x01(\x05R\x04code\x12%\n" + + "\x0eactivate_state\x18\x02 \x01(\x05R\ractivateState\"\xf1\x01\n" + + "\x0eReqSetLocation\x12\x1a\n" + + "\blatitude\x18\x01 \x01(\x01R\blatitude\x12\x1c\n" + + "\tlongitude\x18\x02 \x01(\x01R\tlongitude\x12\x1a\n" + + "\baltitude\x18\x03 \x01(\x01R\baltitude\x12%\n" + + "\x0ecountry_region\x18\x04 \x01(\tR\rcountryRegion\x12\x1a\n" + + "\bprovince\x18\x05 \x01(\tR\bprovince\x12\x12\n" + + "\x04city\x18\x06 \x01(\tR\x04city\x12\x1a\n" + + "\bdistrict\x18\a \x01(\tR\bdistrict\x12\x16\n" + + "\x06enable\x18\b \x01(\bR\x06enable\"M\n" + + "\bTaskAttr\x12%\n" + + "\x0eexclusive_mask\x18\x01 \x01(\x05R\rexclusiveMask\x12\x1a\n" + + "\bpriority\x18\x02 \x01(\x05R\bpriority\"z\n" + + "\tTaskState\x12.\n" + + "\n" + + "base_state\x18\x01 \x01(\x0e2\x0f.OperationStateR\tbaseState\x12=\n" + + "\x14astro_extended_state\x18\x02 \x01(\x0e2\v.AstroStateR\x12astroExtendedState\"\xd0\x02\n" + + "\tTaskParam\x12=\n" + + "\x0fpanorama_upload\x18\x01 \x01(\v2\x14.PanoramaUploadParamR\x0epanoramaUpload\x12S\n" + + "\x1amake_fits_thumb_task_param\x18\x02 \x01(\v2\x17.MakeFitsThumbTaskParamR\x16makeFitsThumbTaskParam\x12Q\n" + + "\x18repostprocess_task_param\x18\x03 \x01(\v2\x17.RepostprocessTaskParamR\x16repostprocessTaskParam\x12\\\n" + + "\x1dcapture_cali_frame_task_param\x18\x04 \x01(\v2\x1a.CaptureCaliFrameTaskParamR\x19captureCaliFrameTaskParam\"\xa2\x01\n" + + "\x12ResNotifyTaskState\x12 \n" + + "\atask_id\x18\x01 \x01(\x0e2\a.TaskIdR\x06taskId\x12&\n" + + "\ttask_attr\x18\x02 \x01(\v2\t.TaskAttrR\btaskAttr\x12 \n" + + "\x05state\x18\x03 \x01(\v2\n" + + ".TaskStateR\x05state\x12 \n" + + "\x05param\x18\x04 \x01(\v2\n" + + ".TaskParamR\x05param\"\xd2\x01\n" + + "\fReqStartTask\x12 \n" + + "\atask_id\x18\x01 \x01(\x0e2\a.TaskIdR\x06taskId\x12P\n" + + "\x19req_make_fits_thumb_param\x18\x02 \x01(\v2\x16.ReqStartMakeFitsThumbR\x15reqMakeFitsThumbParam\x12N\n" + + "\x17req_repostprocess_param\x18\x03 \x01(\v2\x16.ReqStartRepostprocessR\x15reqRepostprocessParam\"/\n" + + "\vReqStopTask\x12 \n" + + "\atask_id\x18\x01 \x01(\x0e2\a.TaskIdR\x06taskId\"E\n" + + "\rResTaskCenter\x12\x12\n" + + "\x04code\x18\x01 \x01(\x05R\x04code\x12 \n" + + "\atask_id\x18\x02 \x01(\x0e2\a.TaskIdR\x06taskId\"/\n" + + "\fClientParams\x12\x1f\n" + + "\vencode_type\x18\x01 \x01(\x05R\n" + + "encodeType\"B\n" + + "\x0eReqEnterCamera\x120\n" + + "\fclient_param\x18\x03 \x01(\v2\r.ClientParamsR\vclientParam\"N\n" + + "\x0eResEnterCamera\x12\x12\n" + + "\x04code\x18\x01 \x01(\x05R\x04code\x12(\n" + + "\x10shooting_mode_id\x18\x02 \x01(\x05R\x0eshootingModeId\"+\n" + + "\x15ReqSwitchShootingMode\x12\x12\n" + + "\x04mode\x18\x01 \x01(\x05R\x04mode\"U\n" + + "\x15ResSwitchShootingMode\x12\x12\n" + + "\x04code\x18\x01 \x01(\x05R\x04code\x12(\n" + + "\x10shooting_mode_id\x18\x02 \x01(\x05R\x0eshootingModeId\"+\n" + + "\x15ReqSwitchShootingTech\x12\x12\n" + + "\x04tech\x18\x01 \x01(\x05R\x04tech\"U\n" + + "\x15ResSwitchShootingTech\x12\x12\n" + + "\x04code\x18\x01 \x01(\x05R\x04code\x12(\n" + + "\x10shooting_tech_id\x18\x02 \x01(\x05R\x0eshootingTechId\"\x17\n" + + "\x15ReqGetDeviceStateInfo\"\xd4\x03\n" + + "\x14ExclusiveCameraState\x12<\n" + + "\x11capture_raw_state\x18\x01 \x01(\v2\x10.CaptureRawStateR\x0fcaptureRawState\x12,\n" + + "\vphoto_state\x18\x02 \x01(\v2\v.PhotoStateR\n" + + "photoState\x12,\n" + + "\vburst_state\x18\x03 \x01(\v2\v.BurstStateR\n" + + "burstState\x12/\n" + + "\frecord_state\x18\x04 \x01(\v2\f.RecordStateR\vrecordState\x128\n" + + "\x0ftimelapse_state\x18\x05 \x01(\v2\x0f.TimeLapseStateR\x0etimelapseState\x12O\n" + + "\x18capture_cali_frame_state\x18\x06 \x01(\v2\x16.CaptureCaliFrameStateR\x15captureCaliFrameState\x125\n" + + "\x0epanorama_state\x18\a \x01(\v2\x0e.PanoramaStateR\rpanoramaState\x12/\n" + + "\fsentry_state\x18\b \x01(\v2\f.SentryStateR\vsentryState\"\xc2\x02\n" + + "\x13TeleCameraStateInfo\x12>\n" + + "\x0fexclusive_state\x18\x01 \x01(\v2\x15.ExclusiveCameraStateR\x0eexclusiveState\x12,\n" + + "\vstream_type\x18\x02 \x01(\v2\v.StreamTypeR\n" + + "streamType\x12\x13\n" + + "\x05h_fov\x18\x03 \x01(\x01R\x04hFov\x12\x13\n" + + "\x05v_fov\x18\x04 \x01(\x01R\x04vFov\x12)\n" + + "\x10resolution_width\x18\x05 \x01(\rR\x0fresolutionWidth\x12+\n" + + "\x11resolution_height\x18\x06 \x01(\rR\x10resolutionHeight\x12;\n" + + "\x10cmos_temperature\x18\a \x01(\v2\x10.CmosTemperatureR\x0fcmosTemperature\"\xc2\x02\n" + + "\x13WideCameraStateInfo\x12>\n" + + "\x0fexclusive_state\x18\x01 \x01(\v2\x15.ExclusiveCameraStateR\x0eexclusiveState\x12,\n" + + "\vstream_type\x18\x02 \x01(\v2\v.StreamTypeR\n" + + "streamType\x12\x13\n" + + "\x05h_fov\x18\x03 \x01(\x01R\x04hFov\x12\x13\n" + + "\x05v_fov\x18\x04 \x01(\x01R\x04vFov\x12)\n" + + "\x10resolution_width\x18\x05 \x01(\rR\x0fresolutionWidth\x12+\n" + + "\x11resolution_height\x18\x06 \x01(\rR\x10resolutionHeight\x12;\n" + + "\x10cmos_temperature\x18\a \x01(\v2\x10.CmosTemperatureR\x0fcmosTemperature\"\xd3\x02\n" + + "\x18ExclusiveFocusMotorState\x12I\n" + + "\x16astro_auto_focus_state\x18\x01 \x01(\v2\x14.AstroAutoFocusStateR\x13astroAutoFocusState\x12L\n" + + "\x17normal_auto_focus_state\x18\x02 \x01(\v2\x15.NormalAutoFocusStateR\x14normalAutoFocusState\x12V\n" + + "\x1bastro_auto_focus_fast_state\x18\x03 \x01(\v2\x18.AstroAutoFocusFastStateR\x17astroAutoFocusFastState\x12F\n" + + "\x15area_auto_focus_state\x18\x04 \x01(\v2\x13.AreaAutoFocusStateR\x12areaAutoFocusState\"\x90\x01\n" + + "\x13FocusMotorStateInfo\x12B\n" + + "\x0fexclusive_state\x18\x01 \x01(\v2\x19.ExclusiveFocusMotorStateR\x0eexclusiveState\x125\n" + + "\x0efocus_position\x18\x02 \x01(\v2\x0e.FocusPositionR\rfocusPosition\"\x9e\x04\n" + + "\x19ExclusiveMotionMotorState\x12N\n" + + "\x17astro_calibration_state\x18\x01 \x01(\v2\x16.AstroCalibrationStateR\x15astroCalibrationState\x129\n" + + "\x10astro_goto_state\x18\x02 \x01(\v2\x0f.AstroGotoStateR\x0eastroGotoState\x12E\n" + + "\x14astro_tracking_state\x18\x03 \x01(\v2\x13.AstroTrackingStateR\x12astroTrackingState\x12?\n" + + "\x12normal_track_state\x18\x04 \x01(\v2\x11.NormalTrackStateR\x10normalTrackState\x12C\n" + + "\x14one_click_goto_state\x18\x05 \x01(\v2\x12.OneClickGotoStateR\x11oneClickGotoState\x12*\n" + + "\beq_state\x18\x06 \x01(\v2\x0f.EqSolvingStateR\aeqState\x12/\n" + + "\fsentry_state\x18\a \x01(\v2\f.SentryStateR\vsentryState\x12L\n" + + "\x17sky_target_finder_state\x18\b \x01(\v2\x15.SkyTargetFinderStateR\x14skyTargetFinderState\"\x96\x01\n" + + "\x14MotionMotorStateInfo\x12C\n" + + "\x0fexclusive_state\x18\x01 \x01(\v2\x1a.ExclusiveMotionMotorStateR\x0eexclusiveState\x129\n" + + "\x10sentry_auto_hand\x18\x02 \x01(\v2\x0f.SentryAutoHandR\x0esentryAutoHand\"\xc5\x05\n" + + "\x0fDeviceStateInfo\x12&\n" + + "\trgb_state\x18\x01 \x01(\v2\t.RgbStateR\brgbState\x126\n" + + "\x0fpower_ind_state\x18\x02 \x01(\v2\x0e.PowerIndStateR\rpowerIndState\x125\n" + + "\x0echarging_state\x18\x03 \x01(\v2\x0e.ChargingStateR\rchargingState\x12/\n" + + "\fstorage_info\x18\x04 \x01(\v2\f.StorageInfoR\vstorageInfo\x12&\n" + + "\tmtp_state\x18\x05 \x01(\v2\t.MTPStateR\bmtpState\x12#\n" + + "\bcpu_mode\x18\x06 \x01(\v2\b.CPUModeR\acpuMode\x12.\n" + + "\vtemperature\x18\a \x01(\v2\f.TemperatureR\vtemperature\x12,\n" + + "\vbody_status\x18\b \x01(\v2\v.BodyStatusR\n" + + "bodyStatus\x12/\n" + + "\fbattery_info\x18\t \x01(\v2\f.BatteryInfoR\vbatteryInfo\x12A\n" + + "\x12calibration_result\x18\n" + + " \x01(\v2\x12.CalibrationResultR\x11calibrationResult\x12;\n" + + "\x10picture_matching\x18\v \x01(\v2\x10.PictureMatchingR\x0fpictureMatching\x122\n" + + "\rauto_shutdown\x18\f \x01(\v2\r.AutoShutdownR\fautoShutdown\x12)\n" + + "\n" + + "lens_defog\x18\r \x01(\v2\n" + + ".LensDefogR\tlensDefog\x12/\n" + + "\fauto_cooling\x18\x0e \x01(\v2\f.AutoCoolingR\vautoCooling\"M\n" + + "\x13ConnectionStateInfo\x126\n" + + "\x0fhost_slave_mode\x18\x01 \x01(\v2\x0e.HostSlaveModeR\rhostSlaveMode\"\x93\x01\n" + + "\x13ShootingModeAndTech\x12#\n" + + "\rshooting_mode\x18\x01 \x01(\x05R\fshootingMode\x120\n" + + "\x14parent_shooting_mode\x18\x02 \x01(\x05R\x12parentShootingMode\x12%\n" + + "\x0eshooting_techs\x18\x03 \x03(\x05R\rshootingTechs\"\xd4\x04\n" + + "\x15ResGetDeviceStateInfo\x12#\n" + + "\rshooting_mode\x18\x01 \x01(\x05R\fshootingMode\x12I\n" + + "\x16tele_camera_state_info\x18\x02 \x01(\v2\x14.TeleCameraStateInfoR\x13teleCameraStateInfo\x12I\n" + + "\x16wide_camera_state_info\x18\x03 \x01(\v2\x14.WideCameraStateInfoR\x13wideCameraStateInfo\x12I\n" + + "\x16focus_motor_state_info\x18\x04 \x01(\v2\x14.FocusMotorStateInfoR\x13focusMotorStateInfo\x12L\n" + + "\x17motion_motor_state_info\x18\x05 \x01(\v2\x15.MotionMotorStateInfoR\x14motionMotorStateInfo\x12<\n" + + "\x11device_state_info\x18\x06 \x01(\v2\x10.DeviceStateInfoR\x0fdeviceStateInfo\x12\x12\n" + + "\x04code\x18\a \x01(\x05R\x04code\x12H\n" + + "\x15connection_state_info\x18\b \x01(\v2\x14.ConnectionStateInfoR\x13connectionStateInfo\x12K\n" + + "\x17shooting_mode_and_techs\x18\t \x03(\v2\x14.ShootingModeAndTechR\x14shootingModeAndTechs\"^\n" + + "\rReqStartTrack\x12\f\n" + + "\x01x\x18\x01 \x01(\x05R\x01x\x12\f\n" + + "\x01y\x18\x02 \x01(\x05R\x01y\x12\f\n" + + "\x01w\x18\x03 \x01(\x05R\x01w\x12\f\n" + + "\x01h\x18\x04 \x01(\x05R\x01h\x12\x15\n" + + "\x06cam_id\x18\x05 \x01(\x05R\x05camId\"\x0e\n" + + "\fReqStopTrack\"\x0f\n" + + "\rReqPauseTrack\"\x12\n" + + "\x10ReqContinueTrack\"(\n" + + "\x12ReqStartSentryMode\x12\x12\n" + + "\x04type\x18\x01 \x01(\x05R\x04type\"\x13\n" + + "\x11ReqStopSentryMode\" \n" + + "\x0eReqMOTTrackOne\x12\x0e\n" + + "\x02id\x18\x01 \x01(\x05R\x02id\"(\n" + + "\x12ReqUFOAutoHandMode\x12\x12\n" + + "\x04mode\x18\x01 \x01(\x05R\x04mode\"G\n" + + "\x12ReqStartTrackClick\x12\f\n" + + "\x01x\x18\x01 \x01(\x05R\x01x\x12\f\n" + + "\x01y\x18\x02 \x01(\x05R\x01y\x12\x15\n" + + "\x06cam_id\x18\x03 \x01(\x05R\x05camId\"\xa6\x05\n" + + "\x0fReqVoiceCommand\x124\n" + + "\fcommand_type\x18\x01 \x01(\x0e2\x11.VoiceCommandTypeR\vcommandType\x12#\n" + + "\rshooting_mode\x18\x02 \x01(\x05R\fshootingMode\x124\n" + + "\fphoto_params\x18\n" + + " \x01(\v2\x11.VoicePhotoParamsR\vphotoParams\x127\n" + + "\rrecord_params\x18\v \x01(\v2\x12.VoiceRecordParamsR\frecordParams\x12@\n" + + "\x10timelapse_params\x18\f \x01(\v2\x15.VoiceTimelapseParamsR\x0ftimelapseParams\x124\n" + + "\fburst_params\x18\r \x01(\v2\x11.VoiceBurstParamsR\vburstParams\x124\n" + + "\fastro_params\x18\x0e \x01(\v2\x11.VoiceAstroParamsR\vastroParams\x127\n" + + "\rsentry_params\x18\x0f \x01(\v2\x12.VoiceSentryParamsR\fsentryParams\x121\n" + + "\vmove_params\x18\x10 \x01(\v2\x10.VoiceMoveParamsR\n" + + "moveParams\x121\n" + + "\vgoto_params\x18\x11 \x01(\v2\x10.VoiceGotoParamsR\n" + + "gotoParams\x12F\n" + + "\x12calibration_params\x18\x12 \x01(\v2\x17.VoiceCalibrationParamsR\x11calibrationParams\x124\n" + + "\ffocus_params\x18\x13 \x01(\v2\x11.VoiceFocusParamsR\vfocusParams\"3\n" + + "\x10VoicePhotoParams\x12\x1f\n" + + "\vcamera_type\x18\x01 \x01(\x05R\n" + + "cameraType\"_\n" + + "\x11VoiceRecordParams\x12\x1f\n" + + "\vcamera_type\x18\x01 \x01(\x05R\n" + + "cameraType\x12)\n" + + "\x10duration_seconds\x18\x02 \x01(\x05R\x0fdurationSeconds\"\x8d\x01\n" + + "\x14VoiceTimelapseParams\x12\x1f\n" + + "\vcamera_type\x18\x01 \x01(\x05R\n" + + "cameraType\x12)\n" + + "\x10interval_seconds\x18\x02 \x01(\x05R\x0fintervalSeconds\x12)\n" + + "\x10duration_seconds\x18\x03 \x01(\x05R\x0fdurationSeconds\"I\n" + + "\x10VoiceBurstParams\x12\x1f\n" + + "\vcamera_type\x18\x01 \x01(\x05R\n" + + "cameraType\x12\x14\n" + + "\x05count\x18\x02 \x01(\x05R\x05count\"\xcd\x01\n" + + "\x10VoiceAstroParams\x12\x1f\n" + + "\vtarget_name\x18\x01 \x01(\tR\n" + + "targetName\x12\x0e\n" + + "\x02ra\x18\x02 \x01(\x01R\x02ra\x12\x10\n" + + "\x03dec\x18\x03 \x01(\x01R\x03dec\x12\x14\n" + + "\x05index\x18\x04 \x01(\x05R\x05index\x12\x10\n" + + "\x03lon\x18\x05 \x01(\x01R\x03lon\x12\x10\n" + + "\x03lat\x18\x06 \x01(\x01R\x03lat\x12\x1b\n" + + "\tauto_goto\x18\a \x01(\bR\bautoGoto\x12\x1f\n" + + "\vforce_start\x18\b \x01(\bR\n" + + "forceStart\"'\n" + + "\x11VoiceSentryParams\x12\x12\n" + + "\x04type\x18\x01 \x01(\x05R\x04type\"s\n" + + "\x0fVoiceMoveParams\x12#\n" + + "\razimuth_angle\x18\x01 \x01(\x01R\fazimuthAngle\x12%\n" + + "\x0ealtitude_angle\x18\x02 \x01(\x01R\raltitudeAngle\x12\x14\n" + + "\x05speed\x18\x03 \x01(\x05R\x05speed\"\xb3\x01\n" + + "\x0fVoiceGotoParams\x12\x1f\n" + + "\vtarget_name\x18\x01 \x01(\tR\n" + + "targetName\x12\x0e\n" + + "\x02ra\x18\x02 \x01(\x01R\x02ra\x12\x10\n" + + "\x03dec\x18\x03 \x01(\x01R\x03dec\x12\x14\n" + + "\x05index\x18\x04 \x01(\x05R\x05index\x12\x10\n" + + "\x03lon\x18\x05 \x01(\x01R\x03lon\x12\x10\n" + + "\x03lat\x18\x06 \x01(\x01R\x03lat\x12#\n" + + "\rshooting_mode\x18\a \x01(\x05R\fshootingMode\"<\n" + + "\x16VoiceCalibrationParams\x12\x10\n" + + "\x03lon\x18\x01 \x01(\x01R\x03lon\x12\x10\n" + + "\x03lat\x18\x02 \x01(\x01R\x03lat\"3\n" + + "\x10VoiceFocusParams\x12\x1f\n" + + "\vis_infinity\x18\x01 \x01(\bR\n" + + "isInfinity\"\xf0\x01\n" + + "\x0fResVoiceCommand\x12\x12\n" + + "\x04code\x18\x01 \x01(\x05R\x04code\x12\x18\n" + + "\amessage\x18\x02 \x01(\tR\amessage\x124\n" + + "\fcommand_type\x18\x03 \x01(\x0e2\x11.VoiceCommandTypeR\vcommandType\x127\n" + + "\rstatus_result\x18\n" + + " \x01(\v2\x12.VoiceStatusResultR\fstatusResult\x12@\n" + + "\x10operation_result\x18\v \x01(\v2\x15.VoiceOperationResultR\x0foperationResult\"\xa0\x02\n" + + "\x15AstroShootingProgress\x12\x1f\n" + + "\vtarget_name\x18\x01 \x01(\tR\n" + + "targetName\x12%\n" + + "\x0ecaptured_count\x18\x02 \x01(\x05R\rcapturedCount\x12\x1f\n" + + "\vtotal_count\x18\x03 \x01(\x05R\n" + + "totalCount\x12#\n" + + "\rstacked_count\x18\x04 \x01(\x05R\fstackedCount\x12/\n" + + "\x13progress_percentage\x18\x05 \x01(\x05R\x12progressPercentage\x12!\n" + + "\felapsed_time\x18\x06 \x01(\x03R\velapsedTime\x12%\n" + + "\x0eremaining_time\x18\a \x01(\x03R\rremainingTime\"\x96\x01\n" + + "\x11VoiceStatusResult\x12B\n" + + "\x11device_state_info\x18\x01 \x01(\v2\x16.ResGetDeviceStateInfoR\x0fdeviceStateInfo\x12=\n" + + "\x0eastro_progress\x18\x02 \x01(\v2\x16.AstroShootingProgressR\rastroProgress\"W\n" + + "\x14VoiceOperationResult\x12\x18\n" + + "\asuccess\x18\x01 \x01(\bR\asuccess\x12%\n" + + "\x0edetail_message\x18\x02 \x01(\tR\rdetailMessage\"\x90\x01\n" + + "\x17ResNotifyVoiceAssistant\x124\n" + + "\fcommand_type\x18\x01 \x01(\x0e2\x11.VoiceCommandTypeR\vcommandType\x12%\n" + + "\x05state\x18\x02 \x01(\x0e2\x0f.OperationStateR\x05state\x12\x18\n" + + "\amessage\x18\x04 \x01(\tR\amessage*K\n" + + "\x0eWsMajorVersion\x12\x1c\n" + + "\x18WS_MAJOR_VERSION_UNKNOWN\x10\x00\x12\x1b\n" + + "\x17WS_MAJOR_VERSION_NUMBER\x10\x02*K\n" + + "\x0eWsMinorVersion\x12\x1c\n" + + "\x18WS_MINOR_VERSION_UNKNOWN\x10\x00\x12\x1b\n" + + "\x17WS_MINOR_VERSION_NUMBER\x10\x03*5\n" + + "\tVocalType\x12\x0e\n" + + "\n" + + "VT_UNKNOWN\x10\x00\x12\v\n" + + "\aVT_PING\x10\x01\x12\v\n" + + "\aVT_ECHO\x10\x02*\x82\x01\n" + + "\x0eOperationState\x12\x18\n" + + "\x14OPERATION_STATE_IDLE\x10\x00\x12\x1b\n" + + "\x17OPERATION_STATE_RUNNING\x10\x01\x12\x1c\n" + + "\x18OPERATION_STATE_STOPPING\x10\x02\x12\x1b\n" + + "\x17OPERATION_STATE_STOPPED\x10\x03*\x8d\x01\n" + + "\n" + + "AstroState\x12\x14\n" + + "\x10ASTRO_STATE_IDLE\x10\x00\x12\x17\n" + + "\x13ASTRO_STATE_RUNNING\x10\x01\x12\x18\n" + + "\x14ASTRO_STATE_STOPPING\x10\x02\x12\x17\n" + + "\x13ASTRO_STATE_STOPPED\x10\x03\x12\x1d\n" + + "\x19ASTRO_STATE_PLATE_SOLVING\x10\x04*\xc8\x01\n" + + "\x0fSentryModeState\x12\x1a\n" + + "\x16SENTRY_MODE_STATE_IDLE\x10\x00\x12\x1a\n" + + "\x16SENTRY_MODE_STATE_INIT\x10\x01\x12\x1c\n" + + "\x18SENTRY_MODE_STATE_DETECT\x10\x02\x12\x1b\n" + + "\x17SENTRY_MODE_STATE_TRACK\x10\x03\x12\"\n" + + "\x1eSENTRY_MODE_STATE_TRACK_FINISH\x10\x04\x12\x1e\n" + + "\x1aSENTRY_MODE_STATE_STOPPING\x10\x05*\x85\x02\n" + + "\x10SentryObjectType\x12\x1e\n" + + "\x1aSENTRY_OBJECT_TYPE_UNKNOWN\x10\x00\x12\x1a\n" + + "\x16SENTRY_OBJECT_TYPE_UFO\x10\x01\x12\x1b\n" + + "\x17SENTRY_OBJECT_TYPE_BIRD\x10\x02\x12\x1d\n" + + "\x19SENTRY_OBJECT_TYPE_PERSON\x10\x03\x12\x1d\n" + + "\x19SENTRY_OBJECT_TYPE_ANIMAL\x10\x04\x12\x1e\n" + + "\x1aSENTRY_OBJECT_TYPE_VEHICLE\x10\x05\x12\x1d\n" + + "\x19SENTRY_OBJECT_TYPE_FLYING\x10\x06\x12\x1b\n" + + "\x17SENTRY_OBJECT_TYPE_BOAT\x10\a*\xdd\x01\n" + + "\x15ShootingScheduleState\x12'\n" + + "#SHOOTING_SCHEDULE_STATE_INITIALIZED\x10\x00\x12)\n" + + "%SHOOTING_SCHEDULE_STATE_PENDING_SHOOT\x10\x01\x12$\n" + + " SHOOTING_SCHEDULE_STATE_SHOOTING\x10\x02\x12%\n" + + "!SHOOTING_SCHEDULE_STATE_COMPLETED\x10\x03\x12#\n" + + "\x1fSHOOTING_SCHEDULE_STATE_EXPIRED\x10\x04*s\n" + + "\x19ShootingScheduleSyncState\x12-\n" + + ")SHOOTING_SCHEDULE_SYNC_STATE_PENDING_SYNC\x10\x00\x12'\n" + + "#SHOOTING_SCHEDULE_SYNC_STATE_SYNCED\x10\x01*\xcb\x01\n" + + "\x16ShootingScheduleResult\x12*\n" + + "&SHOOTING_SCHEDULE_RESULT_PENDING_START\x10\x00\x12*\n" + + "&SHOOTING_SCHEDULE_RESULT_ALL_COMPLETED\x10\x01\x120\n" + + ",SHOOTING_SCHEDULE_RESULT_PARTIALLY_COMPLETED\x10\x02\x12'\n" + + "#SHOOTING_SCHEDULE_RESULT_ALL_FAILED\x10\x03*\xc6\x01\n" + + "\x19ScheduleShootingTaskState\x12\x1d\n" + + "\x19SHOOTING_TASK_STATUS_IDLE\x10\x00\x12!\n" + + "\x1dSHOOTING_TASK_STATUS_SHOOTING\x10\x01\x12 \n" + + "\x1cSHOOTING_TASK_STATUS_SUCCESS\x10\x02\x12\x1f\n" + + "\x1bSHOOTING_TASK_STATUS_FAILED\x10\x03\x12$\n" + + " SHOOTING_TASK_STATUS_INTERRUPTED\x10\x04*A\n" + + "\x14ShootingScheduleMode\x12)\n" + + "%SHOOTING_SCHEDULE_MODE_ASTRO_DEEP_SKY\x10\x00*\xaa\x01\n" + + "\x06TaskId\x12\x10\n" + + "\fTASK_ID_IDLE\x10\x00\x12\x1b\n" + + "\x17TASK_ID_PANORAMA_UPLOAD\x10\x01\x122\n" + + ".TASK_ID_ASTRO_MULTI_STACK_THUMBNAIL_GENERATION\x10\x02\x12\x1d\n" + + "\x19TASK_ID_ASTRO_MULTI_STACK\x10\x03\x12\x1e\n" + + "\x1aTASK_ID_CAPTURE_CALI_FRAME\x10\x04*\xbf\x01\n" + + "\x11ExclusiveTaskType\x12\x17\n" + + "\x13EXCLUSIVE_TYPE_NONE\x10\x00\x12\x19\n" + + "\x15EXCLUSIVE_TYPE_CAMERA\x10\x01\x12\x18\n" + + "\x14EXCLUSIVE_TYPE_MOTOR\x10\x02\x12\x1e\n" + + "\x1aEXCLUSIVE_TYPE_FOCUS_MOTOR\x10\x04\x12\x1c\n" + + "\x18EXCLUSIVE_TYPE_SYSTEM_IO\x10\b\x12\x1e\n" + + "\x1aEXCLUSIVE_TYPE_SYSTEM_WIFI\x10\x10*\x88\x04\n" + + "\x10VoiceCommandType\x12\x15\n" + + "\x11VOICE_CMD_UNKNOWN\x10\x00\x12\x18\n" + + "\x14VOICE_CMD_GET_STATUS\x10\x01\x12\x18\n" + + "\x14VOICE_CMD_TAKE_PHOTO\x10\x02\x12\x1a\n" + + "\x16VOICE_CMD_START_RECORD\x10\x03\x12\x19\n" + + "\x15VOICE_CMD_STOP_RECORD\x10\x04\x12\x1d\n" + + "\x19VOICE_CMD_START_TIMELAPSE\x10\x05\x12\x1c\n" + + "\x18VOICE_CMD_STOP_TIMELAPSE\x10\x06\x12\x19\n" + + "\x15VOICE_CMD_START_BURST\x10\a\x12\x18\n" + + "\x14VOICE_CMD_STOP_BURST\x10\b\x12\x19\n" + + "\x15VOICE_CMD_START_ASTRO\x10\t\x12\x18\n" + + "\x14VOICE_CMD_STOP_ASTRO\x10\n" + + "\x12\x1a\n" + + "\x16VOICE_CMD_START_SENTRY\x10\v\x12\x19\n" + + "\x15VOICE_CMD_STOP_SENTRY\x10\f\x12\x12\n" + + "\x0eVOICE_CMD_MOVE\x10\r\x12\x19\n" + + "\x15VOICE_CMD_GOTO_TARGET\x10\x0e\x12\x19\n" + + "\x15VOICE_CMD_CALIBRATION\x10\x0f\x12\x18\n" + + "\x14VOICE_CMD_AUTO_FOCUS\x10\x10\x12\x18\n" + + "\x14VOICE_CMD_STOP_FOCUS\x10\x11\x12\x16\n" + + "\x12VOICE_CMD_STOP_ALL\x10\x12B(Z&github.com/antitbone/dwarfctl/proto;pbb\x06proto3" + +var ( + file_dwarf_proto_rawDescOnce sync.Once + file_dwarf_proto_rawDescData []byte +) + +func file_dwarf_proto_rawDescGZIP() []byte { + file_dwarf_proto_rawDescOnce.Do(func() { + file_dwarf_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_dwarf_proto_rawDesc), len(file_dwarf_proto_rawDesc))) + }) + return file_dwarf_proto_rawDescData +} + +var file_dwarf_proto_enumTypes = make([]protoimpl.EnumInfo, 19) +var file_dwarf_proto_msgTypes = make([]protoimpl.MessageInfo, 382) +var file_dwarf_proto_goTypes = []any{ + (WsMajorVersion)(0), // 0: WsMajorVersion + (WsMinorVersion)(0), // 1: WsMinorVersion + (VocalType)(0), // 2: VocalType + (OperationState)(0), // 3: OperationState + (AstroState)(0), // 4: AstroState + (SentryModeState)(0), // 5: SentryModeState + (SentryObjectType)(0), // 6: SentryObjectType + (ShootingScheduleState)(0), // 7: ShootingScheduleState + (ShootingScheduleSyncState)(0), // 8: ShootingScheduleSyncState + (ShootingScheduleResult)(0), // 9: ShootingScheduleResult + (ScheduleShootingTaskState)(0), // 10: ScheduleShootingTaskState + (ShootingScheduleMode)(0), // 11: ShootingScheduleMode + (TaskId)(0), // 12: TaskId + (ExclusiveTaskType)(0), // 13: ExclusiveTaskType + (VoiceCommandType)(0), // 14: VoiceCommandType + (ResGetAstroShootingTime_AstroMode)(0), // 15: ResGetAstroShootingTime.AstroMode + (CommonProgress_ProgressType)(0), // 16: CommonProgress.ProgressType + (StateSystemResourceOccupation_TaskId)(0), // 17: StateSystemResourceOccupation.TaskId + (BodyStatus_BodyStatusEnum)(0), // 18: BodyStatus.BodyStatusEnum + (*ReqStartCalibration)(nil), // 19: ReqStartCalibration + (*ReqStopCalibration)(nil), // 20: ReqStopCalibration + (*ReqGotoDSO)(nil), // 21: ReqGotoDSO + (*ReqGotoSolarSystem)(nil), // 22: ReqGotoSolarSystem + (*ResGotoSolarSystem)(nil), // 23: ResGotoSolarSystem + (*ReqStopGoto)(nil), // 24: ReqStopGoto + (*ReqCaptureRawLiveStacking)(nil), // 25: ReqCaptureRawLiveStacking + (*ReqStopCaptureRawLiveStacking)(nil), // 26: ReqStopCaptureRawLiveStacking + (*ReqFastStopCaptureRawLiveStacking)(nil), // 27: ReqFastStopCaptureRawLiveStacking + (*ReqCheckDarkFrame)(nil), // 28: ReqCheckDarkFrame + (*ResCheckDarkFrame)(nil), // 29: ResCheckDarkFrame + (*ReqCaptureDarkFrame)(nil), // 30: ReqCaptureDarkFrame + (*ReqStopCaptureDarkFrame)(nil), // 31: ReqStopCaptureDarkFrame + (*ReqCaptureDarkFrameWithParam)(nil), // 32: ReqCaptureDarkFrameWithParam + (*ReqStopCaptureDarkFrameWithParam)(nil), // 33: ReqStopCaptureDarkFrameWithParam + (*ReqGetDarkFrameList)(nil), // 34: ReqGetDarkFrameList + (*ResGetDarkFrameInfo)(nil), // 35: ResGetDarkFrameInfo + (*ResGetDarkFrameInfoList)(nil), // 36: ResGetDarkFrameInfoList + (*ReqDelDarkFrame)(nil), // 37: ReqDelDarkFrame + (*ReqDelDarkFrameList)(nil), // 38: ReqDelDarkFrameList + (*ResDelDarkFrameList)(nil), // 39: ResDelDarkFrameList + (*ReqGoLive)(nil), // 40: ReqGoLive + (*ReqTrackSpecialTarget)(nil), // 41: ReqTrackSpecialTarget + (*ReqStopTrackSpecialTarget)(nil), // 42: ReqStopTrackSpecialTarget + (*ReqOneClickGotoDSO)(nil), // 43: ReqOneClickGotoDSO + (*ResOneClickGoto)(nil), // 44: ResOneClickGoto + (*ReqOneClickGotoSolarSystem)(nil), // 45: ReqOneClickGotoSolarSystem + (*ResOneClickGotoSolarSystem)(nil), // 46: ResOneClickGotoSolarSystem + (*ReqStopOneClickGoto)(nil), // 47: ReqStopOneClickGoto + (*ReqCaptureWideRawLiveStacking)(nil), // 48: ReqCaptureWideRawLiveStacking + (*ReqStopCaptureWideRawLiveStacking)(nil), // 49: ReqStopCaptureWideRawLiveStacking + (*ReqFastStopCaptureWideRawLiveStacking)(nil), // 50: ReqFastStopCaptureWideRawLiveStacking + (*ReqStartEqSolving)(nil), // 51: ReqStartEqSolving + (*ResStartEqSolving)(nil), // 52: ResStartEqSolving + (*ReqStopEqSolving)(nil), // 53: ReqStopEqSolving + (*ReqStartAiEnhance)(nil), // 54: ReqStartAiEnhance + (*ReqStopAiEnhance)(nil), // 55: ReqStopAiEnhance + (*ReqStartMosaic)(nil), // 56: ReqStartMosaic + (*ReqStartMakeFitsThumb)(nil), // 57: ReqStartMakeFitsThumb + (*ReqStopMakeFitsThumb)(nil), // 58: ReqStopMakeFitsThumb + (*ResMakeFitsThumb)(nil), // 59: ResMakeFitsThumb + (*MakeFitsThumbTaskParam)(nil), // 60: MakeFitsThumbTaskParam + (*ReqIsImageStackable)(nil), // 61: ReqIsImageStackable + (*ResIsImageStackable)(nil), // 62: ResIsImageStackable + (*ReqStartRepostprocess)(nil), // 63: ReqStartRepostprocess + (*ReqStopRepostprocess)(nil), // 64: ReqStopRepostprocess + (*ResRepostprocess)(nil), // 65: ResRepostprocess + (*RepostprocessTaskParam)(nil), // 66: RepostprocessTaskParam + (*ReqGetAstroShootingTime)(nil), // 67: ReqGetAstroShootingTime + (*ResGetAstroShootingTime)(nil), // 68: ResGetAstroShootingTime + (*ReqGetCaliFrameList)(nil), // 69: ReqGetCaliFrameList + (*CaliFrameInfo)(nil), // 70: CaliFrameInfo + (*ResGetCaliFrameList)(nil), // 71: ResGetCaliFrameList + (*ReqDelCaliFrameList)(nil), // 72: ReqDelCaliFrameList + (*ReqCaptureCaliFrame)(nil), // 73: ReqCaptureCaliFrame + (*ReqStopCaptureCaliFrame)(nil), // 74: ReqStopCaptureCaliFrame + (*CaptureCaliFrameTaskParam)(nil), // 75: CaptureCaliFrameTaskParam + (*ReqGetQuickSetList)(nil), // 76: ReqGetQuickSetList + (*QuikSetInfo)(nil), // 77: QuikSetInfo + (*ResGetQuikSetList)(nil), // 78: ResGetQuikSetList + (*ReqSetQuickSet)(nil), // 79: ReqSetQuickSet + (*ResSetQuickSet)(nil), // 80: ResSetQuickSet + (*ReqOneClickShooting)(nil), // 81: ReqOneClickShooting + (*ResAstroShooting)(nil), // 82: ResAstroShooting + (*ReqStartSkyTargetFinder)(nil), // 83: ReqStartSkyTargetFinder + (*ResStartSkyTargetFinder)(nil), // 84: ResStartSkyTargetFinder + (*ReqStopSkyTargetFinder)(nil), // 85: ReqStopSkyTargetFinder + (*WsPacket)(nil), // 86: WsPacket + (*ComResponse)(nil), // 87: ComResponse + (*ComResWithInt)(nil), // 88: ComResWithInt + (*ComResWithDouble)(nil), // 89: ComResWithDouble + (*ComResWithString)(nil), // 90: ComResWithString + (*CommonParam)(nil), // 91: CommonParam + (*ReqGetconfig)(nil), // 92: ReqGetconfig + (*ReqAp)(nil), // 93: ReqAp + (*ReqSta)(nil), // 94: ReqSta + (*ReqSetblewifi)(nil), // 95: ReqSetblewifi + (*ReqReset)(nil), // 96: ReqReset + (*ReqGetwifilist)(nil), // 97: ReqGetwifilist + (*ReqGetsysteminfo)(nil), // 98: ReqGetsysteminfo + (*ReqCheckFile)(nil), // 99: ReqCheckFile + (*ResCommon)(nil), // 100: ResCommon + (*ResGetconfig)(nil), // 101: ResGetconfig + (*ResAp)(nil), // 102: ResAp + (*ResSta)(nil), // 103: ResSta + (*ResSetblewifi)(nil), // 104: ResSetblewifi + (*ResReset)(nil), // 105: ResReset + (*WifiInfo)(nil), // 106: WifiInfo + (*ResWifilist)(nil), // 107: ResWifilist + (*ResGetsysteminfo)(nil), // 108: ResGetsysteminfo + (*ResReceiveDataError)(nil), // 109: ResReceiveDataError + (*ResCheckFile)(nil), // 110: ResCheckFile + (*ComDwarfMsg)(nil), // 111: ComDwarfMsg + (*DwarfPing)(nil), // 112: DwarfPing + (*StationModel)(nil), // 113: StationModel + (*NifAP)(nil), // 114: NifAP + (*NifSTA)(nil), // 115: NifSTA + (*DwarfEcho)(nil), // 116: DwarfEcho + (*ReqOpenCamera)(nil), // 117: ReqOpenCamera + (*ReqCloseCamera)(nil), // 118: ReqCloseCamera + (*ReqPhoto)(nil), // 119: ReqPhoto + (*ReqBurstPhoto)(nil), // 120: ReqBurstPhoto + (*ReqStopBurstPhoto)(nil), // 121: ReqStopBurstPhoto + (*ReqStartRecord)(nil), // 122: ReqStartRecord + (*ReqStopRecord)(nil), // 123: ReqStopRecord + (*ReqSetExpMode)(nil), // 124: ReqSetExpMode + (*ReqGetExpMode)(nil), // 125: ReqGetExpMode + (*ReqSetExp)(nil), // 126: ReqSetExp + (*ReqGetExp)(nil), // 127: ReqGetExp + (*ReqSetGainMode)(nil), // 128: ReqSetGainMode + (*ReqGetGainMode)(nil), // 129: ReqGetGainMode + (*ReqSetGain)(nil), // 130: ReqSetGain + (*ReqGetGain)(nil), // 131: ReqGetGain + (*ReqSetBrightness)(nil), // 132: ReqSetBrightness + (*ReqGetBrightness)(nil), // 133: ReqGetBrightness + (*ReqSetContrast)(nil), // 134: ReqSetContrast + (*ReqGetContrast)(nil), // 135: ReqGetContrast + (*ReqSetHue)(nil), // 136: ReqSetHue + (*ReqGetHue)(nil), // 137: ReqGetHue + (*ReqSetSaturation)(nil), // 138: ReqSetSaturation + (*ReqGetSaturation)(nil), // 139: ReqGetSaturation + (*ReqSetSharpness)(nil), // 140: ReqSetSharpness + (*ReqGetSharpness)(nil), // 141: ReqGetSharpness + (*ReqSetWBMode)(nil), // 142: ReqSetWBMode + (*ReqGetWBMode)(nil), // 143: ReqGetWBMode + (*ReqSetWBSence)(nil), // 144: ReqSetWBSence + (*ReqGetWBSence)(nil), // 145: ReqGetWBSence + (*ReqSetWBCT)(nil), // 146: ReqSetWBCT + (*ReqGetWBCT)(nil), // 147: ReqGetWBCT + (*ReqSetIrCut)(nil), // 148: ReqSetIrCut + (*ReqGetIrcut)(nil), // 149: ReqGetIrcut + (*ReqStartTimeLapse)(nil), // 150: ReqStartTimeLapse + (*ReqStopTimeLapse)(nil), // 151: ReqStopTimeLapse + (*ReqSetAllParams)(nil), // 152: ReqSetAllParams + (*ReqGetAllParams)(nil), // 153: ReqGetAllParams + (*ResGetAllParams)(nil), // 154: ResGetAllParams + (*ReqSetFeatureParams)(nil), // 155: ReqSetFeatureParams + (*ReqGetAllFeatureParams)(nil), // 156: ReqGetAllFeatureParams + (*ResGetAllFeatureParams)(nil), // 157: ResGetAllFeatureParams + (*ReqGetSystemWorkingState)(nil), // 158: ReqGetSystemWorkingState + (*ReqSetJpgQuality)(nil), // 159: ReqSetJpgQuality + (*ReqGetJpgQuality)(nil), // 160: ReqGetJpgQuality + (*ReqPhotoRaw)(nil), // 161: ReqPhotoRaw + (*ReqSetRtspBitRateType)(nil), // 162: ReqSetRtspBitRateType + (*ReqDisableAllIspProcessing)(nil), // 163: ReqDisableAllIspProcessing + (*ReqEnableAllIspProcessing)(nil), // 164: ReqEnableAllIspProcessing + (*IspModuleState)(nil), // 165: IspModuleState + (*ReqSetIspModuleState)(nil), // 166: ReqSetIspModuleState + (*ReqGetIspModuleState)(nil), // 167: ReqGetIspModuleState + (*ReqSwitchResolution)(nil), // 168: ReqSwitchResolution + (*ReqSwitchFrameRate)(nil), // 169: ReqSwitchFrameRate + (*ReqSwitchCropRatio)(nil), // 170: ReqSwitchCropRatio + (*ReqSetPreviewQuality)(nil), // 171: ReqSetPreviewQuality + (*ReqLensDefog)(nil), // 172: ReqLensDefog + (*ReqAutoCooling)(nil), // 173: ReqAutoCooling + (*ReqAutoShutdown)(nil), // 174: ReqAutoShutdown + (*ReqManualSingleStepFocus)(nil), // 175: ReqManualSingleStepFocus + (*ReqManualContinuFocus)(nil), // 176: ReqManualContinuFocus + (*ReqStopManualContinuFocus)(nil), // 177: ReqStopManualContinuFocus + (*ReqNormalAutoFocus)(nil), // 178: ReqNormalAutoFocus + (*ReqAstroAutoFocus)(nil), // 179: ReqAstroAutoFocus + (*ReqStopAstroAutoFocus)(nil), // 180: ReqStopAstroAutoFocus + (*ReqGetUserInfinityPos)(nil), // 181: ReqGetUserInfinityPos + (*ReqSetUserInfinityPos)(nil), // 182: ReqSetUserInfinityPos + (*ResUserInfinityPos)(nil), // 183: ResUserInfinityPos + (*ReqITipsGet)(nil), // 184: ReqITipsGet + (*ResITipsGet)(nil), // 185: ResITipsGet + (*CommonITips)(nil), // 186: CommonITips + (*CommonStepITips)(nil), // 187: CommonStepITips + (*ResITipsList)(nil), // 188: ResITipsList + (*ReqMotorServiceJoystick)(nil), // 189: ReqMotorServiceJoystick + (*ReqMotorServiceJoystickFixedAngle)(nil), // 190: ReqMotorServiceJoystickFixedAngle + (*ReqMotorServiceJoystickStop)(nil), // 191: ReqMotorServiceJoystickStop + (*ReqMotorRun)(nil), // 192: ReqMotorRun + (*ReqMotorRunInPulse)(nil), // 193: ReqMotorRunInPulse + (*ReqMotorRunTo)(nil), // 194: ReqMotorRunTo + (*ReqMotorGetPosition)(nil), // 195: ReqMotorGetPosition + (*ReqMotorStop)(nil), // 196: ReqMotorStop + (*ReqMotorReset)(nil), // 197: ReqMotorReset + (*ReqMotorChangeSpeed)(nil), // 198: ReqMotorChangeSpeed + (*ReqMotorChangeDirection)(nil), // 199: ReqMotorChangeDirection + (*ResMotor)(nil), // 200: ResMotor + (*ResMotorPosition)(nil), // 201: ResMotorPosition + (*ReqDualCameraLinkage)(nil), // 202: ReqDualCameraLinkage + (*PictureMatching)(nil), // 203: PictureMatching + (*StorageInfo)(nil), // 204: StorageInfo + (*Temperature)(nil), // 205: Temperature + (*CmosTemperature)(nil), // 206: CmosTemperature + (*RecordTime)(nil), // 207: RecordTime + (*TimeLapseOutTime)(nil), // 208: TimeLapseOutTime + (*OperationStateNotify)(nil), // 209: OperationStateNotify + (*AstroCalibrationState)(nil), // 210: AstroCalibrationState + (*AstroGotoState)(nil), // 211: AstroGotoState + (*AstroTrackingState)(nil), // 212: AstroTrackingState + (*ProgressCaptureRawDark)(nil), // 213: ProgressCaptureRawDark + (*ProgressCaptureRawLiveStacking)(nil), // 214: ProgressCaptureRawLiveStacking + (*Param)(nil), // 215: Param + (*BurstProgress)(nil), // 216: BurstProgress + (*PanoramaProgress)(nil), // 217: PanoramaProgress + (*RgbState)(nil), // 218: RgbState + (*PowerIndState)(nil), // 219: PowerIndState + (*ChargingState)(nil), // 220: ChargingState + (*BatteryInfo)(nil), // 221: BatteryInfo + (*HostSlaveMode)(nil), // 222: HostSlaveMode + (*MTPState)(nil), // 223: MTPState + (*TrackResult)(nil), // 224: TrackResult + (*CPUMode)(nil), // 225: CPUMode + (*AstroTrackingSpecialState)(nil), // 226: AstroTrackingSpecialState + (*PowerOff)(nil), // 227: PowerOff + (*AlbumUpdate)(nil), // 228: AlbumUpdate + (*SentryState)(nil), // 229: SentryState + (*OneClickGotoState)(nil), // 230: OneClickGotoState + (*StreamType)(nil), // 231: StreamType + (*MultiTrackResult)(nil), // 232: MultiTrackResult + (*EqSolvingState)(nil), // 233: EqSolvingState + (*LongExpPhotoProgress)(nil), // 234: LongExpPhotoProgress + (*ShootingScheduleResultAndState)(nil), // 235: ShootingScheduleResultAndState + (*ShootingTaskState)(nil), // 236: ShootingTaskState + (*SkySeacherState)(nil), // 237: SkySeacherState + (*ProgressAiEnhance)(nil), // 238: ProgressAiEnhance + (*CommonProgress)(nil), // 239: CommonProgress + (*CalibrationResult)(nil), // 240: CalibrationResult + (*FocusPosition)(nil), // 241: FocusPosition + (*SentryAutoHand)(nil), // 242: SentryAutoHand + (*PanoramaStitchUploadComplete)(nil), // 243: PanoramaStitchUploadComplete + (*PanoramaCompressionComplete)(nil), // 244: PanoramaCompressionComplete + (*PanoramaCompressionProgress)(nil), // 245: PanoramaCompressionProgress + (*PanoramaUploadCompressionProgress)(nil), // 246: PanoramaUploadCompressionProgress + (*PanoramaUploadProgress)(nil), // 247: PanoramaUploadProgress + (*PanoramaCurrentUploadState)(nil), // 248: PanoramaCurrentUploadState + (*LowTempProtectionMode)(nil), // 249: LowTempProtectionMode + (*StateSystemResourceOccupation)(nil), // 250: StateSystemResourceOccupation + (*BodyStatus)(nil), // 251: BodyStatus + (*ProgressCaptureMosaic)(nil), // 252: ProgressCaptureMosaic + (*Wb)(nil), // 253: Wb + (*GeneralIntParam)(nil), // 254: GeneralIntParam + (*GeneralFloatParam)(nil), // 255: GeneralFloatParam + (*GeneralBoolParams)(nil), // 256: GeneralBoolParams + (*SwitchShootingMode)(nil), // 257: SwitchShootingMode + (*SwitchCropRatioState)(nil), // 258: SwitchCropRatioState + (*ResolutionParam)(nil), // 259: ResolutionParam + (*CaptureRawState)(nil), // 260: CaptureRawState + (*PhotoState)(nil), // 261: PhotoState + (*BurstState)(nil), // 262: BurstState + (*RecordState)(nil), // 263: RecordState + (*TimeLapseState)(nil), // 264: TimeLapseState + (*CaptureRawDarkState)(nil), // 265: CaptureRawDarkState + (*PanoramaState)(nil), // 266: PanoramaState + (*AstroAutoFocusState)(nil), // 267: AstroAutoFocusState + (*NormalAutoFocusState)(nil), // 268: NormalAutoFocusState + (*AstroAutoFocusFastState)(nil), // 269: AstroAutoFocusFastState + (*AreaAutoFocusState)(nil), // 270: AreaAutoFocusState + (*DualCameraLinkageState)(nil), // 271: DualCameraLinkageState + (*NormalTrackState)(nil), // 272: NormalTrackState + (*SwitchResolutionFpsState)(nil), // 273: SwitchResolutionFpsState + (*CaptureCaliFrameState)(nil), // 274: CaptureCaliFrameState + (*CaptureCaliFrameProgress)(nil), // 275: CaptureCaliFrameProgress + (*DeviceAttitude)(nil), // 276: DeviceAttitude + (*SkyTargetFinderState)(nil), // 277: SkyTargetFinderState + (*PanoFramingThumbnailUpdateNotify)(nil), // 278: PanoFramingThumbnailUpdateNotify + (*PanoFramingRectUpdateNotify)(nil), // 279: PanoFramingRectUpdateNotify + (*PanoFramingStateNotify)(nil), // 280: PanoFramingStateNotify + (*AutoShutdown)(nil), // 281: AutoShutdown + (*LensDefog)(nil), // 282: LensDefog + (*AutoCooling)(nil), // 283: AutoCooling + (*ReqStartPanoramaByGrid)(nil), // 284: ReqStartPanoramaByGrid + (*ReqStartPanoramaByEulerRange)(nil), // 285: ReqStartPanoramaByEulerRange + (*ReqStartPanoramaStitchUpload)(nil), // 286: ReqStartPanoramaStitchUpload + (*ReqStopPanorama)(nil), // 287: ReqStopPanorama + (*ReqStopPanoramaStitchUpload)(nil), // 288: ReqStopPanoramaStitchUpload + (*ReqGetPanoramaCurrentUploadState)(nil), // 289: ReqGetPanoramaCurrentUploadState + (*ResGetPanoramaCurrentUploadState)(nil), // 290: ResGetPanoramaCurrentUploadState + (*ReqGetUploadPredict)(nil), // 291: ReqGetUploadPredict + (*ResGetUploadPredict)(nil), // 292: ResGetUploadPredict + (*PanoramaUploadParam)(nil), // 293: PanoramaUploadParam + (*ReqCompressPanorama)(nil), // 294: ReqCompressPanorama + (*ReqStopCompressPanorama)(nil), // 295: ReqStopCompressPanorama + (*ReqStartPanoramaFraming)(nil), // 296: ReqStartPanoramaFraming + (*ReqResetPanoramaFraming)(nil), // 297: ReqResetPanoramaFraming + (*ReqStopPanoramaFraming)(nil), // 298: ReqStopPanoramaFraming + (*ReqStopPanoramaFramingAndStartGrid)(nil), // 299: ReqStopPanoramaFramingAndStartGrid + (*ResStopPanoramaFraming)(nil), // 300: ResStopPanoramaFraming + (*ReqUpdatePanoramaFramingRect)(nil), // 301: ReqUpdatePanoramaFramingRect + (*ReqSetExposure)(nil), // 302: ReqSetExposure + (*ParamReqSetGain)(nil), // 303: ParamReqSetGain + (*ReqSetWb)(nil), // 304: ReqSetWb + (*ReqSetGeneralIntParam)(nil), // 305: ReqSetGeneralIntParam + (*ReqSetGeneralFloatParam)(nil), // 306: ReqSetGeneralFloatParam + (*ReqSetGeneralBoolParams)(nil), // 307: ReqSetGeneralBoolParams + (*ReqSetAutoParam)(nil), // 308: ReqSetAutoParam + (*ResSetAutoParam)(nil), // 309: ResSetAutoParam + (*ReqOpenRgb)(nil), // 310: ReqOpenRgb + (*ReqCloseRgb)(nil), // 311: ReqCloseRgb + (*ReqPowerDown)(nil), // 312: ReqPowerDown + (*ReqOpenPowerInd)(nil), // 313: ReqOpenPowerInd + (*ReqClosePowerInd)(nil), // 314: ReqClosePowerInd + (*ReqReboot)(nil), // 315: ReqReboot + (*ShootingTaskMsg)(nil), // 316: ShootingTaskMsg + (*ShootingScheduleMsg)(nil), // 317: ShootingScheduleMsg + (*ReqSyncShootingSchedule)(nil), // 318: ReqSyncShootingSchedule + (*ResSyncShootingSchedule)(nil), // 319: ResSyncShootingSchedule + (*ReqCancelShootingSchedule)(nil), // 320: ReqCancelShootingSchedule + (*ResCancelShootingSchedule)(nil), // 321: ResCancelShootingSchedule + (*ReqGetAllShootingSchedule)(nil), // 322: ReqGetAllShootingSchedule + (*ResGetAllShootingSchedule)(nil), // 323: ResGetAllShootingSchedule + (*ReqGetShootingScheduleById)(nil), // 324: ReqGetShootingScheduleById + (*ResGetShootingScheduleById)(nil), // 325: ResGetShootingScheduleById + (*ReqGetShootingTaskById)(nil), // 326: ReqGetShootingTaskById + (*ResGetShootingTaskById)(nil), // 327: ResGetShootingTaskById + (*ReqReplaceShootingSchedule)(nil), // 328: ReqReplaceShootingSchedule + (*ResReplaceShootingSchedule)(nil), // 329: ResReplaceShootingSchedule + (*ReqUnlockShootingSchedule)(nil), // 330: ReqUnlockShootingSchedule + (*ResUnlockShootingSchedule)(nil), // 331: ResUnlockShootingSchedule + (*ReqLockShootingSchedule)(nil), // 332: ReqLockShootingSchedule + (*ResLockShootingSchedule)(nil), // 333: ResLockShootingSchedule + (*ReqDeleteShootingSchedule)(nil), // 334: ReqDeleteShootingSchedule + (*ResDeleteShootingSchedule)(nil), // 335: ResDeleteShootingSchedule + (*ReqSetTime)(nil), // 336: ReqSetTime + (*ReqSetTimezone)(nil), // 337: ReqSetTimezone + (*ReqSetMtpMode)(nil), // 338: ReqSetMtpMode + (*ReqSetCpuMode)(nil), // 339: ReqSetCpuMode + (*ReqsetMasterLock)(nil), // 340: ReqsetMasterLock + (*ReqGetDeviceActivateInfo)(nil), // 341: ReqGetDeviceActivateInfo + (*ResDeviceActivateInfo)(nil), // 342: ResDeviceActivateInfo + (*ReqDeviceActivateWriteFile)(nil), // 343: ReqDeviceActivateWriteFile + (*ResDeviceActivateWriteFile)(nil), // 344: ResDeviceActivateWriteFile + (*ReqDeviceActivateSuccessfull)(nil), // 345: ReqDeviceActivateSuccessfull + (*ResDeviceActivateSuccessfull)(nil), // 346: ResDeviceActivateSuccessfull + (*ReqDisableDeviceActivate)(nil), // 347: ReqDisableDeviceActivate + (*ResDisableDeviceActivate)(nil), // 348: ResDisableDeviceActivate + (*ReqSetLocation)(nil), // 349: ReqSetLocation + (*TaskAttr)(nil), // 350: TaskAttr + (*TaskState)(nil), // 351: TaskState + (*TaskParam)(nil), // 352: TaskParam + (*ResNotifyTaskState)(nil), // 353: ResNotifyTaskState + (*ReqStartTask)(nil), // 354: ReqStartTask + (*ReqStopTask)(nil), // 355: ReqStopTask + (*ResTaskCenter)(nil), // 356: ResTaskCenter + (*ClientParams)(nil), // 357: ClientParams + (*ReqEnterCamera)(nil), // 358: ReqEnterCamera + (*ResEnterCamera)(nil), // 359: ResEnterCamera + (*ReqSwitchShootingMode)(nil), // 360: ReqSwitchShootingMode + (*ResSwitchShootingMode)(nil), // 361: ResSwitchShootingMode + (*ReqSwitchShootingTech)(nil), // 362: ReqSwitchShootingTech + (*ResSwitchShootingTech)(nil), // 363: ResSwitchShootingTech + (*ReqGetDeviceStateInfo)(nil), // 364: ReqGetDeviceStateInfo + (*ExclusiveCameraState)(nil), // 365: ExclusiveCameraState + (*TeleCameraStateInfo)(nil), // 366: TeleCameraStateInfo + (*WideCameraStateInfo)(nil), // 367: WideCameraStateInfo + (*ExclusiveFocusMotorState)(nil), // 368: ExclusiveFocusMotorState + (*FocusMotorStateInfo)(nil), // 369: FocusMotorStateInfo + (*ExclusiveMotionMotorState)(nil), // 370: ExclusiveMotionMotorState + (*MotionMotorStateInfo)(nil), // 371: MotionMotorStateInfo + (*DeviceStateInfo)(nil), // 372: DeviceStateInfo + (*ConnectionStateInfo)(nil), // 373: ConnectionStateInfo + (*ShootingModeAndTech)(nil), // 374: ShootingModeAndTech + (*ResGetDeviceStateInfo)(nil), // 375: ResGetDeviceStateInfo + (*ReqStartTrack)(nil), // 376: ReqStartTrack + (*ReqStopTrack)(nil), // 377: ReqStopTrack + (*ReqPauseTrack)(nil), // 378: ReqPauseTrack + (*ReqContinueTrack)(nil), // 379: ReqContinueTrack + (*ReqStartSentryMode)(nil), // 380: ReqStartSentryMode + (*ReqStopSentryMode)(nil), // 381: ReqStopSentryMode + (*ReqMOTTrackOne)(nil), // 382: ReqMOTTrackOne + (*ReqUFOAutoHandMode)(nil), // 383: ReqUFOAutoHandMode + (*ReqStartTrackClick)(nil), // 384: ReqStartTrackClick + (*ReqVoiceCommand)(nil), // 385: ReqVoiceCommand + (*VoicePhotoParams)(nil), // 386: VoicePhotoParams + (*VoiceRecordParams)(nil), // 387: VoiceRecordParams + (*VoiceTimelapseParams)(nil), // 388: VoiceTimelapseParams + (*VoiceBurstParams)(nil), // 389: VoiceBurstParams + (*VoiceAstroParams)(nil), // 390: VoiceAstroParams + (*VoiceSentryParams)(nil), // 391: VoiceSentryParams + (*VoiceMoveParams)(nil), // 392: VoiceMoveParams + (*VoiceGotoParams)(nil), // 393: VoiceGotoParams + (*VoiceCalibrationParams)(nil), // 394: VoiceCalibrationParams + (*VoiceFocusParams)(nil), // 395: VoiceFocusParams + (*ResVoiceCommand)(nil), // 396: ResVoiceCommand + (*AstroShootingProgress)(nil), // 397: AstroShootingProgress + (*VoiceStatusResult)(nil), // 398: VoiceStatusResult + (*VoiceOperationResult)(nil), // 399: VoiceOperationResult + (*ResNotifyVoiceAssistant)(nil), // 400: ResNotifyVoiceAssistant +} +var file_dwarf_proto_depIdxs = []int32{ + 22, // 0: ResGotoSolarSystem.req:type_name -> ReqGotoSolarSystem + 35, // 1: ResGetDarkFrameInfoList.results:type_name -> ResGetDarkFrameInfo + 37, // 2: ReqDelDarkFrameList.dark_list:type_name -> ReqDelDarkFrame + 45, // 3: ResOneClickGotoSolarSystem.req:type_name -> ReqOneClickGotoSolarSystem + 35, // 4: ResIsImageStackable.need_dark_frame_info:type_name -> ResGetDarkFrameInfo + 15, // 5: ResGetAstroShootingTime.astro_mode:type_name -> ResGetAstroShootingTime.AstroMode + 70, // 6: ResGetCaliFrameList.list:type_name -> CaliFrameInfo + 77, // 7: ResGetQuikSetList.quick_set_list:type_name -> QuikSetInfo + 106, // 8: ResWifilist.wifi_info_list:type_name -> WifiInfo + 2, // 9: ComDwarfMsg.vocaltype:type_name -> VocalType + 2, // 10: DwarfPing.vocaltype:type_name -> VocalType + 2, // 11: DwarfEcho.vocaltype:type_name -> VocalType + 113, // 12: DwarfEcho.model:type_name -> StationModel + 114, // 13: DwarfEcho.ap:type_name -> NifAP + 115, // 14: DwarfEcho.sta:type_name -> NifSTA + 91, // 15: ResGetAllParams.all_params:type_name -> CommonParam + 91, // 16: ReqSetFeatureParams.param:type_name -> CommonParam + 91, // 17: ResGetAllFeatureParams.all_feature_params:type_name -> CommonParam + 165, // 18: ReqSetIspModuleState.module_states:type_name -> IspModuleState + 186, // 19: CommonStepITips.step_itips:type_name -> CommonITips + 187, // 20: ResITipsList.itips_list:type_name -> CommonStepITips + 3, // 21: OperationStateNotify.state:type_name -> OperationState + 4, // 22: AstroCalibrationState.state:type_name -> AstroState + 4, // 23: AstroGotoState.state:type_name -> AstroState + 3, // 24: AstroTrackingState.state:type_name -> OperationState + 91, // 25: Param.param:type_name -> CommonParam + 3, // 26: AstroTrackingSpecialState.state:type_name -> OperationState + 5, // 27: SentryState.state:type_name -> SentryModeState + 6, // 28: SentryState.object_type:type_name -> SentryObjectType + 267, // 29: OneClickGotoState.astro_auto_focus_state:type_name -> AstroAutoFocusState + 210, // 30: OneClickGotoState.astro_calibration_state:type_name -> AstroCalibrationState + 211, // 31: OneClickGotoState.astro_goto_state:type_name -> AstroGotoState + 212, // 32: OneClickGotoState.astro_tracking_state:type_name -> AstroTrackingState + 224, // 33: MultiTrackResult.results:type_name -> TrackResult + 3, // 34: EqSolvingState.state:type_name -> OperationState + 3, // 35: SkySeacherState.state:type_name -> OperationState + 16, // 36: CommonProgress.progress_type:type_name -> CommonProgress.ProgressType + 17, // 37: StateSystemResourceOccupation.task_id:type_name -> StateSystemResourceOccupation.TaskId + 3, // 38: StateSystemResourceOccupation.state:type_name -> OperationState + 18, // 39: BodyStatus.body_status:type_name -> BodyStatus.BodyStatusEnum + 3, // 40: CaptureRawState.state:type_name -> OperationState + 3, // 41: PhotoState.state:type_name -> OperationState + 3, // 42: BurstState.state:type_name -> OperationState + 3, // 43: RecordState.state:type_name -> OperationState + 3, // 44: TimeLapseState.state:type_name -> OperationState + 3, // 45: CaptureRawDarkState.state:type_name -> OperationState + 3, // 46: PanoramaState.state:type_name -> OperationState + 3, // 47: AstroAutoFocusState.state:type_name -> OperationState + 3, // 48: NormalAutoFocusState.state:type_name -> OperationState + 3, // 49: AstroAutoFocusFastState.state:type_name -> OperationState + 3, // 50: AreaAutoFocusState.state:type_name -> OperationState + 3, // 51: DualCameraLinkageState.state:type_name -> OperationState + 3, // 52: NormalTrackState.state:type_name -> OperationState + 3, // 53: SwitchResolutionFpsState.state:type_name -> OperationState + 3, // 54: CaptureCaliFrameState.state:type_name -> OperationState + 3, // 55: SkyTargetFinderState.state:type_name -> OperationState + 236, // 56: ShootingTaskMsg.state:type_name -> ShootingTaskState + 9, // 57: ShootingScheduleMsg.result:type_name -> ShootingScheduleResult + 7, // 58: ShootingScheduleMsg.state:type_name -> ShootingScheduleState + 316, // 59: ShootingScheduleMsg.shooting_tasks:type_name -> ShootingTaskMsg + 8, // 60: ShootingScheduleMsg.sync_state:type_name -> ShootingScheduleSyncState + 317, // 61: ReqSyncShootingSchedule.shooting_schedule:type_name -> ShootingScheduleMsg + 317, // 62: ResSyncShootingSchedule.shooting_schedule:type_name -> ShootingScheduleMsg + 317, // 63: ResGetAllShootingSchedule.shooting_schedule:type_name -> ShootingScheduleMsg + 317, // 64: ResGetShootingScheduleById.shooting_schedule:type_name -> ShootingScheduleMsg + 316, // 65: ResGetShootingTaskById.shooting_task:type_name -> ShootingTaskMsg + 317, // 66: ReqReplaceShootingSchedule.shooting_schedule:type_name -> ShootingScheduleMsg + 317, // 67: ResReplaceShootingSchedule.shooting_schedule:type_name -> ShootingScheduleMsg + 317, // 68: ResReplaceShootingSchedule.replaced_shooting_schedule:type_name -> ShootingScheduleMsg + 3, // 69: TaskState.base_state:type_name -> OperationState + 4, // 70: TaskState.astro_extended_state:type_name -> AstroState + 293, // 71: TaskParam.panorama_upload:type_name -> PanoramaUploadParam + 60, // 72: TaskParam.make_fits_thumb_task_param:type_name -> MakeFitsThumbTaskParam + 66, // 73: TaskParam.repostprocess_task_param:type_name -> RepostprocessTaskParam + 75, // 74: TaskParam.capture_cali_frame_task_param:type_name -> CaptureCaliFrameTaskParam + 12, // 75: ResNotifyTaskState.task_id:type_name -> TaskId + 350, // 76: ResNotifyTaskState.task_attr:type_name -> TaskAttr + 351, // 77: ResNotifyTaskState.state:type_name -> TaskState + 352, // 78: ResNotifyTaskState.param:type_name -> TaskParam + 12, // 79: ReqStartTask.task_id:type_name -> TaskId + 57, // 80: ReqStartTask.req_make_fits_thumb_param:type_name -> ReqStartMakeFitsThumb + 63, // 81: ReqStartTask.req_repostprocess_param:type_name -> ReqStartRepostprocess + 12, // 82: ReqStopTask.task_id:type_name -> TaskId + 12, // 83: ResTaskCenter.task_id:type_name -> TaskId + 357, // 84: ReqEnterCamera.client_param:type_name -> ClientParams + 260, // 85: ExclusiveCameraState.capture_raw_state:type_name -> CaptureRawState + 261, // 86: ExclusiveCameraState.photo_state:type_name -> PhotoState + 262, // 87: ExclusiveCameraState.burst_state:type_name -> BurstState + 263, // 88: ExclusiveCameraState.record_state:type_name -> RecordState + 264, // 89: ExclusiveCameraState.timelapse_state:type_name -> TimeLapseState + 274, // 90: ExclusiveCameraState.capture_cali_frame_state:type_name -> CaptureCaliFrameState + 266, // 91: ExclusiveCameraState.panorama_state:type_name -> PanoramaState + 229, // 92: ExclusiveCameraState.sentry_state:type_name -> SentryState + 365, // 93: TeleCameraStateInfo.exclusive_state:type_name -> ExclusiveCameraState + 231, // 94: TeleCameraStateInfo.stream_type:type_name -> StreamType + 206, // 95: TeleCameraStateInfo.cmos_temperature:type_name -> CmosTemperature + 365, // 96: WideCameraStateInfo.exclusive_state:type_name -> ExclusiveCameraState + 231, // 97: WideCameraStateInfo.stream_type:type_name -> StreamType + 206, // 98: WideCameraStateInfo.cmos_temperature:type_name -> CmosTemperature + 267, // 99: ExclusiveFocusMotorState.astro_auto_focus_state:type_name -> AstroAutoFocusState + 268, // 100: ExclusiveFocusMotorState.normal_auto_focus_state:type_name -> NormalAutoFocusState + 269, // 101: ExclusiveFocusMotorState.astro_auto_focus_fast_state:type_name -> AstroAutoFocusFastState + 270, // 102: ExclusiveFocusMotorState.area_auto_focus_state:type_name -> AreaAutoFocusState + 368, // 103: FocusMotorStateInfo.exclusive_state:type_name -> ExclusiveFocusMotorState + 241, // 104: FocusMotorStateInfo.focus_position:type_name -> FocusPosition + 210, // 105: ExclusiveMotionMotorState.astro_calibration_state:type_name -> AstroCalibrationState + 211, // 106: ExclusiveMotionMotorState.astro_goto_state:type_name -> AstroGotoState + 212, // 107: ExclusiveMotionMotorState.astro_tracking_state:type_name -> AstroTrackingState + 272, // 108: ExclusiveMotionMotorState.normal_track_state:type_name -> NormalTrackState + 230, // 109: ExclusiveMotionMotorState.one_click_goto_state:type_name -> OneClickGotoState + 233, // 110: ExclusiveMotionMotorState.eq_state:type_name -> EqSolvingState + 229, // 111: ExclusiveMotionMotorState.sentry_state:type_name -> SentryState + 277, // 112: ExclusiveMotionMotorState.sky_target_finder_state:type_name -> SkyTargetFinderState + 370, // 113: MotionMotorStateInfo.exclusive_state:type_name -> ExclusiveMotionMotorState + 242, // 114: MotionMotorStateInfo.sentry_auto_hand:type_name -> SentryAutoHand + 218, // 115: DeviceStateInfo.rgb_state:type_name -> RgbState + 219, // 116: DeviceStateInfo.power_ind_state:type_name -> PowerIndState + 220, // 117: DeviceStateInfo.charging_state:type_name -> ChargingState + 204, // 118: DeviceStateInfo.storage_info:type_name -> StorageInfo + 223, // 119: DeviceStateInfo.mtp_state:type_name -> MTPState + 225, // 120: DeviceStateInfo.cpu_mode:type_name -> CPUMode + 205, // 121: DeviceStateInfo.temperature:type_name -> Temperature + 251, // 122: DeviceStateInfo.body_status:type_name -> BodyStatus + 221, // 123: DeviceStateInfo.battery_info:type_name -> BatteryInfo + 240, // 124: DeviceStateInfo.calibration_result:type_name -> CalibrationResult + 203, // 125: DeviceStateInfo.picture_matching:type_name -> PictureMatching + 281, // 126: DeviceStateInfo.auto_shutdown:type_name -> AutoShutdown + 282, // 127: DeviceStateInfo.lens_defog:type_name -> LensDefog + 283, // 128: DeviceStateInfo.auto_cooling:type_name -> AutoCooling + 222, // 129: ConnectionStateInfo.host_slave_mode:type_name -> HostSlaveMode + 366, // 130: ResGetDeviceStateInfo.tele_camera_state_info:type_name -> TeleCameraStateInfo + 367, // 131: ResGetDeviceStateInfo.wide_camera_state_info:type_name -> WideCameraStateInfo + 369, // 132: ResGetDeviceStateInfo.focus_motor_state_info:type_name -> FocusMotorStateInfo + 371, // 133: ResGetDeviceStateInfo.motion_motor_state_info:type_name -> MotionMotorStateInfo + 372, // 134: ResGetDeviceStateInfo.device_state_info:type_name -> DeviceStateInfo + 373, // 135: ResGetDeviceStateInfo.connection_state_info:type_name -> ConnectionStateInfo + 374, // 136: ResGetDeviceStateInfo.shooting_mode_and_techs:type_name -> ShootingModeAndTech + 14, // 137: ReqVoiceCommand.command_type:type_name -> VoiceCommandType + 386, // 138: ReqVoiceCommand.photo_params:type_name -> VoicePhotoParams + 387, // 139: ReqVoiceCommand.record_params:type_name -> VoiceRecordParams + 388, // 140: ReqVoiceCommand.timelapse_params:type_name -> VoiceTimelapseParams + 389, // 141: ReqVoiceCommand.burst_params:type_name -> VoiceBurstParams + 390, // 142: ReqVoiceCommand.astro_params:type_name -> VoiceAstroParams + 391, // 143: ReqVoiceCommand.sentry_params:type_name -> VoiceSentryParams + 392, // 144: ReqVoiceCommand.move_params:type_name -> VoiceMoveParams + 393, // 145: ReqVoiceCommand.goto_params:type_name -> VoiceGotoParams + 394, // 146: ReqVoiceCommand.calibration_params:type_name -> VoiceCalibrationParams + 395, // 147: ReqVoiceCommand.focus_params:type_name -> VoiceFocusParams + 14, // 148: ResVoiceCommand.command_type:type_name -> VoiceCommandType + 398, // 149: ResVoiceCommand.status_result:type_name -> VoiceStatusResult + 399, // 150: ResVoiceCommand.operation_result:type_name -> VoiceOperationResult + 375, // 151: VoiceStatusResult.device_state_info:type_name -> ResGetDeviceStateInfo + 397, // 152: VoiceStatusResult.astro_progress:type_name -> AstroShootingProgress + 14, // 153: ResNotifyVoiceAssistant.command_type:type_name -> VoiceCommandType + 3, // 154: ResNotifyVoiceAssistant.state:type_name -> OperationState + 155, // [155:155] is the sub-list for method output_type + 155, // [155:155] is the sub-list for method input_type + 155, // [155:155] is the sub-list for extension type_name + 155, // [155:155] is the sub-list for extension extendee + 0, // [0:155] is the sub-list for field type_name +} + +func init() { file_dwarf_proto_init() } +func file_dwarf_proto_init() { + if File_dwarf_proto != nil { + return + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: unsafe.Slice(unsafe.StringData(file_dwarf_proto_rawDesc), len(file_dwarf_proto_rawDesc)), + NumEnums: 19, + NumMessages: 382, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_dwarf_proto_goTypes, + DependencyIndexes: file_dwarf_proto_depIdxs, + EnumInfos: file_dwarf_proto_enumTypes, + MessageInfos: file_dwarf_proto_msgTypes, + }.Build() + File_dwarf_proto = out.File + file_dwarf_proto_goTypes = nil + file_dwarf_proto_depIdxs = nil +} diff --git a/dwarfctl/proto/dwarf.proto b/dwarfctl/proto/dwarf.proto new file mode 100644 index 0000000..3974b77 --- /dev/null +++ b/dwarfctl/proto/dwarf.proto @@ -0,0 +1,2653 @@ +syntax = "proto3"; +option go_package = "github.com/antitbone/dwarfctl/proto;pb"; + +// source: astro +message ReqStartCalibration { + double lon = 1; + double lat = 2; +} + +// source: astro +message ReqStopCalibration { +} + +// source: astro +message ReqGotoDSO { + double ra = 1; + double dec = 2; + string target_name = 3; + bool goto_only = 4; +} + +// source: astro +message ReqGotoSolarSystem { + int32 index = 1; + double lon = 2; + double lat = 3; + string target_name = 4; + bool force_start = 5; +} + +// source: astro +message ResGotoSolarSystem { + int32 code = 1; + ReqGotoSolarSystem req = 2; +} + +// source: astro +message ReqStopGoto { +} + +// source: astro +message ReqCaptureRawLiveStacking { + int32 ir_index = 1; + bool force_start = 2; +} + +// source: astro +message ReqStopCaptureRawLiveStacking { +} + +// source: astro +message ReqFastStopCaptureRawLiveStacking { +} + +// source: astro +message ReqCheckDarkFrame { +} + +// source: astro +message ResCheckDarkFrame { + int32 progress = 1; + int32 code = 2; +} + +// source: astro +message ReqCaptureDarkFrame { + int32 reshoot = 1; +} + +// source: astro +message ReqStopCaptureDarkFrame { +} + +// source: astro +message ReqCaptureDarkFrameWithParam { + int32 exp_index = 1; + int32 gain_index = 2; + int32 bin_index = 3; + int32 cap_size = 4; +} + +// source: astro +message ReqStopCaptureDarkFrameWithParam { +} + +// source: astro +message ReqGetDarkFrameList { +} + +// source: astro +message ResGetDarkFrameInfo { + // oneof _temperature + int32 exp_index = 1; + int32 gain_index = 2; + int32 bin_index = 3; + string exp_name = 4; + string gain_name = 5; + string bin_name = 6; + int32 temperature = 7; +} + +// source: astro +message ResGetDarkFrameInfoList { + int32 code = 1; + repeated ResGetDarkFrameInfo results = 2; +} + +// source: astro +message ReqDelDarkFrame { + int32 exp_index = 1; + int32 gain_index = 2; + int32 bin_index = 3; + int32 temp_value = 4; +} + +// source: astro +message ReqDelDarkFrameList { + repeated ReqDelDarkFrame dark_list = 1; +} + +// source: astro +message ResDelDarkFrameList { + int32 code = 1; +} + +// source: astro +message ReqGoLive { +} + +// source: astro +message ReqTrackSpecialTarget { + int32 index = 1; + double lon = 2; + double lat = 3; +} + +// source: astro +message ReqStopTrackSpecialTarget { +} + +// source: astro +message ReqOneClickGotoDSO { + double ra = 1; + double dec = 2; + string target_name = 3; + double lon = 4; + double lat = 5; + int32 shooting_mode = 6; + bool goto_only = 7; +} + +// source: astro +message ResOneClickGoto { + int32 step = 1; + int32 code = 2; + bool all_end = 3; +} + +// source: astro +message ReqOneClickGotoSolarSystem { + int32 index = 1; + double lon = 2; + double lat = 3; + string target_name = 4; + int32 shooting_mode = 5; + bool force_start = 6; +} + +// source: astro +message ResOneClickGotoSolarSystem { + int32 step = 1; + int32 code = 2; + bool all_end = 3; + ReqOneClickGotoSolarSystem req = 4; +} + +// source: astro +message ReqStopOneClickGoto { +} + +// source: astro +message ReqCaptureWideRawLiveStacking { + bool force_start = 1; +} + +// source: astro +message ReqStopCaptureWideRawLiveStacking { +} + +// source: astro +message ReqFastStopCaptureWideRawLiveStacking { +} + +// source: astro +message ReqStartEqSolving { + double lon = 1; + double lat = 2; +} + +// source: astro +message ResStartEqSolving { + double azi_err = 1; + double alt_err = 2; + int32 code = 3; +} + +// source: astro +message ReqStopEqSolving { +} + +// source: astro +message ReqStartAiEnhance { +} + +// source: astro +message ReqStopAiEnhance { +} + +// source: astro +message ReqStartMosaic { + int32 horizontal_scale = 1; + int32 vertical_scale = 2; + int32 rotation = 3; + int32 ir_index = 4; + bool force_start = 5; +} + +// source: astro +message ReqStartMakeFitsThumb { + string src_dir = 1; +} + +// source: astro +message ReqStopMakeFitsThumb { +} + +// source: astro +message ResMakeFitsThumb { + int32 code = 1; + string src_dir = 2; +} + +// source: astro +message MakeFitsThumbTaskParam { + string src_dir = 1; +} + +// source: astro +message ReqIsImageStackable { + repeated string src_dirs = 1; +} + +// source: astro +message ResIsImageStackable { + int32 code = 1; + repeated ResGetDarkFrameInfo need_dark_frame_info = 2; +} + +// source: astro +message ReqStartRepostprocess { + repeated string src_dirs = 1; +} + +// source: astro +message ReqStopRepostprocess { +} + +// source: astro +message ResRepostprocess { + int32 code = 1; + string result_dir = 2; +} + +// source: astro +message RepostprocessTaskParam { + string result_dir = 1; +} + +// source: astro +message ReqGetAstroShootingTime { + int32 exp_index = 1; + int32 horizontal_scale = 2; + int32 vertical_scale = 3; + int32 rotation = 4; + int32 cam_id = 5; + int32 shooting_mode = 6; +} + +// source: astro +message ResGetAstroShootingTime { + enum AstroMode { + NORMAL = 0; + MOSAIC = 1; + } + int32 code = 1; + int32 shooting_time = 2; + int32 cam_id = 3; + ResGetAstroShootingTime.AstroMode astro_mode = 4; + int32 shooting_mode = 5; +} + +// source: astro +message ReqGetCaliFrameList { + int32 camera_type = 1; + int32 cali_frame_type = 2; +} + +// source: astro +message CaliFrameInfo { + // oneof _filter_type + // oneof _info_id + // oneof _temp_value + string exp_name = 1; + int32 gain = 2; + int32 resolution = 3; + int32 camera_type = 4; + int32 progress = 5; + int32 cali_frame_type = 6; + int32 filter_type = 7; + int32 info_id = 8; + int32 temp_value = 9; +} + +// source: astro +message ResGetCaliFrameList { + int32 code = 1; + repeated CaliFrameInfo list = 2; + int32 camera_type = 3; + int32 cali_frame_type = 4; +} + +// source: astro +message ReqDelCaliFrameList { + repeated int32 info_ids = 1; +} + +// source: astro +message ReqCaptureCaliFrame { + // oneof _filter_type + int32 exp_index = 1; + int32 gain = 2; + int32 resolution = 3; + int32 cap_size = 4; + int32 camera_type = 5; + int32 cali_frame_type = 6; + int32 filter_type = 7; + int32 scene_type = 8; +} + +// source: astro +message ReqStopCaptureCaliFrame { + int32 camera_type = 1; +} + +// source: astro +message CaptureCaliFrameTaskParam { + int32 camera_type = 1; + int32 cali_frame_type = 2; +} + +// source: astro +message ReqGetQuickSetList { + int32 camera_type = 1; +} + +// source: astro +message QuikSetInfo { + string exp_name = 1; + int32 exp_index = 2; + int32 gain = 3; + int32 resolution = 4; + int32 camera_type = 5; + string info_id = 6; +} + +// source: astro +message ResGetQuikSetList { + int32 code = 1; + repeated QuikSetInfo quick_set_list = 2; + int32 camera_type = 3; +} + +// source: astro +message ReqSetQuickSet { + string info_id = 1; +} + +// source: astro +message ResSetQuickSet { + int32 code = 1; + string info_id = 2; +} + +// source: astro +message ReqOneClickShooting { +} + +// source: astro +message ResAstroShooting { + // oneof _exp_name + // oneof _gain + // oneof _resolution + // oneof _filter_type + // oneof _temp_threshold + int32 code = 1; + string exp_name = 2; + int32 gain = 3; + int32 resolution = 4; + int32 filter_type = 5; + int32 temp_threshold = 6; +} + +// source: astro +message ReqStartSkyTargetFinder { + double lon = 1; + double lat = 2; + bool force_restart = 3; + int32 scene_type = 4; +} + +// source: astro +message ResStartSkyTargetFinder { + int32 code = 1; + double zenith_azi = 2; + double zenith_alt = 3; + double center_azi = 4; + double center_alt = 5; + double center_roll = 6; + int32 scene_type = 7; +} + +// source: astro +message ReqStopSkyTargetFinder { +} + +// source: base +enum WsMajorVersion { + WS_MAJOR_VERSION_UNKNOWN = 0; + WS_MAJOR_VERSION_NUMBER = 2; +} + +// source: base +enum WsMinorVersion { + WS_MINOR_VERSION_UNKNOWN = 0; + WS_MINOR_VERSION_NUMBER = 3; +} + +// source: base +message WsPacket { + uint32 major_version = 1; + uint32 minor_version = 2; + uint32 device_id = 3; + uint32 module_id = 4; + uint32 cmd = 5; + uint32 type = 6; + bytes data = 7; + string client_id = 8; +} + +// source: base +message ComResponse { + int32 code = 1; +} + +// source: base +message ComResWithInt { + int32 value = 1; + int32 code = 2; +} + +// source: base +message ComResWithDouble { + double value = 1; + int32 code = 2; +} + +// source: base +message ComResWithString { + string str = 1; + int32 code = 2; +} + +// source: base +message CommonParam { + bool hasAuto = 1; + int32 auto_mode = 2; + int32 id = 3; + int32 mode_index = 4; + int32 index = 5; + double continue_value = 6; +} + +// source: ble +enum VocalType { + VT_UNKNOWN = 0; + VT_PING = 1; + VT_ECHO = 2; +} + +// source: ble +message ReqGetconfig { + int32 cmd = 1; + string ble_psd = 2; + string client_id = 3; +} + +// source: ble +message ReqAp { + int32 cmd = 1; + int32 wifi_type = 2; + int32 auto_start = 3; + int32 country_list = 4; + string country = 5; + string ble_psd = 6; + string client_id = 7; + bool force_restart = 8; +} + +// source: ble +message ReqSta { + int32 cmd = 1; + int32 auto_start = 2; + string ble_psd = 3; + string ssid = 4; + string psd = 5; + string client_id = 6; +} + +// source: ble +message ReqSetblewifi { + int32 cmd = 1; + int32 mode = 2; + string ble_psd = 3; + string value = 4; + string client_id = 5; +} + +// source: ble +message ReqReset { + int32 cmd = 1; + string client_id = 2; +} + +// source: ble +message ReqGetwifilist { + int32 cmd = 1; + string client_id = 2; +} + +// source: ble +message ReqGetsysteminfo { + int32 cmd = 1; + string client_id = 2; +} + +// source: ble +message ReqCheckFile { + int32 cmd = 1; + string file_path = 2; + string md5 = 3; +} + +// source: ble +message ResCommon { + int32 cmd = 1; + int32 code = 2; +} + +// source: ble +message ResGetconfig { + int32 cmd = 1; + int32 code = 2; + int32 state = 3; + int32 wifi_mode = 4; + int32 ap_mode = 5; + int32 auto_start = 6; + int32 ap_country_list = 7; + string ssid = 8; + string psd = 9; + string ip = 10; + string ap_country = 11; +} + +// source: ble +message ResAp { + int32 cmd = 1; + int32 code = 2; + int32 mode = 3; + string ssid = 4; + string psd = 5; +} + +// source: ble +message ResSta { + int32 cmd = 1; + int32 code = 2; + string ssid = 3; + string psd = 4; + string ip = 5; +} + +// source: ble +message ResSetblewifi { + int32 cmd = 1; + int32 code = 2; + int32 mode = 3; + string value = 4; +} + +// source: ble +message ResReset { + int32 cmd = 1; + int32 code = 2; +} + +// source: ble +message WifiInfo { + int32 signal_level = 1; + string ssid = 2; + string security_capability = 3; +} + +// source: ble +message ResWifilist { + int32 cmd = 1; + int32 code = 2; + repeated string ssid = 4; + repeated WifiInfo wifi_info_list = 5; +} + +// source: ble +message ResGetsysteminfo { + int32 cmd = 1; + int32 code = 2; + int32 protocol_version = 3; + string device = 4; + string mac_address = 5; + string dwarf_ota_version = 6; +} + +// source: ble +message ResReceiveDataError { + int32 cmd = 1; + int32 code = 2; +} + +// source: ble +message ResCheckFile { + int32 cmd = 1; + int32 code = 2; +} + +// source: ble +message ComDwarfMsg { + VocalType vocaltype = 1; +} + +// source: ble +message DwarfPing { + VocalType vocaltype = 1; + uint64 timestamp = 2; + bytes magic = 3; + repeated bytes vocals = 4; + repeated bytes mutes = 5; +} + +// source: ble +message StationModel { + uint32 family = 1; + uint32 revision = 2; +} + +// source: ble +message NifAP { + // oneof _ipv6 + string ifname = 1; + int32 mode = 2; + string country_code = 3; + string ssid = 4; + string sec = 5; + string psw = 6; + bytes ipv4 = 7; + bytes ipv6 = 8; +} + +// source: ble +message NifSTA { + // oneof _ssid + // oneof _psw + // oneof _rssi + // oneof _ipv4 + // oneof _ipv6 + string ifname = 1; + string ssid = 2; + string psw = 3; + int32 rssi = 4; + bytes ipv4 = 5; + bytes ipv6 = 6; +} + +// source: ble +message DwarfEcho { + VocalType vocaltype = 1; + uint64 timestamp = 2; + bytes magic = 3; + uint64 ts_ping = 4; + bytes mac_address = 5; + StationModel model = 6; + string sn = 7; + string name = 8; + string psw = 9; + string fw_version = 10; + string ws_scheme = 11; + uint32 session = 12; + NifAP ap = 13; + NifSTA sta = 14; +} + +// source: camera +message ReqOpenCamera { + bool binning = 1; + int32 rtsp_encode_type = 2; +} + +// source: camera +message ReqCloseCamera { +} + +// source: camera +message ReqPhoto { +} + +// source: camera +message ReqBurstPhoto { + int32 count = 1; +} + +// source: camera +message ReqStopBurstPhoto { +} + +// source: camera +message ReqStartRecord { + int32 encode_type = 1; +} + +// source: camera +message ReqStopRecord { +} + +// source: camera +message ReqSetExpMode { + int32 mode = 1; +} + +// source: camera +message ReqGetExpMode { +} + +// source: camera +message ReqSetExp { + int32 index = 1; +} + +// source: camera +message ReqGetExp { +} + +// source: camera +message ReqSetGainMode { + int32 mode = 1; +} + +// source: camera +message ReqGetGainMode { +} + +// source: camera +message ReqSetGain { + int32 index = 1; +} + +// source: camera +message ReqGetGain { +} + +// source: camera +message ReqSetBrightness { + int32 value = 1; +} + +// source: camera +message ReqGetBrightness { +} + +// source: camera +message ReqSetContrast { + int32 value = 1; +} + +// source: camera +message ReqGetContrast { +} + +// source: camera +message ReqSetHue { + int32 value = 1; +} + +// source: camera +message ReqGetHue { +} + +// source: camera +message ReqSetSaturation { + int32 value = 1; +} + +// source: camera +message ReqGetSaturation { +} + +// source: camera +message ReqSetSharpness { + int32 value = 1; +} + +// source: camera +message ReqGetSharpness { +} + +// source: camera +message ReqSetWBMode { + int32 mode = 1; +} + +// source: camera +message ReqGetWBMode { +} + +// source: camera +message ReqSetWBSence { + int32 value = 1; +} + +// source: camera +message ReqGetWBSence { +} + +// source: camera +message ReqSetWBCT { + int32 index = 1; +} + +// source: camera +message ReqGetWBCT { +} + +// source: camera +message ReqSetIrCut { + int32 value = 1; +} + +// source: camera +message ReqGetIrcut { +} + +// source: camera +message ReqStartTimeLapse { +} + +// source: camera +message ReqStopTimeLapse { +} + +// source: camera +message ReqSetAllParams { + int32 exp_mode = 1; + int32 exp_index = 2; + int32 gain_mode = 3; + int32 gain_index = 4; + int32 ircut_value = 5; + int32 wb_mode = 6; + int32 wb_index_type = 7; + int32 wb_index = 8; + int32 brightness = 9; + int32 contrast = 10; + int32 hue = 11; + int32 saturation = 12; + int32 sharpness = 13; + int32 jpg_quality = 14; +} + +// source: camera +message ReqGetAllParams { +} + +// source: camera +message ResGetAllParams { + repeated CommonParam all_params = 1; + int32 code = 2; +} + +// source: camera +message ReqSetFeatureParams { + CommonParam param = 1; +} + +// source: camera +message ReqGetAllFeatureParams { +} + +// source: camera +message ResGetAllFeatureParams { + repeated CommonParam all_feature_params = 1; + int32 code = 2; +} + +// source: camera +message ReqGetSystemWorkingState { +} + +// source: camera +message ReqSetJpgQuality { + int32 quality = 1; +} + +// source: camera +message ReqGetJpgQuality { +} + +// source: camera +message ReqPhotoRaw { +} + +// source: camera +message ReqSetRtspBitRateType { + int32 bitrate_type = 1; +} + +// source: camera +message ReqDisableAllIspProcessing { +} + +// source: camera +message ReqEnableAllIspProcessing { +} + +// source: camera +message IspModuleState { + int32 module_id = 1; + bool state = 2; +} + +// source: camera +message ReqSetIspModuleState { + repeated IspModuleState module_states = 1; +} + +// source: camera +message ReqGetIspModuleState { + repeated int32 module_ids = 1; +} + +// source: camera +message ReqSwitchResolution { + int32 resolution_index = 1; +} + +// source: camera +message ReqSwitchFrameRate { + int32 fps_index = 1; +} + +// source: camera +message ReqSwitchCropRatio { + int32 crop_ratio = 1; +} + +// source: camera +message ReqSetPreviewQuality { + uint32 level = 1; + uint32 quality = 2; +} + +// source: device +message ReqLensDefog { + int32 state = 1; +} + +// source: device +message ReqAutoCooling { + int32 state = 1; +} + +// source: device +message ReqAutoShutdown { + int32 state = 1; +} + +// source: focus +message ReqManualSingleStepFocus { + uint32 direction = 1; +} + +// source: focus +message ReqManualContinuFocus { + uint32 direction = 1; +} + +// source: focus +message ReqStopManualContinuFocus { +} + +// source: focus +message ReqNormalAutoFocus { + uint32 mode = 1; + uint32 center_x = 2; + uint32 center_y = 3; +} + +// source: focus +message ReqAstroAutoFocus { + uint32 mode = 1; +} + +// source: focus +message ReqStopAstroAutoFocus { +} + +// source: focus +message ReqGetUserInfinityPos { +} + +// source: focus +message ReqSetUserInfinityPos { + int32 pos = 1; +} + +// source: focus +message ResUserInfinityPos { + int32 code = 1; + int32 pos = 2; +} + +// source: itips +message ReqITipsGet { + int32 mode = 1; +} + +// source: itips +message ResITipsGet { + int32 mode = 1; + string itips_code = 2; + int32 code = 3; +} + +// source: itips +message CommonITips { + int32 itips_status = 1; + string itips_code = 2; +} + +// source: itips +message CommonStepITips { + int32 step_id = 1; + int32 step_status = 2; + repeated CommonITips step_itips = 3; +} + +// source: itips +message ResITipsList { + repeated CommonStepITips itips_list = 1; + int32 mode = 2; + int32 code = 3; +} + +// source: motor_control +message ReqMotorServiceJoystick { + double vector_angle = 1; + double vector_length = 2; +} + +// source: motor_control +message ReqMotorServiceJoystickFixedAngle { + double vector_angle = 1; + double vector_length = 2; +} + +// source: motor_control +message ReqMotorServiceJoystickStop { +} + +// source: motor_control +message ReqMotorRun { + int32 id = 1; + double speed = 2; + bool direction = 3; + int32 speed_ramping = 4; + int32 resolution_level = 5; +} + +// source: motor_control +message ReqMotorRunInPulse { + int32 id = 1; + int32 frequency = 2; + bool direction = 3; + int32 speed_ramping = 4; + int32 resolution = 5; + int32 pulse = 6; + bool mode = 7; +} + +// source: motor_control +message ReqMotorRunTo { + int32 id = 1; + double end_position = 2; + double speed = 3; + int32 speed_ramping = 4; + int32 resolution_level = 5; +} + +// source: motor_control +message ReqMotorGetPosition { + int32 id = 1; +} + +// source: motor_control +message ReqMotorStop { + int32 id = 1; +} + +// source: motor_control +message ReqMotorReset { + int32 id = 1; + bool direction = 2; +} + +// source: motor_control +message ReqMotorChangeSpeed { + int32 id = 1; + double speed = 2; +} + +// source: motor_control +message ReqMotorChangeDirection { + int32 id = 1; + bool direction = 2; +} + +// source: motor_control +message ResMotor { + int32 id = 1; + int32 code = 2; +} + +// source: motor_control +message ResMotorPosition { + int32 id = 1; + int32 code = 2; + double position = 3; +} + +// source: motor_control +message ReqDualCameraLinkage { + int32 x = 1; + int32 y = 2; +} + +// source: notify +enum OperationState { + OPERATION_STATE_IDLE = 0; + OPERATION_STATE_RUNNING = 1; + OPERATION_STATE_STOPPING = 2; + OPERATION_STATE_STOPPED = 3; +} + +// source: notify +enum AstroState { + ASTRO_STATE_IDLE = 0; + ASTRO_STATE_RUNNING = 1; + ASTRO_STATE_STOPPING = 2; + ASTRO_STATE_STOPPED = 3; + ASTRO_STATE_PLATE_SOLVING = 4; +} + +// source: notify +enum SentryModeState { + SENTRY_MODE_STATE_IDLE = 0; + SENTRY_MODE_STATE_INIT = 1; + SENTRY_MODE_STATE_DETECT = 2; + SENTRY_MODE_STATE_TRACK = 3; + SENTRY_MODE_STATE_TRACK_FINISH = 4; + SENTRY_MODE_STATE_STOPPING = 5; +} + +// source: notify +enum SentryObjectType { + SENTRY_OBJECT_TYPE_UNKNOWN = 0; + SENTRY_OBJECT_TYPE_UFO = 1; + SENTRY_OBJECT_TYPE_BIRD = 2; + SENTRY_OBJECT_TYPE_PERSON = 3; + SENTRY_OBJECT_TYPE_ANIMAL = 4; + SENTRY_OBJECT_TYPE_VEHICLE = 5; + SENTRY_OBJECT_TYPE_FLYING = 6; + SENTRY_OBJECT_TYPE_BOAT = 7; +} + +// source: notify +message PictureMatching { + uint32 x = 1; + uint32 y = 2; + uint32 width = 3; + uint32 height = 4; +} + +// source: notify +message StorageInfo { + uint32 available_size = 1; + uint32 total_size = 2; + int32 storage_type = 3; + bool is_valid = 4; +} + +// source: notify +message Temperature { + int32 code = 1; + int32 temperature = 2; +} + +// source: notify +message CmosTemperature { + // oneof _temperature + int32 temperature = 1; + int32 camera_type = 2; +} + +// source: notify +message RecordTime { + uint32 record_time = 1; + uint32 camera_type = 2; +} + +// source: notify +message TimeLapseOutTime { + uint32 interval = 1; + uint32 out_time = 2; + uint32 total_time = 3; + uint32 camera_type = 4; +} + +// source: notify +message OperationStateNotify { + OperationState state = 1; +} + +// source: notify +message AstroCalibrationState { + AstroState state = 1; + int32 plate_solving_times = 2; +} + +// source: notify +message AstroGotoState { + AstroState state = 1; + string target_name = 2; +} + +// source: notify +message AstroTrackingState { + OperationState state = 1; + string target_name = 2; +} + +// source: notify +message ProgressCaptureRawDark { + int32 progress = 1; + int32 remaining_time = 2; + int32 camera_type = 3; +} + +// source: notify +message ProgressCaptureRawLiveStacking { + // oneof _shooting_time + // oneof _stacked_time + int32 total_count = 1; + int32 update_type = 2; + int32 current_count = 3; + int32 stacked_count = 4; + int32 exp_index = 5; + int32 gain_index = 6; + string target_name = 7; + int32 camera_type = 8; + int32 shooting_time = 9; + int32 stacked_time = 10; +} + +// source: notify +message Param { + repeated CommonParam param = 1; +} + +// source: notify +message BurstProgress { + uint32 total_count = 1; + uint32 completed_count = 2; + uint32 camera_type = 3; +} + +// source: notify +message PanoramaProgress { + int32 total_count = 1; + int32 completed_count = 2; + uint32 camera_type = 3; +} + +// source: notify +message RgbState { + int32 state = 1; +} + +// source: notify +message PowerIndState { + int32 state = 1; +} + +// source: notify +message ChargingState { + int32 state = 1; +} + +// source: notify +message BatteryInfo { + int32 percentage = 1; +} + +// source: notify +message HostSlaveMode { + int32 mode = 1; + bool lock = 2; +} + +// source: notify +message MTPState { + int32 mode = 1; +} + +// source: notify +message TrackResult { + int32 x = 1; + int32 y = 2; + int32 w = 3; + int32 h = 4; + int32 id = 5; +} + +// source: notify +message CPUMode { + int32 mode = 1; +} + +// source: notify +message AstroTrackingSpecialState { + OperationState state = 1; + string target_name = 2; + int32 index = 3; +} + +// source: notify +message PowerOff { +} + +// source: notify +message AlbumUpdate { + int32 media_type = 1; +} + +// source: notify +message SentryState { + SentryModeState state = 1; + SentryObjectType object_type = 2; +} + +// source: notify +message OneClickGotoState { + // oneof current_state + AstroAutoFocusState astro_auto_focus_state = 1; + AstroCalibrationState astro_calibration_state = 2; + AstroGotoState astro_goto_state = 3; + AstroTrackingState astro_tracking_state = 4; +} + +// source: notify +message StreamType { + int32 stream_type = 1; + int32 cam_id = 2; +} + +// source: notify +message MultiTrackResult { + repeated TrackResult results = 1; +} + +// source: notify +message EqSolvingState { + OperationState state = 1; +} + +// source: notify +message LongExpPhotoProgress { + double total_time = 1; + double exposured_time = 2; + uint32 camera_type = 3; +} + +// source: notify +message ShootingScheduleResultAndState { + string schedule_id = 1; + int32 result = 2; + int32 state = 3; +} + +// source: notify +message ShootingTaskState { + string schedule_task_id = 1; + int32 state = 2; + int32 code = 3; +} + +// source: notify +message SkySeacherState { + OperationState state = 1; +} + +// source: notify +message ProgressAiEnhance { + int32 progress = 1; + int32 total_time = 2; +} + +// source: notify +message CommonProgress { + enum ProgressType { + PROGRESS_TYPE_INITING = 0; + PROGRESS_TYPE_MOSAIC_MOVING = 1; + } + int32 current = 1; + int32 total = 2; + CommonProgress.ProgressType progress_type = 3; +} + +// source: notify +message CalibrationResult { + double azi = 1; + double alt = 2; +} + +// source: notify +message FocusPosition { + int32 pos = 1; +} + +// source: notify +message SentryAutoHand { + int32 mode = 1; +} + +// source: notify +message PanoramaStitchUploadComplete { + int32 code = 1; + string user_id = 2; + string busi_no = 3; + string panorama_name = 4; + string mac = 5; +} + +// source: notify +message PanoramaCompressionComplete { + int32 code = 1; + string panorama_name = 2; + string zip_file_path = 3; + string zip_file_md5 = 4; + uint64 zip_file_size = 5; + string stitch_param = 6; +} + +// source: notify +message PanoramaCompressionProgress { + string panorama_name = 1; + uint32 total_files_num = 2; + uint32 compressed_files_num = 3; +} + +// source: notify +message PanoramaUploadCompressionProgress { + string user_id = 1; + string busi_no = 2; + string panorama_name = 3; + string mac = 4; + uint32 total_files_num = 5; + uint32 compressed_files_num = 6; + double speed = 7; +} + +// source: notify +message PanoramaUploadProgress { + string user_id = 1; + string busi_no = 2; + string panorama_name = 3; + string mac = 4; + uint64 total_size = 5; + uint64 uploaded_size = 6; + double speed = 7; +} + +// source: notify +message PanoramaCurrentUploadState { + int32 code = 1; + string user_id = 2; + string busi_no = 3; + string panorama_name = 4; + string mac = 5; + uint32 total_files_num = 6; + uint32 compressed_files_num = 7; + uint64 total_size = 8; + uint64 uploaded_size = 9; + uint32 step = 10; +} + +// source: notify +message LowTempProtectionMode { + int32 mode = 1; +} + +// source: notify +message StateSystemResourceOccupation { + enum TaskId { + IDLE = 0; + PANORAMA_UPLOAD = 1; + ASTRO_MULTI_STACK = 2; + } + StateSystemResourceOccupation.TaskId task_id = 1; + OperationState state = 2; +} + +// source: notify +message BodyStatus { + enum BodyStatusEnum { + UNKNOWN = 0; + EQ_MODE = 1; + AZI_MODE = 2; + } + BodyStatus.BodyStatusEnum body_status = 1; +} + +// source: notify +message ProgressCaptureMosaic { + int32 total_count = 1; + int32 update_type = 2; + int32 current_count = 3; + int32 stacked_count = 4; + int32 exp_index = 5; + int32 gain_index = 6; + string target_name = 7; + int32 horizontal_scale = 8; + int32 vertical_scale = 9; + int32 rotation = 10; + int32 fov_id = 11; + int32 fov_total = 12; +} + +// source: notify +message Wb { + uint64 mode = 1; + int32 ct = 2; + int32 scene = 3; + int32 camera_type = 4; +} + +// source: notify +message GeneralIntParam { + uint64 param_id = 1; + int32 mode = 2; + int32 value = 3; +} + +// source: notify +message GeneralFloatParam { + uint64 param_id = 1; + float value = 2; +} + +// source: notify +message GeneralBoolParams { + uint64 param_id = 1; + bool value = 2; +} + +// source: notify +message SwitchShootingMode { + int32 state = 1; + int32 source_mode = 2; + int32 dst_mode = 3; +} + +// source: notify +message SwitchCropRatioState { + int32 state = 1; + int32 crop_ratio = 2; +} + +// source: notify +message ResolutionParam { + uint64 param_id = 1; + int32 current_res_value = 2; + int32 current_fps_value = 3; + repeated int32 supported_fps_list = 4; + repeated int32 supported_resolution_list = 5; +} + +// source: notify +message CaptureRawState { + OperationState state = 1; + int32 camera_type = 2; +} + +// source: notify +message PhotoState { + OperationState state = 1; + int32 camera_type = 2; +} + +// source: notify +message BurstState { + OperationState state = 1; + int32 camera_type = 2; +} + +// source: notify +message RecordState { + OperationState state = 1; + int32 camera_type = 2; +} + +// source: notify +message TimeLapseState { + OperationState state = 1; + int32 camera_type = 2; +} + +// source: notify +message CaptureRawDarkState { + OperationState state = 1; + int32 camera_type = 2; +} + +// source: notify +message PanoramaState { + OperationState state = 1; + int32 camera_type = 2; +} + +// source: notify +message AstroAutoFocusState { + OperationState state = 1; +} + +// source: notify +message NormalAutoFocusState { + OperationState state = 1; +} + +// source: notify +message AstroAutoFocusFastState { + OperationState state = 1; +} + +// source: notify +message AreaAutoFocusState { + OperationState state = 1; +} + +// source: notify +message DualCameraLinkageState { + OperationState state = 1; +} + +// source: notify +message NormalTrackState { + OperationState state = 1; + int32 camera_type = 2; +} + +// source: notify +message SwitchResolutionFpsState { + OperationState state = 1; + int32 camera_type = 2; +} + +// source: notify +message CaptureCaliFrameState { + OperationState state = 1; + int32 camera_type = 2; + int32 cali_frame_type = 3; +} + +// source: notify +message CaptureCaliFrameProgress { + int32 progress = 1; + int32 camera_type = 2; + int32 cali_frame_type = 3; +} + +// source: notify +message DeviceAttitude { + double pitch = 1; + double yaw = 2; + double roll = 3; +} + +// source: notify +message SkyTargetFinderState { + OperationState state = 1; + int32 scene_type = 2; +} + +// source: notify +message PanoFramingThumbnailUpdateNotify { + bytes webp_data = 1; +} + +// source: notify +message PanoFramingRectUpdateNotify { + double norm_x_tl = 1; + double norm_y_tl = 2; + double norm_x_br = 3; + double norm_y_br = 4; + double norm_limit_x_left = 5; + double norm_limit_y_top = 6; + double norm_limit_x_right = 7; + double norm_limit_y_bottom = 8; + double rect_hor_fov = 9; + double rect_ver_fov = 10; + int32 error_code = 11; +} + +// source: notify +message PanoFramingStateNotify { + int32 state = 1; +} + +// source: notify +message AutoShutdown { + int32 state = 1; +} + +// source: notify +message LensDefog { + int32 state = 1; +} + +// source: notify +message AutoCooling { + int32 state = 1; +} + +// source: panorama +message ReqStartPanoramaByGrid { +} + +// source: panorama +message ReqStartPanoramaByEulerRange { + float yaw_range = 1; + float pitch_range = 2; +} + +// source: panorama +message ReqStartPanoramaStitchUpload { + uint64 resource_id = 1; + string user_id = 2; + int32 app_platform = 3; + string panorama_name = 4; + string ak = 5; + string sk = 6; + string token = 7; + string bucket = 8; + string bucket_prefix = 9; + string from = 10; + string env_type = 11; +} + +// source: panorama +message ReqStopPanorama { +} + +// source: panorama +message ReqStopPanoramaStitchUpload { + string user_id = 1; +} + +// source: panorama +message ReqGetPanoramaCurrentUploadState { +} + +// source: panorama +message ResGetPanoramaCurrentUploadState { + int32 code = 1; + string user_id = 2; + string busi_no = 3; + string panorama_name = 4; + string mac = 5; + uint32 total_files_num = 6; + uint32 compressed_files_num = 7; + uint64 total_size = 8; + uint64 uploaded_size = 9; + uint32 step = 10; +} + +// source: panorama +message ReqGetUploadPredict { + string panorama_name = 1; +} + +// source: panorama +message ResGetUploadPredict { + int32 code = 1; + string panorama_name = 2; + uint32 file_nums = 3; + string resolution = 4; + uint64 cloud_data_size = 5; + uint64 zip_data_size = 6; + uint64 app_zip_data_size = 7; +} + +// source: panorama +message PanoramaUploadParam { + string user_id = 1; + string busi_no = 2; + string panorama_name = 3; + string mac = 4; + uint32 total_files_num = 5; + uint32 compressed_files_num = 6; + uint64 total_size = 7; + uint64 uploaded_size = 8; + uint32 step = 9; +} + +// source: panorama +message ReqCompressPanorama { + string panorama_name = 1; +} + +// source: panorama +message ReqStopCompressPanorama { +} + +// source: panorama +message ReqStartPanoramaFraming { +} + +// source: panorama +message ReqResetPanoramaFraming { +} + +// source: panorama +message ReqStopPanoramaFraming { +} + +// source: panorama +message ReqStopPanoramaFramingAndStartGrid { +} + +// source: panorama +message ResStopPanoramaFraming { + int32 code = 1; + double centerX_degree_offset = 2; + double centerY_degree_offset = 3; + uint32 framing_rows = 4; + uint32 framing_cols = 5; +} + +// source: panorama +message ReqUpdatePanoramaFramingRect { + double norm_x_tl = 1; + double norm_y_tl = 2; + double norm_x_br = 3; + double norm_y_br = 4; +} + +// source: param +message ReqSetExposure { + uint64 param_id = 1; + int32 mode = 2; + int32 value = 3; +} + +// source: param +message ParamReqSetGain { + uint64 param_id = 1; + int32 mode = 2; + int32 value = 3; +} + +// source: param +message ReqSetWb { + uint64 param_id = 1; + int32 mode = 2; + int32 value = 3; +} + +// source: param +message ReqSetGeneralIntParam { + uint64 param_id = 1; + int32 value = 2; +} + +// source: param +message ReqSetGeneralFloatParam { + uint64 param_id = 1; + float value = 2; +} + +// source: param +message ReqSetGeneralBoolParams { + uint64 param_id = 1; + bool value = 2; +} + +// source: param +message ReqSetAutoParam { + int32 camera_type = 1; + int32 shooting_tech = 2; + bool is_auto = 3; +} + +// source: param +message ResSetAutoParam { + int32 shooting_mode = 1; + int32 camera_type = 2; + int32 shooting_tech = 3; + bool is_auto = 4; + bool update_all = 5; + int32 code = 6; +} + +// source: rgb +message ReqOpenRgb { +} + +// source: rgb +message ReqCloseRgb { +} + +// source: rgb +message ReqPowerDown { +} + +// source: rgb +message ReqOpenPowerInd { +} + +// source: rgb +message ReqClosePowerInd { +} + +// source: rgb +message ReqReboot { +} + +// source: schedule +enum ShootingScheduleState { + SHOOTING_SCHEDULE_STATE_INITIALIZED = 0; + SHOOTING_SCHEDULE_STATE_PENDING_SHOOT = 1; + SHOOTING_SCHEDULE_STATE_SHOOTING = 2; + SHOOTING_SCHEDULE_STATE_COMPLETED = 3; + SHOOTING_SCHEDULE_STATE_EXPIRED = 4; +} + +// source: schedule +enum ShootingScheduleSyncState { + SHOOTING_SCHEDULE_SYNC_STATE_PENDING_SYNC = 0; + SHOOTING_SCHEDULE_SYNC_STATE_SYNCED = 1; +} + +// source: schedule +enum ShootingScheduleResult { + SHOOTING_SCHEDULE_RESULT_PENDING_START = 0; + SHOOTING_SCHEDULE_RESULT_ALL_COMPLETED = 1; + SHOOTING_SCHEDULE_RESULT_PARTIALLY_COMPLETED = 2; + SHOOTING_SCHEDULE_RESULT_ALL_FAILED = 3; +} + +// source: schedule +enum ScheduleShootingTaskState { + SHOOTING_TASK_STATUS_IDLE = 0; + SHOOTING_TASK_STATUS_SHOOTING = 1; + SHOOTING_TASK_STATUS_SUCCESS = 2; + SHOOTING_TASK_STATUS_FAILED = 3; + SHOOTING_TASK_STATUS_INTERRUPTED = 4; +} + +// source: schedule +enum ShootingScheduleMode { + SHOOTING_SCHEDULE_MODE_ASTRO_DEEP_SKY = 0; +} + +// source: schedule +message ShootingTaskMsg { + string schedule_id = 1; + string params = 2; + ShootingTaskState state = 3; + int32 code = 4; + int64 created_time = 5; + int64 updated_time = 6; + string schedule_task_id = 7; + int32 param_mode = 8; + int32 param_version = 9; + int32 create_from = 10; +} + +// source: schedule +message ShootingScheduleMsg { + string schedule_id = 1; + string schedule_name = 2; + int32 device_id = 3; + string mac_address = 4; + int64 start_time = 5; + int64 end_time = 6; + ShootingScheduleResult result = 7; + int64 created_time = 8; + int64 updated_time = 9; + ShootingScheduleState state = 10; + int32 lock = 11; + string password = 12; + repeated ShootingTaskMsg shooting_tasks = 13; + int32 param_mode = 14; + int32 param_version = 15; + string params = 16; + int64 schedule_time = 17; + ShootingScheduleSyncState sync_state = 18; +} + +// source: schedule +message ReqSyncShootingSchedule { + ShootingScheduleMsg shooting_schedule = 1; +} + +// source: schedule +message ResSyncShootingSchedule { + ShootingScheduleMsg shooting_schedule = 1; + repeated string time_conflict_schedule_ids = 2; + int32 code = 3; + bool can_replace = 4; +} + +// source: schedule +message ReqCancelShootingSchedule { + string id = 1; + string password = 2; +} + +// source: schedule +message ResCancelShootingSchedule { + string id = 1; + int32 code = 2; +} + +// source: schedule +message ReqGetAllShootingSchedule { +} + +// source: schedule +message ResGetAllShootingSchedule { + repeated ShootingScheduleMsg shooting_schedule = 1; + int32 code = 2; +} + +// source: schedule +message ReqGetShootingScheduleById { + string id = 1; +} + +// source: schedule +message ResGetShootingScheduleById { + ShootingScheduleMsg shooting_schedule = 1; + int32 code = 2; +} + +// source: schedule +message ReqGetShootingTaskById { + string id = 1; +} + +// source: schedule +message ResGetShootingTaskById { + ShootingTaskMsg shooting_task = 1; + int32 code = 2; +} + +// source: schedule +message ReqReplaceShootingSchedule { + ShootingScheduleMsg shooting_schedule = 1; +} + +// source: schedule +message ResReplaceShootingSchedule { + ShootingScheduleMsg shooting_schedule = 1; + repeated ShootingScheduleMsg replaced_shooting_schedule = 2; + int32 code = 3; +} + +// source: schedule +message ReqUnlockShootingSchedule { + string id = 1; + string password = 2; +} + +// source: schedule +message ResUnlockShootingSchedule { + string id = 1; + int32 code = 2; +} + +// source: schedule +message ReqLockShootingSchedule { + string id = 1; + string password = 2; +} + +// source: schedule +message ResLockShootingSchedule { + string id = 1; + string password = 2; + int32 code = 3; +} + +// source: schedule +message ReqDeleteShootingSchedule { + string id = 1; + string password = 2; +} + +// source: schedule +message ResDeleteShootingSchedule { + string id = 1; + int32 code = 2; +} + +// source: system +message ReqSetTime { + uint64 timestamp = 1; + double timezone_offset = 2; +} + +// source: system +message ReqSetTimezone { + string timezone = 1; +} + +// source: system +message ReqSetMtpMode { + int32 mode = 1; +} + +// source: system +message ReqSetCpuMode { + int32 mode = 1; +} + +// source: system +message ReqsetMasterLock { + bool lock = 1; +} + +// source: system +message ReqGetDeviceActivateInfo { + int32 issuer = 1; +} + +// source: system +message ResDeviceActivateInfo { + int32 activate_state = 1; + int32 activate_process_state = 2; + string request_param = 3; +} + +// source: system +message ReqDeviceActivateWriteFile { + string request_param = 1; +} + +// source: system +message ResDeviceActivateWriteFile { + int32 code = 1; + string request_param = 2; +} + +// source: system +message ReqDeviceActivateSuccessfull { + string request_param = 1; +} + +// source: system +message ResDeviceActivateSuccessfull { + int32 code = 1; + int32 activate_state = 2; +} + +// source: system +message ReqDisableDeviceActivate { + string request_param = 1; +} + +// source: system +message ResDisableDeviceActivate { + int32 code = 1; + int32 activate_state = 2; +} + +// source: system +message ReqSetLocation { + double latitude = 1; + double longitude = 2; + double altitude = 3; + string country_region = 4; + string province = 5; + string city = 6; + string district = 7; + bool enable = 8; +} + +// source: task_center +enum TaskId { + TASK_ID_IDLE = 0; + TASK_ID_PANORAMA_UPLOAD = 1; + TASK_ID_ASTRO_MULTI_STACK_THUMBNAIL_GENERATION = 2; + TASK_ID_ASTRO_MULTI_STACK = 3; + TASK_ID_CAPTURE_CALI_FRAME = 4; +} + +// source: task_center +enum ExclusiveTaskType { + EXCLUSIVE_TYPE_NONE = 0; + EXCLUSIVE_TYPE_CAMERA = 1; + EXCLUSIVE_TYPE_MOTOR = 2; + EXCLUSIVE_TYPE_FOCUS_MOTOR = 4; + EXCLUSIVE_TYPE_SYSTEM_IO = 8; + EXCLUSIVE_TYPE_SYSTEM_WIFI = 16; +} + +// source: task_center +message TaskAttr { + int32 exclusive_mask = 1; + int32 priority = 2; +} + +// source: task_center +message TaskState { + // oneof extendedState + OperationState base_state = 1; + AstroState astro_extended_state = 2; +} + +// source: task_center +message TaskParam { + // oneof param + PanoramaUploadParam panorama_upload = 1; + MakeFitsThumbTaskParam make_fits_thumb_task_param = 2; + RepostprocessTaskParam repostprocess_task_param = 3; + CaptureCaliFrameTaskParam capture_cali_frame_task_param = 4; +} + +// source: task_center +message ResNotifyTaskState { + TaskId task_id = 1; + TaskAttr task_attr = 2; + TaskState state = 3; + TaskParam param = 4; +} + +// source: task_center +message ReqStartTask { + // oneof param + TaskId task_id = 1; + ReqStartMakeFitsThumb req_make_fits_thumb_param = 2; + ReqStartRepostprocess req_repostprocess_param = 3; +} + +// source: task_center +message ReqStopTask { + TaskId task_id = 1; +} + +// source: task_center +message ResTaskCenter { + int32 code = 1; + TaskId task_id = 2; +} + +// source: task_center +message ClientParams { + int32 encode_type = 1; +} + +// source: task_center +message ReqEnterCamera { + ClientParams client_param = 3; +} + +// source: task_center +message ResEnterCamera { + int32 code = 1; + int32 shooting_mode_id = 2; +} + +// source: task_center +message ReqSwitchShootingMode { + int32 mode = 1; +} + +// source: task_center +message ResSwitchShootingMode { + int32 code = 1; + int32 shooting_mode_id = 2; +} + +// source: task_center +message ReqSwitchShootingTech { + int32 tech = 1; +} + +// source: task_center +message ResSwitchShootingTech { + int32 code = 1; + int32 shooting_tech_id = 2; +} + +// source: task_center +message ReqGetDeviceStateInfo { +} + +// source: task_center +message ExclusiveCameraState { + // oneof current_state + CaptureRawState capture_raw_state = 1; + PhotoState photo_state = 2; + BurstState burst_state = 3; + RecordState record_state = 4; + TimeLapseState timelapse_state = 5; + CaptureCaliFrameState capture_cali_frame_state = 6; + PanoramaState panorama_state = 7; + SentryState sentry_state = 8; +} + +// source: task_center +message TeleCameraStateInfo { + // oneof _cmos_temperature + ExclusiveCameraState exclusive_state = 1; + StreamType stream_type = 2; + double h_fov = 3; + double v_fov = 4; + uint32 resolution_width = 5; + uint32 resolution_height = 6; + CmosTemperature cmos_temperature = 7; +} + +// source: task_center +message WideCameraStateInfo { + // oneof _cmos_temperature + ExclusiveCameraState exclusive_state = 1; + StreamType stream_type = 2; + double h_fov = 3; + double v_fov = 4; + uint32 resolution_width = 5; + uint32 resolution_height = 6; + CmosTemperature cmos_temperature = 7; +} + +// source: task_center +message ExclusiveFocusMotorState { + // oneof current_state + AstroAutoFocusState astro_auto_focus_state = 1; + NormalAutoFocusState normal_auto_focus_state = 2; + AstroAutoFocusFastState astro_auto_focus_fast_state = 3; + AreaAutoFocusState area_auto_focus_state = 4; +} + +// source: task_center +message FocusMotorStateInfo { + // oneof _focus_position + ExclusiveFocusMotorState exclusive_state = 1; + FocusPosition focus_position = 2; +} + +// source: task_center +message ExclusiveMotionMotorState { + // oneof current_state + AstroCalibrationState astro_calibration_state = 1; + AstroGotoState astro_goto_state = 2; + AstroTrackingState astro_tracking_state = 3; + NormalTrackState normal_track_state = 4; + OneClickGotoState one_click_goto_state = 5; + EqSolvingState eq_state = 6; + SentryState sentry_state = 7; + SkyTargetFinderState sky_target_finder_state = 8; +} + +// source: task_center +message MotionMotorStateInfo { + ExclusiveMotionMotorState exclusive_state = 1; + SentryAutoHand sentry_auto_hand = 2; +} + +// source: task_center +message DeviceStateInfo { + RgbState rgb_state = 1; + PowerIndState power_ind_state = 2; + ChargingState charging_state = 3; + StorageInfo storage_info = 4; + MTPState mtp_state = 5; + CPUMode cpu_mode = 6; + Temperature temperature = 7; + BodyStatus body_status = 8; + BatteryInfo battery_info = 9; + CalibrationResult calibration_result = 10; + PictureMatching picture_matching = 11; + AutoShutdown auto_shutdown = 12; + LensDefog lens_defog = 13; + AutoCooling auto_cooling = 14; +} + +// source: task_center +message ConnectionStateInfo { + HostSlaveMode host_slave_mode = 1; +} + +// source: task_center +message ShootingModeAndTech { + int32 shooting_mode = 1; + int32 parent_shooting_mode = 2; + repeated int32 shooting_techs = 3; +} + +// source: task_center +message ResGetDeviceStateInfo { + int32 shooting_mode = 1; + TeleCameraStateInfo tele_camera_state_info = 2; + WideCameraStateInfo wide_camera_state_info = 3; + FocusMotorStateInfo focus_motor_state_info = 4; + MotionMotorStateInfo motion_motor_state_info = 5; + DeviceStateInfo device_state_info = 6; + int32 code = 7; + ConnectionStateInfo connection_state_info = 8; + repeated ShootingModeAndTech shooting_mode_and_techs = 9; +} + +// source: track +message ReqStartTrack { + int32 x = 1; + int32 y = 2; + int32 w = 3; + int32 h = 4; + int32 cam_id = 5; +} + +// source: track +message ReqStopTrack { +} + +// source: track +message ReqPauseTrack { +} + +// source: track +message ReqContinueTrack { +} + +// source: track +message ReqStartSentryMode { + int32 type = 1; +} + +// source: track +message ReqStopSentryMode { +} + +// source: track +message ReqMOTTrackOne { + int32 id = 1; +} + +// source: track +message ReqUFOAutoHandMode { + int32 mode = 1; +} + +// source: track +message ReqStartTrackClick { + int32 x = 1; + int32 y = 2; + int32 cam_id = 3; +} + +// source: voiceassistant +enum VoiceCommandType { + VOICE_CMD_UNKNOWN = 0; + VOICE_CMD_GET_STATUS = 1; + VOICE_CMD_TAKE_PHOTO = 2; + VOICE_CMD_START_RECORD = 3; + VOICE_CMD_STOP_RECORD = 4; + VOICE_CMD_START_TIMELAPSE = 5; + VOICE_CMD_STOP_TIMELAPSE = 6; + VOICE_CMD_START_BURST = 7; + VOICE_CMD_STOP_BURST = 8; + VOICE_CMD_START_ASTRO = 9; + VOICE_CMD_STOP_ASTRO = 10; + VOICE_CMD_START_SENTRY = 11; + VOICE_CMD_STOP_SENTRY = 12; + VOICE_CMD_MOVE = 13; + VOICE_CMD_GOTO_TARGET = 14; + VOICE_CMD_CALIBRATION = 15; + VOICE_CMD_AUTO_FOCUS = 16; + VOICE_CMD_STOP_FOCUS = 17; + VOICE_CMD_STOP_ALL = 18; +} + +// source: voiceassistant +message ReqVoiceCommand { + // oneof params + VoiceCommandType command_type = 1; + int32 shooting_mode = 2; + VoicePhotoParams photo_params = 10; + VoiceRecordParams record_params = 11; + VoiceTimelapseParams timelapse_params = 12; + VoiceBurstParams burst_params = 13; + VoiceAstroParams astro_params = 14; + VoiceSentryParams sentry_params = 15; + VoiceMoveParams move_params = 16; + VoiceGotoParams goto_params = 17; + VoiceCalibrationParams calibration_params = 18; + VoiceFocusParams focus_params = 19; +} + +// source: voiceassistant +message VoicePhotoParams { + int32 camera_type = 1; +} + +// source: voiceassistant +message VoiceRecordParams { + int32 camera_type = 1; + int32 duration_seconds = 2; +} + +// source: voiceassistant +message VoiceTimelapseParams { + int32 camera_type = 1; + int32 interval_seconds = 2; + int32 duration_seconds = 3; +} + +// source: voiceassistant +message VoiceBurstParams { + int32 camera_type = 1; + int32 count = 2; +} + +// source: voiceassistant +message VoiceAstroParams { + string target_name = 1; + double ra = 2; + double dec = 3; + int32 index = 4; + double lon = 5; + double lat = 6; + bool auto_goto = 7; + bool force_start = 8; +} + +// source: voiceassistant +message VoiceSentryParams { + int32 type = 1; +} + +// source: voiceassistant +message VoiceMoveParams { + double azimuth_angle = 1; + double altitude_angle = 2; + int32 speed = 3; +} + +// source: voiceassistant +message VoiceGotoParams { + string target_name = 1; + double ra = 2; + double dec = 3; + int32 index = 4; + double lon = 5; + double lat = 6; + int32 shooting_mode = 7; +} + +// source: voiceassistant +message VoiceCalibrationParams { + double lon = 1; + double lat = 2; +} + +// source: voiceassistant +message VoiceFocusParams { + bool is_infinity = 1; +} + +// source: voiceassistant +message ResVoiceCommand { + // oneof result + int32 code = 1; + string message = 2; + VoiceCommandType command_type = 3; + VoiceStatusResult status_result = 10; + VoiceOperationResult operation_result = 11; +} + +// source: voiceassistant +message AstroShootingProgress { + string target_name = 1; + int32 captured_count = 2; + int32 total_count = 3; + int32 stacked_count = 4; + int32 progress_percentage = 5; + int64 elapsed_time = 6; + int64 remaining_time = 7; +} + +// source: voiceassistant +message VoiceStatusResult { + ResGetDeviceStateInfo device_state_info = 1; + AstroShootingProgress astro_progress = 2; +} + +// source: voiceassistant +message VoiceOperationResult { + bool success = 1; + string detail_message = 2; +} + +// source: voiceassistant +message ResNotifyVoiceAssistant { + VoiceCommandType command_type = 1; + OperationState state = 2; + string message = 4; +} + diff --git a/dwarfctl/proto/focus.proto b/dwarfctl/proto/focus.proto new file mode 100644 index 0000000..26072e9 --- /dev/null +++ b/dwarfctl/proto/focus.proto @@ -0,0 +1,38 @@ +syntax = "proto3"; +option go_package = "github.com/antitbone/dwarfctl/proto;pb"; +message ReqManualSingleStepFocus { + uint32 direction = 1; +} + +message ReqManualContinuFocus { + uint32 direction = 1; +} + +message ReqStopManualContinuFocus { +} + +message ReqNormalAutoFocus { + uint32 mode = 1; + uint32 center_x = 2; + uint32 center_y = 3; +} + +message ReqAstroAutoFocus { + uint32 mode = 1; +} + +message ReqStopAstroAutoFocus { +} + +message ReqGetUserInfinityPos { +} + +message ReqSetUserInfinityPos { + int32 pos = 1; +} + +message ResUserInfinityPos { + int32 code = 1; + int32 pos = 2; +} + diff --git a/dwarfctl/proto/itips.proto b/dwarfctl/proto/itips.proto new file mode 100644 index 0000000..2d5cfa7 --- /dev/null +++ b/dwarfctl/proto/itips.proto @@ -0,0 +1,29 @@ +syntax = "proto3"; +option go_package = "github.com/antitbone/dwarfctl/proto;pb"; +message ReqITipsGet { + int32 mode = 1; +} + +message ResITipsGet { + int32 mode = 1; + string itips_code = 2; + int32 code = 3; +} + +message CommonITips { + int32 itips_status = 1; + string itips_code = 2; +} + +message CommonStepITips { + int32 step_id = 1; + int32 step_status = 2; + repeated CommonITips step_itips = 3; +} + +message ResITipsList { + repeated CommonStepITips itips_list = 1; + int32 mode = 2; + int32 code = 3; +} + diff --git a/dwarfctl/proto/merge.py b/dwarfctl/proto/merge.py new file mode 100644 index 0000000..c194977 --- /dev/null +++ b/dwarfctl/proto/merge.py @@ -0,0 +1,63 @@ +#!/usr/bin/env python3 +"""Merge all extracted .proto files into a single unified proto3 file, +resolving duplicate names by prefixing with the source module.""" +import os, re, sys + +PROTO_DIR = sys.argv[1] +OUT = sys.argv[2] + +# Collect all message/enum blocks +all_blocks = [] # (kind, name, lines, source_file) +seen_names = {} +duplicates = set() + +for fn in sorted(os.listdir(PROTO_DIR)): + if not fn.endswith('.proto'): + continue + module = fn.replace('.proto','') + txt = open(os.path.join(PROTO_DIR, fn)).read() + lines = txt.split('\n') + i = 0 + while i < len(lines): + line = lines[i] + # Skip syntax/package/import/option lines + if re.match(r'^(syntax|package|import|option)\s', line): + i += 1 + continue + # Find message or enum blocks + m = re.match(r'^(message|enum)\s+(\w+)\s*\{', line) + if m: + kind = m.group(1) + name = m.group(2) + depth = 1 + block_lines = [line] + i += 1 + while i < len(lines) and depth > 0: + depth += lines[i].count('{') - lines[i].count('}') + block_lines.append(lines[i]) + i += 1 + # Handle duplicate names + final_name = name + if name in seen_names: + final_name = module.capitalize() + name + duplicates.add(name) + seen_names[final_name] = True + all_blocks.append((kind, final_name, block_lines, module)) + else: + i += 1 + +# Write unified proto +with open(OUT, 'w') as f: + f.write('syntax = "proto3";\n') + f.write('option go_package = "github.com/antitbone/dwarfctl/proto;pb";\n\n') + for kind, name, block_lines, module in all_blocks: + f.write(f'// source: {module}\n') + # Replace the first line's name if it was renamed + block_lines[0] = re.sub( + rf'^({kind})\s+\w+\s*\{{', + rf'\1 {name} {{', + block_lines[0]) + f.write('\n'.join(block_lines) + '\n\n') + +print(f'Merged {len(all_blocks)} blocks into {OUT}') +print(f'Renamed duplicates: {duplicates}') diff --git a/dwarfctl/proto/motor_control.proto b/dwarfctl/proto/motor_control.proto new file mode 100644 index 0000000..b57474f --- /dev/null +++ b/dwarfctl/proto/motor_control.proto @@ -0,0 +1,80 @@ +syntax = "proto3"; +option go_package = "github.com/antitbone/dwarfctl/proto;pb"; +message ReqMotorServiceJoystick { + double vector_angle = 1; + double vector_length = 2; +} + +message ReqMotorServiceJoystickFixedAngle { + double vector_angle = 1; + double vector_length = 2; +} + +message ReqMotorServiceJoystickStop { +} + +message ReqMotorRun { + int32 id = 1; + double speed = 2; + bool direction = 3; + int32 speed_ramping = 4; + int32 resolution_level = 5; +} + +message ReqMotorRunInPulse { + int32 id = 1; + int32 frequency = 2; + bool direction = 3; + int32 speed_ramping = 4; + int32 resolution = 5; + int32 pulse = 6; + bool mode = 7; +} + +message ReqMotorRunTo { + int32 id = 1; + double end_position = 2; + double speed = 3; + int32 speed_ramping = 4; + int32 resolution_level = 5; +} + +message ReqMotorGetPosition { + int32 id = 1; +} + +message ReqMotorStop { + int32 id = 1; +} + +message ReqMotorReset { + int32 id = 1; + bool direction = 2; +} + +message ReqMotorChangeSpeed { + int32 id = 1; + double speed = 2; +} + +message ReqMotorChangeDirection { + int32 id = 1; + bool direction = 2; +} + +message ResMotor { + int32 id = 1; + int32 code = 2; +} + +message ResMotorPosition { + int32 id = 1; + int32 code = 2; + double position = 3; +} + +message ReqDualCameraLinkage { + int32 x = 1; + int32 y = 2; +} + diff --git a/dwarfctl/proto/notify.proto b/dwarfctl/proto/notify.proto new file mode 100644 index 0000000..1320a90 --- /dev/null +++ b/dwarfctl/proto/notify.proto @@ -0,0 +1,517 @@ +syntax = "proto3"; +option go_package = "github.com/antitbone/dwarfctl/proto;pb"; + +import "base.proto"; + +enum OperationState { + OPERATION_STATE_IDLE = 0; + OPERATION_STATE_RUNNING = 1; + OPERATION_STATE_STOPPING = 2; + OPERATION_STATE_STOPPED = 3; +} + +enum AstroState { + ASTRO_STATE_IDLE = 0; + ASTRO_STATE_RUNNING = 1; + ASTRO_STATE_STOPPING = 2; + ASTRO_STATE_STOPPED = 3; + ASTRO_STATE_PLATE_SOLVING = 4; +} + +enum SentryModeState { + SENTRY_MODE_STATE_IDLE = 0; + SENTRY_MODE_STATE_INIT = 1; + SENTRY_MODE_STATE_DETECT = 2; + SENTRY_MODE_STATE_TRACK = 3; + SENTRY_MODE_STATE_TRACK_FINISH = 4; + SENTRY_MODE_STATE_STOPPING = 5; +} + +enum SentryObjectType { + SENTRY_OBJECT_TYPE_UNKNOWN = 0; + SENTRY_OBJECT_TYPE_UFO = 1; + SENTRY_OBJECT_TYPE_BIRD = 2; + SENTRY_OBJECT_TYPE_PERSON = 3; + SENTRY_OBJECT_TYPE_ANIMAL = 4; + SENTRY_OBJECT_TYPE_VEHICLE = 5; + SENTRY_OBJECT_TYPE_FLYING = 6; + SENTRY_OBJECT_TYPE_BOAT = 7; +} + +message PictureMatching { + uint32 x = 1; + uint32 y = 2; + uint32 width = 3; + uint32 height = 4; +} + +message StorageInfo { + uint32 available_size = 1; + uint32 total_size = 2; + int32 storage_type = 3; + bool is_valid = 4; +} + +message Temperature { + int32 code = 1; + int32 temperature = 2; +} + +message CmosTemperature { + // oneof _temperature + int32 temperature = 1; + int32 camera_type = 2; +} + +message RecordTime { + uint32 record_time = 1; + uint32 camera_type = 2; +} + +message TimeLapseOutTime { + uint32 interval = 1; + uint32 out_time = 2; + uint32 total_time = 3; + uint32 camera_type = 4; +} + +message OperationStateNotify { + OperationState state = 1; +} + +message AstroCalibrationState { + AstroState state = 1; + int32 plate_solving_times = 2; +} + +message AstroGotoState { + AstroState state = 1; + string target_name = 2; +} + +message AstroTrackingState { + OperationState state = 1; + string target_name = 2; +} + +message ProgressCaptureRawDark { + int32 progress = 1; + int32 remaining_time = 2; + int32 camera_type = 3; +} + +message ProgressCaptureRawLiveStacking { + // oneof _shooting_time + // oneof _stacked_time + int32 total_count = 1; + int32 update_type = 2; + int32 current_count = 3; + int32 stacked_count = 4; + int32 exp_index = 5; + int32 gain_index = 6; + string target_name = 7; + int32 camera_type = 8; + int32 shooting_time = 9; + int32 stacked_time = 10; +} + +message Param { + repeated CommonParam param = 1; +} + +message BurstProgress { + uint32 total_count = 1; + uint32 completed_count = 2; + uint32 camera_type = 3; +} + +message PanoramaProgress { + int32 total_count = 1; + int32 completed_count = 2; + uint32 camera_type = 3; +} + +message RgbState { + int32 state = 1; +} + +message PowerIndState { + int32 state = 1; +} + +message ChargingState { + int32 state = 1; +} + +message BatteryInfo { + int32 percentage = 1; +} + +message HostSlaveMode { + int32 mode = 1; + bool lock = 2; +} + +message MTPState { + int32 mode = 1; +} + +message TrackResult { + int32 x = 1; + int32 y = 2; + int32 w = 3; + int32 h = 4; + int32 id = 5; +} + +message CPUMode { + int32 mode = 1; +} + +message AstroTrackingSpecialState { + OperationState state = 1; + string target_name = 2; + int32 index = 3; +} + +message PowerOff { +} + +message AlbumUpdate { + int32 media_type = 1; +} + +message SentryState { + SentryModeState state = 1; + SentryObjectType object_type = 2; +} + +message OneClickGotoState { + // oneof current_state + AstroAutoFocusState astro_auto_focus_state = 1; + AstroCalibrationState astro_calibration_state = 2; + AstroGotoState astro_goto_state = 3; + AstroTrackingState astro_tracking_state = 4; +} + +message StreamType { + int32 stream_type = 1; + int32 cam_id = 2; +} + +message MultiTrackResult { + repeated TrackResult results = 1; +} + +message EqSolvingState { + OperationState state = 1; +} + +message LongExpPhotoProgress { + double total_time = 1; + double exposured_time = 2; + uint32 camera_type = 3; +} + +message ShootingScheduleResultAndState { + string schedule_id = 1; + int32 result = 2; + int32 state = 3; +} + +message ShootingTaskState { + string schedule_task_id = 1; + int32 state = 2; + int32 code = 3; +} + +message SkySeacherState { + OperationState state = 1; +} + +message ProgressAiEnhance { + int32 progress = 1; + int32 total_time = 2; +} + +message CommonProgress { + enum ProgressType { + PROGRESS_TYPE_INITING = 0; + PROGRESS_TYPE_MOSAIC_MOVING = 1; + } + int32 current = 1; + int32 total = 2; + CommonProgress.ProgressType progress_type = 3; +} + +message CalibrationResult { + double azi = 1; + double alt = 2; +} + +message FocusPosition { + int32 pos = 1; +} + +message SentryAutoHand { + int32 mode = 1; +} + +message PanoramaStitchUploadComplete { + int32 code = 1; + string user_id = 2; + string busi_no = 3; + string panorama_name = 4; + string mac = 5; +} + +message PanoramaCompressionComplete { + int32 code = 1; + string panorama_name = 2; + string zip_file_path = 3; + string zip_file_md5 = 4; + uint64 zip_file_size = 5; + string stitch_param = 6; +} + +message PanoramaCompressionProgress { + string panorama_name = 1; + uint32 total_files_num = 2; + uint32 compressed_files_num = 3; +} + +message PanoramaUploadCompressionProgress { + string user_id = 1; + string busi_no = 2; + string panorama_name = 3; + string mac = 4; + uint32 total_files_num = 5; + uint32 compressed_files_num = 6; + double speed = 7; +} + +message PanoramaUploadProgress { + string user_id = 1; + string busi_no = 2; + string panorama_name = 3; + string mac = 4; + uint64 total_size = 5; + uint64 uploaded_size = 6; + double speed = 7; +} + +message PanoramaCurrentUploadState { + int32 code = 1; + string user_id = 2; + string busi_no = 3; + string panorama_name = 4; + string mac = 5; + uint32 total_files_num = 6; + uint32 compressed_files_num = 7; + uint64 total_size = 8; + uint64 uploaded_size = 9; + uint32 step = 10; +} + +message LowTempProtectionMode { + int32 mode = 1; +} + +message StateSystemResourceOccupation { + enum TaskId { + IDLE = 0; + PANORAMA_UPLOAD = 1; + ASTRO_MULTI_STACK = 2; + } + StateSystemResourceOccupation.TaskId task_id = 1; + OperationState state = 2; +} + +message BodyStatus { + enum BodyStatusEnum { + UNKNOWN = 0; + EQ_MODE = 1; + AZI_MODE = 2; + } + BodyStatus.BodyStatusEnum body_status = 1; +} + +message ProgressCaptureMosaic { + int32 total_count = 1; + int32 update_type = 2; + int32 current_count = 3; + int32 stacked_count = 4; + int32 exp_index = 5; + int32 gain_index = 6; + string target_name = 7; + int32 horizontal_scale = 8; + int32 vertical_scale = 9; + int32 rotation = 10; + int32 fov_id = 11; + int32 fov_total = 12; +} + +message Wb { + uint64 mode = 1; + int32 ct = 2; + int32 scene = 3; + int32 camera_type = 4; +} + +message GeneralIntParam { + uint64 param_id = 1; + int32 mode = 2; + int32 value = 3; +} + +message GeneralFloatParam { + uint64 param_id = 1; + float value = 2; +} + +message GeneralBoolParams { + uint64 param_id = 1; + bool value = 2; +} + +message SwitchShootingMode { + int32 state = 1; + int32 source_mode = 2; + int32 dst_mode = 3; +} + +message SwitchCropRatioState { + int32 state = 1; + int32 crop_ratio = 2; +} + +message ResolutionParam { + uint64 param_id = 1; + int32 current_res_value = 2; + int32 current_fps_value = 3; + repeated int32 supported_fps_list = 4; + repeated int32 supported_resolution_list = 5; +} + +message CaptureRawState { + OperationState state = 1; + int32 camera_type = 2; +} + +message PhotoState { + OperationState state = 1; + int32 camera_type = 2; +} + +message BurstState { + OperationState state = 1; + int32 camera_type = 2; +} + +message RecordState { + OperationState state = 1; + int32 camera_type = 2; +} + +message TimeLapseState { + OperationState state = 1; + int32 camera_type = 2; +} + +message CaptureRawDarkState { + OperationState state = 1; + int32 camera_type = 2; +} + +message PanoramaState { + OperationState state = 1; + int32 camera_type = 2; +} + +message AstroAutoFocusState { + OperationState state = 1; +} + +message NormalAutoFocusState { + OperationState state = 1; +} + +message AstroAutoFocusFastState { + OperationState state = 1; +} + +message AreaAutoFocusState { + OperationState state = 1; +} + +message DualCameraLinkageState { + OperationState state = 1; +} + +message NormalTrackState { + OperationState state = 1; + int32 camera_type = 2; +} + +message SwitchResolutionFpsState { + OperationState state = 1; + int32 camera_type = 2; +} + +message CaptureCaliFrameState { + OperationState state = 1; + int32 camera_type = 2; + int32 cali_frame_type = 3; +} + +message CaptureCaliFrameProgress { + int32 progress = 1; + int32 camera_type = 2; + int32 cali_frame_type = 3; +} + +message DeviceAttitude { + double pitch = 1; + double yaw = 2; + double roll = 3; +} + +message SkyTargetFinderState { + OperationState state = 1; + int32 scene_type = 2; +} + +message PanoFramingThumbnailUpdateNotify { + bytes webp_data = 1; +} + +message PanoFramingRectUpdateNotify { + double norm_x_tl = 1; + double norm_y_tl = 2; + double norm_x_br = 3; + double norm_y_br = 4; + double norm_limit_x_left = 5; + double norm_limit_y_top = 6; + double norm_limit_x_right = 7; + double norm_limit_y_bottom = 8; + double rect_hor_fov = 9; + double rect_ver_fov = 10; + int32 error_code = 11; +} + +message PanoFramingStateNotify { + int32 state = 1; +} + +message AutoShutdown { + int32 state = 1; +} + +message LensDefog { + int32 state = 1; +} + +message AutoCooling { + int32 state = 1; +} + diff --git a/dwarfctl/proto/panorama.proto b/dwarfctl/proto/panorama.proto new file mode 100644 index 0000000..4a9c596 --- /dev/null +++ b/dwarfctl/proto/panorama.proto @@ -0,0 +1,107 @@ +syntax = "proto3"; +option go_package = "github.com/antitbone/dwarfctl/proto;pb"; +message ReqStartPanoramaByGrid { +} + +message ReqStartPanoramaByEulerRange { + float yaw_range = 1; + float pitch_range = 2; +} + +message ReqStartPanoramaStitchUpload { + uint64 resource_id = 1; + string user_id = 2; + int32 app_platform = 3; + string panorama_name = 4; + string ak = 5; + string sk = 6; + string token = 7; + string bucket = 8; + string bucket_prefix = 9; + string from = 10; + string env_type = 11; +} + +message ReqStopPanorama { +} + +message ReqStopPanoramaStitchUpload { + string user_id = 1; +} + +message ReqGetPanoramaCurrentUploadState { +} + +message ResGetPanoramaCurrentUploadState { + int32 code = 1; + string user_id = 2; + string busi_no = 3; + string panorama_name = 4; + string mac = 5; + uint32 total_files_num = 6; + uint32 compressed_files_num = 7; + uint64 total_size = 8; + uint64 uploaded_size = 9; + uint32 step = 10; +} + +message ReqGetUploadPredict { + string panorama_name = 1; +} + +message ResGetUploadPredict { + int32 code = 1; + string panorama_name = 2; + uint32 file_nums = 3; + string resolution = 4; + uint64 cloud_data_size = 5; + uint64 zip_data_size = 6; + uint64 app_zip_data_size = 7; +} + +message PanoramaUploadParam { + string user_id = 1; + string busi_no = 2; + string panorama_name = 3; + string mac = 4; + uint32 total_files_num = 5; + uint32 compressed_files_num = 6; + uint64 total_size = 7; + uint64 uploaded_size = 8; + uint32 step = 9; +} + +message ReqCompressPanorama { + string panorama_name = 1; +} + +message ReqStopCompressPanorama { +} + +message ReqStartPanoramaFraming { +} + +message ReqResetPanoramaFraming { +} + +message ReqStopPanoramaFraming { +} + +message ReqStopPanoramaFramingAndStartGrid { +} + +message ResStopPanoramaFraming { + int32 code = 1; + double centerX_degree_offset = 2; + double centerY_degree_offset = 3; + uint32 framing_rows = 4; + uint32 framing_cols = 5; +} + +message ReqUpdatePanoramaFramingRect { + double norm_x_tl = 1; + double norm_y_tl = 2; + double norm_x_br = 3; + double norm_y_br = 4; +} + diff --git a/dwarfctl/proto/param.proto b/dwarfctl/proto/param.proto new file mode 100644 index 0000000..3c97918 --- /dev/null +++ b/dwarfctl/proto/param.proto @@ -0,0 +1,51 @@ +syntax = "proto3"; +option go_package = "github.com/antitbone/dwarfctl/proto;pb"; + +message ReqSetExposure { + uint64 param_id = 1; + int32 mode = 2; + int32 value = 3; +} + +message ReqSetGain { + uint64 param_id = 1; + int32 mode = 2; + int32 value = 3; +} + +message ReqSetWb { + uint64 param_id = 1; + int32 mode = 2; + int32 value = 3; +} + +message ReqSetGeneralIntParam { + uint64 param_id = 1; + int32 value = 2; +} + +message ReqSetGeneralFloatParam { + uint64 param_id = 1; + float value = 2; +} + +message ReqSetGeneralBoolParams { + uint64 param_id = 1; + bool value = 2; +} + +message ReqSetAutoParam { + int32 camera_type = 1; + int32 shooting_tech = 2; + bool is_auto = 3; +} + +message ResSetAutoParam { + int32 shooting_mode = 1; + int32 camera_type = 2; + int32 shooting_tech = 3; + bool is_auto = 4; + bool update_all = 5; + int32 code = 6; +} + diff --git a/dwarfctl/proto/rgb.proto b/dwarfctl/proto/rgb.proto new file mode 100644 index 0000000..0d085ff --- /dev/null +++ b/dwarfctl/proto/rgb.proto @@ -0,0 +1,20 @@ +syntax = "proto3"; +option go_package = "github.com/antitbone/dwarfctl/proto;pb"; +message ReqOpenRgb { +} + +message ReqCloseRgb { +} + +message ReqPowerDown { +} + +message ReqOpenPowerInd { +} + +message ReqClosePowerInd { +} + +message ReqReboot { +} + diff --git a/dwarfctl/proto/schedule.proto b/dwarfctl/proto/schedule.proto new file mode 100644 index 0000000..14951d2 --- /dev/null +++ b/dwarfctl/proto/schedule.proto @@ -0,0 +1,156 @@ +syntax = "proto3"; +option go_package = "github.com/antitbone/dwarfctl/proto;pb"; +enum ShootingScheduleState { + SHOOTING_SCHEDULE_STATE_INITIALIZED = 0; + SHOOTING_SCHEDULE_STATE_PENDING_SHOOT = 1; + SHOOTING_SCHEDULE_STATE_SHOOTING = 2; + SHOOTING_SCHEDULE_STATE_COMPLETED = 3; + SHOOTING_SCHEDULE_STATE_EXPIRED = 4; +} + +enum ShootingScheduleSyncState { + SHOOTING_SCHEDULE_SYNC_STATE_PENDING_SYNC = 0; + SHOOTING_SCHEDULE_SYNC_STATE_SYNCED = 1; +} + +enum ShootingScheduleResult { + SHOOTING_SCHEDULE_RESULT_PENDING_START = 0; + SHOOTING_SCHEDULE_RESULT_ALL_COMPLETED = 1; + SHOOTING_SCHEDULE_RESULT_PARTIALLY_COMPLETED = 2; + SHOOTING_SCHEDULE_RESULT_ALL_FAILED = 3; +} + +enum ShootingTaskState { + SHOOTING_TASK_STATUS_IDLE = 0; + SHOOTING_TASK_STATUS_SHOOTING = 1; + SHOOTING_TASK_STATUS_SUCCESS = 2; + SHOOTING_TASK_STATUS_FAILED = 3; + SHOOTING_TASK_STATUS_INTERRUPTED = 4; +} + +enum ShootingScheduleMode { + SHOOTING_SCHEDULE_MODE_ASTRO_DEEP_SKY = 0; +} + +message ShootingTaskMsg { + string schedule_id = 1; + string params = 2; + ShootingTaskState state = 3; + int32 code = 4; + int64 created_time = 5; + int64 updated_time = 6; + string schedule_task_id = 7; + int32 param_mode = 8; + int32 param_version = 9; + int32 create_from = 10; +} + +message ShootingScheduleMsg { + string schedule_id = 1; + string schedule_name = 2; + int32 device_id = 3; + string mac_address = 4; + int64 start_time = 5; + int64 end_time = 6; + ShootingScheduleResult result = 7; + int64 created_time = 8; + int64 updated_time = 9; + ShootingScheduleState state = 10; + int32 lock = 11; + string password = 12; + repeated ShootingTaskMsg shooting_tasks = 13; + int32 param_mode = 14; + int32 param_version = 15; + string params = 16; + int64 schedule_time = 17; + ShootingScheduleSyncState sync_state = 18; +} + +message ReqSyncShootingSchedule { + ShootingScheduleMsg shooting_schedule = 1; +} + +message ResSyncShootingSchedule { + ShootingScheduleMsg shooting_schedule = 1; + repeated string time_conflict_schedule_ids = 2; + int32 code = 3; + bool can_replace = 4; +} + +message ReqCancelShootingSchedule { + string id = 1; + string password = 2; +} + +message ResCancelShootingSchedule { + string id = 1; + int32 code = 2; +} + +message ReqGetAllShootingSchedule { +} + +message ResGetAllShootingSchedule { + repeated ShootingScheduleMsg shooting_schedule = 1; + int32 code = 2; +} + +message ReqGetShootingScheduleById { + string id = 1; +} + +message ResGetShootingScheduleById { + ShootingScheduleMsg shooting_schedule = 1; + int32 code = 2; +} + +message ReqGetShootingTaskById { + string id = 1; +} + +message ResGetShootingTaskById { + ShootingTaskMsg shooting_task = 1; + int32 code = 2; +} + +message ReqReplaceShootingSchedule { + ShootingScheduleMsg shooting_schedule = 1; +} + +message ResReplaceShootingSchedule { + ShootingScheduleMsg shooting_schedule = 1; + repeated ShootingScheduleMsg replaced_shooting_schedule = 2; + int32 code = 3; +} + +message ReqUnlockShootingSchedule { + string id = 1; + string password = 2; +} + +message ResUnlockShootingSchedule { + string id = 1; + int32 code = 2; +} + +message ReqLockShootingSchedule { + string id = 1; + string password = 2; +} + +message ResLockShootingSchedule { + string id = 1; + string password = 2; + int32 code = 3; +} + +message ReqDeleteShootingSchedule { + string id = 1; + string password = 2; +} + +message ResDeleteShootingSchedule { + string id = 1; + int32 code = 2; +} + diff --git a/dwarfctl/proto/system.proto b/dwarfctl/proto/system.proto new file mode 100644 index 0000000..489b264 --- /dev/null +++ b/dwarfctl/proto/system.proto @@ -0,0 +1,71 @@ +syntax = "proto3"; +option go_package = "github.com/antitbone/dwarfctl/proto;pb"; +message ReqSetTime { + uint64 timestamp = 1; + double timezone_offset = 2; +} + +message ReqSetTimezone { + string timezone = 1; +} + +message ReqSetMtpMode { + int32 mode = 1; +} + +message ReqSetCpuMode { + int32 mode = 1; +} + +message ReqsetMasterLock { + bool lock = 1; +} + +message ReqGetDeviceActivateInfo { + int32 issuer = 1; +} + +message ResDeviceActivateInfo { + int32 activate_state = 1; + int32 activate_process_state = 2; + string request_param = 3; +} + +message ReqDeviceActivateWriteFile { + string request_param = 1; +} + +message ResDeviceActivateWriteFile { + int32 code = 1; + string request_param = 2; +} + +message ReqDeviceActivateSuccessfull { + string request_param = 1; +} + +message ResDeviceActivateSuccessfull { + int32 code = 1; + int32 activate_state = 2; +} + +message ReqDisableDeviceActivate { + string request_param = 1; +} + +message ResDisableDeviceActivate { + int32 code = 1; + int32 activate_state = 2; +} + +message ReqSetLocation { + double latitude = 1; + double longitude = 2; + double altitude = 3; + string country_region = 4; + string province = 5; + string city = 6; + string district = 7; + bool enable = 8; +} + diff --git a/dwarfctl/proto/task_center.proto b/dwarfctl/proto/task_center.proto new file mode 100644 index 0000000..f7b5442 --- /dev/null +++ b/dwarfctl/proto/task_center.proto @@ -0,0 +1,203 @@ +syntax = "proto3"; +option go_package = "github.com/antitbone/dwarfctl/proto;pb"; +import "notify.proto"; +import "panorama.proto"; +import "astro.proto"; + +enum TaskId { + TASK_ID_IDLE = 0; + TASK_ID_PANORAMA_UPLOAD = 1; + TASK_ID_ASTRO_MULTI_STACK_THUMBNAIL_GENERATION = 2; + TASK_ID_ASTRO_MULTI_STACK = 3; + TASK_ID_CAPTURE_CALI_FRAME = 4; +} + +enum ExclusiveTaskType { + EXCLUSIVE_TYPE_NONE = 0; + EXCLUSIVE_TYPE_CAMERA = 1; + EXCLUSIVE_TYPE_MOTOR = 2; + EXCLUSIVE_TYPE_FOCUS_MOTOR = 4; + EXCLUSIVE_TYPE_SYSTEM_IO = 8; + EXCLUSIVE_TYPE_SYSTEM_WIFI = 16; +} + +message TaskAttr { + int32 exclusive_mask = 1; + int32 priority = 2; +} + +message TaskState { + // oneof extendedState + notify.OperationState base_state = 1; + notify.AstroState astro_extended_state = 2; +} + +message TaskParam { + // oneof param + PanoramaUploadParam panorama_upload = 1; + MakeFitsThumbTaskParam make_fits_thumb_task_param = 2; + RepostprocessTaskParam repostprocess_task_param = 3; + CaptureCaliFrameTaskParam capture_cali_frame_task_param = 4; +} + +message ResNotifyTaskState { + TaskId task_id = 1; + TaskAttr task_attr = 2; + TaskState state = 3; + TaskParam param = 4; +} + +message ReqStartTask { + // oneof param + TaskId task_id = 1; + ReqStartMakeFitsThumb req_make_fits_thumb_param = 2; + ReqStartRepostprocess req_repostprocess_param = 3; +} + +message ReqStopTask { + TaskId task_id = 1; +} + +message ResTaskCenter { + int32 code = 1; + TaskId task_id = 2; +} + +message ClientParams { + int32 encode_type = 1; +} + +message ReqEnterCamera { + ClientParams client_param = 3; +} + +message ResEnterCamera { + int32 code = 1; + int32 shooting_mode_id = 2; +} + +message ReqSwitchShootingMode { + int32 mode = 1; +} + +message ResSwitchShootingMode { + int32 code = 1; + int32 shooting_mode_id = 2; +} + +message ReqSwitchShootingTech { + int32 tech = 1; +} + +message ResSwitchShootingTech { + int32 code = 1; + int32 shooting_tech_id = 2; +} + +message ReqGetDeviceStateInfo { +} + +message ExclusiveCameraState { + // oneof current_state + notify.CaptureRawState capture_raw_state = 1; + notify.PhotoState photo_state = 2; + notify.BurstState burst_state = 3; + notify.RecordState record_state = 4; + notify.TimeLapseState timelapse_state = 5; + notify.CaptureCaliFrameState capture_cali_frame_state = 6; + notify.PanoramaState panorama_state = 7; + notify.SentryState sentry_state = 8; +} + +message TeleCameraStateInfo { + // oneof _cmos_temperature + ExclusiveCameraState exclusive_state = 1; + notify.StreamType stream_type = 2; + double h_fov = 3; + double v_fov = 4; + uint32 resolution_width = 5; + uint32 resolution_height = 6; + notify.CmosTemperature cmos_temperature = 7; +} + +message WideCameraStateInfo { + // oneof _cmos_temperature + ExclusiveCameraState exclusive_state = 1; + notify.StreamType stream_type = 2; + double h_fov = 3; + double v_fov = 4; + uint32 resolution_width = 5; + uint32 resolution_height = 6; + notify.CmosTemperature cmos_temperature = 7; +} + +message ExclusiveFocusMotorState { + // oneof current_state + notify.AstroAutoFocusState astro_auto_focus_state = 1; + notify.NormalAutoFocusState normal_auto_focus_state = 2; + notify.AstroAutoFocusFastState astro_auto_focus_fast_state = 3; + notify.AreaAutoFocusState area_auto_focus_state = 4; +} + +message FocusMotorStateInfo { + // oneof _focus_position + ExclusiveFocusMotorState exclusive_state = 1; + notify.FocusPosition focus_position = 2; +} + +message ExclusiveMotionMotorState { + // oneof current_state + notify.AstroCalibrationState astro_calibration_state = 1; + notify.AstroGotoState astro_goto_state = 2; + notify.AstroTrackingState astro_tracking_state = 3; + notify.NormalTrackState normal_track_state = 4; + notify.OneClickGotoState one_click_goto_state = 5; + notify.EqSolvingState eq_state = 6; + notify.SentryState sentry_state = 7; + notify.SkyTargetFinderState sky_target_finder_state = 8; +} + +message MotionMotorStateInfo { + ExclusiveMotionMotorState exclusive_state = 1; + notify.SentryAutoHand sentry_auto_hand = 2; +} + +message DeviceStateInfo { + notify.RgbState rgb_state = 1; + notify.PowerIndState power_ind_state = 2; + notify.ChargingState charging_state = 3; + notify.StorageInfo storage_info = 4; + notify.MTPState mtp_state = 5; + notify.CPUMode cpu_mode = 6; + notify.Temperature temperature = 7; + notify.BodyStatus body_status = 8; + notify.BatteryInfo battery_info = 9; + notify.CalibrationResult calibration_result = 10; + notify.PictureMatching picture_matching = 11; + notify.AutoShutdown auto_shutdown = 12; + notify.LensDefog lens_defog = 13; + notify.AutoCooling auto_cooling = 14; +} + +message ConnectionStateInfo { + notify.HostSlaveMode host_slave_mode = 1; +} + +message ShootingModeAndTech { + int32 shooting_mode = 1; + int32 parent_shooting_mode = 2; + repeated int32 shooting_techs = 3; +} + +message ResGetDeviceStateInfo { + int32 shooting_mode = 1; + TeleCameraStateInfo tele_camera_state_info = 2; + WideCameraStateInfo wide_camera_state_info = 3; + FocusMotorStateInfo focus_motor_state_info = 4; + MotionMotorStateInfo motion_motor_state_info = 5; + DeviceStateInfo device_state_info = 6; + int32 code = 7; + ConnectionStateInfo connection_state_info = 8; + repeated ShootingModeAndTech shooting_mode_and_techs = 9; +} + diff --git a/dwarfctl/proto/track.proto b/dwarfctl/proto/track.proto new file mode 100644 index 0000000..54df107 --- /dev/null +++ b/dwarfctl/proto/track.proto @@ -0,0 +1,40 @@ +syntax = "proto3"; +option go_package = "github.com/antitbone/dwarfctl/proto;pb"; +message ReqStartTrack { + int32 x = 1; + int32 y = 2; + int32 w = 3; + int32 h = 4; + int32 cam_id = 5; +} + +message ReqStopTrack { +} + +message ReqPauseTrack { +} + +message ReqContinueTrack { +} + +message ReqStartSentryMode { + int32 type = 1; +} + +message ReqStopSentryMode { +} + +message ReqMOTTrackOne { + int32 id = 1; +} + +message ReqUFOAutoHandMode { + int32 mode = 1; +} + +message ReqStartTrackClick { + int32 x = 1; + int32 y = 2; + int32 cam_id = 3; +} + diff --git a/dwarfctl/proto/voiceassistant.proto b/dwarfctl/proto/voiceassistant.proto new file mode 100644 index 0000000..f148816 --- /dev/null +++ b/dwarfctl/proto/voiceassistant.proto @@ -0,0 +1,139 @@ +syntax = "proto3"; +option go_package = "github.com/antitbone/dwarfctl/proto;pb"; +import "base.proto"; +import "notify.proto"; +import "task_center.proto"; + +enum VoiceCommandType { + VOICE_CMD_UNKNOWN = 0; + VOICE_CMD_GET_STATUS = 1; + VOICE_CMD_TAKE_PHOTO = 2; + VOICE_CMD_START_RECORD = 3; + VOICE_CMD_STOP_RECORD = 4; + VOICE_CMD_START_TIMELAPSE = 5; + VOICE_CMD_STOP_TIMELAPSE = 6; + VOICE_CMD_START_BURST = 7; + VOICE_CMD_STOP_BURST = 8; + VOICE_CMD_START_ASTRO = 9; + VOICE_CMD_STOP_ASTRO = 10; + VOICE_CMD_START_SENTRY = 11; + VOICE_CMD_STOP_SENTRY = 12; + VOICE_CMD_MOVE = 13; + VOICE_CMD_GOTO_TARGET = 14; + VOICE_CMD_CALIBRATION = 15; + VOICE_CMD_AUTO_FOCUS = 16; + VOICE_CMD_STOP_FOCUS = 17; + VOICE_CMD_STOP_ALL = 18; +} + +message ReqVoiceCommand { + // oneof params + VoiceCommandType command_type = 1; + int32 shooting_mode = 2; + VoicePhotoParams photo_params = 10; + VoiceRecordParams record_params = 11; + VoiceTimelapseParams timelapse_params = 12; + VoiceBurstParams burst_params = 13; + VoiceAstroParams astro_params = 14; + VoiceSentryParams sentry_params = 15; + VoiceMoveParams move_params = 16; + VoiceGotoParams goto_params = 17; + VoiceCalibrationParams calibration_params = 18; + VoiceFocusParams focus_params = 19; +} + +message VoicePhotoParams { + int32 camera_type = 1; +} + +message VoiceRecordParams { + int32 camera_type = 1; + int32 duration_seconds = 2; +} + +message VoiceTimelapseParams { + int32 camera_type = 1; + int32 interval_seconds = 2; + int32 duration_seconds = 3; +} + +message VoiceBurstParams { + int32 camera_type = 1; + int32 count = 2; +} + +message VoiceAstroParams { + string target_name = 1; + double ra = 2; + double dec = 3; + int32 index = 4; + double lon = 5; + double lat = 6; + bool auto_goto = 7; + bool force_start = 8; +} + +message VoiceSentryParams { + int32 type = 1; +} + +message VoiceMoveParams { + double azimuth_angle = 1; + double altitude_angle = 2; + int32 speed = 3; +} + +message VoiceGotoParams { + string target_name = 1; + double ra = 2; + double dec = 3; + int32 index = 4; + double lon = 5; + double lat = 6; + int32 shooting_mode = 7; +} + +message VoiceCalibrationParams { + double lon = 1; + double lat = 2; +} + +message VoiceFocusParams { + bool is_infinity = 1; +} + +message ResVoiceCommand { + // oneof result + int32 code = 1; + string message = 2; + VoiceCommandType command_type = 3; + VoiceStatusResult status_result = 10; + VoiceOperationResult operation_result = 11; +} + +message AstroShootingProgress { + string target_name = 1; + int32 captured_count = 2; + int32 total_count = 3; + int32 stacked_count = 4; + int32 progress_percentage = 5; + int64 elapsed_time = 6; + int64 remaining_time = 7; +} + +message VoiceStatusResult { + ResGetDeviceStateInfo device_state_info = 1; + AstroShootingProgress astro_progress = 2; +} + +message VoiceOperationResult { + bool success = 1; + string detail_message = 2; +} + +message ResNotifyVoiceAssistant { + VoiceCommandType command_type = 1; + notify.OperationState state = 2; + string message = 4; +} +