libdrmconf 0.14.1
A library to program DMR radios.
Loading...
Searching...
No Matches
d578uv_codeplug.hh
1#ifndef D578UV_CODEPLUG_HH
2#define D578UV_CODEPLUG_HH
3
4#include <QDateTime>
5
6#include "d878uv_codeplug.hh"
7
8class Channel;
9class DMRContact;
10class Zone;
11class RXGroupList;
12class ScanList;
13class DMRAPRSSystem;
14
15
22{
23 Q_OBJECT
24
25protected:
27 struct KeyFunction {
28 public:
33
34 protected:
36 typedef enum {
37 Off = 0x00, Voltage = 0x01, Power = 0x02, Repeater = 0x03, Reverse = 0x04,
38 Encryption = 0x05, Call = 0x06, ToggleVFO = 0x07, Scan = 0x08, WFM = 0x09, Alarm = 0x0a,
39 RecordSwitch = 0x0b, Record = 0x0c, SMS = 0x0d, Dial = 0x0e, GPSInformation=0x0f, Monitor = 0x10,
40 ToggleMainChannel = 0x11, HotKey1 = 0x12, HotKey2 = 0x13, HotKey3 = 0x14, HotKey4 = 0x15,
41 HotKey5 = 0x16, HotKey6 = 0x17, WorkAlone = 0x18, SkipChannel = 0x19, DMRMonitor = 0x1a,
42 SubChannel = 0x1b, PriorityZone = 0x1c, VFOScan = 0x1d, MICSoundQuality = 0x1e,
43 LastCallReply = 0x1f, ChannelType = 0x20, Ranging=0x21, Roaming = 0x22, ChannelRanging = 0x23,
44 MaxVolume = 0x24, Slot = 0x25, APRSTypeSwitch=0x26, Zone = 0x27, MuteA = 0x28, MuteB = 0x29,
45 RoamingSet = 0x2a, APRSSet = 0x2b, ZoneUp = 0x2c, ZoneDown = 0x2d, Exit = 0x2e, Menu = 0x2f,
46 XBandRepeater = 0x30, Speaker = 0x31, ChannelName = 0x32, Bluetooth = 0x33,
47 GPS = 0x34, CDTScan = 0x35, TBSTSend = 0x36, APRSSend = 0x37, APRSInfo = 0x38,
48 GPSRoaming = 0x39, Squelch=0x3a, NoiseReductionTX=0x3b
50 };
51
52
53public:
57 {
58 public:
61 Off = 0, Hz3300 = 1, Hz3200 = 2, Hz3100 = 3, Hz3000 = 4, Hz2900 = 5, Hz2800 = 6, Hz2700 = 7,
62 Hz2600 = 8, Hz2500 = 9, Hz4095 = 10, Hz3458 = 11, Custom = 12
63 };
64
66 enum class InterruptPriority {
67 None = 0, Low = 1, High = 2
68 };
69
70 protected:
72 ChannelElement(uint8_t *ptr, unsigned size);
73
74 public:
76 ChannelElement(uint8_t *ptr);
77
79 virtual bool frequenciesSwapped() const;
81 virtual void enableSwapFrequencies(bool enable);
82
84 virtual bool bluetoothEnabled() const;
86 virtual void enableBluetooth(bool enable);
87
88 bool roamingEnabled() const override;
89 void enableRoaming(bool enable) override;
90
95
97 virtual bool noiseReductionEnabled() const;
99 virtual void enableNoiseReduction(bool enable);
100
101 bool multipleKeyEncryption() const override;
102 void enableMultipleKeyEncryption(bool enable) override;
103
104 bool randomKey() const override;
105 void enableRandomKey(bool enable) override;
106
107 bool sms() const override;
108 void enableSMS(bool enable) override;
109
110 bool dataACK() const override;
111 void enableDataACK(bool enable) override;
112
113 bool autoScan() const override;
114 void enableAutoScan(bool enable) override;
115
116 bool sendTalkerAlias() const override;
117 void enableSendTalkerAlias(bool enable) override;
118
120 void setEncryptionType(AdvancedEncryptionType type) override;
121
123 virtual bool analogScamblerEnabled() const;
125 virtual Frequency analogScramblerFrequency() const;
127 virtual void setAnalogScamberFrequency(Frequency f);
129 virtual void clearAnalogScambler();
130
131 unsigned int fmAPRSFrequencyIndex() const override;
132 void setFMAPRSFrequencyIndex(unsigned int idx) override;
133
134 bool hasARC4EncryptionKeyIndex() const override;
135 unsigned int arc4EncryptionKeyIndex() const override;
136 void setARC4EncryptionKeyIndex(unsigned int index) override;
137 void clearARC4EncryptionKeyIndex() override;
138
140 bool ctcssPhaseReversal() const override;
142 void enableCTCSSPhaseReversal(bool enable) override;
143
144 Channel *toChannelObj(Context &ctx) const override;
145 bool fromChannelObj(const Channel *ch, Context &ctx) override;
146
147 protected:
150 {
152 static constexpr Bit swapRxTx() { return {0x0009, 4}; }
153 static constexpr Bit bluetooth() { return {0x0034, 2}; }
154 static constexpr Bit noiseReduction() { return {0x0034, 3}; }
155 static constexpr Bit interruptPriority() { return {0x0034, 4}; }
156 static constexpr Bit roaming() { return {0x0034, 6}; }
157 static constexpr unsigned int fmScrambler() { return 0x003a; }
158 static constexpr unsigned int customScrambler() { return 0x003b; }
159 static constexpr Bit multipleKeyEncryption() { return {0x003d, 0}; }
160 static constexpr Bit randomKey() { return {0x003d, 1}; }
161 static constexpr Bit sms() { return {0x003d, 2}; }
162 static constexpr Bit dataACK() { return {0x003d, 3}; }
163 static constexpr Bit autoScan() { return {0x003d, 4}; }
164 static constexpr Bit talkerAlias() { return {0x003d, 5}; }
165 static constexpr Bit advancedEncryptionType() { return {0x003d, 6}; }
166 static constexpr unsigned int fmAPRSFrequencyIndex() { return 0x003e; }
167 static constexpr unsigned int arc4KeyIndex() { return 0x003f; }
168 // Deleted
169 static constexpr Bit muteFMAPRS() { return {0x0000, 0}; }
170 static constexpr Bit ctcssPhaseReversal() { return {0x0000, 0}; }
172 };
173 };
174
175
179 {
180 protected:
182 ChannelExtensionElement(uint8_t *ptr, unsigned size);
183
184 public:
186 ChannelExtensionElement(uint8_t *ptr);
187
189 static constexpr unsigned int size() { return 0x0040; }
190
191 void clear() override;
192
194 virtual unsigned int fiveToneIdIndexBOT() const;
196 virtual void setFiveToneIdIndexBOT(unsigned int idx);
197
199 virtual unsigned int fiveToneIdIndexEOT() const;
201 virtual void setFiveToneIdIndexEOT(unsigned int idx);
202
203 protected:
205 struct Offset: public Element::Offset {
207 static constexpr unsigned int fiveToneIdIndexBOT() { return 0x0000; }
208 static constexpr unsigned int fiveToneIdIndexEOT() { return 0x0001; }
210 };
211 };
212
213
217 {
218 protected:
220 struct TimeZone {
221 public:
223 static uint8_t encode(const QTimeZone& zone);
225 static QTimeZone decode(uint8_t code);
226
227 protected:
229 static QVector<QTimeZone> _timeZones;
230 };
231
233 enum class TBSTFrequency {
234 Hz1000 = 0, Hz1450 = 1, Hz1750 = 2, Hz2100 = 3
235 };
236
238 enum class STEFrequency {
239 Off = 0, Hz55_2 = 1, Hz259_2 = 2
240 };
241
243 enum class VFOStepSize {
244 Hz2500 = 0, Hz5000 = 1, Hz6250 = 2, Hz8330 = 3, kHz10 = 4, Hz12500 = 5, kHz20 = 6,
245 kHz25 = 7, kHz30 = 8, kHz50=9
246 };
247
249 enum class SMSFormat {
250 Motorola = 0, Hytera = 1, DMR = 2
251 };
252
253
254 protected:
256 GeneralSettingsElement(uint8_t *ptr, unsigned size);
257
258 public:
260 GeneralSettingsElement(uint8_t *ptr);
261
263 static constexpr unsigned int size() { return 0x00f0; }
264
265 bool keyToneEnabled() const override;
266 void enableKeyTone(bool enable) override;
267
269 virtual Interval transmitTimeout() const;
271 virtual void setTransmitTimeout(const Interval &tot);
272
274 virtual AnytoneDisplaySettingsExtension::Language language() const;
276 virtual void setLanguage(AnytoneDisplaySettingsExtension::Language lang);
277
279 virtual Frequency vfoStepSize() const;
281 virtual void setVFOStepSize(const Frequency &f);
282
285
286 Level dmrMicGain() const override;
287 void setDMRMicGain(Level gain) override;
288
289 bool vfoModeA() const override;
290 void enableVFOModeA(bool enable) override;
291 bool vfoModeB() const override;
292 void enableVFOModeB(bool enable) override;
293
300 virtual double steFrequency() const;
303 virtual void setSTEFrequency(double freq);
304
306 virtual Interval groupCallHangTime() const;
308 virtual void setGroupCallHangTime(Interval sec);
310 virtual Interval privateCallHangTime() const;
312 virtual void setPrivateCallHangTime(Interval sec);
313
315 virtual Interval wakeHeadPeriod() const;
317 virtual void setWakeHeadPeriod(Interval ms);
318
320 virtual unsigned wfmChannelIndex() const;
322 virtual void setWFMChannelIndex(unsigned idx);
324 virtual bool wfmVFOEnabled() const;
326 virtual void enableWFMVFO(bool enable);
327
328 unsigned memoryZoneA() const override;
329 void setMemoryZoneA(unsigned zone) override;
330 unsigned memoryZoneB() const override;
331 void setMemoryZoneB(unsigned zone) override;
332
334 virtual bool wfmEnabled() const;
336 virtual void enableWFM(bool enable);
337
338 bool recording() const override;
339 void enableRecording(bool enable) override;
340
341 unsigned brightness() const override;
342 void setBrightness(unsigned level) override;
343
344 bool gps() const override;
345 void enableGPS(bool enable) override;
346
347 bool smsAlert() const override;
348 void enableSMSAlert(bool enable) override;
349
351 virtual bool wfmMonitor() const;
353 virtual void enableWFMMonitor(bool enable);
354
355 bool activeChannelB() const override;
356 void enableActiveChannelB(bool enable) override;
357
358 bool subChannel() const override;
359 void enableSubChannel(bool enable) override;
360
362 virtual Frequency tbstFrequency() const;
364 virtual void setTBSTFrequency(Frequency freq);
365
366 bool callAlert() const override;
367 void enableCallAlert(bool enable) override;
368
369 QTimeZone gpsTimeZone() const override;
370 void setGPSTimeZone(const QTimeZone &zone) override;
371
372 bool dmrTalkPermit() const override;
373 void enableDMRTalkPermit(bool enable) override;
374 bool fmTalkPermit() const override;
375 void enableFMTalkPermit(bool enable) override;
376 bool dmrResetTone() const override;
377 void enableDMRResetTone(bool enable) override;
378 bool idleChannelTone() const override;
379 void enableIdleChannelTone(bool enable) override;
380
381 Interval menuExitTime() const override;
382 void setMenuExitTime(Interval intv) override;
383
385 virtual bool filterOwnID() const;
387 virtual void enableFilterOwnID(bool enable);
388
389 bool startupTone() const override;
390 void enableStartupTone(bool enable) override;
391
392 bool callEndPrompt() const override;
393 void enableCallEndPrompt(bool enable) override;
394
395 unsigned maxSpeakerVolume() const override;
396 void setMaxSpeakerVolume(unsigned level) override;
397
399 virtual bool remoteStunKill() const;
401 virtual void enableRemoteStunKill(bool enable);
402
404 virtual bool remoteMonitor() const;
406 virtual void enableRemoteMonitor(bool enable);
407
408 bool getGPSPosition() const override;
409 void enableGetGPSPosition(bool enable) override;
410
411 Interval longPressDuration() const override;
412 void setLongPressDuration(Interval ms) override;
413
414 bool volumeChangePrompt() const override;
415 void enableVolumeChangePrompt(bool enable) override;
416
419
421 virtual AnytoneDMRSettingsExtension::SlotMatch monitorSlotMatch() const;
423 virtual void setMonitorSlotMatch(AnytoneDMRSettingsExtension::SlotMatch match);
425 virtual bool monitorColorCodeMatch() const;
427 virtual void enableMonitorColorCodeMatch(bool enable);
429 virtual bool monitorIDMatch() const;
431 virtual void enableMonitorIDMatch(bool enable);
433 virtual bool monitorTimeSlotHold() const;
435 virtual void enableMonitorTimeSlotHold(bool enable);
436
437 AnytoneDisplaySettingsExtension::LastCallerDisplayMode lastCallerDisplayMode() const override;
438 void setLastCallerDisplayMode(AnytoneDisplaySettingsExtension::LastCallerDisplayMode mode) override;
439
441 virtual unsigned fmCallHold() const;
443 virtual void setFMCallHold(unsigned sec);
444
445 bool displayClock() const override;
446 void enableDisplayClock(bool enable) override;
447
449 virtual bool gpsMessageEnabled() const;
451 virtual void enableGPSMessage(bool enable);
452
453 bool enhanceAudio() const override;
454 void enableEnhancedAudio(bool enable) override;
455
456 Frequency minVFOScanFrequencyUHF() const override;
457 void setMinVFOScanFrequencyUHF(Frequency hz) override;
458 Frequency maxVFOScanFrequencyUHF() const override;
459 void setMaxVFOScanFrequencyUHF(Frequency hz) override;
460 Frequency minVFOScanFrequencyVHF() const override;
461 void setMinVFOScanFrequencyVHF(Frequency hz) override;
462 Frequency maxVFOScanFrequencyVHF() const override;
463 void setMaxVFOScanFrequencyVHF(Frequency hz) override;
464
465 bool hasAutoRepeaterOffsetFrequencyIndexUHF() const override;
466 unsigned autoRepeaterOffsetFrequencyIndexUHF() const override;
467 void setAutoRepeaterOffsetFrequenyIndexUHF(unsigned idx) override;
469 bool hasAutoRepeaterOffsetFrequencyIndexVHF() const override;
470 unsigned autoRepeaterOffsetFrequencyIndexVHF() const override;
471 void setAutoRepeaterOffsetFrequenyIndexVHF(unsigned idx) override;
473 Frequency autoRepeaterMinFrequencyVHF() const override;
475 Frequency autoRepeaterMaxFrequencyVHF() const override;
477 Frequency autoRepeaterMinFrequencyUHF() const override;
479 Frequency autoRepeaterMaxFrequencyUHF() const override;
481
482 void callToneMelody(Melody &melody) const override;
483 void setCallToneMelody(const Melody &melody) override;
484 void idleToneMelody(Melody &melody) const override;
485 void setIdleToneMelody(const Melody &melody) override;
486 void resetToneMelody(Melody &melody) const override;
487 void setResetToneMelody(const Melody &melody) override;
488
490 virtual unsigned priorityZoneAIndex() const;
492 virtual void setPriorityZoneAIndex(unsigned idx);
494 virtual unsigned priorityZoneBIndex() const;
496 virtual void setPriorityZoneBIndex(unsigned idx);
497
498 bool displayCall() const override;
499 void enableDisplayCall(bool enable) override;
500
502 virtual bool bluetooth() const;
504 virtual void enableBluetooth(bool enable);
505
506
507 virtual bool btAndInternalMic() const;
509 virtual void enableBTAndInternalMic(bool enable);
510
512 virtual bool btAndInternalSpeaker() const;
514 virtual void enableBTAndInternalSpeaker(bool enable);
515
517 virtual bool pluginRecTone() const;
519 virtual void enablePluginRecTone(bool enable);
520
522 virtual Interval gpsUpdatePeriod() const;
524 virtual void setGPSUpdatePeriod(Interval sec);
525
527 virtual unsigned int btMicGain() const;
529 virtual void setBTMicGain(unsigned int gain);
531 virtual unsigned int btSpeakerGain() const;
533 virtual void setBTSpeakerGain(unsigned int gain);
534
536 virtual bool displayChannelNumber() const;
538 virtual void enableDisplayChannelNumber(bool enable);
539
540 bool showCurrentContact() const override;
541 void enableShowCurrentContact(bool enable) override;
542
544 virtual Interval autoRoamPeriod() const;
546 virtual void setAutoRoamPeriod(Interval min);
547
548 AnytoneDisplaySettingsExtension::Color callDisplayColor() const override;
549 void setCallDisplayColor(AnytoneDisplaySettingsExtension::Color color) override;
550
551 bool gpsUnitsImperial() const override;
552 void enableGPSUnitsImperial(bool enable) override;
553
554 bool knobLock() const override;
555 void enableKnobLock(bool enable) override;
556 bool keypadLock() const override;
557 void enableKeypadLock(bool enable) override;
558 bool sidekeysLock() const override;
559 void enableSidekeysLock(bool enable) override;
560 bool keyLockForced() const override;
561 void enableKeyLockForced(bool enable) override;
562
564 virtual Interval autoRoamDelay() const;
566 virtual void setAutoRoamDelay(Interval sec);
567
569 virtual AnytoneDisplaySettingsExtension::Color standbyTextColor() const;
571 virtual void setStandbyTextColor(AnytoneDisplaySettingsExtension::Color color);
573 virtual AnytoneDisplaySettingsExtension::Color standbyBackgroundColor() const;
575 virtual void setStandbyBackgroundColor(AnytoneDisplaySettingsExtension::Color color);
576
577 bool showLastHeard() const override;
578 void enableShowLastHeard(bool enable) override;
579
581 virtual SMSExtension::Format smsFormat() const;
583 virtual void setSMSFormat(SMSExtension::Format fmt);
584
587
589 virtual bool fmSendIDAndContact() const;
591 virtual void enableFMSendIDAndContact(bool enable);
592
593 bool defaultChannel() const override;
594 void enableDefaultChannel(bool enable) override;
595 unsigned defaultZoneIndexA() const override;
596 void setDefaultZoneIndexA(unsigned idx) override;
597 unsigned defaultZoneIndexB() const override;
598 void setDefaultZoneIndexB(unsigned idx) override;
599 bool defaultChannelAIsVFO() const override;
600 unsigned defaultChannelAIndex() const override;
601 void setDefaultChannelAIndex(unsigned idx) override;
602 void setDefaultChannelAToVFO() override;
603 bool defaultChannelBIsVFO() const override;
604 unsigned defaultChannelBIndex() const override;
605 void setDefaultChannelBIndex(unsigned idx) override;
606 void setDefaultChannelBToVFO() override;
607
609 virtual unsigned defaultRoamingZoneIndex() const;
611 virtual void setDefaultRoamingZoneIndex(unsigned idx);
612
614 virtual bool repeaterRangeCheck() const;
616 virtual void enableRepeaterRangeCheck(bool enable);
618 virtual Interval repeaterRangeCheckInterval() const;
620 virtual void setRepeaterRangeCheckInterval(Interval sec);
622 virtual unsigned repeaterRangeCheckCount() const;
624 virtual void setRepeaterRangeCheckCount(unsigned n);
629
631 virtual bool separateDisplay() const;
633 virtual void enableSeparateDisplay(bool enable);
634
635 bool keepLastCaller() const override;
636 void enableKeepLastCaller(bool enable) override;
637
639 virtual AnytoneDisplaySettingsExtension::Color channelNameColor() const;
641 virtual void setChannelNameColor(AnytoneDisplaySettingsExtension::Color color);
642
644 virtual bool repeaterCheckNotification() const;
646 virtual void enableRepeaterCheckNotification(bool enable);
647
649 virtual bool roaming() const;
651 virtual void enableRoaming(bool enable);
652
683
714
716 virtual unsigned repeaterCheckNumNotifications() const;
718 virtual void setRepeaterCheckNumNotifications(unsigned num);
719
721 virtual Interval txBacklightDuration() const;
723 virtual void setTXBacklightDuration(Interval sec);
724
726 virtual bool btHoldTimeEnabled() const;
728 virtual bool btHoldTimeInfinite() const;
730 virtual Interval btHoldTime() const;
732 virtual void setBTHoldTime(Interval interval);
734 virtual void setBTHoldTimeInfinite();
736 virtual void disableBTHoldTime();
737
739 virtual Interval btRXDelay() const;
741 virtual void setBTRXDelay(Interval delay);
742
743 bool fromConfig(const Flags &flags, Context &ctx) override;
744 bool updateConfig(Context &ctx) override;
745 bool linkSettings(RadioSettings *settings, Context &ctx, const ErrorStack &err) override;
746
747 public:
752
753 protected:
757 static constexpr unsigned int enableKeyTone() { return 0x0000; }
758 static constexpr unsigned int transmitTimeout() { return 0x0004; }
759 static constexpr unsigned int language() { return 0x0005; }
760 static constexpr unsigned int vfoStepSize() { return 0x0008; }
761 static constexpr unsigned int vfoScanType() { return 0x000b; }
762 static constexpr unsigned int dmrMicGain() { return 0x000c; }
763 static constexpr unsigned int vfoModeA() { return 0x000d; }
764 static constexpr unsigned int vfoModeB() { return 0x000e; }
765 static constexpr unsigned int steType() { return 0x000f; }
766
767 static constexpr unsigned int steFrequency() { return 0x0010; }
768 static constexpr unsigned int groupCallHangTime() { return 0x0011; }
769 static constexpr unsigned int privateCallHangTime() { return 0x0012; }
770 static constexpr unsigned int preWaveDelay() { return 0x0013; }
771 static constexpr unsigned int wakeHeadPeriod() { return 0x0014; }
772 static constexpr unsigned int wfmChannelIndex() { return 0x0015; }
773 static constexpr unsigned int wfmVFOEnabled() { return 0x0016; }
774 static constexpr unsigned int memZoneA() { return 0x0017; }
775 static constexpr unsigned int memZoneB() { return 0x0018; }
776 static constexpr unsigned int wfmEnable() { return 0x0019; }
777 static constexpr unsigned int enableRecoding() { return 0x001a; }
778 static constexpr unsigned int displayBrightness() { return 0x001d; }
779 static constexpr unsigned int gpsEnable() { return 0x001f; }
780
781 static constexpr unsigned int smsAlert() { return 0x0020; }
782 static constexpr unsigned int wfmMonitor() { return 0x0022; }
783 static constexpr unsigned int activeChannelB() { return 0x0023; }
784 static constexpr unsigned int subChannel() { return 0x0024; }
785 static constexpr unsigned int tbstFrequency() { return 0x0025; }
786 static constexpr unsigned int callAlert() { return 0x0026; }
787 static constexpr unsigned int gpsTimeZone() { return 0x0027; }
788 static constexpr unsigned int talkPermit() { return 0x0028; }
789 static constexpr unsigned int dmrResetTone() { return 0x0029; }
790 static constexpr unsigned int idleChannelTone() { return 0x002a; }
791 static constexpr unsigned int menuExitTime() { return 0x002b; }
792 static constexpr unsigned int filterOwnID() { return 0x002c; }
793 static constexpr unsigned int startupTone() { return 0x002d; }
794 static constexpr unsigned int callEndPrompt() { return 0x002e; }
795 static constexpr unsigned int maxSpeakerVolume() { return 0x002f; }
796
797 static constexpr unsigned int remoteStunKill() { return 0x0030; }
798 static constexpr unsigned int remoteMonitor() { return 0x0031; }
799 static constexpr unsigned int getGPSPosition() { return 0x0032; }
800 static constexpr unsigned int longPressDuration() { return 0x0033; }
801 static constexpr unsigned int volumeChangePrompt() { return 0x0034; }
802 static constexpr unsigned int autoRepeaterDirA() { return 0x0035; }
803 static constexpr unsigned int monSlotMatch() { return 0x0036; }
804 static constexpr unsigned int monColorCodeMatch() { return 0x0037; }
805 static constexpr unsigned int monIDMatch() { return 0x0038; }
806 static constexpr unsigned int monTimeSlotHold() { return 0x0039; }
807 static constexpr unsigned int lastCallerDisplay() { return 0x003a; }
808 static constexpr unsigned int fmCallHold() { return 0x003c; }
809 static constexpr unsigned int showClock() { return 0x003d; }
810 static constexpr unsigned int enableGPSMessage() { return 0x003e; }
811 static constexpr unsigned int enhanceAudio() { return 0x003f; }
812
813 static constexpr unsigned int minVFOScanUHF() { return 0x0040; }
814 static constexpr unsigned int maxVFOScanUHF() { return 0x0044; }
815 static constexpr unsigned int minVFOScanVHF() { return 0x0048; }
816 static constexpr unsigned int maxVFOScanVHF() { return 0x004c; }
817
818 static constexpr unsigned int autoRepMinVHF() { return 0x0050; }
819 static constexpr unsigned int autoRepMaxVHF() { return 0x0054; }
820 static constexpr unsigned int autoRepMinUHF() { return 0x0058; }
821 static constexpr unsigned int autoRepMaxUHF() { return 0x005c; }
822
823 static constexpr unsigned int callToneTones() { return 0x0060; }
824 static constexpr unsigned int callToneDurations() { return 0x006a; }
825 static constexpr unsigned int idleToneTones() { return 0x0074; }
826 static constexpr unsigned int idleToneDurations() { return 0x007e; }
827 static constexpr unsigned int resetToneTones() { return 0x0088; }
828 static constexpr unsigned int resetToneDurations() { return 0x0092; }
829
830 static constexpr unsigned int autoRepOffsetUHF() { return 0x009c; }
831 static constexpr unsigned int autoRepOffsetVHF() { return 0x009d; }
832 static constexpr unsigned int priorityZoneA() { return 0x009f; }
833
834 static constexpr unsigned int priorityZoneB() { return 0x00a0; }
835 static constexpr unsigned int callDisplayMode() { return 0x00a2; }
836 static constexpr unsigned int bluetooth() { return 0x00a4; }
837 static constexpr unsigned int btAndInternalMic() { return 0x00a5; }
838 static constexpr unsigned int btAndInternalSpeaker(){ return 0x00a6; }
839 static constexpr unsigned int pluginRecTone() { return 0x00a7; }
840 static constexpr unsigned int gpsRangingInterval() { return 0x00a8; }
841 static constexpr unsigned int btMicGain() { return 0x00a9; }
842 static constexpr unsigned int btSpeakerGain() { return 0x00aa; }
843 static constexpr unsigned int showChannelNumber() { return 0x00ab; }
844 static constexpr unsigned int showCurrentContact() { return 0x00ac; }
845 static constexpr unsigned int autoRoamPeriod() { return 0x00ad; }
846 static constexpr unsigned int callColor() { return 0x00ae; }
847 static constexpr unsigned int gpsUnits() { return 0x00af; }
848
849 static constexpr Bit knobLock() { return {0x00b0, 0}; }
850 static constexpr Bit keypadLock() { return {0x00b0, 1}; }
851 static constexpr Bit sideKeyLock() { return {0x00b0, 3}; }
852 static constexpr Bit forceKeyLock() { return {0x00b0, 4}; }
853 static constexpr unsigned int autoRoamDelay() { return 0x00b1; }
854 static constexpr unsigned int standbyTextColor() { return 0x00b2; }
855 static constexpr unsigned int standbyBackground() { return 0x00b3; }
856 static constexpr unsigned int showLastHeard() { return 0x00b4; }
857 static constexpr unsigned int smsFormat() { return 0x00b5; }
858 static constexpr unsigned int autoRepeaterDirB() { return 0x00b6; }
859 static constexpr unsigned int fmSendIDAndContact() { return 0x00b7; }
860 static constexpr unsigned int defaultChannels() { return 0x00b8; }
861 static constexpr unsigned int defaultZoneA() { return 0x00b9; }
862 static constexpr unsigned int defaultZoneB() { return 0x00ba; }
863 static constexpr unsigned int defaultChannelA() { return 0x00bb; }
864 static constexpr unsigned int defaultChannelB() { return 0x00bc; }
865 static constexpr unsigned int defaultRoamingZone() { return 0x00bd; }
866 static constexpr unsigned int repRangeCheck() { return 0x00be; }
867 static constexpr unsigned int rangeCheckInterval() { return 0x00bf; }
868
869 static constexpr unsigned int rangeCheckCount() { return 0x00c0; }
870 static constexpr unsigned int roamStartCondition() { return 0x00c1; }
871 static constexpr unsigned int displaySeparator() { return 0x00c3; }
872 static constexpr unsigned int keepLastCaller() { return 0x00c4; }
873 static constexpr unsigned int channelNameColor() { return 0x00c5; }
874 static constexpr unsigned int repCheckNotify() { return 0x00c6; }
875 static constexpr unsigned int txBacklightDuration() { return 0x00c7; }
876 static constexpr unsigned int roaming() { return 0x00c8; }
877 static constexpr unsigned int progFuncKey1Short() { return 0x00c9; }
878 static constexpr unsigned int progFuncKey2Short() { return 0x00ca; }
879 static constexpr unsigned int progFuncKey3Short() { return 0x00cb; }
880 static constexpr unsigned int progFuncKey4Short() { return 0x00cc; }
881 static constexpr unsigned int progFuncKey5Short() { return 0x00cd; }
882 static constexpr unsigned int progFuncKey6Short() { return 0x00ce; }
883 static constexpr unsigned int progFuncKeyAShort() { return 0x00cf; }
884
885 static constexpr unsigned int progFuncKeyBShort() { return 0x00d0; }
886 static constexpr unsigned int progFuncKeyCShort() { return 0x00d1; }
887 static constexpr unsigned int progFuncKeyDShort() { return 0x00d2; }
888 static constexpr unsigned int progFuncKey1Long() { return 0x00d3; }
889 static constexpr unsigned int progFuncKey2Long() { return 0x00d4; }
890 static constexpr unsigned int progFuncKey3Long() { return 0x00d5; }
891 static constexpr unsigned int progFuncKey4Long() { return 0x00d6; }
892 static constexpr unsigned int progFuncKey5Long() { return 0x00d7; }
893 static constexpr unsigned int progFuncKey6Long() { return 0x00d8; }
894 static constexpr unsigned int progFuncKeyALong() { return 0x00d9; }
895 static constexpr unsigned int progFuncKeyBLong() { return 0x00da; }
896 static constexpr unsigned int progFuncKeyCLong() { return 0x00db; }
897 static constexpr unsigned int progFuncKeyDLong() { return 0x00dc; }
898 static constexpr unsigned int repCheckNumNotify() { return 0x00de; }
899
900 static constexpr unsigned int btHoldTime() { return 0x00e1; }
901 static constexpr unsigned int btRXDelay() { return 0x00e2; }
903 };
904 };
905
906
909 {
910 protected:
911 /* Encoding of possible speakers. */
912 enum class Speaker {
913 Microphone=0, Radio=1, Both=2
914 };
915
917 enum class SpeakerSource {
918 MainChannel = 0, SubChannel = 1
919 };
920
922 enum class GPSMode {
923 GPS = 0, Beidou=1, GPS_Beidou=2
924 };
925
927 enum class FanControl {
928 PTT=0, Temperature=1, Both=2
929 };
930
932 enum class MicType {
933 AnyTone = 0, Generic = 1
934 };
935
937 enum class UpDownKeyFunction {
938 Channel = 0, Volume = 1
939 };
940
943 None = 0, VFO_A = 1, VFO_B = 2
944 };
945
948 Any = 0, RX1_TX2 = 1, RX2_TX1 = 2
949 };
950
953 ISO8 = 0, ISO7 = 1, Unicode = 2,
954 };
955
956 protected:
958 ExtendedSettingsElement(uint8_t *ptr, unsigned size);
959
960 public:
962 explicit ExtendedSettingsElement(uint8_t *ptr);
963
965 static constexpr unsigned int size() { return 0x00000200; }
966
968 void clear();
969
971 virtual AnytoneDMRSettingsExtension::TalkerAliasSource talkerAliasSource() const;
973 virtual void setTalkerAliasSource(AnytoneDMRSettingsExtension::TalkerAliasSource mode);
974
979
981 virtual bool weatherAlarmEnabled() const;
983 virtual void enableWeatherAlarm(bool enable);
984
986 virtual bool repeaterEnabled() const;
988 virtual void enableRepeater(bool enable);
989
994
999
1001 virtual GNSSSettings::Systems gnss() const;
1003 virtual void setGNSS(GNSSSettings::Systems mode);
1004
1006 virtual bool bluetoothPTTLatch() const;
1008 virtual void enableBluetoothPTTLatch(bool enable);
1009
1011 virtual bool infiniteBluetoothPTTSleepDelay() const;
1013 virtual Interval bluetoothPTTSleepDelay() const;
1015 virtual void setBluetoothPTTSleepDelay(Interval delay);
1017 virtual void setInfiniteBluetoothPTTSleepDelay();
1018
1020 virtual AnytoneSettingsExtension::FanControl fanControl() const;
1022 virtual void setFanControl(AnytoneSettingsExtension::FanControl ctrl);
1023
1025 virtual unsigned int weatherChannelIndex() const;
1027 virtual void setWeatherChannelIndex(unsigned int idx);
1028
1030 virtual bool infiniteManDialGroupCallHangTime() const;
1032 virtual Interval manDialGroupCallHangTime() const;
1034 virtual void setManDialGroupCallHangTime(Interval dur);
1037
1039 virtual bool infiniteManDialPrivateCallHangTime() const;
1041 virtual Interval manDialPrivateCallHangTime() const;
1043 virtual void setManDialPrivateCallHangTime(Interval dur);
1046
1055
1056 AnytoneDisplaySettingsExtension::Color channelBNameColor() const;
1057 void setChannelBNameColor(AnytoneDisplaySettingsExtension::Color color);
1058
1060 virtual AnytoneDMRSettingsExtension::EncryptionType encryption() const;
1062 virtual void setEncryption(AnytoneDMRSettingsExtension::EncryptionType mode);
1063
1065 virtual bool professionalMode() const;
1067 virtual void enableProfessionalMode(bool enable);
1068
1070 virtual Interval steDuration() const;
1072 virtual void setSTEDuration(Interval dur);
1073
1078
1079 AnytoneDisplaySettingsExtension::Color zoneANameColor() const;
1080 void setZoneANameColor(AnytoneDisplaySettingsExtension::Color color);
1081 AnytoneDisplaySettingsExtension::Color zoneBNameColor() const;
1082 void setZoneBNameColor(AnytoneDisplaySettingsExtension::Color color);
1083
1085 virtual bool resetAutoShutdownOnCall() const;
1087 virtual void enableResetAutoShutdownOnCall(bool enable);
1088
1090 virtual bool showColorCode() const;
1092 virtual void enableShowColorCode(bool enable);
1094 virtual bool showTimeSlot() const;
1096 virtual void enableShowTimeSlot(bool enable);
1098 virtual bool showChannelType() const;
1100 virtual void enableShowChannelType(bool enable);
1101
1103 virtual bool fmIdleTone() const;
1105 virtual void enableFMIdleTone(bool enable);
1106
1108 virtual AnytoneDisplaySettingsExtension::DateFormat dateFormat() const;
1110 virtual void setDateFormat(AnytoneDisplaySettingsExtension::DateFormat format);
1111
1113 virtual Level fmMicGain() const;
1115 virtual void setFMMicGain(Level gain);
1116
1129
1142
1144 virtual unsigned int btHandsetMicGain() const;
1146 virtual void setBtHandsetMicGain(unsigned int gain);
1147
1149 virtual Interval btHandsetBacklightDuration() const;
1151 virtual void setBtHandsetBacklightDuration(Interval delay);
1152
1157
1159 virtual bool totNotification() const;
1161 virtual void enableTOTNotification(bool enable);
1162
1164 virtual bool gpsRoaming() const;
1166 virtual void enableGPSRoaming(bool enable);
1167
1172
1181
1183 virtual unsigned int btHandsetSquelch() const;
1185 virtual void setBtHandsetSquelch(unsigned int level);
1186
1188 virtual bool btHandsetAutoPowerOffEnabled() const;
1190 virtual void enableBtHandsetAutoPowerOff(bool enable);
1191
1204
1206 virtual unsigned int btHandsetTxNoiseRedLevel() const;
1208 virtual void setBtHandsetTxNoiseRedLevel(unsigned int level);
1209
1211 virtual unsigned int btHandsetVOXLevel() const;
1213 virtual void setBtHandsetVOXLevel(unsigned int level);
1214
1216 virtual Interval btHandsetVOXDelay() const;
1218 virtual void setBtHandsetVOXDelay(Interval delay);
1219
1221 virtual unsigned int btHandsetVolumeA() const;
1223 virtual void setBtHandsetVolumeA(unsigned int vol);
1225 virtual unsigned int btHandsetVolumeB() const;
1227 virtual void setBtHandsetVolumeB(unsigned int vol);
1228
1230 virtual void callEndToneMelody(Melody &melody) const;
1232 virtual void setCallEndToneMelody(const Melody &melody);
1234 virtual void allCallToneMelody(Melody &melody) const;
1236 virtual void setAllCallToneMelody(const Melody &melody);
1237
1238
1240 virtual bool fromConfig(const Flags &flags, Context &ctx, const ErrorStack &err=ErrorStack());
1242 virtual bool updateConfig(Context &ctx, const ErrorStack &err=ErrorStack());
1243
1244 public:
1247 static constexpr unsigned int maxBluetoothPTTSleepDelay() { return 4; }
1248 static constexpr unsigned int maxWeatherChannelIndex() { return 9; }
1249 static constexpr Range<unsigned int> micGain() { return {1,5}; }
1250 };
1251
1252 protected:
1256 static constexpr unsigned int talkerAliasDisplay() { return 0x001e; }
1257 static constexpr unsigned int talkerAliasEncoding() { return 0x001f; }
1258
1259 static constexpr unsigned int weatherAlarm() { return 0x0020; }
1260 static constexpr unsigned int repeater() { return 0x0021; }
1261 static constexpr unsigned int speakers() { return 0x0023; }
1262 static constexpr unsigned int micSpeakerSource() { return 0x0025; }
1263 static constexpr unsigned int gpsMode() { return 0x0026; }
1264 static constexpr unsigned int btPTTLatch() { return 0x0027; }
1265 static constexpr unsigned int btPTTSleepDelay() { return 0x0028; }
1266 static constexpr unsigned int fanControl() { return 0x0029; }
1267 static constexpr unsigned int weatherChannelIndex() { return 0x002a; }
1268 static constexpr unsigned int manGrpCallHangTime() { return 0x002b; }
1269 static constexpr unsigned int manPrivCallHangTime() { return 0x002c; }
1270 static constexpr unsigned int chKnobShortPressFunction() { return 0x002d; }
1271 static constexpr unsigned int chKnobLongPressFunction() { return 0x002e; }
1272 static constexpr unsigned int channelBNameColor() { return 0x002f; }
1273
1274 static constexpr unsigned int encryptionType() { return 0x0030; }
1275 static constexpr unsigned int uiMode() { return 0x0031; }
1276 static constexpr unsigned int steDuration() { return 0x0032; }
1277 static constexpr unsigned int micType() { return 0x0033; }
1278 static constexpr unsigned int zoneANameColor() { return 0x0034; }
1279 static constexpr unsigned int zoneBNameColor() { return 0x0035; }
1280 static constexpr unsigned int autoShutdownMode() { return 0x0036; }
1281 static constexpr Bit displayColorCode() { return {0x003b, 2}; }
1282 static constexpr Bit displayTimeSlot() { return {0x003b, 1}; }
1283 static constexpr Bit displayChannelType() { return {0x003b, 0}; }
1284 static constexpr unsigned int fmIdleTone() { return 0x003c; }
1285 static constexpr unsigned int dateFormat() { return 0x003d; }
1286 static constexpr unsigned int analogMicGain() { return 0x003e; }
1287 static constexpr unsigned int btSK1ShortPressFunction() { return 0x003f; }
1288
1289 static constexpr unsigned int btSK2ShortPressFunction() { return 0x0040; }
1290 static constexpr unsigned int btSK3ShortPressFunction() { return 0x0041; }
1291 static constexpr unsigned int btSK1LongPressFunction() { return 0x0042; }
1292 static constexpr unsigned int btSK2LongPressFunction() { return 0x0043; }
1293 static constexpr unsigned int btSK3LongPressFunction() { return 0x0044; }
1294 static constexpr unsigned int btHSMicGain() { return 0x0045; }
1295 static constexpr unsigned int btHSBacklightDuration() { return 0x0047; }
1296 static constexpr unsigned int upDownKeyFunction() { return 0x0048; }
1297 static constexpr unsigned int totNotification() { return 0x0049; }
1298 static constexpr unsigned int gpsRoaming() { return 0x004a; }
1299 static constexpr unsigned int repeaterColorCode() { return 0x004b; }
1300 static constexpr unsigned int repeaterATimeslot() { return 0x004c; }
1301 static constexpr unsigned int repeaterBTimeslot() { return 0x004d; }
1302 static constexpr unsigned int btHSRxNoiseReduction() { return 0x004e; }
1303 static constexpr unsigned int btHSShutDown() { return 0x004f; }
1304
1305 static constexpr unsigned int btSK1VeryLongPressFunction() { return 0x0050; }
1306 static constexpr unsigned int btSK2VeryLongPressFunction() { return 0x0051; }
1307 static constexpr unsigned int btSK3VeryLongPressFunction() { return 0x0052; }
1308 static constexpr unsigned int btHSTxNoiseReduction() { return 0x0053; }
1309 static constexpr unsigned int btHSVOXLevel() { return 0x0054; }
1310 static constexpr unsigned int btHSVOXDelay() { return 0x0055; }
1311 static constexpr unsigned int btHSVolumeA() { return 0x0056; }
1312 static constexpr unsigned int btHSVolumeB() { return 0x0057; }
1313
1314 static constexpr unsigned int callEndTones() { return 0x0058; }
1315 static constexpr unsigned int callEndDurations() { return 0x0062; }
1316 static constexpr unsigned int allCallTones() { return 0x006c; }
1317 static constexpr unsigned int allCallDurations() { return 0x0076; }
1318 static constexpr unsigned int headerRep() { return 0x0080; }
1320 };
1321 };
1322
1323
1324
1330 {
1331 protected:
1333 HotKeySettingsElement(uint8_t *ptr, size_t size);
1334
1335 public:
1337 HotKeySettingsElement(uint8_t *ptr);
1338
1340 static constexpr unsigned int size() { return 0x0970; }
1341
1342 uint8_t *hotKeySetting(unsigned int n) const;
1343
1344 public:
1346 struct Limit {
1347 static constexpr unsigned int numEntries() { return 24; }
1348 };
1349
1350 };
1351
1357 {
1358 protected:
1360 AirBandChannelElement(uint8_t *ptr, size_t size);
1361
1362 public:
1364 AirBandChannelElement(uint8_t *ptr);
1365
1367 static constexpr unsigned int size() { return 0x0020; }
1368
1370 void clear();
1371
1373 virtual Frequency frequency() const;
1375 virtual void setFrequency(Frequency freq);
1376
1378 virtual QString name() const;
1380 virtual void setName(const QString &name);
1381
1383 virtual bool encode(AMChannel *ch, Context &ctx, const ErrorStack &err=ErrorStack());
1385 virtual AMChannel *decode(Context &ctx, const ErrorStack &err=ErrorStack()) const;
1386
1387 public:
1389 struct Limit {
1390 static constexpr unsigned int nameLength() { return 16; }
1391 };
1392
1393 public:
1395 struct Offset {
1397 static constexpr unsigned int frequency() { return 0x0000; }
1398 static constexpr unsigned int name() { return 0x0004; }
1400 };
1401 };
1402
1406 {
1407 protected:
1409 AirBandBitmapElement(uint8_t *ptr, size_t size);
1410
1411 public:
1413 AirBandBitmapElement(uint8_t *ptr);
1414
1416 static constexpr unsigned int size() { return 0x0020; }
1417 };
1418
1419protected:
1421 explicit D578UVCodeplug(const QString &label, QObject *parent = nullptr);
1422
1423public:
1425 explicit D578UVCodeplug(QObject *parent = nullptr);
1426
1427 Config *preprocess(Config *config, const ErrorStack &err) const override;
1428
1429protected:
1430 bool allocateBitmaps() override;
1431 void setBitmaps(Context &ctx) override;
1432 void allocateForDecoding() override;
1433 void allocateForEncoding() override;
1434
1435 void allocateHotKeySettings() override;
1436
1437 bool encodeElements(const Flags &flags, Context &ctx, const ErrorStack &err=ErrorStack()) override;
1438 bool createElements(Context &ctx, const ErrorStack &err=ErrorStack()) override;
1439
1440 bool encodeChannels(const Flags &flags, Context &ctx, const ErrorStack &err=ErrorStack()) override;
1441 bool createChannels(Context &ctx, const ErrorStack &err=ErrorStack()) override;
1442 bool linkChannels(Context &ctx, const ErrorStack &err=ErrorStack()) override;
1443
1445 virtual bool allocateAirBandChannels();
1447 virtual bool encodeAirBandChannels(const Flags &flags, Context &ctx, const ErrorStack &err=ErrorStack());
1449 virtual bool createAirBandChannels(Context &ctx, const ErrorStack &err=ErrorStack());
1450
1451 void allocateContacts() override;
1452 bool encodeContacts(const Flags &flags, Context &ctx, const ErrorStack &err=ErrorStack()) override;
1453
1454 void allocateGeneralSettings() override;
1455 bool encodeGeneralSettings(const Flags &flags, Context &ctx, const ErrorStack &err=ErrorStack()) override;
1456 bool decodeGeneralSettings(Context &ctx, const ErrorStack &err=ErrorStack()) override;
1457 bool linkGeneralSettings(Context &ctx, const ErrorStack &err=ErrorStack()) override;
1458
1459public:
1463 static constexpr unsigned int airBandChannels() { return 100; }
1464 };
1465
1466protected:
1470 static constexpr unsigned int contactIdTable() { return 0x04800000; }
1471 static constexpr unsigned int settings() { return 0x02500000; }
1472 static constexpr unsigned int gpsMessages() { return 0x02501280; }
1473 static constexpr unsigned int settingsExtension() { return 0x02501400; }
1474 static constexpr unsigned int airBandChannels() { return 0x02BC0000; }
1475 static constexpr unsigned int airBandVFO() { return 0x02BC1000; }
1476 static constexpr unsigned int airBandChannelBitmap() { return 0x02BC1020; }
1477 static constexpr unsigned int airBandScanBitmap() { return 0x02BC1040; }
1479 };
1480};
1481
1482#endif // D578UV_CODEPLUG_HH
Extension to the AnalogChannel class to implement an analog AM channel.
Definition channel.hh:360
HandsetSpeakerSource
Possible handset speaker sources.
Definition anytone_settingsextension.hh:931
HandsetType
Specifies possible handset types.
Definition anytone_settingsextension.hh:937
Speaker
Possible speaker settings.
Definition anytone_settingsextension.hh:925
Direction
Encodes the auto-repeater offset sign.
Definition anytone_settingsextension.hh:1188
Represents the base class for the extended settings element in many AnyTone codeplugs.
Definition anytone_codeplug.hh:1282
Represents the base class for the settings elements in all AnyTone codeplugs.
Definition anytone_codeplug.hh:886
Represents the list of hot-key settings for all AnyTone codeplugs.
Definition anytone_codeplug.hh:2032
virtual void clear()
Clears and resets the complete codeplug to some default values.
Definition anytone_codeplug.cc:4417
virtual bool index(Config *config, Context &ctx, const ErrorStack &err=ErrorStack()) const
Indexes all elements of the codeplug.
Definition anytone_codeplug.cc:4428
KeyFunction
All possible key functions.
Definition anytone_settingsextension.hh:267
UpDownKeyFunction
Possible up/down key functions.
Definition anytone_settingsextension.hh:280
TimeSlot
Possible repeater time-slots.
Definition anytone_settingsextension.hh:1914
ColorCode
Possible color code settings.
Definition anytone_settingsextension.hh:1920
RoamStart
Possible roaming start conditions.
Definition anytone_settingsextension.hh:1533
STEType
All possible STE (squelch tail eliminate) types.
Definition anytone_settingsextension.hh:2144
VFOScanType
Encodes the possible VFO scan types.
Definition anytone_settingsextension.hh:2126
The base class of all channels (analog and digital) of a codeplug configuration.
Definition channel.hh:37
Represents the base class for bitmaps in codeplugs.
Definition codeplug.hh:286
Base class for all codeplug contexts.
Definition codeplug.hh:331
Represents the abstract base class of all codeplug elements.
Definition codeplug.hh:65
Certain flags passed to CodePlug::encode to control the transfer and encoding of the codeplug.
Definition codeplug.hh:24
The config class, representing the codeplug configuration.
Definition config.hh:70
static constexpr unsigned int size()
The element size.
Definition d578uv_codeplug.hh:1416
AirBandBitmapElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition d578uv_codeplug.cc:3256
virtual AMChannel * decode(Context &ctx, const ErrorStack &err=ErrorStack()) const
Decodes the given AM channel.
Definition d578uv_codeplug.cc:3241
virtual bool encode(AMChannel *ch, Context &ctx, const ErrorStack &err=ErrorStack())
Encodes the given AM channel.
Definition d578uv_codeplug.cc:3228
virtual QString name() const
The name of the channel.
Definition d578uv_codeplug.cc:3217
virtual Frequency frequency() const
The channel frequency.
Definition d578uv_codeplug.cc:3206
virtual void setName(const QString &name)
Sets the name of the channel.
Definition d578uv_codeplug.cc:3222
virtual void setFrequency(Frequency freq)
Sets the channel frequency.
Definition d578uv_codeplug.cc:3211
static constexpr unsigned int size()
The size of the element.
Definition d578uv_codeplug.hh:1367
AirBandChannelElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition d578uv_codeplug.cc:3185
void clear()
Resets the element.
Definition d578uv_codeplug.cc:3200
void enableMultipleKeyEncryption(bool enable) override
Enables/disables multiple key encryption.
Definition d578uv_codeplug.cc:91
bool sms() const override
Returns true if SMS is enabled.
Definition d578uv_codeplug.cc:108
AdvancedEncryptionType advancedEncryptionType() const override
Returns the encryption type.
Definition d578uv_codeplug.cc:153
virtual void clearAnalogScambler()
Disables the scambler.
Definition d578uv_codeplug.cc:206
void clearARC4EncryptionKeyIndex() override
Clears the ARC4 encryption key index.
Definition d578uv_codeplug.cc:239
FMScramblerFrequency
Possible FM scrambler carrier frequencies.
Definition d578uv_codeplug.hh:60
virtual void enableNoiseReduction(bool enable)
Enables/disables noise reduction.
Definition d578uv_codeplug.cc:80
bool fromChannelObj(const Channel *ch, Context &ctx) override
Initializes this codeplug channel from the given generic configuration.
Definition d578uv_codeplug.cc:282
void setFMAPRSFrequencyIndex(unsigned int idx) override
Sets the FM APRS frequency index [0,7].
Definition d578uv_codeplug.cc:218
virtual Frequency analogScramblerFrequency() const
If enabled, returns the analog scrambler frequency.
Definition d578uv_codeplug.cc:169
virtual bool noiseReductionEnabled() const
Returns true if noise reduction is enabled.
Definition d578uv_codeplug.cc:75
unsigned int fmAPRSFrequencyIndex() const override
Returns the index of the FM APRS frequency [0,7].
Definition d578uv_codeplug.cc:213
bool randomKey() const override
Returns true if random key is enabled.
Definition d578uv_codeplug.cc:97
Channel * toChannelObj(Context &ctx) const override
Constructs a generic Channel object from the codeplug channel.
Definition d578uv_codeplug.cc:255
bool multipleKeyEncryption() const override
Returns true if multiple key encryption is enabled.
Definition d578uv_codeplug.cc:86
bool sendTalkerAlias() const override
If set, transmission of talker alias for this channel is enabled.
Definition d578uv_codeplug.cc:142
void enableSMS(bool enable) override
Enables/disables SMS.
Definition d578uv_codeplug.cc:113
InterruptPriority
Possible interrupt priorities.
Definition d578uv_codeplug.hh:66
void setARC4EncryptionKeyIndex(unsigned int index) override
Sets the ARC4 encryption key index.
Definition d578uv_codeplug.cc:234
virtual void setAnalogScamberFrequency(Frequency f)
Sets the analog scambler frequency and enables the scrambler.
Definition d578uv_codeplug.cc:190
bool ctcssPhaseReversal() const override
Removed from D578UV codeplug.
Definition d578uv_codeplug.cc:245
void setEncryptionType(AdvancedEncryptionType type) override
Sets the encryptionType.
Definition d578uv_codeplug.cc:158
virtual void enableSwapFrequencies(bool enable)
Returns true, if the RX and TX frequencies (and signaling) are swapped.
Definition d578uv_codeplug.cc:35
bool roamingEnabled() const override
Returns true if roaming is enabled.
Definition d578uv_codeplug.cc:51
virtual void setInterruptPriority(InterruptPriority pri)
Sets the interrupt priority.
Definition d578uv_codeplug.cc:69
virtual void enableBluetooth(bool enable)
Enables/disables hands-free.
Definition d578uv_codeplug.cc:45
void enableDataACK(bool enable) override
Enables/disables data ACK.
Definition d578uv_codeplug.cc:125
bool dataACK() const override
Returns true if data ACK is enabled.
Definition d578uv_codeplug.cc:119
void enableSendTalkerAlias(bool enable) override
Enable transmission of talker alias.
Definition d578uv_codeplug.cc:147
void enableAutoScan(bool enable) override
Enable/disable auto scan.
Definition d578uv_codeplug.cc:137
void enableCTCSSPhaseReversal(bool enable) override
Removed from D578UV codeplug.
Definition d578uv_codeplug.cc:249
bool autoScan() const override
Returns true, if auto scan is enabled.
Definition d578uv_codeplug.cc:132
unsigned int arc4EncryptionKeyIndex() const override
Returns the ARC4 encryption key index.
Definition d578uv_codeplug.cc:229
void enableRoaming(bool enable) override
Enables/disables roaming.
Definition d578uv_codeplug.cc:57
bool hasARC4EncryptionKeyIndex() const override
Returns true, if an ARC4 encryption key index is set.
Definition d578uv_codeplug.cc:224
virtual bool bluetoothEnabled() const
Returns true if bluetooth hands-free is enabled.
Definition d578uv_codeplug.cc:41
virtual InterruptPriority interruptPriority() const
Returns the interrupt priority.
Definition d578uv_codeplug.cc:64
virtual bool analogScamblerEnabled() const
Returns true if the analog scambler is enabled.
Definition d578uv_codeplug.cc:164
virtual bool frequenciesSwapped() const
Returns true, if the RX and TX frequencies (and signaling) are swapped.
Definition d578uv_codeplug.cc:30
void enableRandomKey(bool enable) override
Enables/disables random key.
Definition d578uv_codeplug.cc:102
ChannelElement(uint8_t *ptr, unsigned size)
Hidden constructor.
Definition d578uv_codeplug.cc:16
virtual void setFiveToneIdIndexBOT(unsigned int idx)
Sets the index of the 5-tone ID send at the start of the transmission.
Definition d578uv_codeplug.cc:339
virtual unsigned int fiveToneIdIndexEOT() const
Returns the index of the 5-tone ID send at the end of the transmission.
Definition d578uv_codeplug.cc:345
ChannelExtensionElement(uint8_t *ptr, unsigned size)
Hidden constructor.
Definition d578uv_codeplug.cc:313
virtual void setFiveToneIdIndexEOT(unsigned int idx)
Sets the index of the 5-tone ID send at the end of the transmission.
Definition d578uv_codeplug.cc:350
static constexpr unsigned int size()
Returns the size of the element.
Definition d578uv_codeplug.hh:189
virtual unsigned int fiveToneIdIndexBOT() const
Returns the index of the 5-tone ID send at the start of the transmission.
Definition d578uv_codeplug.cc:334
virtual void setMicType(AnytoneAudioSettingsExtension::HandsetType type)
Sets the microphone type.
Definition d578uv_codeplug.cc:2457
virtual Interval manDialGroupCallHangTime() const
Returns the manual dial group call hang time.
Definition d578uv_codeplug.cc:2328
virtual void setInfiniteBluetoothPTTSleepDelay()
Sets the bluetooth PTT sleep delay to infinite/disabled.
Definition d578uv_codeplug.cc:2280
virtual void setSpeaker(AnytoneAudioSettingsExtension::Speaker speaker)
Sets the speaker setting.
Definition d578uv_codeplug.cc:2197
virtual void setBtSK1ShortPressFunction(AnytoneKeySettingsExtension::KeyFunction func)
Sets the SK1 short-press function of the BT handset.
Definition d578uv_codeplug.cc:2571
virtual AnytoneAudioSettingsExtension::Speaker speaker() const
Returns the speaker setting.
Definition d578uv_codeplug.cc:2187
AnytoneDisplaySettingsExtension::Color zoneBNameColor() const
Returns the color of the zone name for VFO B.
Definition d578uv_codeplug.cc:2480
void setZoneANameColor(AnytoneDisplaySettingsExtension::Color color)
Sets the zone name color for the VFO A.
Definition d578uv_codeplug.cc:2475
virtual bool resetAutoShutdownOnCall() const
Returns true if the auto-shutdown timer is reset on a call.
Definition d578uv_codeplug.cc:2491
virtual AnytoneRepeaterSettingsExtension::TimeSlot repTimeSlotBMatch() const
Returns the repeater timeslots for VFO B.
Definition d578uv_codeplug.cc:2769
virtual void setMicSpeakerSource(AnytoneAudioSettingsExtension::HandsetSpeakerSource source)
Sets the microphone-speaker source.
Definition d578uv_codeplug.cc:2224
virtual bool infiniteManDialPrivateCallHangTime() const
Returns true if the manual dialed private call hang time is infinite.
Definition d578uv_codeplug.cc:2354
virtual void setBtSK1LongPressFunction(AnytoneKeySettingsExtension::KeyFunction func)
Sets the SK1 long-press function of the BT handset.
Definition d578uv_codeplug.cc:2601
virtual void setBtHandsetSquelch(unsigned int level)
Sets the BT handset squelch level [0, 1-10].
Definition d578uv_codeplug.cc:2803
virtual unsigned int btHandsetMicGain() const
Returns the BT handset mic gain [1-10].
Definition d578uv_codeplug.cc:2627
virtual AnytoneKeySettingsExtension::UpDownKeyFunction micUpDownKeyFunction() const
Returns the function of up/down keys on microphone.
Definition d578uv_codeplug.cc:2673
virtual void enableTOTNotification(bool enable)
Enables/disables transmit timeout notification.
Definition d578uv_codeplug.cc:2700
virtual void setBtSK3ShortPressFunction(AnytoneKeySettingsExtension::KeyFunction func)
Sets the SK3 short-press function of the BT handset.
Definition d578uv_codeplug.cc:2591
virtual void setBtHandsetVolumeB(unsigned int vol)
Sets the BF handset volume for VFO B [0,1,10].
Definition d578uv_codeplug.cc:2917
virtual AnytoneKeySettingsExtension::KeyFunction btSK1LongPressFunction() const
Returns the lone-press function for SK1 of the BT handset.
Definition d578uv_codeplug.cc:2596
virtual void enableShowColorCode(bool enable)
Enables/disables display of color code.
Definition d578uv_codeplug.cc:2507
virtual Interval bluetoothPTTSleepDelay() const
Returns the bluetooth PTT sleep delay in minutes, 0=off.
Definition d578uv_codeplug.cc:2271
virtual DMRSettings::TalkerAliasEncoding talkerAliasEncoding() const
Returns the talker alias encoding.
Definition d578uv_codeplug.cc:2140
virtual void setChKnobShortPressFunction(AnytoneKeySettingsExtension::KeyFunction func)
Sets the channel knob short-press function.
Definition d578uv_codeplug.cc:2390
virtual bool repeaterEnabled() const
Returns true if the repeater function is enabled.
Definition d578uv_codeplug.cc:2176
virtual Interval manDialPrivateCallHangTime() const
Returns the manual dial private call hang time.
Definition d578uv_codeplug.cc:2359
UpDownKeyFunction
Encoding of up/down key functions.
Definition d578uv_codeplug.hh:937
virtual void setBtSK1VeryLongPressFunction(AnytoneKeySettingsExtension::KeyFunction func)
Sets the SK1 very-long-press function of the BT handset.
Definition d578uv_codeplug.cc:2829
virtual void setFanControl(AnytoneSettingsExtension::FanControl ctrl)
Sets the fan-control setting.
Definition d578uv_codeplug.cc:2296
virtual void setGNSS(GNSSSettings::Systems mode)
Sets the GPS mode.
Definition d578uv_codeplug.cc:2247
virtual void setBluetoothPTTSleepDelay(Interval delay)
Sets the bluetooth PTT sleep delay in minutes.
Definition d578uv_codeplug.cc:2275
SpeakerSource
Encoding of microphone-speaker source.
Definition d578uv_codeplug.hh:917
void clear()
Resets the settings.
Definition d578uv_codeplug.cc:2124
virtual void setEncryption(AnytoneDMRSettingsExtension::EncryptionType mode)
Sets the encryption mode.
Definition d578uv_codeplug.cc:2420
virtual Interval btHandsetVOXDelay() const
Returns the VOX delay for the BT handset.
Definition d578uv_codeplug.cc:2884
virtual void setBtSK2LongPressFunction(AnytoneKeySettingsExtension::KeyFunction func)
Sets the SK2 long-press function of the BT handset.
Definition d578uv_codeplug.cc:2611
virtual void setFMMicGain(Level gain)
Sets the analog mic gain [1,10].
Definition d578uv_codeplug.cc:2560
FanControl
Encoding of possible fan-control settings.
Definition d578uv_codeplug.hh:927
virtual bool updateConfig(Context &ctx, const ErrorStack &err=ErrorStack())
Update config from settings.
Definition d578uv_codeplug.cc:3068
virtual void setWeatherChannelIndex(unsigned int idx)
Sets the weather channel index.
Definition d578uv_codeplug.cc:2317
virtual void enableGPSRoaming(bool enable)
Enables/disables GPS roaming.
Definition d578uv_codeplug.cc:2711
virtual bool fmIdleTone() const
Returns true if the FM idle channel tone is enabled.
Definition d578uv_codeplug.cc:2533
virtual bool showChannelType() const
Returns true if the channel type is shown.
Definition d578uv_codeplug.cc:2522
virtual void setBtHandsetVOXDelay(Interval delay)
Sets the VOX delay for the BT handset.
Definition d578uv_codeplug.cc:2889
virtual Interval steDuration() const
Returns the STE (squelch tail elimination) duration.
Definition d578uv_codeplug.cc:2437
virtual AnytoneSettingsExtension::FanControl fanControl() const
Returns the fan-control setting.
Definition d578uv_codeplug.cc:2286
virtual AnytoneAudioSettingsExtension::HandsetType micType() const
Returns the microphone type.
Definition d578uv_codeplug.cc:2448
virtual AnytoneKeySettingsExtension::KeyFunction btSK3LongPressFunction() const
Returns the long-press function for SK3 of the BT handset.
Definition d578uv_codeplug.cc:2616
virtual AnytoneDMRSettingsExtension::EncryptionType encryption() const
Returns the encryption mode.
Definition d578uv_codeplug.cc:2416
virtual unsigned int weatherChannelIndex() const
Returns the weather channel index.
Definition d578uv_codeplug.cc:2312
virtual void setBtSK2VeryLongPressFunction(AnytoneKeySettingsExtension::KeyFunction func)
Sets the SK2 very-long-press function of the BT handset.
Definition d578uv_codeplug.cc:2839
virtual void setRepTimeSlotBMatch(AnytoneRepeaterSettingsExtension::TimeSlot mode)
Sets the repeater timeslots for VFO B.
Definition d578uv_codeplug.cc:2779
virtual AnytoneKeySettingsExtension::KeyFunction chKnobShortPressFunction() const
Returns the short-press function for the channel knob.
Definition d578uv_codeplug.cc:2385
virtual Level fmMicGain() const
Returns the FM Mic gain [1,10].
Definition d578uv_codeplug.cc:2555
virtual void setManDialGroupCallHangTime(Interval dur)
Sets the manual dial group call hang time.
Definition d578uv_codeplug.cc:2338
TalkerAliasEncoding
Talker alias encoding.
Definition d578uv_codeplug.hh:952
virtual bool totNotification() const
Returns true if the transmit timeout notification is enabled.
Definition d578uv_codeplug.cc:2695
virtual void setTalkerAliasSource(AnytoneDMRSettingsExtension::TalkerAliasSource mode)
Sets the talker alias source.
Definition d578uv_codeplug.cc:2134
virtual AnytoneKeySettingsExtension::KeyFunction btSK2ShortPressFunction() const
Returns the short-press function for SK2 of the BT handset.
Definition d578uv_codeplug.cc:2576
virtual void callEndToneMelody(Melody &melody) const
Returns the call-end tone melody.
Definition d578uv_codeplug.cc:2923
virtual void enableShowTimeSlot(bool enable)
Enables/disables display of time slot.
Definition d578uv_codeplug.cc:2517
virtual Interval btHandsetBacklightDuration() const
Returns the bluetooth handset backlight duration.
Definition d578uv_codeplug.cc:2639
virtual void enableShowChannelType(bool enable)
Enables/disables display of channel type.
Definition d578uv_codeplug.cc:2527
virtual bool fromConfig(const Flags &flags, Context &ctx, const ErrorStack &err=ErrorStack())
Encodes the settings from the config.
Definition d578uv_codeplug.cc:2966
virtual bool showColorCode() const
Returns true if the color code is shown.
Definition d578uv_codeplug.cc:2502
virtual AnytoneRepeaterSettingsExtension::ColorCode repColorCodeMatch() const
Returns the repeater colorcode match mode.
Definition d578uv_codeplug.cc:2717
virtual AnytoneKeySettingsExtension::KeyFunction chKnobLongPressFunction() const
Returns the long-press function for the channel knob.
Definition d578uv_codeplug.cc:2395
RepeaterColorCodeMatch
Encoding of repeater color code match.
Definition d578uv_codeplug.hh:942
virtual void enableFMIdleTone(bool enable)
Enables/disables FM idle channel tone.
Definition d578uv_codeplug.cc:2538
virtual AnytoneKeySettingsExtension::KeyFunction btSK1ShortPressFunction() const
Returns the short-press function for SK1 of the BT handset.
Definition d578uv_codeplug.cc:2566
virtual void setManDialPrivateCallHangTime(Interval dur)
Sets the manual dial private call hang time.
Definition d578uv_codeplug.cc:2369
virtual unsigned int btHandsetTxNoiseRedLevel() const
Returns the BT handset TX noise reduction level [0,1-10].
Definition d578uv_codeplug.cc:2855
GPSMode
Encoding of possible GPS modes.
Definition d578uv_codeplug.hh:922
virtual bool professionalMode() const
Returns true if the professional mode is enabled.
Definition d578uv_codeplug.cc:2426
virtual bool showTimeSlot() const
Returns true if the time slot is shown.
Definition d578uv_codeplug.cc:2512
virtual AnytoneKeySettingsExtension::KeyFunction btSK2LongPressFunction() const
Returns the long-press function for SK2 of the BT handset.
Definition d578uv_codeplug.cc:2606
virtual AnytoneRepeaterSettingsExtension::TimeSlot repTimeSlotAMatch() const
Returns the repeater timeslots for VFO A.
Definition d578uv_codeplug.cc:2743
virtual void setBtSK2ShortPressFunction(AnytoneKeySettingsExtension::KeyFunction func)
Sets the SK2 short-press function of the BT handset.
Definition d578uv_codeplug.cc:2581
virtual unsigned int btHandsetVOXLevel() const
Returns the BT handset VOX level [0,1-10].
Definition d578uv_codeplug.cc:2872
virtual void allCallToneMelody(Melody &melody) const
Returns the all-call tone melody.
Definition d578uv_codeplug.cc:2944
static constexpr unsigned int size()
Returns the size of the element.
Definition d578uv_codeplug.hh:965
virtual void setBtSK3LongPressFunction(AnytoneKeySettingsExtension::KeyFunction func)
Sets the SK3 long-press function of the BT handset.
Definition d578uv_codeplug.cc:2621
virtual void setCallEndToneMelody(const Melody &melody)
Sets the call-end tone melody.
Definition d578uv_codeplug.cc:2934
virtual bool btHandsetAutoPowerOffEnabled() const
If true, the BT handset to shut off automatically, if the device powers down.
Definition d578uv_codeplug.cc:2813
virtual bool infiniteBluetoothPTTSleepDelay() const
Returns true if the bluetooth PTT sleep delay is disabled (infinite).
Definition d578uv_codeplug.cc:2267
virtual bool infiniteManDialGroupCallHangTime() const
Returns true if the manual dialed group call hang time is infinite.
Definition d578uv_codeplug.cc:2323
virtual unsigned int btHandsetVolumeB() const
Returns the BT handset volume for VFO B [0,1,10].
Definition d578uv_codeplug.cc:2909
virtual AnytoneAudioSettingsExtension::HandsetSpeakerSource micSpeakerSource() const
Returns the microphone-speaker source.
Definition d578uv_codeplug.cc:2213
virtual void setBtHandsetMicGain(unsigned int gain)
Sets the BT handset mic gain.
Definition d578uv_codeplug.cc:2632
void setZoneBNameColor(AnytoneDisplaySettingsExtension::Color color)
Sets the zone name color for the VFO B.
Definition d578uv_codeplug.cc:2485
virtual void enableBtHandsetAutoPowerOff(bool enable)
Enables/disables the BT handset to shut off automatically, if the device powers down.
Definition d578uv_codeplug.cc:2818
virtual void setRepTimeSlotAMatch(AnytoneRepeaterSettingsExtension::TimeSlot mode)
Sets the repeater timeslots for VFO A.
Definition d578uv_codeplug.cc:2753
virtual void enableProfessionalMode(bool enable)
Enables/disables professional mode.
Definition d578uv_codeplug.cc:2431
virtual void enableBluetoothPTTLatch(bool enable)
Enables/disables bluetooth PTT latch.
Definition d578uv_codeplug.cc:2262
virtual void setBtHandsetVolumeA(unsigned int vol)
Sets the BF handset volume for VFO A [0,1,10].
Definition d578uv_codeplug.cc:2904
virtual void setSTEDuration(Interval dur)
Sets the STE (squelch tail elimination) duration.
Definition d578uv_codeplug.cc:2441
virtual void setBtHandsetVOXLevel(unsigned int level)
Sets the BT handset VOX level [0,1-10].
Definition d578uv_codeplug.cc:2877
virtual void enableRepeater(bool enable)
Enables/disables the repeater function.
Definition d578uv_codeplug.cc:2181
virtual void setBtHandsetTxNoiseRedLevel(unsigned int level)
Sets the BT handset TX noise reduction level [0,1-10].
Definition d578uv_codeplug.cc:2862
virtual bool weatherAlarmEnabled() const
Returns true if the weather alarm is enabled.
Definition d578uv_codeplug.cc:2165
virtual void setManDialGroupCallHangTimeInfinite()
Sets the manual dial group call hang time to infinite.
Definition d578uv_codeplug.cc:2348
virtual void setAllCallToneMelody(const Melody &melody)
Sets the all-call tone melody.
Definition d578uv_codeplug.cc:2955
virtual AnytoneKeySettingsExtension::KeyFunction btSK1VeryLongPressFunction() const
Returns the very-long-press function for SK1 of the BT handset.
Definition d578uv_codeplug.cc:2824
virtual unsigned int btHandsetVolumeA() const
Returns the BT handset volume for VFO A [0,1,10].
Definition d578uv_codeplug.cc:2896
virtual void enableWeatherAlarm(bool enable)
Enables/disables the weather alarm.
Definition d578uv_codeplug.cc:2170
virtual AnytoneDisplaySettingsExtension::DateFormat dateFormat() const
Returns the date format.
Definition d578uv_codeplug.cc:2544
ExtendedSettingsElement(uint8_t *ptr, unsigned size)
Hidden Constructor.
virtual void setManDialPrivateCallHangTimeInfinite()
Sets the manual dial private call hang time to infinite.
Definition d578uv_codeplug.cc:2379
virtual AnytoneKeySettingsExtension::KeyFunction btSK3VeryLongPressFunction() const
Returns the very-long-press function for SK3 of the BT handset.
Definition d578uv_codeplug.cc:2844
virtual AnytoneDMRSettingsExtension::TalkerAliasSource talkerAliasSource() const
Returns the talker alias source.
Definition d578uv_codeplug.cc:2130
virtual void setDateFormat(AnytoneDisplaySettingsExtension::DateFormat format)
Sets the date format.
Definition d578uv_codeplug.cc:2549
virtual unsigned int btHandsetSquelch() const
Returns the BT handset squelch level [0, 1-10].
Definition d578uv_codeplug.cc:2796
virtual void setMicUpDownKeyFunction(AnytoneKeySettingsExtension::UpDownKeyFunction func)
Sets the microphone up/down key function.
Definition d578uv_codeplug.cc:2682
virtual void setRepColorCodeMatch(AnytoneRepeaterSettingsExtension::ColorCode mode)
Sets the repeater colorcode match mode.
Definition d578uv_codeplug.cc:2727
virtual void setBtHandsetBacklightDuration(Interval delay)
Sets the bluetooth handset backlight duration.
Definition d578uv_codeplug.cc:2659
AnytoneDisplaySettingsExtension::Color zoneANameColor() const
Returns the color of the zone name for VFO A.
Definition d578uv_codeplug.cc:2470
void setChannelBNameColor(AnytoneDisplaySettingsExtension::Color color)
Sets the channel name color for the VFO B.
Definition d578uv_codeplug.cc:2410
virtual void enableResetAutoShutdownOnCall(bool enable)
Enables/disables reset on call of the auto-shutdown timer.
Definition d578uv_codeplug.cc:2496
RepeaterTimeSlotMatch
Encoding of repeater timeslot match.
Definition d578uv_codeplug.hh:947
virtual AnytoneKeySettingsExtension::KeyFunction btSK2VeryLongPressFunction() const
Returns the very-long-press function for SK2 of the BT handset.
Definition d578uv_codeplug.cc:2834
virtual void setChKnobLongPressFunction(AnytoneKeySettingsExtension::KeyFunction func)
Sets the channel knob long-press function.
Definition d578uv_codeplug.cc:2400
virtual bool gpsRoaming() const
Returns true if the GPS roaming is enabled.
Definition d578uv_codeplug.cc:2706
MicType
Possible mic types.
Definition d578uv_codeplug.hh:932
AnytoneDisplaySettingsExtension::Color channelBNameColor() const
Returns the color of the channel name for VFO B.
Definition d578uv_codeplug.cc:2405
virtual GNSSSettings::Systems gnss() const
Returns the GPS mode.
Definition d578uv_codeplug.cc:2237
virtual void setBtSK3VeryLongPressFunction(AnytoneKeySettingsExtension::KeyFunction func)
Sets the SK3 very-long-press function of the BT handset.
Definition d578uv_codeplug.cc:2849
virtual bool bluetoothPTTLatch() const
Returns true if the BT PTT latch is enabled.
Definition d578uv_codeplug.cc:2258
virtual AnytoneKeySettingsExtension::KeyFunction btSK3ShortPressFunction() const
Returns the short-press function for SK3 of the BT handset.
Definition d578uv_codeplug.cc:2586
virtual void setTalkerAliasEncoding(DMRSettings::TalkerAliasEncoding encoding)
Sets the talker alias encoding.
Definition d578uv_codeplug.cc:2149
virtual AnytoneKeySettingsExtension::KeyFunction funcKey6Long() const
Returns the function for programmable function key 6 long press.
Definition d578uv_codeplug.cc:1762
virtual void setWFMChannelIndex(unsigned idx)
Sets the wide-FM (broadcast) channel index.
Definition d578uv_codeplug.cc:698
AnytoneDisplaySettingsExtension::Color callDisplayColor() const override
Returns the display color for callsigns.
Definition d578uv_codeplug.cc:1344
virtual bool gpsMessageEnabled() const
Returns true if the GPS range reporting is enabled.
Definition d578uv_codeplug.cc:1044
virtual unsigned defaultRoamingZoneIndex() const
Returns the default roaming zone index.
Definition d578uv_codeplug.cc:1537
void enableDisplayCall(bool enable) override
Enables/disables call display.
Definition d578uv_codeplug.cc:1247
void setDefaultZoneIndexB(unsigned idx) override
Sets the default zone (0-based) for VFO B.
Definition d578uv_codeplug.cc:1498
void setFuncKeyBShort(AnytoneKeySettingsExtension::KeyFunction func) override
Sets the key function for a short press on the function key 2/B.
Definition d578uv_codeplug.cc:1694
virtual void setPrivateCallHangTime(Interval sec)
Sets the private call hang time in seconds.
Definition d578uv_codeplug.cc:680
AnytoneKeySettingsExtension::KeyFunction funcKeyCLong() const override
Returns the key function for a long press on the function key 3.
Definition d578uv_codeplug.cc:1789
virtual bool monitorColorCodeMatch() const
Returns true if the monitor matches color code.
Definition d578uv_codeplug.cc:990
Interval longPressDuration() const override
Returns the long-press duration in ms.
Definition d578uv_codeplug.cc:954
bool subChannel() const override
Returns true if sub channel is enabled.
Definition d578uv_codeplug.cc:794
bool dmrTalkPermit() const override
Returns true if the talk permit tone is enabled for digital channels.
Definition d578uv_codeplug.cc:846
unsigned autoRepeaterOffsetFrequencyIndexVHF() const override
Returns the auto-repeater offset frequency index for UHF.
Definition d578uv_codeplug.cc:1119
virtual void enableRepeaterRangeCheck(bool enable)
Enables/disables repeater range check.
Definition d578uv_codeplug.cc:1550
unsigned defaultZoneIndexA() const override
Returns the default zone index (0-based) for VFO A.
Definition d578uv_codeplug.cc:1485
virtual unsigned int btMicGain() const
Returns the bluetooth microphone gain [1,10].
Definition d578uv_codeplug.cc:1297
void setMaxVFOScanFrequencyUHF(Frequency hz) override
Sets the maximum VFO scan frequency for the UHF band in Hz.
Definition d578uv_codeplug.cc:1075
bool hasAutoRepeaterOffsetFrequencyIndexVHF() const override
Returns true if the auto-repeater offset frequency for VHF is set.
Definition d578uv_codeplug.cc:1115
unsigned memoryZoneB() const override
Returns the memory zone for VFO B.
Definition d578uv_codeplug.cc:721
void enableShowCurrentContact(bool enable) override
Enables/disables display of current contact.
Definition d578uv_codeplug.cc:1330
virtual void setAutoRoamDelay(Interval sec)
Sets the auto-roam delay in seconds.
Definition d578uv_codeplug.cc:1399
void setFuncKey1Short(AnytoneKeySettingsExtension::KeyFunction func) override
Sets the key function for a short press on the function key 1.
Definition d578uv_codeplug.cc:1631
QTimeZone gpsTimeZone() const override
Returns the GPS time zone.
Definition d578uv_codeplug.cc:837
bool recording() const override
Returns true if recording is enabled.
Definition d578uv_codeplug.cc:739
void resetToneMelody(Melody &melody) const override
Returns the reset-tone melody.
Definition d578uv_codeplug.cc:1206
void setCallDisplayColor(AnytoneDisplaySettingsExtension::Color color) override
Sets the display color for callsigns.
Definition d578uv_codeplug.cc:1348
AnytoneKeySettingsExtension::KeyFunction funcKeyAShort() const override
Returns the key function for a short press on the function key 1/A.
Definition d578uv_codeplug.cc:1681
virtual void enableDisplayChannelNumber(bool enable)
Enables/disables display of channel number.
Definition d578uv_codeplug.cc:1321
AnytoneKeySettingsExtension::KeyFunction funcKey2Short() const override
Returns the key function for a short press on the function key 2.
Definition d578uv_codeplug.cc:1636
bool fromConfig(const Flags &flags, Context &ctx) override
Encodes the general settings.
Definition d578uv_codeplug.cc:1881
Frequency minVFOScanFrequencyVHF() const override
Returns the minimum VFO scan frequency for the VHF band in Hz.
Definition d578uv_codeplug.cc:1080
virtual void setSMSFormat(SMSExtension::Format fmt)
Sets the SMS format.
Definition d578uv_codeplug.cc:1442
void setAutoRepeaterMaxFrequencyVHF(Frequency Hz) override
Sets the maximum frequency in Hz for the auto-repeater range in VHF band.
Definition d578uv_codeplug.cc:1144
virtual void enableRemoteMonitor(bool enable)
Enables/disables remote monitor.
Definition d578uv_codeplug.cc:940
virtual void enableRepeaterCheckNotification(bool enable)
Enables/disables repeater check notification.
Definition d578uv_codeplug.cc:1613
void setBrightness(unsigned level) override
Sets the display brightness.
Definition d578uv_codeplug.cc:753
void setDefaultChannelAIndex(unsigned idx) override
Sets the default channel index for VFO A.
Definition d578uv_codeplug.cc:1511
void setFuncKeyBLong(AnytoneKeySettingsExtension::KeyFunction func) override
Sets the key function for a long press on the function key 2.
Definition d578uv_codeplug.cc:1784
void enableIdleChannelTone(bool enable) override
Enables/disables the idle channel tone.
Definition d578uv_codeplug.cc:877
virtual Interval wakeHeadPeriod() const
Returns the wake head-period in ms.
Definition d578uv_codeplug.cc:685
unsigned defaultZoneIndexB() const override
Returns the default zone index (0-based) for VFO B.
Definition d578uv_codeplug.cc:1494
AnytoneKeySettingsExtension::KeyFunction funcKeyBShort() const override
Returns the key function for a short press on the function key 2/B.
Definition d578uv_codeplug.cc:1690
virtual void enableWFMMonitor(bool enable)
Enables/disables WFM monitor.
Definition d578uv_codeplug.cc:780
void enableKeypadLock(bool enable) override
Enables/disables the keypad lock.
Definition d578uv_codeplug.cc:1374
virtual Interval autoRoamDelay() const
Returns the auto-roam delay in seconds.
Definition d578uv_codeplug.cc:1395
virtual void setBTHoldTime(Interval interval)
Sets the Bluetooth hold time (1-120s).
Definition d578uv_codeplug.cc:1846
virtual void setFuncKey5Short(AnytoneKeySettingsExtension::KeyFunction func)
Sets the function for programmable function key 5 short press.
Definition d578uv_codeplug.cc:1667
bool startupTone() const override
Returns true if the startup tone is enabled.
Definition d578uv_codeplug.cc:900
virtual void setFuncKeyDLong(AnytoneKeySettingsExtension::KeyFunction func)
Sets the function for programmable function key D long press.
Definition d578uv_codeplug.cc:1802
virtual AnytoneKeySettingsExtension::KeyFunction funcKey6Short() const
Returns the function for programmable function key 6 short press.
Definition d578uv_codeplug.cc:1672
bool displayClock() const override
Returns true if the clock is shown.
Definition d578uv_codeplug.cc:1035
virtual AnytoneDMRSettingsExtension::SlotMatch monitorSlotMatch() const
Returns the monitor slot match.
Definition d578uv_codeplug.cc:981
void clearAutoRepeaterOffsetFrequencyIndexVHF() override
Clears the auto-repeater offset frequency index for VHF.
Definition d578uv_codeplug.cc:1127
virtual void setBTHoldTimeInfinite()
Sets the Bluetooth hold time to infinite.
Definition d578uv_codeplug.cc:1852
SMSFormat
Possible SMS formats.
Definition d578uv_codeplug.hh:249
void enableDMRTalkPermit(bool enable) override
Enables/disables the talk permit tone for digital channels.
Definition d578uv_codeplug.cc:850
virtual bool wfmEnabled() const
Returns true, if the WFM/Airband receiver is enabled.
Definition d578uv_codeplug.cc:730
virtual void enableMonitorIDMatch(bool enable)
Enables/disables monitor ID match.
Definition d578uv_codeplug.cc:1003
bool showCurrentContact() const override
Returns true if the current contact is shown.
Definition d578uv_codeplug.cc:1326
void setDefaultChannelAToVFO() override
Sets the default channel for VFO A to be VFO.
Definition d578uv_codeplug.cc:1515
virtual void setFuncKey5Long(AnytoneKeySettingsExtension::KeyFunction func)
Sets the function for programmable function key 5 long press.
Definition d578uv_codeplug.cc:1757
STEFrequency
All possible STE (squelch tail eliminate) frequencies.
Definition d578uv_codeplug.hh:238
virtual AnytoneRoamingSettingsExtension::RoamStart roamingStartCondition() const
Returns the roaming start condition.
Definition d578uv_codeplug.cc:1573
virtual void enableFilterOwnID(bool enable)
Enables/disables filter of own ID in call lists.
Definition d578uv_codeplug.cc:895
void setDefaultChannelBToVFO() override
Sets the default channel for VFO B to be VFO.
Definition d578uv_codeplug.cc:1532
virtual void setStandbyBackgroundColor(AnytoneDisplaySettingsExtension::Color color)
Sets the standby image color.
Definition d578uv_codeplug.cc:1417
AnytoneAutoRepeaterSettingsExtension::Direction autoRepeaterDirectionB() const override
Returns the auto-repeater direction for VFO B.
Definition d578uv_codeplug.cc:1458
virtual void setFuncKey6Short(AnytoneKeySettingsExtension::KeyFunction func)
Sets the function for programmable function key 6 short press.
Definition d578uv_codeplug.cc:1676
virtual bool wfmVFOEnabled() const
Returns true if the WFM RX is in VFO mode.
Definition d578uv_codeplug.cc:703
virtual Interval autoRoamPeriod() const
Returns the auto roaming period in minutes.
Definition d578uv_codeplug.cc:1335
virtual void enableBluetooth(bool enable)
Enables/disables bluetooth.
Definition d578uv_codeplug.cc:1256
void setCallToneMelody(const Melody &melody) override
Sets the call-tone melody.
Definition d578uv_codeplug.cc:1176
virtual void setFuncKey3Long(AnytoneKeySettingsExtension::KeyFunction func)
Sets the function for programmable function key 3 long press.
Definition d578uv_codeplug.cc:1739
void setMemoryZoneB(unsigned zone) override
Sets the memory zone for VFO B.
Definition d578uv_codeplug.cc:725
void setLastCallerDisplayMode(AnytoneDisplaySettingsExtension::LastCallerDisplayMode mode) override
Sets the last-caller display mode.
Definition d578uv_codeplug.cc:1021
bool getGPSPosition() const override
Returns true if get GPS position is enabled.
Definition d578uv_codeplug.cc:945
virtual void enableRoaming(bool enable)
Enables/disables repeater check notification.
Definition d578uv_codeplug.cc:1622
AnytoneDisplaySettingsExtension::LastCallerDisplayMode lastCallerDisplayMode() const override
Returns the last-caller display mode.
Definition d578uv_codeplug.cc:1017
virtual AnytoneKeySettingsExtension::KeyFunction funcKey5Long() const
Returns the function for programmable function key 5 long press.
Definition d578uv_codeplug.cc:1753
void enableFMTalkPermit(bool enable) override
Enables/disables the talk permit tone for analog channels.
Definition d578uv_codeplug.cc:859
bool displayCall() const override
Returns true if the call is displayed instead of the name.
Definition d578uv_codeplug.cc:1243
virtual void setFMCallHold(unsigned sec)
Sets the analog call hold in seconds.
Definition d578uv_codeplug.cc:1030
void enableActiveChannelB(bool enable) override
Enables/disables VFO B as the active channel.
Definition d578uv_codeplug.cc:789
void setMemoryZoneA(unsigned zone) override
Sets the memory zone for VFO A.
Definition d578uv_codeplug.cc:716
virtual void setBTSpeakerGain(unsigned int gain)
Sets the bluetooth speaker gain [1,10].
Definition d578uv_codeplug.cc:1311
bool updateConfig(Context &ctx) override
Updates the abstract config from general settings.
Definition d578uv_codeplug.cc:1986
void setFuncKey2Short(AnytoneKeySettingsExtension::KeyFunction func) override
Sets the key function for a short press on the function key 2.
Definition d578uv_codeplug.cc:1640
virtual void disableBTHoldTime()
Sets the Bluetooth hold time to infinite.
Definition d578uv_codeplug.cc:1857
void setIdleToneMelody(const Melody &melody) override
Sets the idle-tone melody.
Definition d578uv_codeplug.cc:1196
void enableKeyTone(bool enable) override
Enables/disables the key-tone.
Definition d578uv_codeplug.cc:541
AnytoneKeySettingsExtension::KeyFunction funcKeyCShort() const override
Returns the key function for a short press on the function key 3/C.
Definition d578uv_codeplug.cc:1699
virtual void setGPSUpdatePeriod(Interval sec)
Sets the GPS ranging interval in seconds.
Definition d578uv_codeplug.cc:1292
virtual Frequency vfoStepSize() const
Returns the VFO step size.
Definition d578uv_codeplug.cc:565
virtual void setBTMicGain(unsigned int gain)
Sets the bluetooth microphone gain [1,10].
Definition d578uv_codeplug.cc:1301
GeneralSettingsElement(uint8_t *ptr, unsigned size)
Hidden constructor.
Definition d578uv_codeplug.cc:524
virtual Interval privateCallHangTime() const
Returns the private call hang time in seconds.
Definition d578uv_codeplug.cc:676
virtual AnytoneSettingsExtension::STEType steType() const
Returns the STE (squelch tail eliminate) type.
Definition d578uv_codeplug.cc:639
Frequency maxVFOScanFrequencyUHF() const override
Returns the maximum VFO scan frequency for the UHF band in Hz.
Definition d578uv_codeplug.cc:1071
void setAutoRepeaterMinFrequencyUHF(Frequency Hz) override
Sets the minimum frequency in Hz for the auto-repeater range in UHF band.
Definition d578uv_codeplug.cc:1153
bool vfoModeB() const override
Returns true if the VFO B is in VFO mode.
Definition d578uv_codeplug.cc:630
AnytoneSettingsExtension::VFOScanType vfoScanType() const override
Returns the VFO scan type.
Definition d578uv_codeplug.cc:600
void setFuncKey1Long(AnytoneKeySettingsExtension::KeyFunction func) override
Sets the key function for a long press on the function key 1.
Definition d578uv_codeplug.cc:1721
virtual void setFuncKey3Short(AnytoneKeySettingsExtension::KeyFunction func)
Sets the function for programmable function key 3 short press.
Definition d578uv_codeplug.cc:1649
virtual unsigned priorityZoneBIndex() const
Returns the priority Zone B index.
Definition d578uv_codeplug.cc:1234
bool vfoModeA() const override
Returns true if the VFO A is in VFO mode.
Definition d578uv_codeplug.cc:621
virtual void setTBSTFrequency(Frequency freq)
Sets the TBST frequency.
Definition d578uv_codeplug.cc:813
AnytoneKeySettingsExtension::KeyFunction funcKey1Long() const override
Returns the key function for a long press on the function key 1.
Definition d578uv_codeplug.cc:1717
void enableEnhancedAudio(bool enable) override
Enables/disables "enhanced" audio.
Definition d578uv_codeplug.cc:1057
AnytoneAutoRepeaterSettingsExtension::Direction autoRepeaterDirectionA() const override
Returns the auto repeater offset direction for VFO A.
Definition d578uv_codeplug.cc:972
Frequency autoRepeaterMinFrequencyUHF() const override
Returns the minimum frequency in Hz for the auto-repeater range in UHF band.
Definition d578uv_codeplug.cc:1149
bool defaultChannelAIsVFO() const override
Returns true if the default channel for VFO A is VFO.
Definition d578uv_codeplug.cc:1503
void enableGPS(bool enable) override
Enables/disables recording.
Definition d578uv_codeplug.cc:762
virtual SMSExtension::Format smsFormat() const
Returns the SMS format.
Definition d578uv_codeplug.cc:1432
AnytoneKeySettingsExtension::KeyFunction funcKeyALong() const override
Returns the key function for a long press on the function key 1.
Definition d578uv_codeplug.cc:1771
bool linkSettings(RadioSettings *settings, Context &ctx, const ErrorStack &err) override
Links the general settings.
Definition d578uv_codeplug.cc:2077
Interval menuExitTime() const override
Returns the menu exit time in seconds.
Definition d578uv_codeplug.cc:882
virtual void setStandbyTextColor(AnytoneDisplaySettingsExtension::Color color)
Sets the standby text color.
Definition d578uv_codeplug.cc:1408
virtual void setSTEType(AnytoneSettingsExtension::STEType type)
Sets the STE (squelch tail eliminate) type.
Definition d578uv_codeplug.cc:643
void setAutoRepeaterDirectionB(AnytoneAutoRepeaterSettingsExtension::Direction dir) override
Sets the auto-repeater direction for VFO B.
Definition d578uv_codeplug.cc:1462
virtual AnytoneKeySettingsExtension::KeyFunction funcKey3Short() const
Returns the function for programmable function key 3 short press.
Definition d578uv_codeplug.cc:1645
void callToneMelody(Melody &melody) const override
Returns the call-tone melody.
Definition d578uv_codeplug.cc:1166
virtual void enableMonitorColorCodeMatch(bool enable)
Enables/disables monitor color code match.
Definition d578uv_codeplug.cc:994
virtual AnytoneDisplaySettingsExtension::Color standbyBackgroundColor() const
Returns the standby image color.
Definition d578uv_codeplug.cc:1413
void enableStartupTone(bool enable) override
Enables/disables the startup tone.
Definition d578uv_codeplug.cc:904
void setFuncKeyAShort(AnytoneKeySettingsExtension::KeyFunction func) override
Sets the key function for a short press on the function key 1/A.
Definition d578uv_codeplug.cc:1685
virtual AnytoneDisplaySettingsExtension::Color standbyTextColor() const
Returns the standby text color.
Definition d578uv_codeplug.cc:1404
virtual void enableFMSendIDAndContact(bool enable)
Enables/disables sending contact with FM ID.
Definition d578uv_codeplug.cc:1471
virtual bool separateDisplay() const
Returns true if the "separate display" is enabled.
Definition d578uv_codeplug.cc:1582
Frequency maxVFOScanFrequencyVHF() const override
Returns the maximum VFO scan frequency for the VHF band in Hz.
Definition d578uv_codeplug.cc:1089
virtual AnytoneDisplaySettingsExtension::Color channelNameColor() const
Returns the channel name color.
Definition d578uv_codeplug.cc:1600
void enableVFOModeA(bool enable) override
Enables/disables VFO mode for VFO A.
Definition d578uv_codeplug.cc:625
virtual void enablePluginRecTone(bool enable)
Enables/disables the plug-in record tone.
Definition d578uv_codeplug.cc:1283
virtual void setSTEFrequency(double freq)
Sets the STE (squelch tail eliminate) frequency setting.
Definition d578uv_codeplug.cc:656
virtual void setPriorityZoneAIndex(unsigned idx)
Sets the priority zone A index.
Definition d578uv_codeplug.cc:1230
void enableDefaultChannel(bool enable) override
Enables/disables default boot channel.
Definition d578uv_codeplug.cc:1480
bool showLastHeard() const override
Returns true if the last heard is shown while pressing PTT.
Definition d578uv_codeplug.cc:1422
virtual void setTransmitTimeout(const Interval &tot)
Sets the transmit timeout in seconds.
Definition d578uv_codeplug.cc:550
void enableSubChannel(bool enable) override
Enables/disables sub channel.
Definition d578uv_codeplug.cc:798
void enableDisplayClock(bool enable) override
Enables/disables clock display.
Definition d578uv_codeplug.cc:1039
void enableCallAlert(bool enable) override
Enables/disables call alert.
Definition d578uv_codeplug.cc:832
virtual bool displayChannelNumber() const
Returns true if the channel number is displayed.
Definition d578uv_codeplug.cc:1317
void setGPSTimeZone(const QTimeZone &zone) override
Sets the GPS time zone.
Definition d578uv_codeplug.cc:841
void setAutoRepeaterMaxFrequencyUHF(Frequency Hz) override
Sets the maximum frequency in Hz for the auto-repeater range in UHF band.
Definition d578uv_codeplug.cc:1161
void setDefaultChannelBIndex(unsigned idx) override
Sets the default channel index for VFO B.
Definition d578uv_codeplug.cc:1528
void setDMRMicGain(Level gain) override
Sets the microphone gain.
Definition d578uv_codeplug.cc:615
void enableVolumeChangePrompt(bool enable) override
Enables/disables the volume change prompt.
Definition d578uv_codeplug.cc:967
virtual void enableWFM(bool enable)
Enables/disables WFM/Airband receiver.
Definition d578uv_codeplug.cc:734
void setFuncKeyCShort(AnytoneKeySettingsExtension::KeyFunction func) override
Sets the key function for a short press on the function key 3/C.
Definition d578uv_codeplug.cc:1703
virtual bool monitorIDMatch() const
Returns true if the monitor matches ID.
Definition d578uv_codeplug.cc:999
bool gps() const override
Returns true if GPS is enabled.
Definition d578uv_codeplug.cc:758
void enableGPSUnitsImperial(bool enable) override
Enables/disables imperial GPS units.
Definition d578uv_codeplug.cc:1357
void setMenuExitTime(Interval intv) override
Sets the menu exit time in seconds.
Definition d578uv_codeplug.cc:886
void enableKeepLastCaller(bool enable) override
Enables/disables keeping the last caller when changing the channel.
Definition d578uv_codeplug.cc:1595
virtual void enableMonitorTimeSlotHold(bool enable)
Enables/disables monitor time slot hold.
Definition d578uv_codeplug.cc:1012
virtual void setRepeaterRangeCheckCount(unsigned n)
Sets the number of repeater range checks.
Definition d578uv_codeplug.cc:1568
Frequency autoRepeaterMaxFrequencyVHF() const override
Returns the maximum frequency in Hz for the auto-repeater range in VHF band.
Definition d578uv_codeplug.cc:1140
virtual bool fmSendIDAndContact() const
If enabled, the FM ID is sent together with selected contact.
Definition d578uv_codeplug.cc:1467
bool callEndPrompt() const override
Returns true if the call-end prompt is enabled.
Definition d578uv_codeplug.cc:909
virtual double steFrequency() const
Returns the STE (squelch tail eliminate) frequency setting in Hz.
Definition d578uv_codeplug.cc:647
void enableRecording(bool enable) override
Enables/disables recording.
Definition d578uv_codeplug.cc:743
virtual AnytoneKeySettingsExtension::KeyFunction funcKey4Short() const
Returns the function for programmable function key 4 short press.
Definition d578uv_codeplug.cc:1654
void setMaxVFOScanFrequencyVHF(Frequency hz) override
Sets the maximum VFO scan frequency for the VHF band in Hz.
Definition d578uv_codeplug.cc:1093
virtual Interval repeaterRangeCheckInterval() const
Returns the repeater range check period in seconds.
Definition d578uv_codeplug.cc:1555
virtual bool remoteStunKill() const
Returns true remote stun/kill is enabled.
Definition d578uv_codeplug.cc:927
bool keepLastCaller() const override
Returns true if the last caller is kept when changing channel.
Definition d578uv_codeplug.cc:1591
Frequency minVFOScanFrequencyUHF() const override
Returns the minimum VFO scan frequency for the UHF band in Hz.
Definition d578uv_codeplug.cc:1062
AnytoneKeySettingsExtension::KeyFunction funcKey2Long() const override
Returns the key function for a long press on the function key 2.
Definition d578uv_codeplug.cc:1726
virtual unsigned repeaterCheckNumNotifications() const
Returns the number of repeater check notifications.
Definition d578uv_codeplug.cc:1808
virtual bool repeaterCheckNotification() const
Returns true if repeater check notification is enabled.
Definition d578uv_codeplug.cc:1609
virtual void setMonitorSlotMatch(AnytoneDMRSettingsExtension::SlotMatch match)
Sets the monitor slot match.
Definition d578uv_codeplug.cc:985
unsigned autoRepeaterOffsetFrequencyIndexUHF() const override
Returns the auto-repeater offset frequency index for UHF.
Definition d578uv_codeplug.cc:1102
virtual void enableBTAndInternalMic(bool enable)
Enables/disables the internal mic when BT is active.
Definition d578uv_codeplug.cc:1265
virtual void setDefaultRoamingZoneIndex(unsigned idx)
Sets the default roaming zone index.
Definition d578uv_codeplug.cc:1541
virtual Interval gpsUpdatePeriod() const
Returns the GPS ranging interval in seconds.
Definition d578uv_codeplug.cc:1288
void enableKeyLockForced(bool enable) override
Enables/disables the "professional" key lock.
Definition d578uv_codeplug.cc:1390
void setMinVFOScanFrequencyUHF(Frequency hz) override
Sets the minimum VFO scan frequency for the UHF band in Hz.
Definition d578uv_codeplug.cc:1066
unsigned defaultChannelAIndex() const override
Returns the default channel index for VFO A.
Definition d578uv_codeplug.cc:1507
bool keyLockForced() const override
Returns true if the "professional" key is locked.
Definition d578uv_codeplug.cc:1386
void enableVFOModeB(bool enable) override
Enables/disables VFO mode for VFO B.
Definition d578uv_codeplug.cc:634
static constexpr unsigned int size()
The size of the element.
Definition d578uv_codeplug.hh:263
virtual void setFuncKeyDShort(AnytoneKeySettingsExtension::KeyFunction func)
Sets the function for programmable function key D short press.
Definition d578uv_codeplug.cc:1712
virtual void setLanguage(AnytoneDisplaySettingsExtension::Language lang)
Sets the UI language.
Definition d578uv_codeplug.cc:559
VFOStepSize
Encoded VFO step sizes.
Definition d578uv_codeplug.hh:243
virtual void enableSeparateDisplay(bool enable)
Enables/disables "separate display.
Definition d578uv_codeplug.cc:1586
Frequency autoRepeaterMaxFrequencyUHF() const override
Returns the maximum frequency in Hz for the auto-repeater range in UHF band.
Definition d578uv_codeplug.cc:1157
void enableCallEndPrompt(bool enable) override
Enables/disables the call-end prompt.
Definition d578uv_codeplug.cc:913
void setAutoRepeaterMinFrequencyVHF(Frequency Hz) override
Sets the minimum frequency in Hz for the auto-repeater range in VHF band.
Definition d578uv_codeplug.cc:1136
bool volumeChangePrompt() const override
Returns true if the volume change prompt is enabled.
Definition d578uv_codeplug.cc:963
virtual unsigned repeaterRangeCheckCount() const
Returns the number of repeater range checks.
Definition d578uv_codeplug.cc:1564
virtual Frequency tbstFrequency() const
Returns the TBST frequency.
Definition d578uv_codeplug.cc:803
AnytoneKeySettingsExtension::KeyFunction funcKey1Short() const override
Returns the key function for a short press on the function key 1.
Definition d578uv_codeplug.cc:1627
void setMaxSpeakerVolume(unsigned level) override
Sets the maximum volume.
Definition d578uv_codeplug.cc:922
void setFuncKeyCLong(AnytoneKeySettingsExtension::KeyFunction func) override
Sets the key function for a long press on the function key 3.
Definition d578uv_codeplug.cc:1793
virtual bool wfmMonitor() const
Returns true if WFM monitor is enabled.
Definition d578uv_codeplug.cc:776
virtual unsigned wfmChannelIndex() const
Returns the wide-FM (broadcast) channel index.
Definition d578uv_codeplug.cc:694
void enableKnobLock(bool enable) override
Enables/disables the knob lock.
Definition d578uv_codeplug.cc:1366
void enableSidekeysLock(bool enable) override
Enables/disables the sidekeys lock.
Definition d578uv_codeplug.cc:1382
virtual bool btHoldTimeEnabled() const
Returns true, if the bluetooth hold time is enabled.
Definition d578uv_codeplug.cc:1831
virtual void setFuncKey4Long(AnytoneKeySettingsExtension::KeyFunction func)
Sets the function for programmable function key 4 long press.
Definition d578uv_codeplug.cc:1748
void enableDMRResetTone(bool enable) override
Enables/disables the reset tone for digital calls.
Definition d578uv_codeplug.cc:868
unsigned maxSpeakerVolume() const override
Returns the maximum volume.
Definition d578uv_codeplug.cc:918
virtual bool bluetooth() const
Returns true if bluetooth is enabled.
Definition d578uv_codeplug.cc:1252
virtual void setAutoRoamPeriod(Interval min)
Sets the auto roaming period in minutes.
Definition d578uv_codeplug.cc:1339
virtual AnytoneKeySettingsExtension::KeyFunction funcKey4Long() const
Returns the function for programmable function key 4 long press.
Definition d578uv_codeplug.cc:1744
void setMinVFOScanFrequencyVHF(Frequency hz) override
Sets the minimum VFO scan frequency for the VHF band in Hz.
Definition d578uv_codeplug.cc:1084
virtual Interval transmitTimeout() const
Returns the transmit timeout in seconds.
Definition d578uv_codeplug.cc:546
virtual unsigned int btSpeakerGain() const
Returns the bluetooth speaker gain [1,10].
Definition d578uv_codeplug.cc:1307
bool callAlert() const override
Returns true if call alert is enabled.
Definition d578uv_codeplug.cc:828
void setDefaultZoneIndexA(unsigned idx) override
Sets the default zone (0-based) for VFO A.
Definition d578uv_codeplug.cc:1489
void enableGetGPSPosition(bool enable) override
Enables/disables get GPS position.
Definition d578uv_codeplug.cc:949
virtual void setPriorityZoneBIndex(unsigned idx)
Sets the priority zone B index.
Definition d578uv_codeplug.cc:1238
virtual Interval btHoldTime() const
Returns the bluetooth hold time.
Definition d578uv_codeplug.cc:1841
virtual bool monitorTimeSlotHold() const
Returns true if the monitor holds the time slot.
Definition d578uv_codeplug.cc:1008
virtual void setFuncKey4Short(AnytoneKeySettingsExtension::KeyFunction func)
Sets the function for programmable function key 4 short press.
Definition d578uv_codeplug.cc:1658
virtual void setFuncKey6Long(AnytoneKeySettingsExtension::KeyFunction func)
Sets the function for programmable function key 6 long press.
Definition d578uv_codeplug.cc:1766
virtual void setVFOStepSize(const Frequency &f)
Sets the VFO step size.
Definition d578uv_codeplug.cc:583
bool activeChannelB() const override
Returns true if the active channel is VFO B.
Definition d578uv_codeplug.cc:785
virtual AnytoneKeySettingsExtension::KeyFunction funcKeyDLong() const
Returns the function for programmable function key D long press.
Definition d578uv_codeplug.cc:1798
bool idleChannelTone() const override
Returns true if the idle channel tone is enabled.
Definition d578uv_codeplug.cc:873
virtual Interval btRXDelay() const
Returns the bluetooth RX delay in ms.
Definition d578uv_codeplug.cc:1863
virtual void enableWFMVFO(bool enable)
Enables/disables VFO mode for WFM RX.
Definition d578uv_codeplug.cc:707
void setResetToneMelody(const Melody &melody) override
Sets the reset-tone melody.
Definition d578uv_codeplug.cc:1216
virtual void setWakeHeadPeriod(Interval ms)
Sets the wake head-period in ms.
Definition d578uv_codeplug.cc:689
virtual bool btAndInternalSpeaker() const
Returns true if the internal speaker is additionally active when BT is active.
Definition d578uv_codeplug.cc:1270
unsigned memoryZoneA() const override
Returns the memory zone for VFO A.
Definition d578uv_codeplug.cc:712
virtual bool roaming() const
Returns true if roaming is enabled.
Definition d578uv_codeplug.cc:1618
void enableShowLastHeard(bool enable) override
Enables/disables showing last heard.
Definition d578uv_codeplug.cc:1426
bool defaultChannelBIsVFO() const override
Returns true if the default channel for VFO B is VFO.
Definition d578uv_codeplug.cc:1520
virtual void setBTRXDelay(Interval delay)
Sets the bluetooth RX delay in ms.
Definition d578uv_codeplug.cc:1870
virtual bool remoteMonitor() const
Returns true remote monitor is enabled.
Definition d578uv_codeplug.cc:936
virtual AnytoneKeySettingsExtension::KeyFunction funcKey3Long() const
Returns the function for programmable function key 3 long press.
Definition d578uv_codeplug.cc:1735
void idleToneMelody(Melody &melody) const override
Returns the idle-tone melody.
Definition d578uv_codeplug.cc:1186
virtual bool filterOwnID() const
Returns true if the own ID is filtered in call lists.
Definition d578uv_codeplug.cc:891
bool enhanceAudio() const override
Returns true if the audio is "enhanced".
Definition d578uv_codeplug.cc:1053
virtual AnytoneKeySettingsExtension::KeyFunction funcKey5Short() const
Returns the function for programmable function key 5 short press.
Definition d578uv_codeplug.cc:1663
virtual unsigned priorityZoneAIndex() const
Returns the priority Zone A index.
Definition d578uv_codeplug.cc:1226
unsigned defaultChannelBIndex() const override
Returns the default channel index for VFO B.
Definition d578uv_codeplug.cc:1524
virtual void setChannelNameColor(AnytoneDisplaySettingsExtension::Color color)
Sets the channel name color.
Definition d578uv_codeplug.cc:1604
bool keyToneEnabled() const override
Returns true, if the key tone is enabled.
Definition d578uv_codeplug.cc:537
void setAutoRepeaterDirectionA(AnytoneAutoRepeaterSettingsExtension::Direction dir) override
Sets the auto-repeater offset direction for VFO A.
Definition d578uv_codeplug.cc:976
unsigned brightness() const override
Returns the display brightness.
Definition d578uv_codeplug.cc:749
virtual AnytoneDisplaySettingsExtension::Language language() const
Returns the UI language.
Definition d578uv_codeplug.cc:555
bool knobLock() const override
Returns true if the knob is locked.
Definition d578uv_codeplug.cc:1362
virtual void setRoamingStartCondition(AnytoneRoamingSettingsExtension::RoamStart cond)
Sets the roaming start condition.
Definition d578uv_codeplug.cc:1577
void setFuncKeyALong(AnytoneKeySettingsExtension::KeyFunction func) override
Sets the key function for a long press on the function key 1.
Definition d578uv_codeplug.cc:1775
virtual bool repeaterRangeCheck() const
Returns true if repeater range check is enabled.
Definition d578uv_codeplug.cc:1546
void setLongPressDuration(Interval ms) override
Sets the long-press duration in ms.
Definition d578uv_codeplug.cc:958
virtual unsigned fmCallHold() const
Returns the analog call hold in seconds.
Definition d578uv_codeplug.cc:1026
virtual AnytoneKeySettingsExtension::KeyFunction funcKeyDShort() const
Returns the function for programmable function key D short press.
Definition d578uv_codeplug.cc:1708
bool defaultChannel() const override
Returns true if the default boot channel is enabled.
Definition d578uv_codeplug.cc:1476
bool gpsUnitsImperial() const override
Returns true if the GPS units are imperial.
Definition d578uv_codeplug.cc:1353
void clearAutoRepeaterOffsetFrequencyIndexUHF() override
Clears the auto-repeater offset frequency index for UHF.
Definition d578uv_codeplug.cc:1110
bool fmTalkPermit() const override
Returns true if the talk permit tone is enabled for digital channels.
Definition d578uv_codeplug.cc:855
virtual Interval groupCallHangTime() const
Returns the group call hang time in seconds.
Definition d578uv_codeplug.cc:667
void setVFOScanType(AnytoneSettingsExtension::VFOScanType type) override
Sets the VFO scan type.
Definition d578uv_codeplug.cc:604
virtual void enableBTAndInternalSpeaker(bool enable)
Enables/disables the internal speaker when BT is active.
Definition d578uv_codeplug.cc:1274
AnytoneKeySettingsExtension::KeyFunction funcKeyBLong() const override
Returns the key function for a long press on the function key 2.
Definition d578uv_codeplug.cc:1780
virtual void setRepeaterCheckNumNotifications(unsigned num)
Sets the number of repeater check notifications.
Definition d578uv_codeplug.cc:1812
bool hasAutoRepeaterOffsetFrequencyIndexUHF() const override
Returns true if the auto-repeater offset frequency for UHF is set.
Definition d578uv_codeplug.cc:1098
virtual bool pluginRecTone() const
Returns true if the plug-in record tone is enabled.
Definition d578uv_codeplug.cc:1279
void setFuncKey2Long(AnytoneKeySettingsExtension::KeyFunction func) override
Sets the key function for a long press on the function key 2.
Definition d578uv_codeplug.cc:1730
virtual Interval txBacklightDuration() const
Returns the backlight duration during TX in seconds.
Definition d578uv_codeplug.cc:1819
virtual bool btAndInternalMic() const
Returns true if the internal mic is additionally active when BT is active.
Definition d578uv_codeplug.cc:1261
Level dmrMicGain() const override
Returns the mirophone gain.
Definition d578uv_codeplug.cc:610
bool sidekeysLock() const override
Returns true if the sidekeys are locked.
Definition d578uv_codeplug.cc:1378
void setAutoRepeaterOffsetFrequenyIndexVHF(unsigned idx) override
Sets the auto-repeater offset frequency index for VHF.
Definition d578uv_codeplug.cc:1123
bool keypadLock() const override
Returns true if the keypad is locked.
Definition d578uv_codeplug.cc:1370
virtual void enableRemoteStunKill(bool enable)
Enables/disables remote stun/kill.
Definition d578uv_codeplug.cc:931
void setAutoRepeaterOffsetFrequenyIndexUHF(unsigned idx) override
Sets the auto-repeater offset frequency index for UHF.
Definition d578uv_codeplug.cc:1106
virtual void setGroupCallHangTime(Interval sec)
Sets the group call hang time in seconds.
Definition d578uv_codeplug.cc:671
virtual bool btHoldTimeInfinite() const
Returns true, if the bluetooth hold time is infinite.
Definition d578uv_codeplug.cc:1836
virtual void setTXBacklightDuration(Interval sec)
Sets the backlight duration during TX in seconds.
Definition d578uv_codeplug.cc:1824
bool smsAlert() const override
Returns true if SMS alert is enabled.
Definition d578uv_codeplug.cc:767
TBSTFrequency
TBST (open repeater) frequencies.
Definition d578uv_codeplug.hh:233
Frequency autoRepeaterMinFrequencyVHF() const override
Returns the minimum frequency in Hz for the auto-repeater range in VHF band.
Definition d578uv_codeplug.cc:1132
void enableSMSAlert(bool enable) override
Enables/disables SMS alert.
Definition d578uv_codeplug.cc:771
virtual void enableGPSMessage(bool enable)
Enables/disables GPS range reporting.
Definition d578uv_codeplug.cc:1048
bool dmrResetTone() const override
Returns true if the reset tone is enabled for digital calls.
Definition d578uv_codeplug.cc:864
virtual void setRepeaterRangeCheckInterval(Interval sec)
Sets the repeater range check interval in seconds.
Definition d578uv_codeplug.cc:1559
static constexpr unsigned int size()
The size of the element.
Definition d578uv_codeplug.hh:1340
HotKeySettingsElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition d578uv_codeplug.cc:3162
uint8_t * hotKeySetting(unsigned int n) const
Returns a pointer to the n-th hot key setting.
Definition d578uv_codeplug.cc:3175
Config * preprocess(Config *config, const ErrorStack &err) const override
Returns a prepared configuration for this particular radio.
Definition d578uv_codeplug.cc:3330
virtual bool encodeAirBandChannels(const Flags &flags, Context &ctx, const ErrorStack &err=ErrorStack())
Encode all defined air band channels.
Definition d578uv_codeplug.cc:3570
void allocateGeneralSettings() override
Allocates general settings memory section.
Definition d578uv_codeplug.cc:3509
void setBitmaps(Context &ctx) override
Sets all bitmaps for the given config.
Definition d578uv_codeplug.cc:3297
bool createChannels(Context &ctx, const ErrorStack &err=ErrorStack()) override
Create channels from codeplug.
Definition d578uv_codeplug.cc:3412
bool encodeContacts(const Flags &flags, Context &ctx, const ErrorStack &err=ErrorStack()) override
Encode contacts into codeplug.
Definition d578uv_codeplug.cc:3479
bool encodeElements(const Flags &flags, Context &ctx, const ErrorStack &err=ErrorStack()) override
Encodes the given config (via context) to the binary codeplug.
Definition d578uv_codeplug.cc:3362
D578UVCodeplug(const QString &label, QObject *parent=nullptr)
Hidden constructor.
Definition d578uv_codeplug.cc:3272
virtual bool allocateAirBandChannels()
Allocate Air band channels.
Definition d578uv_codeplug.cc:3554
virtual bool createAirBandChannels(Context &ctx, const ErrorStack &err=ErrorStack())
Decode all air band channels.
Definition d578uv_codeplug.cc:3593
bool decodeGeneralSettings(Context &ctx, const ErrorStack &err=ErrorStack()) override
Decodes the general settings section.
Definition d578uv_codeplug.cc:3528
void allocateForEncoding() override
Allocate all code-plug elements that are defined through the common Config.
Definition d578uv_codeplug.cc:3309
bool encodeChannels(const Flags &flags, Context &ctx, const ErrorStack &err=ErrorStack()) override
Encode channels into codeplug.
Definition d578uv_codeplug.cc:3393
bool linkChannels(Context &ctx, const ErrorStack &err=ErrorStack()) override
Link channels.
Definition d578uv_codeplug.cc:3433
bool encodeGeneralSettings(const Flags &flags, Context &ctx, const ErrorStack &err=ErrorStack()) override
Encodes the general settings section.
Definition d578uv_codeplug.cc:3518
void allocateContacts() override
Allocate contacts from bitmaps.
Definition d578uv_codeplug.cc:3455
bool linkGeneralSettings(Context &ctx, const ErrorStack &err=ErrorStack()) override
Link the general settings.
Definition d578uv_codeplug.cc:3538
bool createElements(Context &ctx, const ErrorStack &err=ErrorStack()) override
Creates all config objects from the downloaded codeplug.
Definition d578uv_codeplug.cc:3377
void allocateHotKeySettings() override
Allocates hot key settings memory section.
Definition d578uv_codeplug.cc:3324
void allocateForDecoding() override
Allocate all code-plug elements that must be downloaded for decoding.
Definition d578uv_codeplug.cc:3316
bool allocateBitmaps() override
Allocates the bitmaps.
Definition d578uv_codeplug.cc:3285
Represents the actual channel encoded within the binary D878UV codeplug.
Definition d878uv_codeplug.hh:93
AdvancedEncryptionType
Possible encryption types.
Definition d878uv_codeplug.hh:116
D878UVCodeplug(const QString &label, QObject *parent=nullptr)
Hidden constructor.
Definition d878uv_codeplug.cc:3902
uint32_t size() const
Returns the total size of the DFU file.
Definition dfufile.cc:52
This class represents a DMR position reporting system within the codeplug.
Definition gpssystem.hh:69
Represents a digital contact, that is a DMR number.
Definition contact.hh:141
TalkerAliasEncoding
Possible talker alias encodings.
Definition dmrsettings.hh:35
Implements a stack of error messages to provide a pretty formatted error traceback.
Definition errorstack.hh:43
Represents a time interval.
Definition interval.hh:11
Some simple class implementing a [1-10] level setting.
Definition level.hh:15
A config item that encodes a melody.
Definition melody.hh:20
Generic representation of a RX group list.
Definition rxgrouplist.hh:14
Represents the common radio-global settings.
Definition radiosettings.hh:17
Base class for all Radio objects.
Definition radio.hh:32
Format
Possible SMS formats, DMR is usually a good idea.
Definition smsextension.hh:65
Generic representation of a scan list.
Definition scanlist.hh:15
Represents a zone within the generic configuration.
Definition zone.hh:15
Internal used offsets within the element.
Definition anytone_codeplug.hh:1261
Holds a range of values [min, max].
Definition codeplug.hh:94
Base class for Limits.
Definition codeplug.hh:92
Some type to specify a bit offset.
Definition codeplug.hh:70
Base class for Offsets.
Definition codeplug.hh:68
Some limits of the channel.
Definition d578uv_codeplug.hh:1389
static constexpr unsigned int nameLength()
Maximum name length.
Definition d578uv_codeplug.hh:1390
Internal used offsets within the element.
Definition d578uv_codeplug.hh:1395
Internal offsets within the channel element.
Definition d578uv_codeplug.hh:150
Internal offsets within element.
Definition d578uv_codeplug.hh:205
Some limits for the settings.
Definition d578uv_codeplug.hh:1246
static constexpr unsigned int maxBluetoothPTTSleepDelay()
Maximum delay in minutes.
Definition d578uv_codeplug.hh:1247
static constexpr Range< unsigned int > micGain()
Valid range for mic gain settings.
Definition d578uv_codeplug.hh:1249
static constexpr unsigned int maxWeatherChannelIndex()
Maximum weather channel index.
Definition d578uv_codeplug.hh:1248
Internal used offset within the element.
Definition d578uv_codeplug.hh:1254
Some limits for the settings.
Definition d578uv_codeplug.hh:749
Some internal offsets.
Definition d578uv_codeplug.hh:755
Device specific time zones.
Definition d578uv_codeplug.hh:220
static QVector< QTimeZone > _timeZones
Vector of possible time-zones.
Definition d578uv_codeplug.hh:498
static QTimeZone decode(uint8_t code)
Decodes time zone.
Definition d578uv_codeplug.cc:508
static uint8_t encode(const QTimeZone &zone)
Encodes time zone.
Definition d578uv_codeplug.cc:514
Some limits for this element.
Definition d578uv_codeplug.hh:1346
static constexpr unsigned int numEntries()
Maximum number of hot-key entries.
Definition d578uv_codeplug.hh:1347
Device specific key function encoding and decoding.
Definition d578uv_codeplug.hh:27
static AnytoneKeySettingsExtension::KeyFunction decode(uint8_t code)
Decodes key function.
Definition d578uv_codeplug.cc:427
KeyFunctionCode
Encoded key functions.
Definition d578uv_codeplug.hh:36
static uint8_t encode(AnytoneKeySettingsExtension::KeyFunction tone)
Encodes key function.
Definition d578uv_codeplug.cc:360
Some limits for the codeplug.
Definition d578uv_codeplug.hh:1461
static constexpr unsigned int airBandChannels()
Maximum number of air-band channels.
Definition d578uv_codeplug.hh:1463
Internal used offsets within the codeplug.
Definition d578uv_codeplug.hh:1468
Internal used offsets within the channel element.
Definition d878uv_codeplug.hh:231
Some limits for the settings.
Definition d878uv_codeplug.hh:810
Some limits.
Definition d878uv_codeplug.hh:2022
Internal offsets within the codeplug.
Definition d878uv_codeplug.hh:2032
Helper type to encode frequencies without any rounding error.
Definition frequency.hh:107