1 //This file was auto-generated by generate_datacopy.py script on Mon Jul 2 14:20:48 2018. Do not edit this file!
5 template <class A
, class B
>
6 void copyCurveRef(A
* dest
, B
* src
)
8 dest
->type
= src
->type
;
9 dest
->value
= src
->value
;
12 template <class A
, class B
>
13 void copyMixData(A
* dest
, B
* src
)
15 dest
->weight
= src
->weight
;
16 dest
->destCh
= src
->destCh
;
17 dest
->srcRaw
= src
->srcRaw
;
18 dest
->carryTrim
= src
->carryTrim
;
19 dest
->mixWarn
= src
->mixWarn
;
20 dest
->mltpx
= src
->mltpx
;
21 dest
->spare
= src
->spare
;
22 dest
->offset
= src
->offset
;
23 dest
->swtch
= src
->swtch
;
24 dest
->flightModes
= src
->flightModes
;
25 copyCurveRef(&dest
->curve
, &src
->curve
);
26 dest
->delayUp
= src
->delayUp
;
27 dest
->delayDown
= src
->delayDown
;
28 dest
->speedUp
= src
->speedUp
;
29 dest
->speedDown
= src
->speedDown
;
32 template <class A
, class B
>
33 void copyExpoData(A
* dest
, B
* src
)
35 dest
->mode
= src
->mode
;
36 dest
->scale
= src
->scale
;
37 dest
->srcRaw
= src
->srcRaw
;
38 dest
->carryTrim
= src
->carryTrim
;
40 dest
->swtch
= src
->swtch
;
41 dest
->flightModes
= src
->flightModes
;
42 dest
->weight
= src
->weight
;
43 dest
->spare
= src
->spare
;
44 dest
->offset
= src
->offset
;
45 copyCurveRef(&dest
->curve
, &src
->curve
);
48 template <class A
, class B
>
49 void copyLimitData(A
* dest
, B
* src
)
53 dest
->ppmCenter
= src
->ppmCenter
;
54 dest
->offset
= src
->offset
;
55 dest
->symetrical
= src
->symetrical
;
56 dest
->revert
= src
->revert
;
57 dest
->spare
= src
->spare
;
58 dest
->curve
= src
->curve
;
61 template <class A
, class B
>
62 void copyLogicalSwitchData(A
* dest
, B
* src
)
64 dest
->func
= src
->func
;
67 dest
->andsw
= src
->andsw
;
68 dest
->andswtype
= src
->andswtype
;
69 dest
->spare
= src
->spare
;
71 dest
->delay
= src
->delay
;
72 dest
->duration
= src
->duration
;
75 template <class A
, class B
>
76 void copyCustomFunctionData(A
* dest
, B
* src
)
78 dest
->swtch
= src
->swtch
;
79 dest
->func
= src
->func
;
80 copyCustomFunctionData_all(&dest
->all
, &src
->all
);
81 dest
->active
= src
->active
;
84 template <class A
, class B
>
85 void copytrim_t(A
* dest
, B
* src
)
87 dest
->value
= src
->value
;
88 dest
->mode
= src
->mode
;
91 template <class A
, class B
>
92 void copyFlightModeData(A
* dest
, B
* src
)
94 for (int i
=0; i
<6; i
++) {
95 copytrim_t(&dest
->trim
[i
], &src
->trim
[i
]);
97 dest
->swtch
= src
->swtch
;
98 dest
->spare
= src
->spare
;
99 dest
->fadeIn
= src
->fadeIn
;
100 dest
->fadeOut
= src
->fadeOut
;
101 memcpy(dest
->gvars
, src
->gvars
, sizeof(dest
->gvars
));
104 template <class A
, class B
>
105 void copyCurveData(A
* dest
, B
* src
)
107 dest
->type
= src
->type
;
108 dest
->smooth
= src
->smooth
;
109 dest
->points
= src
->points
;
112 template <class A
, class B
>
113 void copyGVarData(A
* dest
, B
* src
)
115 dest
->min
= src
->min
;
116 dest
->max
= src
->max
;
117 dest
->popup
= src
->popup
;
118 dest
->prec
= src
->prec
;
119 dest
->unit
= src
->unit
;
120 dest
->spare
= src
->spare
;
123 template <class A
, class B
>
124 void copyTimerData(A
* dest
, B
* src
)
126 dest
->mode
= src
->mode
;
127 dest
->start
= src
->start
;
128 dest
->value
= src
->value
;
129 dest
->countdownBeep
= src
->countdownBeep
;
130 dest
->minuteBeep
= src
->minuteBeep
;
131 dest
->persistent
= src
->persistent
;
132 dest
->countdownStart
= src
->countdownStart
;
133 dest
->direction
= src
->direction
;
136 template <class A
, class B
>
137 void copySwashRingData(A
* dest
, B
* src
)
139 dest
->type
= src
->type
;
140 dest
->value
= src
->value
;
141 dest
->collectiveSource
= src
->collectiveSource
;
142 dest
->aileronSource
= src
->aileronSource
;
143 dest
->elevatorSource
= src
->elevatorSource
;
144 dest
->collectiveWeight
= src
->collectiveWeight
;
145 dest
->aileronWeight
= src
->aileronWeight
;
146 dest
->elevatorWeight
= src
->elevatorWeight
;
149 template <class A
, class B
>
150 void copyScriptData(A
* dest
, B
* src
)
152 memcpy(dest
->file
, src
->file
, sizeof(dest
->file
));
153 memcpy(dest
->name
, src
->name
, sizeof(dest
->name
));
154 memcpy(dest
->inputs
, src
->inputs
, sizeof(dest
->inputs
));
157 template <class A
, class B
>
158 void copyRssiAlarmData(A
* dest
, B
* src
)
160 dest
->disabled
= src
->disabled
;
161 dest
->spare
= src
->spare
;
162 dest
->warning
= src
->warning
;
163 dest
->spare2
= src
->spare2
;
164 dest
->critical
= src
->critical
;
167 template <class A
, class B
>
168 void copyFrSkyTelemetryData(A
* dest
, B
* src
)
170 dest
->varioSource
= src
->varioSource
;
171 dest
->varioCenterSilent
= src
->varioCenterSilent
;
172 dest
->varioCenterMax
= src
->varioCenterMax
;
173 dest
->varioCenterMin
= src
->varioCenterMin
;
174 dest
->varioMin
= src
->varioMin
;
175 dest
->varioMax
= src
->varioMax
;
178 template <class A
, class B
>
179 void copyTelemetrySensor(A
* dest
, B
* src
)
182 dest
->instance
= src
->instance
;
183 memcpy(dest
->label
, src
->label
, sizeof(dest
->label
));
184 dest
->type
= src
->type
;
185 dest
->unit
= src
->unit
;
186 dest
->prec
= src
->prec
;
187 dest
->autoOffset
= src
->autoOffset
;
188 dest
->filter
= src
->filter
;
189 dest
->logs
= src
->logs
;
190 dest
->persistent
= src
->persistent
;
191 dest
->onlyPositive
= src
->onlyPositive
;
192 dest
->subId
= src
->subId
;
193 dest
->param
= src
->param
;
196 template <class A
, class B
>
197 void copyModuleData(A
* dest
, B
* src
)
199 dest
->type
= src
->type
;
200 dest
->rfProtocol
= src
->rfProtocol
;
201 dest
->channelsStart
= src
->channelsStart
;
202 dest
->channelsCount
= src
->channelsCount
;
203 dest
->failsafeMode
= src
->failsafeMode
;
204 dest
->subType
= src
->subType
;
205 dest
->invertedSerial
= src
->invertedSerial
;
206 memcpy(dest
->failsafeChannels
, src
->failsafeChannels
, sizeof(dest
->failsafeChannels
));
207 copyModuleData_ppm(&dest
->ppm
, &src
->ppm
);
210 template <class A
, class B
>
211 void copyModelHeader(A
* dest
, B
* src
)
213 memcpy(dest
->name
, src
->name
, sizeof(dest
->name
));
214 memcpy(dest
->modelId
, src
->modelId
, sizeof(dest
->modelId
));
217 template <class A
, class B
>
218 void copyCustomScreenData(A
* dest
, B
* src
)
220 memcpy(dest
->layoutName
, src
->layoutName
, sizeof(dest
->layoutName
));
221 dest
->layoutData
= src
->layoutData
;
224 template <class A
, class B
>
225 void copyModelData(A
* dest
, B
* src
)
227 copyModelHeader(&dest
->header
, &src
->header
);
228 for (int i
=0; i
<3; i
++) {
229 copyTimerData(&dest
->timers
[i
], &src
->timers
[i
]);
231 dest
->telemetryProtocol
= src
->telemetryProtocol
;
232 dest
->thrTrim
= src
->thrTrim
;
233 dest
->noGlobalFunctions
= src
->noGlobalFunctions
;
234 dest
->displayTrims
= src
->displayTrims
;
235 dest
->ignoreSensorIds
= src
->ignoreSensorIds
;
236 dest
->trimInc
= src
->trimInc
;
237 dest
->disableThrottleWarning
= src
->disableThrottleWarning
;
238 dest
->displayChecklist
= src
->displayChecklist
;
239 dest
->extendedLimits
= src
->extendedLimits
;
240 dest
->extendedTrims
= src
->extendedTrims
;
241 dest
->throttleReversed
= src
->throttleReversed
;
242 dest
->beepANACenter
= src
->beepANACenter
;
243 for (int i
=0; i
<64; i
++) {
244 copyMixData(&dest
->mixData
[i
], &src
->mixData
[i
]);
246 for (int i
=0; i
<32; i
++) {
247 copyLimitData(&dest
->limitData
[i
], &src
->limitData
[i
]);
249 for (int i
=0; i
<64; i
++) {
250 copyExpoData(&dest
->expoData
[i
], &src
->expoData
[i
]);
252 for (int i
=0; i
<32; i
++) {
253 copyCurveData(&dest
->curves
[i
], &src
->curves
[i
]);
255 memcpy(dest
->points
, src
->points
, sizeof(dest
->points
));
256 for (int i
=0; i
<64; i
++) {
257 copyLogicalSwitchData(&dest
->logicalSw
[i
], &src
->logicalSw
[i
]);
259 for (int i
=0; i
<64; i
++) {
260 copyCustomFunctionData(&dest
->customFn
[i
], &src
->customFn
[i
]);
262 copySwashRingData(&dest
->swashR
, &src
->swashR
);
263 for (int i
=0; i
<9; i
++) {
264 copyFlightModeData(&dest
->flightModeData
[i
], &src
->flightModeData
[i
]);
266 for (int i
=0; i
<9; i
++) {
267 copyGVarData(&dest
->gvars
[i
], &src
->gvars
[i
]);
269 for (int i
=0; i
<3; i
++) {
270 copyModuleData(&dest
->moduleData
[i
], &src
->moduleData
[i
]);
274 template <class A
, class B
>
275 void copyStepsCalibData(A
* dest
, B
* src
)
277 dest
->count
= src
->count
;
278 memcpy(dest
->steps
, src
->steps
, sizeof(dest
->steps
));
281 template <class A
, class B
>
282 void copyCalibData(A
* dest
, B
* src
)
284 dest
->mid
= src
->mid
;
285 dest
->spanNeg
= src
->spanNeg
;
286 dest
->spanPos
= src
->spanPos
;
289 template <class A
, class B
>
290 void copyTrainerMix(A
* dest
, B
* src
)
292 dest
->srcChn
= src
->srcChn
;
293 dest
->mode
= src
->mode
;
294 dest
->studWeight
= src
->studWeight
;
297 template <class A
, class B
>
298 void copyTrainerData(A
* dest
, B
* src
)
300 memcpy(dest
->calib
, src
->calib
, sizeof(dest
->calib
));
303 template <class A
, class B
>
304 void copyRadioData(A
* dest
, B
* src
)
306 for (int i
=0; i
<13; i
++) {
307 copyCalibData(&dest
->calib
[i
], &src
->calib
[i
]);
309 dest
->stickMode
= src
->stickMode
;
310 dest
->telemetryBaudrate
= src
->telemetryBaudrate
;
311 dest
->splashSpares
= src
->splashSpares
;
312 dest
->switchesDelay
= src
->switchesDelay
;
313 for (int i
=0; i
<64; i
++) {
314 copyCustomFunctionData(&dest
->customFn
[i
], &src
->customFn
[i
]);
316 dest
->slidersConfig
= src
->slidersConfig
;
317 dest
->switchConfig
= src
->switchConfig
;
318 dest
->potsConfig
= src
->potsConfig
;
321 template <class A
, class B
>
322 void copyCustomFunctionData_all(A
* dest
, B
* src
)
324 dest
->val
= src
->val
;
325 dest
->mode
= src
->mode
;
326 dest
->param
= src
->param
;
329 template <class A
, class B
>
330 void copyModuleData_ppm(A
* dest
, B
* src
)
332 dest
->delay
= src
->delay
;
333 dest
->pulsePol
= src
->pulsePol
;
334 dest
->outputType
= src
->outputType
;
335 dest
->frameLength
= src
->frameLength
;