51 Q_PROPERTY(QString name MEMBER _name CONSTANT)
52 Q_PROPERTY(
int frameClass MEMBER _frameClass CONSTANT)
54 Q_PROPERTY(QStringList frameTypeEnumStrings MEMBER _frameTypeEnumStrings CONSTANT)
55 Q_PROPERTY(QVariantList frameTypeEnumValues MEMBER _frameTypeEnumValues CONSTANT)
56 Q_PROPERTY(
int defaultFrameType MEMBER _defaultFrameType CONSTANT)
58 Q_PROPERTY(QString imageResourceDefault MEMBER _imageResourceDefault CONSTANT)
59 Q_PROPERTY(
bool frameTypeSupported MEMBER _frameTypeSupported CONSTANT)
62 explicit APMFrameClass(
const QString &name,
bool copter,
int frameClass,
Fact *frameTypeFact, QObject *parent =
nullptr);
65 int frameType()
const;
66 QString imageResource()
const;
70 QString _imageResource;
71 QString _imageResourceDefault;
72 const int _frameClass;
73 QStringList _frameTypeEnumStrings;
74 QVariantList _frameTypeEnumValues;
75 int _defaultFrameType = -1;
76 bool _frameTypeSupported =
false;
85 static QString _findImageResourceCopter(
int frameClass,
int &frameType);
86 static QString _findImageResourceRover(
int frameClass,
int frameType);
88 const Fact *_frameTypeFact =
nullptr;
91 #define FRAME_CLASS_UNDEFINED 0
92 #define FRAME_CLASS_QUAD 1
93 #define FRAME_CLASS_HEX 2
94 #define FRAME_CLASS_OCTA 3
95 #define FRAME_CLASS_OCTAQUAD 4
96 #define FRAME_CLASS_Y6 5
97 #define FRAME_CLASS_HELI 6
98 #define FRAME_CLASS_TRI 7
99 #define FRAME_CLASS_SINGLECOPTER 8
100 #define FRAME_CLASS_COAXCOPTER 9
101 #define FRAME_CLASS_BICOPTER 10
102 #define FRAME_CLASS_HELI_DUAL 11
103 #define FRAME_CLASS_DODECAHEXA 12
104 #define FRAME_CLASS_HELIQUAD 13
107 #define FRAME_TYPE_PLUS 0
108 #define FRAME_TYPE_X 1
109 #define FRAME_TYPE_V 2
110 #define FRAME_TYPE_H 3
111 #define FRAME_TYPE_V_TAIL 4
112 #define FRAME_TYPE_A_TAIL 5
113 #define FRAME_TYPE_Y6B 10
114 #define FRAME_TYPE_Y6F 11
115 #define FRAME_TYPE_BETAFLIGHTX 12
116 #define FRAME_TYPE_DJIX 13
117 #define FRAME_TYPE_CLOCKWISEX 14
120 #define FRAME_CLASS_ROVER 1
121 #define FRAME_CLASS_BOAT 2
122 #define FRAME_CLASS_BALANCEBOT 3
125 #define FRAME_TYPE_UNDEFINED 0
126 #define FRAME_TYPE_OMNI3 1
127 #define FRAME_TYPE_OMNIX 2
128 #define FRAME_TYPE_OMNIPLUS 3
130 struct FrameToImageInfo {
131 const int frameClass;
133 const char *imageResource;
135 static constexpr const FrameToImageInfo _rgFrameToImageCopter[] = {