maa_framework/controller/
dbg.rs1use serde::{Deserialize, Serialize};
2
3use crate::{error, internal};
4
5#[derive(Debug, Serialize, Deserialize, Default, Clone, Copy)]
6pub enum MaaDbgControllerType {
7 #[default]
8 Invalid,
9 CarouselImage,
10 ReplayRecording,
11}
12
13impl TryFrom<internal::MaaDbgControllerType> for MaaDbgControllerType {
14 type Error = error::Error;
15
16 fn try_from(value: internal::MaaDbgControllerType) -> Result<Self, Self::Error> {
17 match value {
18 internal::MaaDbgControllerTypeEnum_MaaDbgController_Invalid => {
19 Ok(MaaDbgControllerType::Invalid)
20 }
21 internal::MaaDbgControllerTypeEnum_MaaDbgControllerType_CarouselImage => {
22 Ok(MaaDbgControllerType::CarouselImage)
23 }
24 internal::MaaDbgControllerTypeEnum_MaaDbgControllerType_ReplayRecording => {
25 Ok(MaaDbgControllerType::ReplayRecording)
26 }
27 _ => Err(error::Error::MaaDbgControllerTypeConversionError(value)),
28 }
29 }
30}
31
32impl From<MaaDbgControllerType> for internal::MaaDbgControllerType {
33 fn from(value: MaaDbgControllerType) -> Self {
34 match value {
35 MaaDbgControllerType::Invalid => {
36 internal::MaaDbgControllerTypeEnum_MaaDbgController_Invalid
37 }
38 MaaDbgControllerType::CarouselImage => {
39 internal::MaaDbgControllerTypeEnum_MaaDbgControllerType_CarouselImage
40 }
41 MaaDbgControllerType::ReplayRecording => {
42 internal::MaaDbgControllerTypeEnum_MaaDbgControllerType_ReplayRecording
43 }
44 }
45 }
46}