1 //This file was auto-generated by generate_datacopy.py script on Sat May 7 11:05:00 2016. 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
<NUM_STICKS
; 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 copyGVarData(A
* dest
, B
* src
)
107 dest
->min
= src
->min
;
108 dest
->max
= src
->max
;
109 dest
->popup
= src
->popup
;
110 dest
->prec
= src
->prec
;
111 dest
->unit
= src
->unit
;
112 dest
->spare
= src
->spare
;
115 template <class A
, class B
>
116 void copyTimerData(A
* dest
, B
* src
)
118 dest
->mode
= src
->mode
;
119 dest
->start
= src
->start
;
120 dest
->value
= src
->value
;
121 dest
->countdownBeep
= src
->countdownBeep
;
122 dest
->minuteBeep
= src
->minuteBeep
;
123 dest
->persistent
= src
->persistent
;
124 dest
->countdownStart
= src
->countdownStart
;
127 template <class A
, class B
>
128 void copySwashRingData(A
* dest
, B
* src
)
130 dest
->type
= src
->type
;
131 dest
->value
= src
->value
;
132 dest
->collectiveSource
= src
->collectiveSource
;
133 dest
->aileronSource
= src
->aileronSource
;
134 dest
->elevatorSource
= src
->elevatorSource
;
135 dest
->collectiveWeight
= src
->collectiveWeight
;
136 dest
->aileronWeight
= src
->aileronWeight
;
137 dest
->elevatorWeight
= src
->elevatorWeight
;
140 template <class A
, class B
>
141 void copyScriptData(A
* dest
, B
* src
)
143 memcpy(dest
->file
, src
->file
, sizeof(dest
->file
));
144 memcpy(dest
->name
, src
->name
, sizeof(dest
->name
));
145 memcpy(dest
->inputs
, src
->inputs
, sizeof(dest
->inputs
));
148 template <class A
, class B
>
149 void copyFrSkyRSSIAlarm(A
* dest
, B
* src
)
151 dest
->level
= src
->level
;
152 dest
->value
= src
->value
;
155 template <class A
, class B
>
156 void copyFrSkyTelemetryData(A
* dest
, B
* src
)
158 dest
->varioSource
= src
->varioSource
;
159 dest
->varioCenterSilent
= src
->varioCenterSilent
;
160 dest
->varioCenterMax
= src
->varioCenterMax
;
161 dest
->varioCenterMin
= src
->varioCenterMin
;
162 dest
->varioMin
= src
->varioMin
;
163 dest
->varioMax
= src
->varioMax
;
164 for (int i
=0; i
<2; i
++) {
165 copyFrSkyRSSIAlarm(&dest
->rssiAlarms
[i
], &src
->rssiAlarms
[i
]);
169 template <class A
, class B
>
170 void copyTelemetrySensor(A
* dest
, B
* src
)
173 dest
->instance
= src
->instance
;
174 memcpy(dest
->label
, src
->label
, sizeof(dest
->label
));
175 dest
->type
= src
->type
;
176 dest
->unit
= src
->unit
;
177 dest
->prec
= src
->prec
;
178 dest
->autoOffset
= src
->autoOffset
;
179 dest
->filter
= src
->filter
;
180 dest
->logs
= src
->logs
;
181 dest
->persistent
= src
->persistent
;
182 dest
->onlyPositive
= src
->onlyPositive
;
183 dest
->subId
= src
->subId
;
184 copyTelemetrySensor_custom(&dest
->custom
, &src
->custom
);
187 template <class A
, class B
>
188 void copyModuleData(A
* dest
, B
* src
)
190 dest
->type
= src
->type
;
191 dest
->rfProtocol
= src
->rfProtocol
;
192 dest
->channelsStart
= src
->channelsStart
;
193 dest
->channelsCount
= src
->channelsCount
;
194 dest
->failsafeMode
= src
->failsafeMode
;
195 dest
->subType
= src
->subType
;
196 dest
->invertedSerial
= src
->invertedSerial
;
197 memcpy(dest
->failsafeChannels
, src
->failsafeChannels
, sizeof(dest
->failsafeChannels
));
198 copyModuleData_ppm(&dest
->ppm
, &src
->ppm
);
201 template <class A
, class B
>
202 void copyModelHeader(A
* dest
, B
* src
)
204 memcpy(dest
->name
, src
->name
, sizeof(dest
->name
));
205 memcpy(dest
->modelId
, src
->modelId
, sizeof(dest
->modelId
));
208 template <class A
, class B
>
209 void copyZone(A
* dest
, B
* src
)
217 template <class A
, class B
>
218 void copyZoneOption(A
* dest
, B
* src
)
220 dest
->name
= src
->name
;
221 dest
->type
= src
->type
;
222 dest
->deflt
= src
->deflt
;
225 template <class A
, class B
>
226 void copyCustomScreenData(A
* dest
, B
* src
)
228 memcpy(dest
->layoutName
, src
->layoutName
, sizeof(dest
->layoutName
));
229 dest
->layoutData
= src
->layoutData
;
232 template <class A
, class B
>
233 void copyModelData(A
* dest
, B
* src
)
235 copyModelHeader(&dest
->header
, &src
->header
);
236 for (int i
=0; i
<3; i
++) {
237 copyTimerData(&dest
->timers
[i
], &src
->timers
[i
]);
239 dest
->telemetryProtocol
= src
->telemetryProtocol
;
240 dest
->thrTrim
= src
->thrTrim
;
241 dest
->noGlobalFunctions
= src
->noGlobalFunctions
;
242 dest
->displayTrims
= src
->displayTrims
;
243 dest
->ignoreSensorIds
= src
->ignoreSensorIds
;
244 dest
->trimInc
= src
->trimInc
;
245 dest
->disableThrottleWarning
= src
->disableThrottleWarning
;
246 dest
->displayChecklist
= src
->displayChecklist
;
247 dest
->extendedLimits
= src
->extendedLimits
;
248 dest
->extendedTrims
= src
->extendedTrims
;
249 dest
->throttleReversed
= src
->throttleReversed
;
250 dest
->beepANACenter
= src
->beepANACenter
;
251 for (int i
=0; i
<64; i
++) {
252 copyMixData(&dest
->mixData
[i
], &src
->mixData
[i
]);
254 for (int i
=0; i
<32; i
++) {
255 copyLimitData(&dest
->limitData
[i
], &src
->limitData
[i
]);
257 for (int i
=0; i
<64; i
++) {
258 copyExpoData(&dest
->expoData
[i
], &src
->expoData
[i
]);
260 memcpy(dest
->curves
, src
->curves
, sizeof(dest
->curves
));
261 memcpy(dest
->points
, src
->points
, sizeof(dest
->points
));
262 for (int i
=0; i
<64; i
++) {
263 copyLogicalSwitchData(&dest
->logicalSw
[i
], &src
->logicalSw
[i
]);
265 for (int i
=0; i
<64; i
++) {
266 copyCustomFunctionData(&dest
->customFn
[i
], &src
->customFn
[i
]);
268 copySwashRingData(&dest
->swashR
, &src
->swashR
);
269 for (int i
=0; i
<9; i
++) {
270 copyFlightModeData(&dest
->flightModeData
[i
], &src
->flightModeData
[i
]);
272 for (int i
=0; i
<9; i
++) {
273 copyGVarData(&dest
->gvars
[i
], &src
->gvars
[i
]);
275 for (int i
=0; i
<3; i
++) {
276 copyModuleData(&dest
->moduleData
[i
], &src
->moduleData
[i
]);
280 template <class A
, class B
>
281 void copyStepsCalibData(A
* dest
, B
* src
)
283 dest
->count
= src
->count
;
284 memcpy(dest
->steps
, src
->steps
, sizeof(dest
->steps
));
287 template <class A
, class B
>
288 void copyCalibData(A
* dest
, B
* src
)
290 dest
->mid
= src
->mid
;
291 dest
->spanNeg
= src
->spanNeg
;
292 dest
->spanPos
= src
->spanPos
;
295 template <class A
, class B
>
296 void copyTrainerMix(A
* dest
, B
* src
)
298 dest
->srcChn
= src
->srcChn
;
299 dest
->mode
= src
->mode
;
300 dest
->studWeight
= src
->studWeight
;
303 template <class A
, class B
>
304 void copyTrainerData(A
* dest
, B
* src
)
306 memcpy(dest
->calib
, src
->calib
, sizeof(dest
->calib
));
309 template <class A
, class B
>
310 void copyRadioData(A
* dest
, B
* src
)
312 for (int i
=0; i
<11; i
++) {
313 copyCalibData(&dest
->calib
[i
], &src
->calib
[i
]);
315 dest
->stickMode
= src
->stickMode
;
316 dest
->switchesDelay
= src
->switchesDelay
;
317 for (int i
=0; i
<64; i
++) {
318 copyCustomFunctionData(&dest
->customFn
[i
], &src
->customFn
[i
]);
320 dest
->slidersConfig
= src
->slidersConfig
;
321 dest
->switchConfig
= src
->switchConfig
;
322 dest
->potsConfig
= src
->potsConfig
;
325 template <class A
, class B
>
326 void copyCustomFunctionData_all(A
* dest
, B
* src
)
328 dest
->val
= src
->val
;
329 dest
->mode
= src
->mode
;
330 dest
->param
= src
->param
;
333 template <class A
, class B
>
334 void copyTelemetrySensor_custom(A
* dest
, B
* src
)
336 dest
->ratio
= src
->ratio
;
337 dest
->offset
= src
->offset
;
340 template <class A
, class B
>
341 void copyModuleData_ppm(A
* dest
, B
* src
)
343 dest
->delay
= src
->delay
;
344 dest
->pulsePol
= src
->pulsePol
;
345 dest
->outputType
= src
->outputType
;
346 dest
->frameLength
= src
->frameLength
;