libdrmconf 0.14.1
A library to program DMR radios.
Loading...
Searching...
No Matches
anytone_codeplug.hh
1#ifndef ANYTONECODEPLUG_HH
2#define ANYTONECODEPLUG_HH
3
4#include "codeplug.hh"
5#include <QGeoCoordinate>
6#include "channel.hh"
7#include "contact.hh"
8#include "anytone_settingsextension.hh"
9
10
11class RadioSettings;
12
13
23 Q_OBJECT
24
25public:
27 struct CTCSS {
28 public:
30 static uint8_t encode(const SelectiveCall &tone);
32 static SelectiveCall decode(uint8_t code);
33
34 protected:
36 static SelectiveCall _codeTable[52];
37 };
38
46 {
47 protected:
49 InvertedBytemapElement(uint8_t *ptr, size_t size);
50
51 public:
53 void clear();
54
56 virtual bool isEncoded(unsigned int idx) const ;
58 virtual void setEncoded(unsigned int idx, bool enable);
60 virtual void enableFirst(unsigned int n);
61 };
62
68 class ChannelElement: public Element
69 {
70 public:
72 enum class Mode {
73 Analog = 0,
74 Digital = 1,
77 };
78
86
88 enum class RepeaterMode {
89 Simplex = 0,
92 };
93
95 enum class SignalingMode {
96 None = 0,
97 CTCSS = 1,
98 DCS = 2
99 };
100
102 enum class Admit {
103 Always = 0,
104 Free = 1,
107 Tone = 1,
108 Busy = 2
109 };
110
112 enum class OptSignaling {
113 Off = 0,
114 DTMF = 1,
117 };
118
119 protected:
121 ChannelElement(uint8_t *ptr, unsigned size);
122
123 public:
125 ChannelElement(uint8_t *ptr);
127 virtual ~ChannelElement();
128
130 static constexpr unsigned int size() { return 0x0040; }
131
133 void clear();
134
136 virtual unsigned rxFrequency() const;
138 virtual void setRXFrequency(unsigned hz);
139
143 virtual unsigned txOffset() const;
147 virtual void setTXOffset(unsigned hz);
149 virtual unsigned txFrequency() const;
152 virtual void setTXFrequency(unsigned hz);
153
155 virtual Mode mode() const;
157 virtual void setMode(Mode mode);
158
160 virtual Channel::Power power() const;
162 virtual void setPower(Channel::Power power);
163
165 virtual FMChannel::Bandwidth bandwidth() const;
167 virtual void setBandwidth(FMChannel::Bandwidth bw);
168
170 virtual RepeaterMode repeaterMode() const;
172 virtual void setRepeaterMode(RepeaterMode mode);
173
175 virtual SignalingMode rxSignalingMode() const;
179 virtual SelectiveCall rxTone() const;
181 virtual void setRXTone(const SelectiveCall &code);
182
184 virtual SignalingMode txSignalingMode() const;
188 virtual SelectiveCall txTone() const;
190 virtual void setTXTone(const SelectiveCall &code);
191
193 virtual bool ctcssPhaseReversal() const;
195 virtual void enableCTCSSPhaseReversal(bool enable);
196
198 virtual bool rxOnly() const;
200 virtual void enableRXOnly(bool enable);
202 virtual bool callConfirm() const;
204 virtual void enableCallConfirm(bool enable);
206 virtual bool talkaround() const;
208 virtual void enableTalkaround(bool enable);
209
211 virtual bool txCTCSSIsCustom() const;
213 virtual SelectiveCall txCTCSS() const;
215 virtual void setTXCTCSS(const SelectiveCall &tone);
217 virtual void enableTXCustomCTCSS();
219 virtual bool rxCTCSSIsCustom() const;
221 virtual SelectiveCall rxCTCSS() const;
223 virtual void setRXCTCSS(const SelectiveCall &tone);
225 virtual void enableRXCustomCTCSS();
226
228 virtual SelectiveCall txDCS() const;
230 virtual void setTXDCS(const SelectiveCall &code);
232 virtual SelectiveCall rxDCS() const;
234 virtual void setRXDCS(const SelectiveCall &code);
235
237 virtual double customCTCSSFrequency() const;
239 virtual void setCustomCTCSSFrequency(double hz);
240
242 virtual unsigned twoToneDecodeIndex() const;
244 virtual void setTwoToneDecodeIndex(unsigned idx);
245
247 virtual unsigned contactIndex() const;
249 virtual void setContactIndex(unsigned idx);
250
252 virtual unsigned radioIDIndex() const;
254 virtual void setRadioIDIndex(unsigned idx);
255
260
262 virtual Admit admit() const;
264 virtual void setAdmit(Admit admit);
265
267 virtual OptSignaling optionalSignaling() const;
269 virtual void setOptionalSignaling(OptSignaling sig);
270
272 virtual bool hasScanListIndex() const;
274 virtual unsigned scanListIndex() const;
276 virtual void setScanListIndex(unsigned idx);
278 virtual void clearScanListIndex();
279
281 virtual bool hasGroupListIndex() const;
283 virtual unsigned groupListIndex() const;
285 virtual void setGroupListIndex(unsigned idx);
287 virtual void clearGroupListIndex();
288
290 virtual unsigned twoToneIDIndex() const;
292 virtual void setTwoToneIDIndex(unsigned idx);
294 virtual unsigned fiveToneIDIndex() const;
296 virtual void setFiveToneIDIndex(unsigned idx);
298 virtual unsigned dtmfIDIndex() const;
300 virtual void setDTMFIDIndex(unsigned idx);
301
303 virtual unsigned colorCode() const;
305 virtual void setColorCode(unsigned code);
306
308 virtual DMRChannel::TimeSlot timeSlot() const;
310 virtual void setTimeSlot(DMRChannel::TimeSlot ts);
311
313 virtual bool smsConfirm() const;
315 virtual void enableSMSConfirm(bool enable);
317 virtual bool simplexTDMA() const;
319 virtual void enableSimplexTDMA(bool enable);
321 virtual bool adaptiveTDMA() const;
323 virtual void enableAdaptiveTDMA(bool enable);
325 virtual bool rxAPRS() const;
327 virtual void enableRXAPRS(bool enable);
329 virtual bool loneWorker() const;
331 virtual void enableLoneWorker(bool enable);
332
334 virtual QString name() const;
336 virtual void setName(const QString &name);
337
339 virtual Channel *toChannelObj(Context &ctx) const;
341 virtual bool linkChannelObj(Channel *c, Context &ctx) const;
343 virtual bool fromChannelObj(const Channel *c, Context &ctx);
344
345 public:
347 struct Limit: Element::Limit {
349 static constexpr unsigned int nameLength() { return 16; }
350 };
351
352 protected:
354 struct Offset: public Element::Offset {
356 static constexpr unsigned int rxFrequency() { return 0x0000; }
357 static constexpr unsigned int txFrequencyOffset() { return 0x0004; }
358 static constexpr Bit channelMode() { return {0x0008, 0}; }
359 static constexpr Bit power() { return {0x0008, 2}; }
360 static constexpr Bit bandwidth() { return {0x0008, 4}; }
361 static constexpr Bit repeaterMode() { return {0x0008, 6}; }
362 static constexpr Bit rxSignalingMode() { return {0x0009, 0}; }
363 static constexpr Bit txSignalingMode() { return {0x0009, 2}; }
364 static constexpr Bit ctcssPhaseReversal() { return {0x0009, 4}; }
365 static constexpr Bit rxOnly() { return {0x0009, 5}; }
366 static constexpr Bit callConfirm() { return {0x0009, 6}; }
367 static constexpr Bit talkaround() { return {0x0009, 7}; }
368 static constexpr unsigned int txCTCSS() { return 0x000a; }
369 static constexpr unsigned int rxCTCSS() { return 0x000b; }
370 static constexpr unsigned int txDCS() { return 0x000c; }
371 static constexpr unsigned int rxDCS() { return 0x000e; }
372 static constexpr unsigned int customCTCSS() { return 0x0010; }
373 static constexpr unsigned int twoFunctionIndex() { return 0x0012; }
374 static constexpr unsigned int contactIndex() { return 0x0014; }
375 static constexpr unsigned int radioIdIndex() { return 0x0018; }
376 static constexpr Bit squelchMode() { return {0x0019, 4}; }
377 static constexpr Bit admitCriterion() { return {0x001a, 0}; }
378 static constexpr Bit optionalSingnaling() { return {0x001a, 4}; }
379 static constexpr unsigned int scanListIndex() { return 0x001b; }
380 static constexpr unsigned int groupListIndex() { return 0x001c; }
381 static constexpr unsigned int twoToneIDIndex() { return 0x001d; }
382 static constexpr unsigned int fiveToneIDIndex() { return 0x001e; }
383 static constexpr unsigned int dtmfIDIndex() { return 0x001f; }
384 static constexpr unsigned int colorCode() { return 0x0020; }
385 static constexpr Bit timeSlot() { return {0x0021, 0}; }
386 static constexpr Bit smsConfirm() { return {0x0021, 1}; }
387 static constexpr Bit simplexTDMA() { return {0x0021, 2}; }
388 static constexpr Bit adaptiveTDMA() { return {0x0021, 4}; }
389 static constexpr Bit rxAPRS() { return {0x0021, 5}; }
390 static constexpr Bit loneWorker() { return {0x0021, 7}; }
391 static constexpr unsigned int name() { return 0x0023; }
393 };
394 };
395
398 {
399 protected:
401 ChannelBitmapElement(uint8_t *ptr, size_t size);
402
403 public:
405 ChannelBitmapElement(uint8_t *ptr);
406
408 static constexpr unsigned int size() { return 0x0200; }
409 };
410
411
418 {
419 protected:
421 ContactElement(uint8_t *ptr, unsigned size);
422
423 public:
425 explicit ContactElement(uint8_t *ptr);
427 virtual ~ContactElement();
428
430 static constexpr unsigned int size() { return 0x0064; }
431
433 void clear();
435 bool isValid() const;
436
438 virtual DMRContact::Type type() const;
440 virtual void setType(DMRContact::Type type);
441
443 virtual QString name() const;
445 virtual void setName(const QString &name);
446
448 virtual unsigned number() const;
450 virtual void setNumber(unsigned number);
451
456
458 virtual DMRContact *toContactObj(Context &ctx) const;
460 virtual bool fromContactObj(const DMRContact *contact, Context &ctx);
461
462 public:
464 struct Limit: public Element::Limit {
466 static constexpr unsigned int nameLength() { return 16; }
467 };
468
469 protected:
471 struct Offset: public Element::Offset {
473 static constexpr unsigned int type() { return 0x0000; }
474 static constexpr unsigned int name() { return 0x0001; }
475 static constexpr unsigned int number() { return 0x0023; }
476 static constexpr unsigned int alertType() { return 0x0027; }
478 };
479 };
480
483 {
484 protected:
486 ContactBitmapElement(uint8_t *ptr, size_t size);
487
488 public:
490 ContactBitmapElement(uint8_t *ptr);
491
493 static constexpr unsigned int size() { return 0x0500; }
494 };
495
496
502 {
503 protected:
505 DTMFContactElement(uint8_t *ptr, unsigned size);
506
507 public:
509 explicit DTMFContactElement(uint8_t *ptr);
511 virtual ~DTMFContactElement();
512
514 static constexpr unsigned int size() { return 0x0018; }
515
517 void clear();
518
520 virtual QString number() const;
522 virtual void setNumber(const QString &number);
523
525 virtual QString name() const;
527 virtual void setName(const QString &name);
528
530 virtual DTMFContact *toContact() const;
532 virtual bool fromContact(const DTMFContact *contact);
533
534 public:
536 struct Limit {
537 static constexpr unsigned int digitCount() { return 14; }
538 static constexpr unsigned int nameLength() { return 15; }
539 };
540
541 protected:
543 struct Offset {
545 static constexpr unsigned int digits() { return 0x0000; }
546 static constexpr unsigned int numDigits() { return 0x0007; }
547 static constexpr unsigned int name() { return 0x0008; }
549 };
550 };
551
554 {
555 protected:
557 DTMFContactBytemapElement(uint8_t *ptr, size_t size);
558
559 public:
561 explicit DTMFContactBytemapElement(uint8_t *ptr);
562
564 static constexpr unsigned int size() { return 0x0100; }
565 };
566
567
573 {
574 protected:
576 GroupListElement(uint8_t *ptr, unsigned size);
577
578 public:
580 GroupListElement(uint8_t *ptr);
581
583 static constexpr unsigned int size() { return 0x0120; }
584
586 void clear();
588 bool isValid() const;
589
591 virtual QString name() const;
593 virtual void setName(const QString &name);
594
596 virtual bool hasMemberIndex(unsigned n) const;
598 virtual unsigned memberIndex(unsigned n) const;
600 virtual void setMemberIndex(unsigned n, unsigned idx);
602 virtual void clearMemberIndex(unsigned n);
603
607 virtual RXGroupList *toGroupListObj() const;
610 virtual bool linkGroupList(RXGroupList *lst, Context &ctx) const;
612 virtual bool fromGroupListObj(const RXGroupList *lst, Context &ctx);
613
614 public:
616 struct Limit: public Element::Limit {
618 static constexpr unsigned int members() { return 64; }
620 static constexpr unsigned int nameLength() { return 16; }
621 };
622
623 protected:
625 struct Offset: public Element::Offset {
627 static constexpr unsigned int members() { return 0x0000; }
628 static constexpr unsigned int betweenMembers() { return 0x0004; }
629 static constexpr unsigned int name() { return 0x0100; }
631 };
632 };
633
636 {
637 protected:
639 GroupListBitmapElement(uint8_t *ptr, size_t size);
640
641 public:
643 explicit GroupListBitmapElement(uint8_t *ptr);
644
646 static constexpr unsigned int size() { return 0x0020; }
647 };
648
649
655 {
656 public:
658 enum class PriChannel {
659 Off = 0,
662 Both = 3
663 };
664
676
677 protected:
679 ScanListElement(uint8_t *ptr, unsigned size);
680
681 public:
683 ScanListElement(uint8_t *ptr);
684
686 static constexpr unsigned int size() { return 0x0090; }
687
689 void clear();
690
692 virtual PriChannel priorityChannels() const;
694 virtual void setPriorityChannels(PriChannel sel);
695
697 virtual bool hasPrimary() const;
699 virtual bool primaryIsSelected() const;
701 virtual unsigned primary() const;
703 virtual void setPrimary(unsigned idx);
705 virtual void setPrimarySelected();
707 virtual void clearPrimaryChannel();
708
710 virtual bool hasSecondary() const;
712 virtual bool secondaryIsSelected() const;
714 virtual unsigned secondary() const;
716 virtual void setSecondary(unsigned idx);
718 virtual void setSecondarySelected();
720 virtual void clearSecondaryChannel();
721
723 virtual Interval lookBackTimeA() const;
725 virtual void setLookBackTimeA(const Interval &sec);
727 virtual Interval lookBackTimeB() const;
729 virtual void setLookBackTimeB(const Interval& sec);
731 virtual Interval dropOutDelay() const;
733 virtual void setDropOutDelay(const Interval& sec);
735 virtual Interval dwellTime() const;
737 virtual void setDwellTime(const Interval& sec);
738
740 virtual RevertChannel revertChannel() const;
742 virtual void setRevertChannel(RevertChannel type);
743
745 virtual QString name() const;
747 virtual void setName(const QString &name);
748
750 virtual bool hasMemberIndex(unsigned n) const;
752 virtual unsigned memberIndex(unsigned n) const;
754 virtual void setMemberIndex(unsigned n, unsigned idx);
756 virtual void clearMemberIndex(unsigned n);
757
760 virtual ScanList *toScanListObj() const;
762 virtual bool linkScanListObj(ScanList *lst, Context &ctx) const;
764 virtual bool fromScanListObj(ScanList *lst, Context &ctx);
765
766 public:
768 struct Limit: public Element::Limit {
770 static constexpr unsigned int members() { return 50; }
772 static constexpr unsigned int nameLength() { return 16; }
773 };
774
775 protected:
777 struct Offset: public Element::Offset {
779 static constexpr unsigned int priorityChannel() { return 0x0001; }
780 static constexpr unsigned int primaryChannel() { return 0x0002; }
781 static constexpr unsigned int secondaryChannel() { return 0x0004; }
782 static constexpr unsigned int lookBackTimeA() { return 0x0006; }
783 static constexpr unsigned int lookBackTimeB() { return 0x0008; }
784 static constexpr unsigned int dropOutDelay() { return 0x000a; }
785 static constexpr unsigned int dwellTime() { return 0x000c; }
786 static constexpr unsigned int revertChannel() { return 0x000e; }
787 static constexpr unsigned int name() { return 0x000f; }
788 static constexpr unsigned int members() { return 0x0020; }
789 static constexpr unsigned int betweenMembers() { return 0x0002; }
791 };
792 };
793
796 {
797 protected:
799 ScanListBitmapElement(uint8_t *ptr, size_t size);
800
801 public:
803 ScanListBitmapElement(uint8_t *ptr);
804
806 static constexpr unsigned int size() { return 0x00000020; }
807 };
808
809
815 {
816 protected:
818 RadioIDElement(uint8_t *ptr, unsigned size);
819
820 public:
822 RadioIDElement(uint8_t *ptr);
823
825 static constexpr unsigned int size() { return 0x0020; }
826
828 void clear();
829
831 virtual unsigned number() const;
833 virtual void setNumber(unsigned number);
834
836 virtual QString name() const;
838 virtual void setName(const QString &name);
839
841 virtual bool fromRadioID(DMRRadioID *id);
843 virtual DMRRadioID *toRadioID() const;
844
845 public:
847 struct Limit: public Element::Limit {
849 static constexpr unsigned int nameLength() { return 16; }
850 };
851
852 protected:
854 struct Offset: public Element::Offset {
856 static constexpr unsigned int number() { return 0x0000; }
857 static constexpr unsigned int name() { return 0x0005; }
859 };
860 };
861
864 {
865 protected:
867 RadioIDBitmapElement(uint8_t *ptr, size_t size);
868
869 public:
871 RadioIDBitmapElement(uint8_t *ptr);
872
874 static constexpr unsigned int size() { return 0x0020; }
875 };
876
877
886 {
887 public:
889 enum class AutoShutdown {
890 Off = 0, After10min = 1, After30min = 2, After60min = 3, After120min = 4,
891 };
892
893 protected:
895 GeneralSettingsElement(uint8_t *ptr, unsigned size);
896
897 public:
899 void clear();
900
902 virtual bool keyToneEnabled() const = 0;
904 virtual void enableKeyTone(bool enable) = 0;
905
907 virtual bool displayFrequency() const;
909 virtual void enableDisplayFrequency(bool enable);
911 virtual bool autoKeyLock() const;
913 virtual void enableAutoKeyLock(bool enable);
915 virtual Interval autoShutdownDelay() const;
917 virtual void setAutoShutdownDelay(Interval min);
923 virtual bool bootPassword() const;
925 virtual void enableBootPassword(bool enable);
927 virtual Level squelchLevelA() const;
929 virtual void setSquelchLevelA(Level level);
931 virtual Level squelchLevelB() const;
933 virtual void setSquelchLevelB(Level level);
934
940 virtual Level dmrMicGain() const = 0;
942 virtual void setDMRMicGain(Level gain) = 0;
943
964
985
987 virtual Interval longPressDuration() const = 0;
989 virtual void setLongPressDuration(Interval ms) = 0;
990
992 virtual bool knobLock() const = 0;
994 virtual void enableKnobLock(bool enable) = 0;
996 virtual bool keypadLock() const = 0;
998 virtual void enableKeypadLock(bool enable) = 0;
1000 virtual bool sidekeysLock() const = 0;
1002 virtual void enableSidekeysLock(bool enable) = 0;
1004 virtual bool keyLockForced() const = 0;
1006 virtual void enableKeyLockForced(bool enable) = 0;
1007
1008 public:
1010 virtual bool vfoModeA() const = 0;
1012 virtual void enableVFOModeA(bool enable) = 0;
1014 virtual bool vfoModeB() const = 0;
1016 virtual void enableVFOModeB(bool enable) = 0;
1017
1019 virtual unsigned memoryZoneA() const = 0;
1021 virtual void setMemoryZoneA(unsigned zone) = 0;
1023 virtual unsigned memoryZoneB() const = 0;
1025 virtual void setMemoryZoneB(unsigned zone) = 0;
1026
1028 virtual bool recording() const = 0;
1030 virtual void enableRecording(bool enable) = 0;
1031
1033 virtual unsigned brightness() const = 0;
1035 virtual void setBrightness(unsigned level) = 0;
1036
1038 virtual bool gps() const = 0;
1040 virtual void enableGPS(bool enable) = 0;
1042 virtual bool smsAlert() const = 0;
1044 virtual void enableSMSAlert(bool enable) = 0;
1046 virtual bool activeChannelB() const = 0;
1048 virtual void enableActiveChannelB(bool enable) = 0;
1050 virtual bool subChannel() const = 0;
1052 virtual void enableSubChannel(bool enable) = 0;
1054 virtual bool callAlert() const = 0;
1056 virtual void enableCallAlert(bool enable) = 0;
1057
1059 virtual QTimeZone gpsTimeZone() const = 0;
1061 virtual void setGPSTimeZone(const QTimeZone &zone) = 0;
1063 virtual bool dmrTalkPermit() const = 0;
1065 virtual bool fmTalkPermit() const = 0;
1067 virtual void enableDMRTalkPermit(bool enable) = 0;
1069 virtual void enableFMTalkPermit(bool enable) = 0;
1071 virtual bool dmrResetTone() const = 0;
1073 virtual void enableDMRResetTone(bool enable) = 0;
1074
1076 virtual bool idleChannelTone() const = 0;
1078 virtual void enableIdleChannelTone(bool enable) = 0;
1080 virtual Interval menuExitTime() const = 0;
1082 virtual void setMenuExitTime(Interval intv) = 0;
1084 virtual bool startupTone() const = 0;
1086 virtual void enableStartupTone(bool enable) = 0;
1088 virtual bool callEndPrompt() const = 0;
1090 virtual void enableCallEndPrompt(bool enable) = 0;
1092 virtual unsigned maxSpeakerVolume() const = 0;
1094 virtual void setMaxSpeakerVolume(unsigned level) = 0;
1096 virtual bool getGPSPosition() const = 0;
1098 virtual void enableGetGPSPosition(bool enable) = 0;
1099
1101 virtual bool volumeChangePrompt() const = 0;
1103 virtual void enableVolumeChangePrompt(bool enable) = 0;
1109 virtual AnytoneDisplaySettingsExtension::LastCallerDisplayMode lastCallerDisplayMode() const = 0;
1111 virtual void setLastCallerDisplayMode(AnytoneDisplaySettingsExtension::LastCallerDisplayMode mode) = 0;
1112
1114 virtual bool displayClock() const = 0;
1116 virtual void enableDisplayClock(bool enable) = 0;
1118 virtual bool enhanceAudio() const = 0;
1120 virtual void enableEnhancedAudio(bool enable) = 0;
1129
1138
1142 virtual unsigned autoRepeaterOffsetFrequencyIndexUHF() const = 0;
1144 virtual void setAutoRepeaterOffsetFrequenyIndexUHF(unsigned idx) = 0;
1150 virtual unsigned autoRepeaterOffsetFrequencyIndexVHF() const = 0;
1152 virtual void setAutoRepeaterOffsetFrequenyIndexVHF(unsigned idx) = 0;
1155
1157 virtual bool showCurrentContact() const = 0;
1159 virtual void enableShowCurrentContact(bool enable) = 0;
1160
1162 virtual void callToneMelody(Melody &melody) const = 0;
1164 virtual void setCallToneMelody(const Melody &melody) = 0;
1166 virtual void idleToneMelody(Melody &melody) const = 0;
1168 virtual void setIdleToneMelody(const Melody &melody) = 0;
1170 virtual void resetToneMelody(Melody &melody) const = 0;
1172 virtual void setResetToneMelody(const Melody &melody) = 0;
1173
1175 virtual bool defaultChannel() const = 0;
1177 virtual void enableDefaultChannel(bool enable) = 0;
1179 virtual unsigned defaultZoneIndexA() const = 0;
1181 virtual void setDefaultZoneIndexA(unsigned idx) = 0;
1183 virtual unsigned defaultZoneIndexB() const = 0;
1185 virtual void setDefaultZoneIndexB(unsigned idx) = 0;
1187 virtual bool defaultChannelAIsVFO() const = 0;
1190 virtual unsigned defaultChannelAIndex() const = 0;
1192 virtual void setDefaultChannelAIndex(unsigned idx) = 0;
1194 virtual void setDefaultChannelAToVFO() = 0;
1196 virtual bool defaultChannelBIsVFO() const = 0;
1199 virtual unsigned defaultChannelBIndex() const = 0;
1201 virtual void setDefaultChannelBIndex(unsigned idx) = 0;
1203 virtual void setDefaultChannelBToVFO() = 0;
1204
1206 virtual bool displayCall() const = 0;
1208 virtual void enableDisplayCall(bool enable) = 0;
1209
1211 virtual AnytoneDisplaySettingsExtension::Color callDisplayColor() const = 0;
1213 virtual void setCallDisplayColor(AnytoneDisplaySettingsExtension::Color color) = 0;
1214
1216 virtual bool gpsUnitsImperial() const = 0;
1218 virtual void enableGPSUnitsImperial(bool enable) = 0;
1219
1228
1241
1243 virtual bool showLastHeard() const = 0;
1245 virtual void enableShowLastHeard(bool enable) = 0;
1246
1248 virtual bool keepLastCaller() const = 0;
1250 virtual void enableKeepLastCaller(bool enable) = 0;
1251
1253 virtual bool fromConfig(const Flags &flags, Context &ctx);
1255 virtual bool updateConfig(Context &ctx);
1257 virtual bool linkSettings(RadioSettings *settings, Context &ctx, const ErrorStack &err=ErrorStack());
1258
1259 protected:
1261 struct Offset : public Element::Offset {
1263 static constexpr unsigned int displayMode() { return 0x0001; }
1264 static constexpr unsigned int autoKeyLock() { return 0x0002; }
1265 static constexpr unsigned int autoShutDown() { return 0x0003; }
1266 static constexpr unsigned int bootDisplay() { return 0x0006; }
1267 static constexpr unsigned int bootPassword() { return 0x0007; }
1268 static constexpr unsigned int squelchLevelA() { return 0x0009; }
1269 static constexpr unsigned int squelchLevelB() { return 0x000a; }
1271 };
1272 };
1273
1274
1282 {
1283 protected:
1285 ExtendedSettingsElement(uint8_t *ptr, unsigned size);
1286
1287 public:
1289 virtual AnytoneDisplaySettingsExtension::Color channelBNameColor() const = 0;
1291 virtual void setChannelBNameColor(AnytoneDisplaySettingsExtension::Color) = 0;
1292
1294 virtual AnytoneDisplaySettingsExtension::Color zoneANameColor() const = 0;
1296 virtual void setZoneANameColor(AnytoneDisplaySettingsExtension::Color) = 0;
1297
1299 virtual AnytoneDisplaySettingsExtension::Color zoneBNameColor() const = 0;
1301 virtual void setZoneBNameColor(AnytoneDisplaySettingsExtension::Color) = 0;
1302
1304 virtual bool fromConfig(const Flags &flags, Context &ctx, const ErrorStack &err=ErrorStack());
1306 virtual bool updateConfig(Context &ctx, const ErrorStack &err=ErrorStack());
1308 virtual bool linkConfig(Context &ctx, const ErrorStack &err=ErrorStack());
1309 };
1310
1311
1318 {
1319 protected:
1321 ZoneChannelListElement(uint8_t *ptr, unsigned size);
1322
1323 public:
1325 ZoneChannelListElement(uint8_t *ptr);
1326
1328 static constexpr unsigned int size() { return 0x0400; }
1329
1331 void clear();
1332
1334 virtual bool hasChannelA(unsigned n) const;
1336 virtual unsigned channelIndexA(unsigned n) const;
1338 virtual void setChannelIndexA(unsigned n, unsigned idx);
1340 virtual void clearChannelIndexA(unsigned n);
1341
1343 virtual bool hasChannelB(unsigned n) const;
1345 virtual unsigned channelIndexB(unsigned n) const;
1347 virtual void setChannelIndexB(unsigned n, unsigned idx);
1349 virtual void clearChannelIndexB(unsigned n);
1350
1351 public:
1353 struct Limit: public Element::Limit {
1355 static constexpr unsigned int zones() { return 250; }
1356 };
1357
1358 protected:
1360 struct Offset: public Element::Offset {
1362 static constexpr unsigned int channelsA() { return 0x0000;}
1363 static constexpr unsigned int channelsB() { return 0x0200;}
1364 static constexpr unsigned int betweenChannels() { return 0x0002;}
1366 };
1367 };
1368
1371 {
1372 protected:
1374 ZoneBitmapElement(uint8_t *ptr, size_t size);
1375
1376 public:
1378 ZoneBitmapElement(uint8_t *ptr);
1379
1381 static constexpr unsigned int size() { return 0x0020; }
1382 };
1383
1384
1390 {
1391 protected:
1393 BootSettingsElement(uint8_t *ptr, unsigned size);
1394
1395 public:
1397 BootSettingsElement(uint8_t *ptr);
1398
1400 static constexpr unsigned int size() { return 0x0030; }
1401
1403 void clear();
1404
1406 virtual QString introLine1() const;
1408 virtual void setIntroLine1(const QString &txt);
1410 virtual QString introLine2() const;
1412 virtual void setIntroLine2(const QString &txt);
1413
1415 virtual QString password() const;
1417 virtual void setPassword(const QString &txt);
1418
1420 virtual bool fromConfig(const Flags &flags, Context &ctx);
1422 virtual bool updateConfig(Context &ctx);
1423
1424 public:
1426 struct Limit: public Element::Limit {
1428 static constexpr unsigned int introLineLength() { return 16; }
1430 static constexpr unsigned int passwordLength() { return 8; }
1431 };
1432
1433 protected:
1435 struct Offset: public Element::Offset {
1437 static constexpr unsigned int introLine1() { return 0x0000; }
1438 static constexpr unsigned int introLine2() { return 0x0010; }
1439 static constexpr unsigned int password() { return 0x0020; }
1441 };
1442 };
1443
1444
1450 {
1451 protected:
1453 DMRAPRSSettingsElement(uint8_t *ptr, unsigned size);
1454
1455 public:
1457 explicit DMRAPRSSettingsElement(uint8_t *ptr);
1458
1460 static constexpr unsigned int size() { return 0x0030; }
1461
1463 void clear();
1464
1466 virtual Interval manualInterval() const;
1468 virtual void setManualInterval(const Interval& sec);
1469
1471 virtual bool automatic() const;
1473 virtual Interval automaticInterval() const;
1475 virtual void setAutomaticInterval(const Interval& sec);
1477 virtual void disableAutomatic();
1478
1480 virtual bool fixedLocation() const;
1482 virtual QGeoCoordinate location() const;
1484 virtual void setLocation(const QGeoCoordinate &pos);
1486 virtual void enableFixedLocation(bool enable);
1487
1489 virtual Channel::Power power() const;
1491 virtual void setPower(Channel::Power power);
1492
1494 virtual bool hasChannel(unsigned n) const;
1496 virtual bool channelIsVFOA(unsigned n) const;
1498 virtual bool channelIsVFOB(unsigned n) const;
1500 virtual bool channelIsSelected(unsigned n) const;
1502 virtual unsigned channelIndex(unsigned n) const;
1504 virtual void setChannelIndex(unsigned n, unsigned idx);
1506 virtual void setChannelVFOA(unsigned n);
1508 virtual void setChannelVFOB(unsigned n);
1510 virtual void setChannelSelected(unsigned n);
1512 virtual void clearChannel(unsigned n);
1513
1515 virtual unsigned destination() const;
1517 virtual void setDestination(unsigned id);
1518
1520 virtual DMRContact::Type callType() const;
1522 virtual void setCallType(DMRContact::Type type);
1523
1525 virtual bool timeSlotOverride() const;
1527 virtual DMRChannel::TimeSlot timeslot() const;
1529 virtual void overrideTimeSlot(DMRChannel::TimeSlot ts);
1531 virtual void disableTimeSlotOverride();
1532
1534 virtual bool fromConfig(const Flags &flags, Context &ctx);
1536 virtual bool updateConfig(Context &ctx, const ErrorStack &err=ErrorStack());
1538 virtual bool createGPSSystem(uint8_t i, Context &ctx);
1540 virtual bool linkGPSSystem(uint8_t i, Context &ctx);
1541
1542 protected:
1544 struct Offset: public Element::Offset {
1546 static constexpr unsigned int manualInterval() { return 0x0000; }
1547 static constexpr unsigned int automaticInterval() { return 0x0001; }
1548 static constexpr unsigned int fixedLocation() { return 0x0002; }
1549 static constexpr unsigned int latitudeDeg() { return 0x0003; }
1550 static constexpr unsigned int latitudeMin() { return 0x0004; }
1551 static constexpr unsigned int latitudeSec() { return 0x0005; }
1552 static constexpr unsigned int latitudeHemi() { return 0x0006; }
1553 static constexpr unsigned int longitudeDeg() { return 0x0007; }
1554 static constexpr unsigned int longitudeMin() { return 0x0008; }
1555 static constexpr unsigned int longitudeSec() { return 0x0009; }
1556 static constexpr unsigned int longitudeHemi() { return 0x000a; }
1557 static constexpr unsigned int power() { return 0x000b; }
1558 static constexpr unsigned int channelIndices() { return 0x000c; }
1559 static constexpr unsigned int betweenChannelIndices() { return 0x0002; }
1560 static constexpr unsigned int destinationId() { return 0x001c; }
1561 static constexpr unsigned int callType() { return 0x0020; }
1562 static constexpr unsigned int timeSlot() { return 0x0021; }
1564 };
1565 };
1566
1567
1570 {
1571 protected:
1573 DMRAPRSMessageElement(uint8_t *ptr, size_t size);
1574
1575 public:
1577 DMRAPRSMessageElement(uint8_t *ptr);
1578
1580 static constexpr unsigned int size() { return 0x0030; }
1581
1582 void clear();
1583
1585 virtual QString message() const;
1587 void setMessage(const QString &message);
1588
1590 virtual bool fromConfig(Codeplug::Flags flags, Context &ctx);
1592 virtual bool updateConfig(Context &ctx) const;
1593
1594 public:
1596 struct Limit {
1597 static constexpr unsigned int length() { return 32; }
1598 };
1599
1600 protected:
1602 struct Offset {
1604 static constexpr unsigned int message() { return 0x0000; }
1606 };
1607 };
1608
1614 {
1615 protected:
1617 RepeaterOffsetListElement(uint8_t *ptr, size_t size);
1618
1619 public:
1621 explicit RepeaterOffsetListElement(uint8_t *ptr);
1622
1624 static constexpr unsigned int size() { return 0x03f0; }
1625
1626 void clear();
1627
1629 virtual bool isSet(unsigned int n) const;
1631 virtual Frequency offset(unsigned int n) const;
1633 virtual void setOffset(unsigned int n, Frequency freq);
1635 virtual void clearOffset(unsigned int n);
1636
1637 public:
1639 struct Limit {
1640 static constexpr unsigned int numEntries() { return 250; }
1641 };
1642
1643 protected:
1645 struct Offset {
1647 static constexpr unsigned int frequencies() { return 0x0000; }
1648 static constexpr unsigned int betweenFrequencies() { return sizeof(uint32_t); }
1650 };
1651 };
1652
1660 {
1661 protected:
1663 MessageListElement(uint8_t *ptr, unsigned size);
1664
1665 public:
1667 explicit MessageListElement(uint8_t *ptr);
1668
1670 static constexpr unsigned int size() { return 0x0010; }
1671
1673 void clear();
1674
1676 virtual bool hasNext() const;
1678 virtual unsigned next() const;
1680 virtual void setNext(unsigned idx);
1682 virtual void clearNext();
1683
1685 virtual bool hasIndex() const;
1687 virtual unsigned index() const;
1689 virtual void setIndex(unsigned idx);
1691 virtual void clearIndex();
1692
1693 protected:
1695 struct Offset: public Element::Offset {
1696 static constexpr unsigned int next() { return 0x0002; }
1697 static constexpr unsigned int index() { return 0x0003; }
1698 };
1699 };
1700
1701
1707 {
1708 protected:
1710 MessageElement(uint8_t *ptr, unsigned size);
1711
1712 public:
1714 MessageElement(uint8_t *ptr);
1715
1717 static constexpr unsigned int size() { return 0x0100; }
1718
1720 void clear();
1721
1723 virtual QString message() const;
1725 virtual void setMessage(const QString &msg);
1726
1727 public:
1729 struct Limit: public Element::Limit {
1731 static constexpr unsigned int messageLength() { return 99; }
1732 };
1733
1734 protected:
1736 struct Offset: public Element::Offset {
1738 static constexpr unsigned int message() { return 0x0000; }
1740 };
1741 };
1742
1745 {
1746 protected:
1748 MessageBytemapElement(uint8_t *ptr, size_t size);
1749
1750 public:
1752 MessageBytemapElement(uint8_t *ptr);
1753
1755 static constexpr unsigned int size() { return 0x0090; }
1756 };
1757
1763 {
1764 public:
1766 enum class Type {
1767 None = 0,
1768 DTMF = 1,
1771 };
1772
1773 protected:
1775 AnalogQuickCallElement(uint8_t *ptr, unsigned size);
1776
1777 public:
1779 explicit AnalogQuickCallElement(uint8_t *ptr);
1780
1782 static constexpr unsigned int size() { return 0x0002; }
1783
1785 void clear();
1786
1788 virtual Type type() const;
1790 virtual void setType(Type type);
1791
1793 virtual bool hasContactIndex() const;
1795 virtual unsigned contactIndex() const;
1797 virtual void setContactIndex(unsigned idx);
1799 virtual void clearContactIndex();
1800
1801 protected:
1803 struct Offset: public Element::Offset {
1805 static constexpr unsigned int type() { return 0x0000; }
1806 static constexpr unsigned int contactIndex() { return 0x0001; }
1808 };
1809 };
1810
1811
1817 {
1818 protected:
1820 AnalogQuickCallsElement(uint8_t *ptr, size_t size);
1821
1822 public:
1824 AnalogQuickCallsElement(uint8_t *ptr);
1825
1827 static constexpr unsigned int size() { return 0x0100; }
1828
1830 void clear();
1831
1833 uint8_t *quickCall(unsigned int n) const;
1834
1835 public:
1837 struct Limit {
1838 static constexpr unsigned int numEntries() { return 4; }
1839 };
1840
1841 protected:
1843 struct Offset {
1845 static constexpr unsigned int quickCalls() { return 0x0000; }
1847 };
1848 };
1849
1850
1856 {
1857 protected:
1859 StatusMessagesElement(uint8_t *ptr, size_t size);
1860
1861 public:
1863 StatusMessagesElement(uint8_t *ptr);
1864
1866 static constexpr unsigned int size() { return 0x0400; }
1867
1868 void clear();
1869
1871 virtual QString message(unsigned int n) const;
1873 virtual void setMessage(unsigned int n, const QString &msg);
1874
1875 public:
1877 struct Limit {
1878 static constexpr unsigned int numMessages() { return 32; }
1879 static constexpr unsigned int messageLength() { return 32; }
1880 };
1881
1882 protected:
1884 struct Offset {
1886 static constexpr unsigned int messages() { return 0x0000; }
1887 static constexpr unsigned int betweenMessages() { return 0x0020; }
1889 };
1890 };
1891
1894 {
1895 protected:
1897 StatusMessageBitmapElement(uint8_t *ptr, size_t size);
1898
1899 public:
1901 StatusMessageBitmapElement(uint8_t *ptr);
1902
1904 static constexpr unsigned int size() { return 0x0010; }
1905 };
1906
1907
1913 {
1914 public:
1916 enum class Type {
1917 Call = 0,
1918 Menu = 1
1919 };
1920
1922 enum class MenuItem {
1923 SMS = 1,
1926 Inbox = 4,
1931 };
1932
1934 enum class CallType {
1937 };
1938
1949
1950 protected:
1952 HotKeyElement(uint8_t *ptr, unsigned size);
1953
1954 public:
1956 explicit HotKeyElement(uint8_t *ptr);
1957
1959 static constexpr unsigned int size() { return 0x0030; }
1960
1962 void clear();
1963
1965 virtual Type type() const;
1967 virtual void setType(Type type);
1968
1970 virtual MenuItem menuItem() const;
1973 virtual void setMenuItem(MenuItem item);
1974
1976 virtual CallType callType() const;
1979 virtual void setCallType(CallType type);
1980
1983 virtual DigiCallType digiCallType() const;
1986 virtual void setDigiCallType(DigiCallType type);
1987
1989 virtual bool hasContactIndex() const;
1993 virtual unsigned contactIndex() const;
1996 virtual void setContactIndex(unsigned idx);
1998 virtual void clearContactIndex();
1999
2001 virtual bool hasMessageIndex() const;
2004 virtual unsigned messageIndex() const;
2006 virtual void setMessageIndex(unsigned idx);
2008 virtual void clearMessageIndex();
2009
2010 protected:
2012 struct Offset: public Element::Offset {
2014 static constexpr unsigned int type() { return 0x0000; }
2015 static constexpr unsigned int menuItem() { return 0x0001; }
2016 static constexpr unsigned int callType() { return 0x0002; }
2017 static constexpr unsigned int digiCallType() { return 0x0003; }
2018 static constexpr unsigned int contactIndex() { return 0x0004; }
2019 static constexpr unsigned int messageIndex() { return 0x0008; }
2021 };
2022 };
2023
2024
2032 {
2033 protected:
2035 HotKeySettingsElement(uint8_t *ptr, size_t size);
2036
2037 public:
2039 HotKeySettingsElement(uint8_t *ptr);
2040
2042 static constexpr unsigned int size() { return 0x0360; }
2043
2044 void clear();
2045
2047 virtual uint8_t *hotKeySetting(unsigned int n) const;
2048
2049 public:
2051 struct Limit {
2052 static constexpr unsigned int numEntries() { return 18; }
2053 };
2054
2055 protected:
2057 struct Offset {
2059 static constexpr unsigned int hotKeySettings() { return 0x0000; }
2060 static constexpr unsigned int betweenHotKeySettings() { return HotKeySettingsElement::size(); }
2062 };
2063 };
2064
2070 {
2071 public:
2076 class AnalogAlarm: public Element
2077 {
2078 public:
2080 enum class Action {
2081 None = 0,
2084 Both = 3,
2085 };
2086
2088 enum class ENIType {
2089 None = 0,
2090 DTMF = 1,
2092 };
2093
2094 protected:
2096 AnalogAlarm(uint8_t *ptr, unsigned size);
2097
2098 public:
2100 AnalogAlarm(uint8_t *ptr);
2101
2103 static constexpr unsigned int size() { return 0x000a; }
2104
2106 void clear();
2107
2109 virtual Action action() const;
2111 virtual void setAction(Action action);
2112
2114 virtual ENIType encodingType() const;
2116 virtual void setEncodingType(ENIType type);
2117
2119 virtual unsigned emergencyIndex() const;
2121 virtual void setEmergencyIndex(unsigned idx);
2122
2124 virtual Interval duration() const;
2126 virtual void setDuration(const Interval &sec);
2128 virtual Interval txDuration() const;
2130 virtual void setTXDuration(const Interval &sec);
2132 virtual Interval rxDuration() const;
2134 virtual void setRXDuration(const Interval &sec);
2135
2137 virtual bool channelIsSelected() const;
2139 virtual unsigned channelIndex() const;
2141 virtual void setChannelIndex(unsigned idx);
2143 virtual void setChannelSelected();
2144
2146 virtual bool repeatContinuously() const;
2148 virtual unsigned repetitions() const;
2150 virtual void setRepetitions(unsigned num);
2152 virtual void setRepatContinuously();
2153
2154 protected:
2156 struct Offset: public Element::Offset {
2158 static constexpr unsigned int action() { return 0x0000; }
2159 static constexpr unsigned int encodingType() { return 0x0001; }
2160 static constexpr unsigned int emergencyIndex() { return 0x0002; }
2161 static constexpr unsigned int duration() { return 0x0003; }
2162 static constexpr unsigned int txDuration() { return 0x0004; }
2163 static constexpr unsigned int rxDuration() { return 0x0005; }
2164 static constexpr unsigned int channelIndex() { return 0x0006; }
2165 static constexpr unsigned int channelIsSelected() { return 0x0008; }
2166 static constexpr unsigned int repetitions() { return 0x0009; }
2168 };
2169 };
2170
2171
2176 class DigitalAlarm: public Element
2177 {
2178 public:
2180 enum class Action {
2181 None = 0,
2184 Local = 3,
2185 };
2186
2187 protected:
2189 DigitalAlarm(uint8_t *ptr, unsigned size);
2190
2191 public:
2193 explicit DigitalAlarm(uint8_t *ptr);
2194
2196 static constexpr unsigned int size() { return 0x000c; }
2197
2199 void clear();
2200
2202 virtual Action action() const;
2204 virtual void setAction(Action action);
2205
2207 virtual Interval duration() const;
2209 virtual void setDuration(const Interval &sec);
2211 virtual Interval txDuration() const;
2213 virtual void setTXDuration(const Interval &sec);
2215 virtual Interval rxDuration() const;
2217 virtual void setRXDuration(const Interval &sec);
2218
2220 virtual bool channelIsSelected() const;
2222 virtual unsigned channelIndex() const;
2224 virtual void setChannelIndex(unsigned idx);
2226 virtual void setChannelSelected();
2227
2229 virtual bool repeatContinuously() const;
2231 virtual unsigned repetitions() const;
2233 virtual void setRepetitions(unsigned num);
2235 virtual void setRepatContinuously();
2236
2238 virtual Interval voiceBroadcastDuration() const;
2240 virtual void setVoiceBroadcastDuration(const Interval &min);
2242 virtual Interval areaBroadcastDuration() const;
2244 virtual void setAreaBroadcastDuration(const Interval &min);
2245
2247 virtual bool vox() const;
2249 virtual void enableVOX(bool enable);
2251 virtual bool rxAlarm() const;
2253 virtual void enableRXAlarm(bool enable);
2254
2255 protected:
2257 struct Offset: public Element::Offset {
2259 static constexpr unsigned int action() { return 0x0000; }
2260 static constexpr unsigned int duration() { return 0x0001; }
2261 static constexpr unsigned int txDuration() { return 0x0002; }
2262 static constexpr unsigned int rxDuration() { return 0x0003; }
2263 static constexpr unsigned int channelIndex() { return 0x0004; }
2264 static constexpr unsigned int channelIsSelected() { return 0x0006; }
2265 static constexpr unsigned int repetitions() { return 0x0007; }
2266 static constexpr unsigned int voiceBroadcastDuration() { return 0x0008; }
2267 static constexpr unsigned int areaBroadcastDuration() { return 0x0009; }
2268 static constexpr unsigned int vox() { return 0x000a; }
2269 static constexpr unsigned int rxAlarm() { return 0x000b; }
2271 };
2272 };
2273
2274 protected:
2276 AlarmSettingElement(uint8_t *ptr, unsigned size);
2277
2278 public:
2280 AlarmSettingElement(uint8_t *ptr);
2281
2283 static constexpr unsigned int size() { return 0x0020; }
2284
2286 void clear();
2287
2289 virtual uint8_t *analog() const;
2291 virtual uint8_t *digital() const;
2292
2293 protected:
2295 struct Offset {
2297 static constexpr unsigned int analog() { return 0x0000; }
2298 static constexpr unsigned int digital() { return 0x000a; }
2300 };
2301 };
2302
2303
2309 {
2310 protected:
2312 DigitalAlarmExtensionElement(uint8_t *ptr, unsigned size);
2313
2314 public:
2316 DigitalAlarmExtensionElement(uint8_t *ptr);
2317
2319 static constexpr unsigned int size() { return 0x0030; }
2320
2322 void clear();
2323
2325 virtual DMRContact::Type callType() const;
2327 virtual void setCallType(DMRContact::Type type);
2328
2330 virtual unsigned destination() const;
2332 virtual void setDestination(unsigned number);
2333
2334 protected:
2336 struct Offset {
2338 static constexpr unsigned int callType() { return 0x0000; }
2339 static constexpr unsigned int destination() { return 0x0023; }
2341 };
2342 };
2343
2344
2350 {
2351 public:
2353 enum class Standard {
2354 ZVEI1 = 0, ZVEI2, ZVEI3, PZVEI, DZVEI, PDZVEI, CCIR1, CCIR2, PCCIR, EEA, EuroSignal, NATEL,
2355 MODAT, CCITT, EIA
2356 };
2357
2358 protected:
2360 FiveToneIDElement(uint8_t *ptr, unsigned size);
2361
2362 public:
2364 FiveToneIDElement(uint8_t *ptr);
2365
2367 static constexpr unsigned int size() { return 0x0020; }
2368
2370 void clear();
2371
2373 virtual Standard standard() const;
2375 virtual void setStandard(Standard std);
2376
2378 virtual Interval toneDuration() const;
2380 virtual void setToneDuration(const Interval &ms);
2381
2383 virtual QString id() const;
2385 virtual void setID(const QString &id);
2386
2388 virtual QString name() const;
2390 virtual void setName(const QString &name);
2391
2392 public:
2394 struct Limit: public Element::Limit {
2396 static constexpr unsigned int idLength() { return 80; }
2398 static constexpr unsigned int nameLength() { return 7; }
2399 };
2400
2401 protected:
2403 struct Offset: public Element::Offset {
2405 static constexpr unsigned int standard() { return 0x0001; }
2406 static constexpr unsigned int idLength() { return 0x0002; }
2407 static constexpr unsigned int toneDuration() { return 0x0003; }
2408 static constexpr unsigned int id() { return 0x0004; }
2409 static constexpr unsigned int name() { return 0x0018; }
2411 };
2412 };
2413
2416 {
2417 protected:
2419 FiveToneIDBitmapElement(uint8_t *ptr, size_t size);
2420
2421 public:
2423 FiveToneIDBitmapElement(uint8_t *ptr);
2424
2426 static constexpr unsigned int size() { return 0x0010; }
2427 };
2428
2434 {
2435 protected:
2437 FiveToneIDListElement(uint8_t *ptr, size_t size);
2438
2439 public:
2441 FiveToneIDListElement(uint8_t *ptr);
2442
2444 static constexpr unsigned int size() { return 0x0c80; }
2445
2446 void clear();
2447
2449 virtual uint8_t *member(unsigned int n) const;
2450
2451 public:
2453 struct Limit {
2454 static constexpr unsigned int numEntries() { return 100; }
2455 };
2456 };
2457
2463 {
2464 public:
2466 enum class Function {
2467 OpenSquelch=0, CallAll, EmergencyAlarm, RemoteKill, RemoteStun, RemoteWakeup,
2468 GroupCall
2469 };
2470
2472 enum class Response {
2473 None=0, Tone, ToneRespond
2474 };
2475
2476 protected:
2478 FiveToneFunctionElement(uint8_t *ptr, unsigned size);
2479
2480 public:
2482 explicit FiveToneFunctionElement(uint8_t *ptr);
2483
2485 static constexpr unsigned int size() { return 0x0020; }
2486
2488 void clear();
2489
2491 virtual Function function() const;
2493 virtual void setFunction(Function function);
2495 virtual Response response() const;
2497 virtual void setResponse(Response response);
2498
2500 virtual QString id() const;
2502 virtual void setID(const QString &id);
2503
2505 virtual QString name() const;
2507 virtual void setName(const QString &name);
2508
2509 public:
2511 struct Limit: public Element::Limit {
2513 static constexpr unsigned int idLength() { return 24; }
2515 static constexpr unsigned int nameLength() { return 7; }
2516 };
2517
2518 protected:
2520 struct Offset: public Element::Offset {
2522 static constexpr unsigned int function() { return 0x0000; }
2523 static constexpr unsigned int response() { return 0x0001; }
2524 static constexpr unsigned int idLength() { return 0x0002; }
2525 static constexpr unsigned int id() { return 0x0003; }
2526 static constexpr unsigned int name() { return 0x000f; }
2528 };
2529 };
2530
2536 {
2537 protected:
2539 FiveToneFunctionListElement(uint8_t *ptr, size_t size);
2540
2541 public:
2543 FiveToneFunctionListElement(uint8_t *ptr);
2544
2546 static constexpr unsigned int size() { return 0x0200; }
2547
2548 void clear();
2549
2551 virtual uint8_t *function(unsigned int n) const;
2552
2553 public:
2555 struct Limit {
2556 static constexpr unsigned int numFunctions() { return 16; }
2557 };
2558 };
2559
2560
2566 {
2567 public:
2569 enum class Response {
2570 None = 0, Tone, ToneRespond
2571 };
2572
2574
2575 protected:
2577 FiveToneSettingsElement(uint8_t *ptr, unsigned size);
2578
2579 public:
2581 FiveToneSettingsElement(uint8_t *ptr);
2582
2584 static constexpr unsigned int size() { return 0x0080; }
2585
2587 void clear();
2588
2590 virtual Response decodingResponse() const;
2592 virtual void setDecodingResponse(Response response);
2593
2595 virtual Standard decodingStandard() const;
2597 virtual void setDecodingStandard(Standard standard);
2598
2600 virtual Interval decodingToneDuration() const;
2602 virtual void setDecodingToneDuration(const Interval &ms);
2603
2605 virtual QString id() const;
2607 virtual void setID(const QString &id);
2608
2610 virtual Interval postEncodeDelay() const;
2612 virtual void setPostEncodeDelay(const Interval &ms);
2613
2615 virtual bool hasPTTID() const;
2617 virtual unsigned pttID() const;
2619 virtual void setPTTID(unsigned id);
2621 virtual void clearPTTID();
2622
2624 virtual Interval autoResetTime() const;
2626 virtual void setAutoResetTime(const Interval &s);
2627
2629 virtual Interval firstDelay() const;
2631 virtual void setFirstDelay(const Interval &ms);
2632
2634 virtual bool sidetoneEnabled() const;
2636 virtual void enableSidetone(bool enable);
2638 virtual unsigned stopCode() const;
2640 virtual void setStopCode(unsigned code);
2642 virtual Interval stopTime() const;
2644 virtual void setStopTime(const Interval &ms);
2646 virtual Interval decodeTime() const;
2648 virtual void setDecodeTime(const Interval &ms);
2650 virtual Interval delayAfterStop() const;
2652 virtual void setDelayAfterStop(const Interval &ms);
2654 virtual Interval preTime() const;
2656 virtual void setPreTime(const Interval &ms);
2657
2659 virtual Standard botStandard() const;
2661 virtual void setBOTStandard(Standard standard);
2663 virtual Interval botToneDuration() const;
2665 virtual void setBOTToneDuration(const Interval &ms);
2667 virtual QString botID() const;
2669 virtual void setBOTID(const QString &id);
2670
2672 virtual Standard eotStandard() const;
2674 virtual void setEOTStandard(Standard standard);
2676 virtual Interval eotToneDuration() const;
2678 virtual void setEOTToneDuration(const Interval &ms);
2680 virtual QString eotID() const;
2682 virtual void setEOTID(const QString &id);
2683
2684 public:
2686 struct Limit: public Element::Limit {
2688 static constexpr unsigned int idLength() { return 14; }
2690 static constexpr unsigned int botIdLength() { return 24; }
2692 static constexpr unsigned int eotIdLength() { return 24; }
2693 };
2694
2695 protected:
2697 struct Offset: public Element::Offset {
2699 static constexpr unsigned int decodingResponse() { return 0x0021; }
2700 static constexpr unsigned int decodingStandard() { return 0x0022; }
2701 static constexpr unsigned int idLength() { return 0x0023; }
2702 static constexpr unsigned int decodingToneDuration() { return 0x0024; }
2703 static constexpr unsigned int id() { return 0x0025; }
2704 static constexpr unsigned int postDecodeDelay() { return 0x002c; }
2705 static constexpr unsigned int pttId() { return 0x002d; }
2706 static constexpr unsigned int autoResetTime() { return 0x002e; }
2707 static constexpr unsigned int firstDelay() { return 0x002f; }
2708 static constexpr unsigned int sidetoneEnabled() { return 0x0030; }
2709 static constexpr unsigned int stopCode() { return 0x0032; }
2710 static constexpr unsigned int stopTime() { return 0x0033; }
2711 static constexpr unsigned int decodeTime() { return 0x0034; }
2712 static constexpr unsigned int delayAfterStop() { return 0x0035; }
2713 static constexpr unsigned int preTime() { return 0x0036; }
2714 static constexpr unsigned int botStandard() { return 0x0041; }
2715 static constexpr unsigned int botIdLength() { return 0x0042; }
2716 static constexpr unsigned int botToneDuration() { return 0x0043; }
2717 static constexpr unsigned int botId() { return 0x0044; }
2718 static constexpr unsigned int eotStandard() { return 0x0061; }
2719 static constexpr unsigned int eotIdLength() { return 0x0062; }
2720 static constexpr unsigned int eotToneDuration() { return 0x0063; }
2721 static constexpr unsigned int eotId() { return 0x0064; }
2723 };
2724 };
2725
2726
2732 {
2733 protected:
2735 TwoToneIDElement(uint8_t *ptr, unsigned size);
2736
2737 public:
2739 TwoToneIDElement(uint8_t *ptr);
2740
2742 static constexpr unsigned int size() { return 0x0010; }
2743
2745 void clear();
2746
2748 virtual double firstTone() const;
2750 virtual void setFirstTone(double f);
2751
2753 virtual double secondTone() const;
2755 virtual void setSecondTone(double f);
2756
2758 virtual QString name() const;
2760 virtual void setName(const QString &name);
2761
2762 public:
2764 struct Limit {
2765 static constexpr unsigned int nameLength() { return 7; }
2766 };
2767
2768 protected:
2770 struct Offset {
2772 static constexpr unsigned int firstTone() { return 0x0000; }
2773 static constexpr unsigned int secondTone() { return 0x0002; }
2774 static constexpr unsigned int name() { return 0x0008; }
2776 };
2777 };
2778
2781 {
2782 protected:
2784 TwoToneIDBitmapElement(uint8_t *ptr, size_t size);
2785
2786 public:
2788 TwoToneIDBitmapElement(uint8_t *ptr);
2789
2791 static constexpr unsigned int size() { return 0x0010; }
2792 };
2793
2799 {
2800 public:
2802 enum class Response {
2803 None = 0, Tone, ToneRespond
2804 };
2805
2806 protected:
2808 TwoToneFunctionElement(uint8_t *ptr, unsigned size);
2809
2810 public:
2812 TwoToneFunctionElement(uint8_t *ptr);
2813
2815 static constexpr unsigned int size() { return 0x0020; }
2816
2818 void clear();
2819
2821 virtual double firstTone() const;
2823 virtual void setFirstTone(double f);
2824
2826 virtual double secondTone() const;
2828 virtual void setSecondTone(double f);
2829
2831 virtual Response response() const;
2833 virtual void setResponse(Response resp);
2834
2836 virtual QString name() const;
2838 virtual void setName(const QString &name);
2839
2840 public:
2842 struct Limit {
2843 static constexpr unsigned int nameLength() { return 7; }
2844 };
2845
2846 protected:
2848 struct Offset {
2850 static constexpr unsigned int firstTone() { return 0x0000; }
2851 static constexpr unsigned int secondTone() { return 0x0002; }
2852 static constexpr unsigned int response() { return 0x0004; }
2853 static constexpr unsigned int name() { return 0x0005; }
2855 };
2856 };
2857
2860 {
2861 protected:
2863 TwoToneFunctionBitmapElement(uint8_t *ptr, size_t size);
2864
2865 public:
2867 TwoToneFunctionBitmapElement(uint8_t *ptr);
2868
2870 static constexpr unsigned int size() { return 0x0010; }
2871 };
2872
2878 {
2879 protected:
2881 TwoToneSettingsElement(uint8_t *ptr, unsigned size);
2882
2883 public:
2885 TwoToneSettingsElement(uint8_t *ptr);
2886
2888 static constexpr unsigned int size() { return 0x0010; }
2889
2891 void clear();
2892
2894 virtual Interval firstToneDuration() const;
2896 virtual void setFirstToneDuration(const Interval &ms);
2897
2899 virtual Interval secondToneDuration() const;
2901 virtual void setSecondToneDuration(const Interval &ms);
2902
2904 virtual Interval longToneDuration() const;
2906 virtual void setLongToneDuration(const Interval &ms);
2907
2909 virtual Interval gapDuration() const;
2911 virtual void setGapDuration(const Interval &ms);
2912
2914 virtual Interval autoResetTime() const;
2916 virtual void setAutoResetTime(const Interval &sec);
2917
2919 virtual bool sidetone() const;
2921 virtual void enableSidetone(bool enable);
2922
2923 protected:
2925 struct Offset: public Element::Offset {
2927 static constexpr unsigned int firstToneDuration() { return 0x0009; }
2928 static constexpr unsigned int secondToneDuration() { return 0x000a; }
2929 static constexpr unsigned int longToneDuration() { return 0x000b; }
2930 static constexpr unsigned int gapDuration() { return 0x000c; }
2931 static constexpr unsigned int autoResetTime() { return 0x000d; }
2932 static constexpr unsigned int sidetone() { return 0x000e; }
2934 };
2935 };
2936
2937
2943 {
2944 public:
2947 None=0, Tone, ToneRespond
2948 };
2949
2950 protected:
2952 DTMFSettingsElement(uint8_t *ptr, unsigned size);
2953
2954 public:
2956 explicit DTMFSettingsElement(uint8_t *ptr);
2957
2959 static constexpr unsigned int size() { return 0x0050; }
2960
2962 void clear();
2963
2965 virtual unsigned intervalSymbol() const;
2967 virtual void setIntervalSymbol(unsigned symb);
2968
2970 virtual unsigned groupCode() const;
2972 virtual void setGroupCode(unsigned symb);
2973
2975 virtual Response response() const;
2977 virtual void setResponse(Response resp);
2978
2980 virtual Interval preTime() const;
2982 virtual void setPreTime(const Interval &ms);
2983
2985 virtual Interval firstDigitDuration() const;
2987 virtual void setFirstDigitDuration(const Interval &ms);
2988
2990 virtual Interval autoResetTime() const;
2992 virtual void setAutoResetTime(const Interval &sec);
2993
2995 virtual QString id() const;
2997 virtual void setID(const QString &id);
2998
3000 virtual Interval postEncodingDelay() const;
3002 virtual void setPostEncodingDelay(const Interval &ms);
3003
3005 virtual Interval pttIDPause() const;
3007 virtual void setPTTIDPause(const Interval &sec);
3008
3010 virtual bool pttIDEnabled() const;
3012 virtual void enablePTTID(bool enable);
3013
3015 virtual Interval dCodePause() const;
3017 virtual void setDCodePause(const Interval &sec);
3018
3020 virtual bool sidetone() const;
3022 virtual void enableSidetone(bool enable);
3023
3025 virtual QString botID() const;
3027 virtual void setBOTID(const QString &id);
3028
3030 virtual QString eotID() const;
3032 virtual void setEOTID(const QString &id);
3033
3035 virtual QString remoteKillID() const;
3037 virtual void setRemoteKillID(const QString &id);
3038
3040 virtual QString remoteStunID() const;
3042 virtual void setRemoteStunID(const QString &id);
3043
3044 public:
3046 struct Limit: public Element::Limit {
3048 static constexpr unsigned int idLength() { return 3; }
3050 static constexpr unsigned int botIdLength() { return 16; }
3052 static constexpr unsigned int eotIdLength() { return 16; }
3054 static constexpr unsigned int remoteKillIdLength() { return 16; }
3056 static constexpr unsigned int remteStunIdLength() { return 16; }
3057 };
3058
3059 protected:
3061 struct Offset: public Element::Offset {
3063 static constexpr unsigned int intervalSymbol() { return 0x0000; }
3064 static constexpr unsigned int groupCode() { return 0x0001; }
3065 static constexpr unsigned int response() { return 0x0002; }
3066 static constexpr unsigned int preTime() { return 0x0003; }
3067 static constexpr unsigned int firstDigitDuration() { return 0x0004; }
3068 static constexpr unsigned int autoResetTime() { return 0x0005; }
3069 static constexpr unsigned int id() { return 0x0006; }
3070 static constexpr unsigned int postEncodingDelay() { return 0x0009; }
3071 static constexpr unsigned int pttIDPause() { return 0x000a; }
3072 static constexpr unsigned int pttIDEnabled() { return 0x000b; }
3073 static constexpr unsigned int dCodePause() { return 0x000c; }
3074 static constexpr unsigned int sidetone() { return 0x000d; }
3075 static constexpr unsigned int botID() { return 0x0010; }
3076 static constexpr unsigned int eotID() { return 0x0020; }
3077 static constexpr unsigned int remoteKillID() { return 0x0030; }
3078 static constexpr unsigned int remoteStunID() { return 0x0040; }
3080 };
3081 };
3082
3088 {
3089 protected:
3091 DTMFIDListElement(uint8_t *ptr, size_t size);
3092
3093 public:
3095 DTMFIDListElement(uint8_t *ptr);
3096
3098 static constexpr unsigned int size() { return 0x0100; }
3099
3100 void clear();
3101
3103 virtual bool hasNumber(unsigned int n) const;
3105 virtual QString number(unsigned int n) const;
3107 virtual void setNumber(unsigned int n, const QString &number);
3109 virtual void clearNumber(unsigned int n);
3110
3111 public:
3113 struct Limit {
3114 static constexpr unsigned int numEntries() { return 16; }
3115 static constexpr unsigned int numberLength() { return 16; }
3116 };
3117 };
3118
3119
3125 {
3126 protected:
3128 WFMChannelListElement(uint8_t *ptr, size_t size);
3129
3130 public:
3132 explicit WFMChannelListElement(uint8_t *ptr);
3133
3135 static constexpr unsigned int size() { return 0x0200; }
3136
3137 void clear();
3138
3140 virtual bool hasChannel(unsigned int n) const;
3142 virtual Frequency channel(unsigned int n) const;
3144 virtual void setChannel(unsigned int n, Frequency freq);
3146 virtual void clearChannel(unsigned int n);
3147
3148 public:
3150 struct Limit {
3151 static constexpr unsigned int numEntries() { return 100; }
3152 };
3153
3154 protected:
3156 struct Offset {
3158 static constexpr unsigned int betweenChannels() { return 0x0004; }
3160 };
3161 };
3162
3165 {
3166 protected:
3168 WFMChannelBitmapElement(uint8_t *ptr, size_t size);
3169
3170 public:
3172 WFMChannelBitmapElement(uint8_t *ptr);
3173
3175 static constexpr unsigned int size() { return 0x0020; }
3176 };
3177
3180 {
3181 protected:
3183 WFMVFOElement(uint8_t *ptr, size_t size);
3184
3185 public:
3187 WFMVFOElement(uint8_t *ptr);
3188
3190 static constexpr unsigned int size() { return 0x0010; }
3191
3192 void clear();
3193
3195 virtual Frequency frequency() const;
3197 virtual void setFrequency(Frequency freq);
3198 };
3199
3200
3203 {
3204 protected:
3206 DMREncryptionKeyListElement(uint8_t *ptr, size_t size);
3207
3208 public:
3210 DMREncryptionKeyListElement(uint8_t *ptr);
3211
3213 static constexpr unsigned int size() { return 0x0040; }
3214
3215 void clear();
3216
3218 virtual bool hasKey(unsigned int n) const;
3220 virtual QByteArray key(unsigned int n) const;
3222 virtual void setKey(unsigned int n, const BasicEncryptionKey &key);
3224 virtual void clearKey(unsigned int n);
3225
3226 public:
3228 struct Limit {
3229 static constexpr unsigned int numEntries() { return 32; }
3230 };
3231
3232 protected:
3234 struct Offset {
3236 static constexpr unsigned int betweenKeys() { return 0x0002; }
3238 };
3239 };
3240
3241
3246 {
3247 protected:
3249 EnhancedEncryptionKeyListElement(uint8_t *ptr, size_t size);
3250
3251 public:
3254
3256 static constexpr unsigned int size() { return 0x0500; }
3257
3258 void clear();
3259
3261 QByteArray key(unsigned int n) const;
3263 void setKey(unsigned int n, const QByteArray &key);
3264
3265 public:
3267 struct Limit {
3268 static constexpr unsigned numEntries() { return DMREncryptionKeyListElement::Limit::numEntries(); }
3269 };
3270
3271 protected:
3273 struct Offset {
3275 static constexpr unsigned int keys() { return 0x0010; }
3276 static constexpr unsigned int betweenKeys() { return 0x0028; }
3278 };
3279 };
3280
3281
3287 {
3288 protected:
3290 ContactMapElement(uint8_t *ptr, unsigned size);
3291
3292 public:
3294 ContactMapElement(uint8_t *ptr);
3295
3297 static constexpr unsigned int size() { return 0x0008; }
3298
3300 void clear();
3302 bool isValid() const;
3303
3305 virtual bool isGroup() const;
3307 virtual unsigned id() const;
3309 virtual void setID(unsigned id, bool group=false);
3311 virtual unsigned index() const;
3313 virtual void setIndex(unsigned idx);
3314
3315 protected:
3317 struct Offset: public Element::Offset {
3319 static constexpr unsigned int id() { return 0x0000; }
3320 static constexpr unsigned int index() { return 0x0004; }
3322 };
3323 };
3324
3325
3326protected:
3328 AnytoneCodeplug(const QString &label, QObject *parent=nullptr);
3329
3330public:
3332 virtual ~AnytoneCodeplug();
3333
3335 virtual void clear();
3336
3337 Config *preprocess(Config *config, const ErrorStack &err) const;
3338 bool encode(Config *config, const Flags &flags, const ErrorStack &err);
3339
3340 bool decode(Config *config, const ErrorStack &err);
3341 bool postprocess(Config *config, const ErrorStack &err) const;
3342
3343protected:
3344 virtual bool index(Config *config, Context &ctx, const ErrorStack &err=ErrorStack()) const;
3345
3347 virtual bool allocateBitmaps() = 0;
3349 virtual void setBitmaps(Context &ctx) = 0;
3350
3353 virtual void allocateUpdated() = 0;
3356 virtual void allocateForDecoding() = 0;
3358 virtual void allocateForEncoding() = 0;
3359
3361 virtual bool encodeElements(const Flags &flags, Context &ctx, const ErrorStack &err=ErrorStack()) = 0;
3366 virtual bool decodeElements(Context &ctx, const ErrorStack &err=ErrorStack());
3368 virtual bool createElements(Context &ctx, const ErrorStack &err=ErrorStack()) = 0;
3370 virtual bool linkElements(Context &ctx, const ErrorStack &err=ErrorStack()) = 0;
3371
3372protected:
3374 QString _label;
3375
3376 // Allow access to protected allocation methods.
3377 friend class AnytoneRadio;
3378};
3379
3380#endif // ANYTONECODEPLUG_HH
Direction
Encodes the auto-repeater offset sign.
Definition anytone_settingsextension.hh:1188
BootDisplay
What to display during boot.
Definition anytone_settingsextension.hh:57
virtual Interval txDuration() const
Returns the TX duration in seconds.
Definition anytone_codeplug.cc:2936
virtual void setAction(Action action)
Sets the alarm action.
Definition anytone_codeplug.cc:2904
virtual void setEmergencyIndex(unsigned idx)
Sets the emergency ID index.
Definition anytone_codeplug.cc:2922
virtual void setDuration(const Interval &sec)
Sets the alarm duration in seconds.
Definition anytone_codeplug.cc:2931
virtual unsigned emergencyIndex() const
Returns the emergency ID index.
Definition anytone_codeplug.cc:2918
virtual void setRXDuration(const Interval &sec)
Sets the RX duration in seconds.
Definition anytone_codeplug.cc:2949
virtual void setEncodingType(ENIType type)
Sets the encoding type.
Definition anytone_codeplug.cc:2913
virtual Interval rxDuration() const
Returns the RX duration in seconds.
Definition anytone_codeplug.cc:2945
AnalogAlarm(uint8_t *ptr, unsigned size)
Hidden constructor.
Definition anytone_codeplug.cc:2881
virtual void setChannelIndex(unsigned idx)
Sets the channel index.
Definition anytone_codeplug.cc:2962
Action
Possible analog alarm types.
Definition anytone_codeplug.hh:2080
@ Both
Both?
Definition anytone_codeplug.hh:2084
@ TXAlarm
Transmit and alarm.
Definition anytone_codeplug.hh:2083
@ None
No alarm at all.
Definition anytone_codeplug.hh:2081
@ Background
Transmit and background.
Definition anytone_codeplug.hh:2082
virtual Action action() const
Returns the alarm action.
Definition anytone_codeplug.cc:2900
virtual bool repeatContinuously() const
Returns true if the alarm is repeated continuously.
Definition anytone_codeplug.cc:2972
static constexpr unsigned int size()
Returns the size of the element.
Definition anytone_codeplug.hh:2103
virtual Interval duration() const
Returns the alarm duration in seconds.
Definition anytone_codeplug.cc:2927
virtual void setRepatContinuously()
Sets the alarm to be repeated continuously.
Definition anytone_codeplug.cc:2984
virtual void setChannelSelected()
Sets the alarm channel to the selected channel.
Definition anytone_codeplug.cc:2967
ENIType
Possible alarm signalling types.
Definition anytone_codeplug.hh:2088
@ DTMF
Send alarm code as DTMF.
Definition anytone_codeplug.hh:2090
@ FiveTone
Send alarm code as 5-tone.
Definition anytone_codeplug.hh:2091
void clear()
Resets the alarm.
Definition anytone_codeplug.cc:2894
virtual unsigned channelIndex() const
Returns the channel index.
Definition anytone_codeplug.cc:2958
virtual unsigned repetitions() const
Returns the number of alarm repetitions.
Definition anytone_codeplug.cc:2976
virtual ENIType encodingType() const
Returns the encoding type.
Definition anytone_codeplug.cc:2909
virtual void setRepetitions(unsigned num)
Sets the number of alarm repetitions.
Definition anytone_codeplug.cc:2980
virtual bool channelIsSelected() const
Returns true if the alarm channel is the selected channel.
Definition anytone_codeplug.cc:2954
virtual void setTXDuration(const Interval &sec)
Sets the TX duration in seconds.
Definition anytone_codeplug.cc:2940
virtual void enableRXAlarm(bool enable)
Enables/disables the reception of alarms.
Definition anytone_codeplug.cc:3118
virtual void enableVOX(bool enable)
Enables/disables the VOX for alarms.
Definition anytone_codeplug.cc:3109
virtual void setVoiceBroadcastDuration(const Interval &min)
Sets voice broadcast duration in minutes.
Definition anytone_codeplug.cc:3087
virtual Interval txDuration() const
Returns the TX duration in seconds.
Definition anytone_codeplug.cc:3030
virtual bool rxAlarm() const
Returns true if alarms gets received enabled.
Definition anytone_codeplug.cc:3114
virtual void setRepatContinuously()
Sets the alarm to be repeated continuously.
Definition anytone_codeplug.cc:3078
virtual unsigned repetitions() const
Returns the number of alarm repetitions.
Definition anytone_codeplug.cc:3070
Action
Possible alarm types.
Definition anytone_codeplug.hh:2180
@ Local
Transmit and local alarm.
Definition anytone_codeplug.hh:2184
@ None
No alarm at all.
Definition anytone_codeplug.hh:2181
@ Background
Transmit and background.
Definition anytone_codeplug.hh:2182
@ NonLocal
Transmit and non-local alarm.
Definition anytone_codeplug.hh:2183
virtual Interval areaBroadcastDuration() const
Returns area broadcast duration in minutes.
Definition anytone_codeplug.cc:3094
virtual bool channelIsSelected() const
Returns true if the alarm channel is the selected channel.
Definition anytone_codeplug.cc:3048
virtual void setRepetitions(unsigned num)
Sets the number of alarm repetitions.
Definition anytone_codeplug.cc:3074
static constexpr unsigned int size()
Returns the size of the element.
Definition anytone_codeplug.hh:2196
virtual bool repeatContinuously() const
Returns true if the alarm is repeated continuously.
Definition anytone_codeplug.cc:3066
virtual void setRXDuration(const Interval &sec)
Sets the RX duration in seconds.
Definition anytone_codeplug.cc:3043
virtual void setTXDuration(const Interval &sec)
Sets the TX duration in seconds.
Definition anytone_codeplug.cc:3034
DigitalAlarm(uint8_t *ptr, unsigned size)
Hidden constructor.
Definition anytone_codeplug.cc:2993
virtual Interval duration() const
Returns the alarm duration in seconds.
Definition anytone_codeplug.cc:3021
virtual Action action() const
Returns the alarm action.
Definition anytone_codeplug.cc:3012
virtual Interval rxDuration() const
Returns the RX duration in seconds.
Definition anytone_codeplug.cc:3039
virtual void setChannelIndex(unsigned idx)
Sets the channel index.
Definition anytone_codeplug.cc:3056
virtual bool vox() const
Returns true if the VOX gets enabled.
Definition anytone_codeplug.cc:3105
virtual void setDuration(const Interval &sec)
Sets the alarm duration in seconds.
Definition anytone_codeplug.cc:3025
virtual void setAction(Action action)
Sets the alarm action.
Definition anytone_codeplug.cc:3016
virtual unsigned channelIndex() const
Returns the channel index.
Definition anytone_codeplug.cc:3052
virtual void setChannelSelected()
Sets the alarm channel to the selected channel.
Definition anytone_codeplug.cc:3061
virtual void setAreaBroadcastDuration(const Interval &min)
Sets area broadcast duration in minutes.
Definition anytone_codeplug.cc:3098
virtual Interval voiceBroadcastDuration() const
Returns voice broadcast duration in minutes.
Definition anytone_codeplug.cc:3083
void clear()
Resets the digital alarm settings.
Definition anytone_codeplug.cc:3006
virtual uint8_t * digital() const
Returns a pointer to the digital alarm settings.
Definition anytone_codeplug.cc:3150
void clear()
Clears the alarm settings.
Definition anytone_codeplug.cc:3140
virtual uint8_t * analog() const
Returns a pointer to the analog alarm settings.
Definition anytone_codeplug.cc:3146
static constexpr unsigned int size()
Returns the size of the element.
Definition anytone_codeplug.hh:2283
AlarmSettingElement(uint8_t *ptr, unsigned size)
Hidden constructor.
Definition anytone_codeplug.cc:3127
Type
Analog quick-call types.
Definition anytone_codeplug.hh:1766
@ DTMF
DTMF call.
Definition anytone_codeplug.hh:1768
@ None
None, quick-call disabled.
Definition anytone_codeplug.hh:1767
@ FiveTone
5-tone call
Definition anytone_codeplug.hh:1770
@ TwoTone
2-tone call.
Definition anytone_codeplug.hh:1769
AnalogQuickCallElement(uint8_t *ptr, unsigned size)
Hidden constructor.
Definition anytone_codeplug.cc:2631
virtual void setContactIndex(unsigned idx)
Sets the analog contact index.
Definition anytone_codeplug.cc:2667
static constexpr unsigned int size()
Returns the size of the element.
Definition anytone_codeplug.hh:1782
virtual void clearContactIndex()
Clears the contact index.
Definition anytone_codeplug.cc:2671
virtual unsigned contactIndex() const
Returns the analog contact index.
Definition anytone_codeplug.cc:2663
void clear()
Resets the quick call entry.
Definition anytone_codeplug.cc:2644
virtual bool hasContactIndex() const
Returns true if an analog contact index is set.
Definition anytone_codeplug.cc:2659
virtual void setType(Type type)
Sets the type of the quick call.
Definition anytone_codeplug.cc:2654
virtual Type type() const
Returns the call type.
Definition anytone_codeplug.cc:2650
uint8_t * quickCall(unsigned int n) const
Returns a pointer to the n-th entry.
Definition anytone_codeplug.cc:2699
static constexpr unsigned int size()
The size of the element.
Definition anytone_codeplug.hh:1827
void clear()
Clears the quick calls.
Definition anytone_codeplug.cc:2692
AnalogQuickCallsElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition anytone_codeplug.cc:2679
virtual bool updateConfig(Context &ctx)
Updates the abstract configuration from this general settings.
Definition anytone_codeplug.cc:2131
virtual void setIntroLine2(const QString &txt)
Sets the second intro line.
Definition anytone_codeplug.cc:2100
virtual void setIntroLine1(const QString &txt)
Sets the first intro line.
Definition anytone_codeplug.cc:2092
void clear()
Resets the boot settings.
Definition anytone_codeplug.cc:2083
virtual QString introLine2() const
Returns the second intro line.
Definition anytone_codeplug.cc:2096
BootSettingsElement(uint8_t *ptr, unsigned size)
Hidden constructor.
Definition anytone_codeplug.cc:2070
static constexpr unsigned int size()
Returns the size of the element.
Definition anytone_codeplug.hh:1400
virtual bool fromConfig(const Flags &flags, Context &ctx)
Updates the general settings from the given abstract configuration.
Definition anytone_codeplug.cc:2116
virtual QString password() const
Returns the password.
Definition anytone_codeplug.cc:2105
virtual QString introLine1() const
Returns the first intro line.
Definition anytone_codeplug.cc:2088
virtual void setPassword(const QString &txt)
Sets the password.
Definition anytone_codeplug.cc:2109
static constexpr unsigned int size()
Returns the size of the element.
Definition anytone_codeplug.hh:408
ChannelBitmapElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition anytone_codeplug.cc:813
virtual bool talkaround() const
Returns true if the talkaround is enabled.
Definition anytone_codeplug.cc:312
virtual void setTXCTCSS(const SelectiveCall &tone)
Sets the TX CTCSS tone.
Definition anytone_codeplug.cc:329
virtual void setTXOffset(unsigned hz)
Sets the TX frequency offset in Hz.
Definition anytone_codeplug.cc:137
virtual void setScanListIndex(unsigned idx)
Sets the scan list index (0-based).
Definition anytone_codeplug.cc:455
virtual SelectiveCall txCTCSS() const
Returns the TX CTCSS tone.
Definition anytone_codeplug.cc:325
virtual SelectiveCall txTone() const
Simplified access to TX signaling (tone).
Definition anytone_codeplug.cc:265
virtual void setGroupListIndex(unsigned idx)
Sets the group list index (0-based).
Definition anytone_codeplug.cc:472
virtual bool simplexTDMA() const
Returns true if simplex TDMA is enabled.
Definition anytone_codeplug.cc:537
virtual unsigned twoToneIDIndex() const
Returns the two-tone ID index (0-based).
Definition anytone_codeplug.cc:481
virtual bool adaptiveTDMA() const
Returns true if adaptive TDMA is enabled.
Definition anytone_codeplug.cc:545
virtual unsigned scanListIndex() const
Returns the scan list index (0-based).
Definition anytone_codeplug.cc:451
virtual void setTwoToneDecodeIndex(unsigned idx)
Sets the 2-tone decode index (0-based).
Definition anytone_codeplug.cc:397
virtual void setRXTone(const SelectiveCall &code)
Sets the RX signaling (tone).
Definition anytone_codeplug.cc:243
virtual SignalingMode rxSignalingMode() const
Returns the RX signaling mode.
Definition anytone_codeplug.cc:224
virtual bool rxAPRS() const
Returns true if RX APRS is enabled.
Definition anytone_codeplug.cc:553
virtual void setPower(Channel::Power power)
Sets the channel power.
Definition anytone_codeplug.cc:182
virtual void enableCTCSSPhaseReversal(bool enable)
Enables/disables CTCSS phase reversal.
Definition anytone_codeplug.cc:292
virtual unsigned twoToneDecodeIndex() const
Returns the 2-tone decode index (0-based).
Definition anytone_codeplug.cc:393
virtual void setDTMFIDIndex(unsigned idx)
Sets the DTMF ID index (0-based).
Definition anytone_codeplug.cc:501
virtual DMRChannel::TimeSlot timeSlot() const
Returns the time slot.
Definition anytone_codeplug.cc:515
virtual void setTimeSlot(DMRChannel::TimeSlot ts)
Sets the time slot.
Definition anytone_codeplug.cc:521
virtual OptSignaling optionalSignaling() const
Returns the optional signalling type.
Definition anytone_codeplug.cc:438
Mode
Defines all possible channel modes, see channelMode.
Definition anytone_codeplug.hh:72
@ Digital
Digital (DMR) channel.
Definition anytone_codeplug.hh:74
@ Analog
Analog channel.
Definition anytone_codeplug.hh:73
@ MixedAnalog
Mixed, analog channel with digital RX.
Definition anytone_codeplug.hh:75
@ MixedDigital
Mixed, digital channel with analog RX.
Definition anytone_codeplug.hh:76
virtual void setTXFrequency(unsigned hz)
Sets the TX frequency indirectly.
Definition anytone_codeplug.cc:151
virtual bool ctcssPhaseReversal() const
Returns true if the CTCSS phase reversal is enabled.
Definition anytone_codeplug.cc:288
virtual void setTXDCS(const SelectiveCall &code)
Sets the TX DCS code.
Definition anytone_codeplug.cc:361
virtual void setContactIndex(unsigned idx)
Sets the transmit contact index (0-based).
Definition anytone_codeplug.cc:406
virtual ~ChannelElement()
Destructor.
Definition anytone_codeplug.cc:107
virtual void setColorCode(unsigned code)
Sets the color code.
Definition anytone_codeplug.cc:510
virtual QString name() const
Returns the channel name.
Definition anytone_codeplug.cc:571
virtual Channel * toChannelObj(Context &ctx) const
Constructs a generic Channel object from the codeplug channel.
Definition anytone_codeplug.cc:581
virtual Mode mode() const
Returns the channel mode (analog, digtital, etc).
Definition anytone_codeplug.cc:163
virtual bool loneWorker() const
Returns true if lone worker is enabled.
Definition anytone_codeplug.cc:562
virtual void enableRXCustomCTCSS()
Enables RX custom CTCSS frequency.
Definition anytone_codeplug.cc:349
virtual SelectiveCall rxDCS() const
Returns the RX DCS code.
Definition anytone_codeplug.cc:369
virtual void setRXDCS(const SelectiveCall &code)
Sets the RX DCS code.
Definition anytone_codeplug.cc:376
virtual void enableSimplexTDMA(bool enable)
Enables/disables simplex TDMA confirmation.
Definition anytone_codeplug.cc:541
virtual unsigned txFrequency() const
Returns the TX frequency in Hz.
Definition anytone_codeplug.cc:142
virtual void setMode(Mode mode)
Sets the channel mode.
Definition anytone_codeplug.cc:167
Power
Defines all possible power settings.
Definition anytone_codeplug.hh:80
@ POWER_HIGH
High power, usually 5W.
Definition anytone_codeplug.hh:83
@ POWER_LOW
Low power, usually 1W.
Definition anytone_codeplug.hh:81
@ POWER_MIDDLE
Medium power, usually 2.5W.
Definition anytone_codeplug.hh:82
@ POWER_TURBO
Higher power, usually 7W on VHF and 6W on UHF.
Definition anytone_codeplug.hh:84
virtual unsigned dtmfIDIndex() const
Returns the DTFM ID index (0-based).
Definition anytone_codeplug.cc:497
virtual void setTXTone(const SelectiveCall &code)
Sets the RX signaling (tone).
Definition anytone_codeplug.cc:275
virtual void setRXSignalingMode(SignalingMode mode)
Sets the RX signaling mode.
Definition anytone_codeplug.cc:228
virtual void setRXCTCSS(const SelectiveCall &tone)
Sets the RX CTCSS tone.
Definition anytone_codeplug.cc:345
virtual bool hasGroupListIndex() const
Returns true, if a group list index is set.
Definition anytone_codeplug.cc:464
ChannelElement(uint8_t *ptr, unsigned size)
Hidden constructor.
Definition anytone_codeplug.cc:95
virtual bool callConfirm() const
Returns true if the call confirm is enabled.
Definition anytone_codeplug.cc:304
virtual unsigned txOffset() const
Returns the TX frequency offset in Hz.
Definition anytone_codeplug.cc:133
virtual Admit admit() const
Returns the admit criterion.
Definition anytone_codeplug.cc:429
virtual SelectiveCall txDCS() const
Returns the TX DCS code.
Definition anytone_codeplug.cc:354
virtual bool hasScanListIndex() const
Returns true, if a scan list index is set.
Definition anytone_codeplug.cc:447
virtual void setCustomCTCSSFrequency(double hz)
Sets the custom CTCSS frequency in Hz.
Definition anytone_codeplug.cc:388
static constexpr unsigned int size()
Returns the size of the element.
Definition anytone_codeplug.hh:130
virtual SignalingMode txSignalingMode() const
Returns the TX signaling mode.
Definition anytone_codeplug.cc:256
virtual SelectiveCall rxCTCSS() const
Returns the RX CTCSS tone.
Definition anytone_codeplug.cc:341
RepeaterMode
Defines all possible repeater modes.
Definition anytone_codeplug.hh:88
@ Simplex
Simplex mode, that is TX frequency = RX frequency. tx_offset is ignored.
Definition anytone_codeplug.hh:89
@ Positive
Repeater mode with positive tx_offset.
Definition anytone_codeplug.hh:90
@ Negative
Repeater mode with negative tx_offset.
Definition anytone_codeplug.hh:91
virtual void enableSMSConfirm(bool enable)
Enables/disables SMS confirmation.
Definition anytone_codeplug.cc:533
virtual unsigned rxFrequency() const
Returns the RX frequency in Hz.
Definition anytone_codeplug.cc:124
virtual void setTXSignalingMode(SignalingMode mode)
Sets the TX signaling mode.
Definition anytone_codeplug.cc:260
virtual void setRXFrequency(unsigned hz)
Sets the RX frequency in Hz.
Definition anytone_codeplug.cc:128
virtual bool smsConfirm() const
Returns true if SMS confirmation is enabled.
Definition anytone_codeplug.cc:529
virtual AnytoneFMChannelExtension::SquelchMode squelchMode() const
Returns true if the sequelch is silent and false if open.
Definition anytone_codeplug.cc:420
virtual void enableAdaptiveTDMA(bool enable)
Enables/disables adaptive TDMA.
Definition anytone_codeplug.cc:549
virtual void enableCallConfirm(bool enable)
Enables/disables call confirm.
Definition anytone_codeplug.cc:308
virtual bool rxCTCSSIsCustom() const
Returns true if the RX CTCSS tone frequency is custom (non standard).
Definition anytone_codeplug.cc:337
virtual void enableRXAPRS(bool enable)
Enables/disables RX APRS.
Definition anytone_codeplug.cc:557
virtual void setSquelchMode(AnytoneFMChannelExtension::SquelchMode mode)
Enables/disables silent squelch.
Definition anytone_codeplug.cc:424
virtual bool fromChannelObj(const Channel *c, Context &ctx)
Initializes this codeplug channel from the given generic configuration.
Definition anytone_codeplug.cc:705
virtual void setRepeaterMode(RepeaterMode mode)
Sets the transmit offset direction.
Definition anytone_codeplug.cc:219
Admit
Defines possible admit criteria.
Definition anytone_codeplug.hh:102
@ DifferentColorCode
For digital channels.
Definition anytone_codeplug.hh:105
@ SameColorCode
For digital channels.
Definition anytone_codeplug.hh:106
@ Always
For both channel types.
Definition anytone_codeplug.hh:103
@ Free
For digital channels.
Definition anytone_codeplug.hh:104
@ Busy
For analog channels.
Definition anytone_codeplug.hh:108
@ Tone
For analog channels.
Definition anytone_codeplug.hh:107
virtual void setFiveToneIDIndex(unsigned idx)
Sets the five-tone ID index (0-based).
Definition anytone_codeplug.cc:493
virtual bool linkChannelObj(Channel *c, Context &ctx) const
Links a previously constructed channel to the rest of the configuration.
Definition anytone_codeplug.cc:663
virtual unsigned contactIndex() const
Returns the transmit contact index (0-based).
Definition anytone_codeplug.cc:402
virtual void clearScanListIndex()
Clears the scan list index.
Definition anytone_codeplug.cc:459
OptSignaling
Defines all possible optional signalling settings.
Definition anytone_codeplug.hh:112
@ DTMF
Use DTMF.
Definition anytone_codeplug.hh:114
@ FiveTone
Use 5-tone.
Definition anytone_codeplug.hh:116
@ TwoTone
Use 2-tone.
Definition anytone_codeplug.hh:115
@ Off
None.
Definition anytone_codeplug.hh:113
virtual void clearGroupListIndex()
Clears the group list index.
Definition anytone_codeplug.cc:476
virtual unsigned radioIDIndex() const
Returns the radio ID index (0-based).
Definition anytone_codeplug.cc:411
virtual void enableRXOnly(bool enable)
Enables/disables RX only.
Definition anytone_codeplug.cc:300
virtual double customCTCSSFrequency() const
Returns the custom CTCSS frequency in Hz.
Definition anytone_codeplug.cc:384
virtual unsigned fiveToneIDIndex() const
Returns the five-tone ID index (0-based).
Definition anytone_codeplug.cc:489
virtual Channel::Power power() const
Returns the channel power.
Definition anytone_codeplug.cc:172
virtual FMChannel::Bandwidth bandwidth() const
Returns the band width of the channel.
Definition anytone_codeplug.cc:201
virtual bool txCTCSSIsCustom() const
Returns true if the TX CTCSS tone frequency is custom (non standard).
Definition anytone_codeplug.cc:321
virtual RepeaterMode repeaterMode() const
Returns the transmit offset direction.
Definition anytone_codeplug.cc:215
virtual void enableTXCustomCTCSS()
Enables TX custom CTCSS frequency.
Definition anytone_codeplug.cc:333
virtual void setAdmit(Admit admit)
Sets the admit criterion.
Definition anytone_codeplug.cc:433
virtual void setName(const QString &name)
Sets the channel name.
Definition anytone_codeplug.cc:575
virtual void enableLoneWorker(bool enable)
Enables/disables lone worker.
Definition anytone_codeplug.cc:566
virtual void setTwoToneIDIndex(unsigned idx)
Sets the two-tone ID index (0-based).
Definition anytone_codeplug.cc:485
virtual void setBandwidth(FMChannel::Bandwidth bw)
Sets the band width of the channel.
Definition anytone_codeplug.cc:207
virtual unsigned colorCode() const
Returns the color code.
Definition anytone_codeplug.cc:506
virtual SelectiveCall rxTone() const
Simplified access to RX signaling (tone).
Definition anytone_codeplug.cc:233
virtual void setOptionalSignaling(OptSignaling sig)
Sets the optional signaling type.
Definition anytone_codeplug.cc:442
virtual void enableTalkaround(bool enable)
Enables/disables talkaround.
Definition anytone_codeplug.cc:316
virtual void setRadioIDIndex(unsigned idx)
Sets the radio ID index (0-based).
Definition anytone_codeplug.cc:415
virtual unsigned groupListIndex() const
Returns the scan list index (0-based).
Definition anytone_codeplug.cc:468
SignalingMode
Possible analog signaling modes.
Definition anytone_codeplug.hh:95
@ DCS
Use DCS codes.
Definition anytone_codeplug.hh:98
@ None
None.
Definition anytone_codeplug.hh:96
void clear()
Resets the channel.
Definition anytone_codeplug.cc:112
virtual bool rxOnly() const
Returns true if the RX only is enabled.
Definition anytone_codeplug.cc:296
static constexpr unsigned int size()
Returns the size of the element.
Definition anytone_codeplug.hh:493
ContactBitmapElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition anytone_codeplug.cc:955
virtual void setNumber(unsigned number)
Sets the contact number.
Definition anytone_codeplug.cc:887
virtual void setName(const QString &name)
Sets the name of the contact.
Definition anytone_codeplug.cc:878
virtual ~ContactElement()
Destructor.
Definition anytone_codeplug.cc:841
virtual bool fromContactObj(const DMRContact *contact, Context &ctx)
Constructs this contact from the give DigitalContact.
Definition anytone_codeplug.cc:933
ContactElement(uint8_t *ptr, unsigned size)
Hidden constructor.
Definition anytone_codeplug.cc:829
virtual DMRContact::Type type() const
Returns the contact type.
Definition anytone_codeplug.cc:856
virtual void setType(DMRContact::Type type)
Sets the contact type.
Definition anytone_codeplug.cc:865
virtual DMRContact * toContactObj(Context &ctx) const
Assembles a DigitalContact from this contact.
Definition anytone_codeplug.cc:914
virtual void setAlertType(AnytoneContactExtension::AlertType type)
Sets the alert type.
Definition anytone_codeplug.cc:909
virtual unsigned number() const
Returns the contact number.
Definition anytone_codeplug.cc:883
static constexpr unsigned int size()
Returns the size of the element.
Definition anytone_codeplug.hh:430
virtual QString name() const
Returns the name of the contact.
Definition anytone_codeplug.cc:874
bool isValid() const
Returns true if the element is valid.
Definition anytone_codeplug.cc:851
virtual AnytoneContactExtension::AlertType alertType() const
Returns the alert type.
Definition anytone_codeplug.cc:892
void clear()
Resets the contact element.
Definition anytone_codeplug.cc:846
virtual void setIndex(unsigned idx)
Sets the index.
Definition anytone_codeplug.cc:4397
virtual unsigned id() const
Returns the id.
Definition anytone_codeplug.cc:4380
bool isValid() const
Returns true if the contact map is valid.
Definition anytone_codeplug.cc:4369
static constexpr unsigned int size()
Returns the size of the element.
Definition anytone_codeplug.hh:3297
virtual bool isGroup() const
Returns true if the entry is a group call.
Definition anytone_codeplug.cc:4375
void clear()
Clears the entry.
Definition anytone_codeplug.cc:4364
virtual void setID(unsigned id, bool group=false)
Encodes ID and group call flag.
Definition anytone_codeplug.cc:4386
ContactMapElement(uint8_t *ptr, unsigned size)
Hidden constructor.
Definition anytone_codeplug.cc:4351
virtual unsigned index() const
Returns the index.
Definition anytone_codeplug.cc:4393
virtual QString message() const
Returns the message.
Definition anytone_codeplug.cc:2448
virtual bool updateConfig(Context &ctx) const
Decodes the message.
Definition anytone_codeplug.cc:2464
void setMessage(const QString &message)
Sets the message.
Definition anytone_codeplug.cc:2453
virtual bool fromConfig(Codeplug::Flags flags, Context &ctx)
Encodes the message.
Definition anytone_codeplug.cc:2458
DMRAPRSMessageElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition anytone_codeplug.cc:2430
void clear()
Abstract method to reset the element within the codeplug.
Definition anytone_codeplug.cc:2443
static constexpr unsigned int size()
The size of the element.
Definition anytone_codeplug.hh:1580
virtual Interval automaticInterval() const
Returns the automatic transmit interval in seconds.
Definition anytone_codeplug.cc:2181
virtual Channel::Power power() const
Returns the transmit power.
Definition anytone_codeplug.cc:2232
virtual bool automatic() const
Returns true if the automatic APRS is enabled.
Definition anytone_codeplug.cc:2177
virtual void setChannelSelected(unsigned n)
Sets the n-th channel to selected channel.
Definition anytone_codeplug.cc:2293
virtual void setDestination(unsigned id)
Sets the destination DMR ID to send the APRS information to.
Definition anytone_codeplug.cc:2306
virtual void overrideTimeSlot(DMRChannel::TimeSlot ts)
Sets the timeslot.
Definition anytone_codeplug.cc:2341
virtual void setManualInterval(const Interval &sec)
Sets the manual TX interval in seconds.
Definition anytone_codeplug.cc:2172
virtual void setCallType(DMRContact::Type type)
Sets the call type.
Definition anytone_codeplug.cc:2320
virtual bool updateConfig(Context &ctx, const ErrorStack &err=ErrorStack())
Updates the global config.
Definition anytone_codeplug.cc:2387
virtual bool fixedLocation() const
Returns true if the fixed location beacon is enabled.
Definition anytone_codeplug.cc:2196
virtual void setChannelIndex(unsigned n, unsigned idx)
Sets the n-th channel index.
Definition anytone_codeplug.cc:2281
virtual bool hasChannel(unsigned n) const
Returns true if the n-th channel is set.
Definition anytone_codeplug.cc:2261
virtual Interval manualInterval() const
Returns the Manual TX interval in seconds.
Definition anytone_codeplug.cc:2168
virtual void setLocation(const QGeoCoordinate &pos)
Sets the location of the fixed position.
Definition anytone_codeplug.cc:2210
virtual void disableAutomatic()
Disables the automatic APRS.
Definition anytone_codeplug.cc:2191
virtual bool channelIsSelected(unsigned n) const
Returns true if the n-th channel is selected channel.
Definition anytone_codeplug.cc:2273
virtual void enableFixedLocation(bool enable)
Enables/disables fixed location beacon.
Definition anytone_codeplug.cc:2227
virtual bool timeSlotOverride() const
Returns true if the timeslot of the channel is overridden.
Definition anytone_codeplug.cc:2329
virtual void setAutomaticInterval(const Interval &sec)
Sets the automatic transmit interval in seconds.
Definition anytone_codeplug.cc:2185
virtual DMRChannel::TimeSlot timeslot() const
Returns the timeslot (only valid if timeSlotOverride returns true).
Definition anytone_codeplug.cc:2333
virtual DMRContact::Type callType() const
Returns the call type.
Definition anytone_codeplug.cc:2311
static constexpr unsigned int size()
Returns the size of the element.
Definition anytone_codeplug.hh:1460
virtual void disableTimeSlotOverride()
Disables TS override.
Definition anytone_codeplug.cc:2348
void clear()
Resets the APRS settings.
Definition anytone_codeplug.cc:2163
virtual bool channelIsVFOB(unsigned n) const
Returns true if the n-th channel is VFO B.
Definition anytone_codeplug.cc:2269
virtual void setChannelVFOA(unsigned n)
Sets the n-th channel to VFO A.
Definition anytone_codeplug.cc:2285
DMRAPRSSettingsElement(uint8_t *ptr, unsigned size)
Hidden constructor.
Definition anytone_codeplug.cc:2150
virtual void clearChannel(unsigned n)
Resets the n-th channel.
Definition anytone_codeplug.cc:2297
virtual void setPower(Channel::Power power)
Sets the transmit power.
Definition anytone_codeplug.cc:2242
virtual unsigned destination() const
Returns the destination DMR ID to send the APRS information to.
Definition anytone_codeplug.cc:2302
virtual bool channelIsVFOA(unsigned n) const
Returns true if the n-th channel is VFO A.
Definition anytone_codeplug.cc:2265
virtual QGeoCoordinate location() const
Returns the location of the fixed position.
Definition anytone_codeplug.cc:2200
virtual bool fromConfig(const Flags &flags, Context &ctx)
Updates the GPS settings from the given config.
Definition anytone_codeplug.cc:2353
virtual bool linkGPSSystem(uint8_t i, Context &ctx)
Links GPS system from this GPS settings.
Definition anytone_codeplug.cc:2407
virtual unsigned channelIndex(unsigned n) const
Returns the index of the n-th channel.
Definition anytone_codeplug.cc:2277
virtual void setChannelVFOB(unsigned n)
Sets the n-th channel to VFO B.
Definition anytone_codeplug.cc:2289
virtual bool createGPSSystem(uint8_t i, Context &ctx)
Creates GPS system from this GPS settings.
Definition anytone_codeplug.cc:2400
void clear()
Abstract method to reset the element within the codeplug.
Definition anytone_codeplug.cc:4276
virtual bool hasKey(unsigned int n) const
Returns true if the n-th id is set.
Definition anytone_codeplug.cc:4281
virtual QByteArray key(unsigned int n) const
Returns the ID of the encryption key.
Definition anytone_codeplug.cc:4288
virtual void clearKey(unsigned int n)
Clears the n-th id.
Definition anytone_codeplug.cc:4302
DMREncryptionKeyListElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition anytone_codeplug.cc:4263
static constexpr unsigned int size()
The size of the element.
Definition anytone_codeplug.hh:3213
virtual void setKey(unsigned int n, const BasicEncryptionKey &key)
Sets the ID of the encryption key.
Definition anytone_codeplug.cc:4295
DTMFContactBytemapElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition anytone_codeplug.cc:1045
static constexpr unsigned int size()
Returns the size of the element.
Definition anytone_codeplug.hh:564
virtual bool fromContact(const DTMFContact *contact)
Encodes an DTMF contact from the given one.
Definition anytone_codeplug.cc:1035
virtual void setNumber(const QString &number)
Sets the number of the contact.
Definition anytone_codeplug.cc:1006
virtual DTMFContact * toContact() const
Creates an DTMF contact from the entry.
Definition anytone_codeplug.cc:1030
DTMFContactElement(uint8_t *ptr, unsigned size)
Hidden constructor.
Definition anytone_codeplug.cc:971
virtual QString number() const
Returns the number of the contact.
Definition anytone_codeplug.cc:993
virtual void setName(const QString &name)
Sets the name of the contact.
Definition anytone_codeplug.cc:1025
void clear()
Resets the contact element.
Definition anytone_codeplug.cc:988
static constexpr unsigned int size()
Returns the size of the element.
Definition anytone_codeplug.hh:514
virtual ~DTMFContactElement()
Destructor.
Definition anytone_codeplug.cc:983
virtual QString name() const
Returns the name of the contact.
Definition anytone_codeplug.cc:1021
virtual void clearNumber(unsigned int n)
Clears the n-th number.
Definition anytone_codeplug.cc:4154
static constexpr unsigned int size()
The size of the element.
Definition anytone_codeplug.hh:3098
void clear()
Abstract method to reset the element within the codeplug.
Definition anytone_codeplug.cc:4126
virtual bool hasNumber(unsigned int n) const
Returns true, if the n-th number is set.
Definition anytone_codeplug.cc:4131
DTMFIDListElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition anytone_codeplug.cc:4113
virtual QString number(unsigned int n) const
Returns the n-th number.
Definition anytone_codeplug.cc:4138
virtual void setNumber(unsigned int n, const QString &number)
Sets the n-th number.
Definition anytone_codeplug.cc:4146
Response
Possible responses to a DTMF decode.
Definition anytone_codeplug.hh:2946
virtual void setDCodePause(const Interval &sec)
Sets the D-code pause in seconds.
Definition anytone_codeplug.cc:4030
virtual void setFirstDigitDuration(const Interval &ms)
Sets the first digit duration in ms.
Definition anytone_codeplug.cc:3969
virtual QString botID() const
Returns the BOT ID.
Definition anytone_codeplug.cc:4044
virtual Interval postEncodingDelay() const
Returns the post encoding delay in ms.
Definition anytone_codeplug.cc:3999
static constexpr unsigned int size()
Returns the size of the element.
Definition anytone_codeplug.hh:2959
virtual unsigned groupCode() const
Returns the group code [0,15].
Definition anytone_codeplug.cc:3938
virtual Interval firstDigitDuration() const
Returns the first digit duration in ms.
Definition anytone_codeplug.cc:3965
virtual void setRemoteStunID(const QString &id)
Sets the remote stun ID.
Definition anytone_codeplug.cc:4101
DTMFSettingsElement(uint8_t *ptr, unsigned size)
Hidden constructor.
Definition anytone_codeplug.cc:3910
virtual QString id() const
Returns the radio ID.
Definition anytone_codeplug.cc:3983
virtual void setResponse(Response resp)
Sets the response to a DTMF decode.
Definition anytone_codeplug.cc:3951
virtual void setGroupCode(unsigned symb)
Sets the group code [0,15].
Definition anytone_codeplug.cc:3942
virtual void setPostEncodingDelay(const Interval &ms)
Sets the post encoding delay in ms.
Definition anytone_codeplug.cc:4003
virtual void enablePTTID(bool enable)
Enables/disables the PTT ID.
Definition anytone_codeplug.cc:4021
virtual bool pttIDEnabled() const
Returns true if the PTT ID is enabled.
Definition anytone_codeplug.cc:4017
virtual void setIntervalSymbol(unsigned symb)
Sets the interval/repeat symbol [0,15].
Definition anytone_codeplug.cc:3933
virtual void setPreTime(const Interval &ms)
Sets the pre time in ms.
Definition anytone_codeplug.cc:3960
virtual void setRemoteKillID(const QString &id)
Sets the remote kill ID.
Definition anytone_codeplug.cc:4084
virtual void setID(const QString &id)
Sets the radio ID.
Definition anytone_codeplug.cc:3991
virtual Interval preTime() const
Returns the pre time in ms.
Definition anytone_codeplug.cc:3956
virtual void setAutoResetTime(const Interval &sec)
Sets the auto reset time in seconds.
Definition anytone_codeplug.cc:3978
virtual Interval autoResetTime() const
Returns the auto reset time in seconds.
Definition anytone_codeplug.cc:3974
virtual void setBOTID(const QString &id)
Sets the BOT ID.
Definition anytone_codeplug.cc:4052
virtual Interval dCodePause() const
Returns the D-code pause in seconds.
Definition anytone_codeplug.cc:4026
virtual Interval pttIDPause() const
Returns the PTT ID pause in seconds.
Definition anytone_codeplug.cc:4008
virtual QString eotID() const
Returns the EOT ID.
Definition anytone_codeplug.cc:4060
virtual void setPTTIDPause(const Interval &sec)
Sets the PTT ID pause in seconds.
Definition anytone_codeplug.cc:4012
virtual QString remoteKillID() const
Returns the remote kill ID.
Definition anytone_codeplug.cc:4076
virtual QString remoteStunID() const
Returns the remote stun ID.
Definition anytone_codeplug.cc:4093
void clear()
Resets the settings.
Definition anytone_codeplug.cc:3923
virtual bool sidetone() const
Returns true if the sidetone is enabled.
Definition anytone_codeplug.cc:4035
virtual void enableSidetone(bool enable)
Enables/disables the sidetone.
Definition anytone_codeplug.cc:4039
virtual Response response() const
Returns the response to a DMTF decode.
Definition anytone_codeplug.cc:3947
virtual unsigned intervalSymbol() const
Returns the interval/repeat symbol [0,15].
Definition anytone_codeplug.cc:3929
virtual void setEOTID(const QString &id)
Sets the EOT ID.
Definition anytone_codeplug.cc:4068
virtual DMRContact::Type callType() const
Returns the call type.
Definition anytone_codeplug.cc:3176
virtual unsigned destination() const
Returns the destination DMR number.
Definition anytone_codeplug.cc:3194
static constexpr unsigned int size()
Returns the size of the element.
Definition anytone_codeplug.hh:2319
void clear()
Clears the settings.
Definition anytone_codeplug.cc:3171
virtual void setDestination(unsigned number)
Sets the destination DMR number.
Definition anytone_codeplug.cc:3198
virtual void setCallType(DMRContact::Type type)
Sets the call type.
Definition anytone_codeplug.cc:3185
DigitalAlarmExtensionElement(uint8_t *ptr, unsigned size)
Hidden constructor.
Definition anytone_codeplug.cc:3158
EnhancedEncryptionKeyListElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition anytone_codeplug.cc:4313
QByteArray key(unsigned int n) const
Returns the n-th key.
Definition anytone_codeplug.cc:4334
void clear()
Abstract method to reset the element within the codeplug.
Definition anytone_codeplug.cc:4326
void setKey(unsigned int n, const QByteArray &key)
Sets the n-th key.
Definition anytone_codeplug.cc:4341
static constexpr unsigned int size()
The size of the element.
Definition anytone_codeplug.hh:3256
virtual void setChannelBNameColor(AnytoneDisplaySettingsExtension::Color)=0
Sets the channel name color for the VFO B.
virtual bool linkConfig(Context &ctx, const ErrorStack &err=ErrorStack())
Link config from settings extension.
Definition anytone_codeplug.cc:1982
virtual void setZoneBNameColor(AnytoneDisplaySettingsExtension::Color)=0
Sets the zone name color for the VFO B.
virtual bool fromConfig(const Flags &flags, Context &ctx, const ErrorStack &err=ErrorStack())
Encodes the settings from the config.
Definition anytone_codeplug.cc:1940
virtual AnytoneDisplaySettingsExtension::Color zoneBNameColor() const =0
Returns the color of the zone name for VFO B.
virtual bool updateConfig(Context &ctx, const ErrorStack &err=ErrorStack())
Update config from settings.
Definition anytone_codeplug.cc:1963
virtual void setZoneANameColor(AnytoneDisplaySettingsExtension::Color)=0
Sets the zone name color for the VFO A.
virtual AnytoneDisplaySettingsExtension::Color zoneANameColor() const =0
Returns the color of the zone name for VFO A.
virtual AnytoneDisplaySettingsExtension::Color channelBNameColor() const =0
Returns the color of the channel name for VFO B.
ExtendedSettingsElement(uint8_t *ptr, unsigned size)
Hidden constructor.
Definition anytone_codeplug.cc:1933
virtual void setFunction(Function function)
Sets the function.
Definition anytone_codeplug.cc:3348
virtual QString name() const
Returns the name.
Definition anytone_codeplug.cc:3390
void clear()
Clears the function settings.
Definition anytone_codeplug.cc:3339
virtual Function function() const
Returns the function.
Definition anytone_codeplug.cc:3344
Function
Possible function being performed on 5-tone decoding.
Definition anytone_codeplug.hh:2466
Response
Possible responses to 5-tone decoding.
Definition anytone_codeplug.hh:2472
virtual void setName(const QString &name)
Sets the name.
Definition anytone_codeplug.cc:3394
virtual void setID(const QString &id)
Sets the ID.
Definition anytone_codeplug.cc:3375
virtual void setResponse(Response response)
Sets the response.
Definition anytone_codeplug.cc:3357
static constexpr unsigned int size()
Returns the size of the element.
Definition anytone_codeplug.hh:2485
virtual Response response() const
Returns the response.
Definition anytone_codeplug.cc:3353
FiveToneFunctionElement(uint8_t *ptr, unsigned size)
Hidden constructor.
Definition anytone_codeplug.cc:3326
virtual QString id() const
Returns the ID.
Definition anytone_codeplug.cc:3362
virtual uint8_t * function(unsigned int n) const
Returns the pointer to the n-th function setting.
Definition anytone_codeplug.cc:3420
void clear()
Abstract method to reset the element within the codeplug.
Definition anytone_codeplug.cc:3415
static constexpr unsigned int size()
The size of the element.
Definition anytone_codeplug.hh:2546
FiveToneFunctionListElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition anytone_codeplug.cc:3402
static constexpr unsigned int size()
The size of the element.
Definition anytone_codeplug.hh:2426
FiveToneIDBitmapElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition anytone_codeplug.cc:3282
virtual void setStandard(Standard std)
Sets the encoding standard.
Definition anytone_codeplug.cc:3228
virtual Interval toneDuration() const
Returns the tone duration in ms.
Definition anytone_codeplug.cc:3233
FiveToneIDElement(uint8_t *ptr, unsigned size)
Hidden constructor.
Definition anytone_codeplug.cc:3206
void clear()
Clears the ID.
Definition anytone_codeplug.cc:3219
static constexpr unsigned int size()
Returns the size of the element.
Definition anytone_codeplug.hh:2367
virtual void setID(const QString &id)
Sets the ID.
Definition anytone_codeplug.cc:3255
virtual QString name() const
Returns the name.
Definition anytone_codeplug.cc:3270
virtual void setToneDuration(const Interval &ms)
Sets the tone duration in ms.
Definition anytone_codeplug.cc:3237
Standard
Possible 5-tone encoding standards.
Definition anytone_codeplug.hh:2353
virtual void setName(const QString &name)
Sets the name.
Definition anytone_codeplug.cc:3274
virtual Standard standard() const
Returns the 5Tone encoding standard.
Definition anytone_codeplug.cc:3224
virtual QString id() const
Returns the ID.
Definition anytone_codeplug.cc:3242
static constexpr unsigned int size()
The size of the element.
Definition anytone_codeplug.hh:2444
FiveToneIDListElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition anytone_codeplug.cc:3298
virtual uint8_t * member(unsigned int n) const
Returns a pointer to the n-th five-tone ID.
Definition anytone_codeplug.cc:3316
void clear()
Abstract method to reset the element within the codeplug.
Definition anytone_codeplug.cc:3311
virtual Standard decodingStandard() const
Returns the decoding standard.
Definition anytone_codeplug.cc:3457
void clear()
Resets the 5tone settings.
Definition anytone_codeplug.cc:3443
enum FiveToneIDElement::Standard Standard
Possible 5-tone encoding standards.
Definition anytone_codeplug.hh:2573
virtual QString eotID() const
Returns the 5tone EOT ID.
Definition anytone_codeplug.cc:3665
static constexpr unsigned int size()
Returns the size of the element.
Definition anytone_codeplug.hh:2584
FiveToneSettingsElement(uint8_t *ptr, unsigned size)
Hidden constructor.
Definition anytone_codeplug.cc:3430
virtual unsigned stopCode() const
Returns the stop code [0,15].
Definition anytone_codeplug.cc:3556
virtual Interval autoResetTime() const
Returns the auto-reset time in seconds.
Definition anytone_codeplug.cc:3529
virtual void setPreTime(const Interval &ms)
Sets the pre time in ms.
Definition anytone_codeplug.cc:3596
virtual void setStopCode(unsigned code)
Sets the stop code.
Definition anytone_codeplug.cc:3560
virtual void setDecodingResponse(Response response)
Sets the decoding response.
Definition anytone_codeplug.cc:3452
virtual Interval preTime() const
Returns the pre time in ms.
Definition anytone_codeplug.cc:3592
virtual QString botID() const
Returns the 5tone BOT ID.
Definition anytone_codeplug.cc:3619
virtual bool hasPTTID() const
Returns true if the PTT ID is set.
Definition anytone_codeplug.cc:3512
virtual void setID(const QString &id)
Sets the 5tone radio ID.
Definition anytone_codeplug.cc:3488
virtual void setStopTime(const Interval &ms)
Sets the stop time in ms.
Definition anytone_codeplug.cc:3569
virtual void setBOTToneDuration(const Interval &ms)
Sets the BOT tone duration in ms.
Definition anytone_codeplug.cc:3614
virtual QString id() const
Returns the 5tone radio ID.
Definition anytone_codeplug.cc:3475
virtual Interval decodeTime() const
Returns the decode time in ms.
Definition anytone_codeplug.cc:3574
virtual Interval decodingToneDuration() const
Returns the decoding tone duration in ms.
Definition anytone_codeplug.cc:3466
virtual void setEOTToneDuration(const Interval &ms)
Sets the EOT tone duration in ms.
Definition anytone_codeplug.cc:3660
virtual Interval stopTime() const
Returns the stop time in ms.
Definition anytone_codeplug.cc:3565
virtual bool sidetoneEnabled() const
Returns true if the sidetone is enabled.
Definition anytone_codeplug.cc:3547
virtual void setAutoResetTime(const Interval &s)
Sets the auto-reset time in seconds.
Definition anytone_codeplug.cc:3533
virtual void setDecodeTime(const Interval &ms)
Sets the decode time in ms.
Definition anytone_codeplug.cc:3578
virtual void enableSidetone(bool enable)
Enables/disables side tone.
Definition anytone_codeplug.cc:3551
virtual void setDecodingStandard(Standard standard)
Sets the decoding standard.
Definition anytone_codeplug.cc:3461
virtual Interval botToneDuration() const
Returns the BOT tone duration in ms.
Definition anytone_codeplug.cc:3610
virtual Interval firstDelay() const
Returns the first delay in ms.
Definition anytone_codeplug.cc:3538
virtual void setEOTID(const QString &id)
Sets the 5tone EOT ID.
Definition anytone_codeplug.cc:3678
virtual void setBOTStandard(Standard standard)
Sets the BOT standard.
Definition anytone_codeplug.cc:3605
virtual void setDelayAfterStop(const Interval &ms)
Sets the delay after stop in ms.
Definition anytone_codeplug.cc:3587
virtual Interval postEncodeDelay() const
Returns the post-encode delay in ms.
Definition anytone_codeplug.cc:3503
virtual void setPTTID(unsigned id)
Sets the PTT ID [5,75].
Definition anytone_codeplug.cc:3520
virtual void setPostEncodeDelay(const Interval &ms)
Sets the post-encode delay in ms.
Definition anytone_codeplug.cc:3507
virtual unsigned pttID() const
Returns the PTT ID.
Definition anytone_codeplug.cc:3516
virtual void setDecodingToneDuration(const Interval &ms)
Sets the decoding tone duration in ms.
Definition anytone_codeplug.cc:3470
virtual Response decodingResponse() const
Returns the decoding response.
Definition anytone_codeplug.cc:3448
virtual Interval delayAfterStop() const
Returns the delay after stop in ms.
Definition anytone_codeplug.cc:3583
virtual Interval eotToneDuration() const
Returns the EOT tone duration in ms.
Definition anytone_codeplug.cc:3656
virtual void setBOTID(const QString &id)
Sets the 5tone BOT ID.
Definition anytone_codeplug.cc:3632
virtual void setEOTStandard(Standard standard)
Sets the EOT standard.
Definition anytone_codeplug.cc:3651
virtual Standard botStandard() const
Returns the BOT standard.
Definition anytone_codeplug.cc:3601
virtual void setFirstDelay(const Interval &ms)
Sets the first delay in ms.
Definition anytone_codeplug.cc:3542
Response
Possible responses to decoded 5-tone codes.
Definition anytone_codeplug.hh:2569
virtual Standard eotStandard() const
Returns the EOT standard.
Definition anytone_codeplug.cc:3647
virtual void clearPTTID()
Clears the PTT ID.
Definition anytone_codeplug.cc:3524
virtual AnytoneKeySettingsExtension::KeyFunction funcKeyALong() const =0
Returns the key function for a long press on the function key 1.
virtual bool updateConfig(Context &ctx)
Updates the abstract config from general settings.
Definition anytone_codeplug.cc:1734
virtual Interval menuExitTime() const =0
Returns the menu exit time in seconds.
virtual AnytoneKeySettingsExtension::KeyFunction funcKeyBShort() const =0
Returns the key function for a short press on the function key 2/B.
virtual bool autoKeyLock() const
Returns true if auto key-lock is enabled.
Definition anytone_codeplug.cc:1514
virtual void enableSMSAlert(bool enable)=0
Enables/disables SMS alert.
virtual void enableEnhancedAudio(bool enable)=0
Enables/disables "enhanced" audio.
virtual void enableShowCurrentContact(bool enable)=0
Enables/disables display of current contact.
virtual void setFuncKey2Long(AnytoneKeySettingsExtension::KeyFunction func)=0
Sets the key function for a long press on the function key 2.
virtual unsigned maxSpeakerVolume() const =0
Returns the maximum volume.
virtual void enableVolumeChangePrompt(bool enable)=0
Enables/disables the volume change prompt.
virtual void resetToneMelody(Melody &melody) const =0
Returns the reset-tone melody.
virtual Level squelchLevelB() const
Squelch level of VFO B, (0=off).
Definition anytone_codeplug.cc:1575
virtual void enableShowLastHeard(bool enable)=0
Enables/disables showing last heard.
virtual Level dmrMicGain() const =0
Returns the mirophone gain.
virtual bool keyLockForced() const =0
Returns true if the "professional" key is locked.
virtual void enableGPSUnitsImperial(bool enable)=0
Enables/disables imperial GPS units.
virtual void setMenuExitTime(Interval intv)=0
Sets the menu exit time in seconds.
virtual void setAutoRepeaterMinFrequencyVHF(Frequency Hz)=0
Sets the minimum frequency in Hz for the auto-repeater range in VHF band.
virtual bool defaultChannelAIsVFO() const =0
Returns true if the default channel for VFO A is VFO.
virtual void callToneMelody(Melody &melody) const =0
Returns the call-tone melody.
virtual bool fmTalkPermit() const =0
Returns true if the talk permit tone is enabled for digital channels.
virtual void setDefaultChannelAIndex(unsigned idx)=0
Sets the default channel index for VFO A.
virtual void setDefaultZoneIndexA(unsigned idx)=0
Sets the default zone (0-based) for VFO A.
virtual void enableStartupTone(bool enable)=0
Enables/disables the startup tone.
virtual unsigned defaultChannelAIndex() const =0
Returns the default channel index for VFO A.
virtual bool enhanceAudio() const =0
Returns true if the audio is "enhanced".
virtual void setVFOScanType(AnytoneSettingsExtension::VFOScanType type)=0
Sets the VFO scan type.
virtual void setIdleToneMelody(const Melody &melody)=0
Sets the idle-tone melody.
virtual void enableDMRTalkPermit(bool enable)=0
Enables/disables the talk permit tone for digital channels.
virtual void enableGPS(bool enable)=0
Enables/disables recording.
virtual void setDefaultZoneIndexB(unsigned idx)=0
Sets the default zone (0-based) for VFO B.
virtual AnytoneKeySettingsExtension::KeyFunction funcKeyAShort() const =0
Returns the key function for a short press on the function key 1/A.
virtual void setAutoRepeaterOffsetFrequenyIndexUHF(unsigned idx)=0
Sets the auto-repeater offset frequency index for UHF.
virtual bool smsAlert() const =0
Returns true if SMS alert is enabled.
virtual Frequency maxVFOScanFrequencyUHF() const =0
Returns the maximum VFO scan frequency for the UHF band in Hz.
virtual void setCallToneMelody(const Melody &melody)=0
Sets the call-tone melody.
virtual bool displayClock() const =0
Returns true if the clock is shown.
virtual void enableDisplayCall(bool enable)=0
Enables/disables call display.
virtual bool defaultChannel() const =0
Returns true if the default boot channel is enabled.
virtual Frequency autoRepeaterMinFrequencyVHF() const =0
Returns the minimum frequency in Hz for the auto-repeater range in VHF band.
virtual bool volumeChangePrompt() const =0
Returns true if the volume change prompt is enabled.
virtual void enableDefaultChannel(bool enable)=0
Enables/disables default boot channel.
virtual void setDefaultChannelBIndex(unsigned idx)=0
Sets the default channel index for VFO B.
virtual void enableKeypadLock(bool enable)=0
Enables/disables the keypad lock.
virtual void enableIdleChannelTone(bool enable)=0
Enables/disables the idle channel tone.
virtual bool keyToneEnabled() const =0
Returns true, if the key tone is enabled.
virtual void enableFMTalkPermit(bool enable)=0
Enables/disables the talk permit tone for analog channels.
virtual bool vfoModeA() const =0
Returns true if the VFO A is in VFO mode.
virtual void enableDisplayClock(bool enable)=0
Enables/disables clock display.
virtual AnytoneKeySettingsExtension::KeyFunction funcKey2Long() const =0
Returns the key function for a long press on the function key 2.
virtual Level squelchLevelA() const
Squelch level of VFO A, (0=off).
Definition anytone_codeplug.cc:1567
virtual bool gpsUnitsImperial() const =0
Returns true if the GPS units are imperial.
virtual void enableDisplayFrequency(bool enable)
Enables/disables the frequency display.
Definition anytone_codeplug.cc:1509
virtual void setFuncKeyCLong(AnytoneKeySettingsExtension::KeyFunction func)=0
Sets the key function for a long press on the function key 3.
virtual QTimeZone gpsTimeZone() const =0
Returns the GPS time zone.
virtual unsigned brightness() const =0
Returns the display brightness.
virtual void setAutoRepeaterMinFrequencyUHF(Frequency Hz)=0
Sets the minimum frequency in Hz for the auto-repeater range in UHF band.
virtual Frequency autoRepeaterMaxFrequencyVHF() const =0
Returns the maximum frequency in Hz for the auto-repeater range in VHF band.
virtual void enableVFOModeA(bool enable)=0
Enables/disables VFO mode for VFO A.
virtual bool callAlert() const =0
Returns true if call alert is enabled.
virtual unsigned autoRepeaterOffsetFrequencyIndexVHF() const =0
Returns the auto-repeater offset frequency index for UHF.
AutoShutdown
Possible automatic shutdown delays.
Definition anytone_codeplug.hh:889
virtual void setAutoRepeaterOffsetFrequenyIndexVHF(unsigned idx)=0
Sets the auto-repeater offset frequency index for VHF.
virtual void setDefaultChannelAToVFO()=0
Sets the default channel for VFO A to be VFO.
virtual bool dmrTalkPermit() const =0
Returns true if the talk permit tone is enabled for digital channels.
GeneralSettingsElement(uint8_t *ptr, unsigned size)
Hidden constructor.
Definition anytone_codeplug.cc:1493
virtual void setMinVFOScanFrequencyVHF(Frequency hz)=0
Sets the minimum VFO scan frequency for the VHF band in Hz.
virtual AnytoneKeySettingsExtension::KeyFunction funcKey1Long() const =0
Returns the key function for a long press on the function key 1.
virtual Interval longPressDuration() const =0
Returns the long-press duration in ms.
virtual bool keypadLock() const =0
Returns true if the keypad is locked.
virtual bool recording() const =0
Returns true if recording is enabled.
virtual void setSquelchLevelB(Level level)
Returns the squelch level for VFO B, (0=off).
Definition anytone_codeplug.cc:1579
virtual bool displayFrequency() const
Returns true if the radio displays frequencies instead of channels is enabled.
Definition anytone_codeplug.cc:1505
virtual AnytoneKeySettingsExtension::KeyFunction funcKeyCLong() const =0
Returns the key function for a long press on the function key 3.
virtual bool showLastHeard() const =0
Returns true if the last heard is shown while pressing PTT.
virtual void enableSubChannel(bool enable)=0
Enables/disables sub channel.
virtual unsigned defaultZoneIndexB() const =0
Returns the default zone index (0-based) for VFO B.
virtual void setFuncKeyAShort(AnytoneKeySettingsExtension::KeyFunction func)=0
Sets the key function for a short press on the function key 1/A.
virtual void clearAutoRepeaterOffsetFrequencyIndexUHF()=0
Clears the auto-repeater offset frequency index for UHF.
virtual bool dmrResetTone() const =0
Returns true if the reset tone is enabled for digital calls.
virtual void enableKeepLastCaller(bool enable)=0
Enables/disables keeping the last caller when changing the channel.
virtual AnytoneSettingsExtension::VFOScanType vfoScanType() const =0
Returns the VFO scan type.
virtual void setMemoryZoneB(unsigned zone)=0
Sets the memory zone for VFO B.
virtual AnytoneKeySettingsExtension::KeyFunction funcKeyCShort() const =0
Returns the key function for a short press on the function key 3/C.
virtual void setLastCallerDisplayMode(AnytoneDisplaySettingsExtension::LastCallerDisplayMode mode)=0
Sets the last-caller display mode.
virtual bool linkSettings(RadioSettings *settings, Context &ctx, const ErrorStack &err=ErrorStack())
Links the general settings.
Definition anytone_codeplug.cc:1838
virtual void setDMRMicGain(Level gain)=0
Sets the microphone gain.
virtual bool hasAutoRepeaterOffsetFrequencyIndexUHF() const =0
Returns true if the auto-repeater offset frequency for UHF is set.
virtual AnytoneKeySettingsExtension::KeyFunction funcKey1Short() const =0
Returns the key function for a short press on the function key 1.
virtual void setBrightness(unsigned level)=0
Sets the display brightness.
virtual void setBootDisplay(AnytoneBootSettingsExtension::BootDisplay mode)
Sets the boot display mode.
Definition anytone_codeplug.cc:1553
virtual void enableActiveChannelB(bool enable)=0
Enables/disables VFO B as the active channel.
virtual bool subChannel() const =0
Returns true if sub channel is enabled.
virtual AnytoneDisplaySettingsExtension::LastCallerDisplayMode lastCallerDisplayMode() const =0
Returns the last-caller display mode.
virtual void enableCallEndPrompt(bool enable)=0
Enables/disables the call-end prompt.
virtual void setMinVFOScanFrequencyUHF(Frequency hz)=0
Sets the minimum VFO scan frequency for the UHF band in Hz.
virtual void setFuncKeyBShort(AnytoneKeySettingsExtension::KeyFunction func)=0
Sets the key function for a short press on the function key 2/B.
virtual bool knobLock() const =0
Returns true if the knob is locked.
virtual bool vfoModeB() const =0
Returns true if the VFO B is in VFO mode.
virtual void setMaxVFOScanFrequencyUHF(Frequency hz)=0
Sets the maximum VFO scan frequency for the UHF band in Hz.
virtual AnytoneKeySettingsExtension::KeyFunction funcKey2Short() const =0
Returns the key function for a short press on the function key 2.
virtual bool defaultChannelBIsVFO() const =0
Returns true if the default channel for VFO B is VFO.
virtual void setCallDisplayColor(AnytoneDisplaySettingsExtension::Color color)=0
Sets the display color for callsigns.
virtual void setGPSTimeZone(const QTimeZone &zone)=0
Sets the GPS time zone.
virtual void setSquelchLevelA(Level level)
Returns the squelch level for VFO A, (0=off).
Definition anytone_codeplug.cc:1571
virtual void enableKeyTone(bool enable)=0
Enables/disables the key-tone.
virtual unsigned memoryZoneA() const =0
Returns the memory zone for VFO A.
virtual void setFuncKeyALong(AnytoneKeySettingsExtension::KeyFunction func)=0
Sets the key function for a long press on the function key 1.
virtual void enableKnobLock(bool enable)=0
Enables/disables the knob lock.
virtual Frequency minVFOScanFrequencyVHF() const =0
Returns the minimum VFO scan frequency for the VHF band in Hz.
virtual bool callEndPrompt() const =0
Returns true if the call-end prompt is enabled.
virtual void enableVFOModeB(bool enable)=0
Enables/disables VFO mode for VFO B.
virtual AnytoneAutoRepeaterSettingsExtension::Direction autoRepeaterDirectionA() const =0
Returns the auto repeater offset direction for VFO A.
virtual unsigned defaultChannelBIndex() const =0
Returns the default channel index for VFO B.
virtual bool getGPSPosition() const =0
Returns true if get GPS position is enabled.
virtual Frequency maxVFOScanFrequencyVHF() const =0
Returns the maximum VFO scan frequency for the VHF band in Hz.
virtual AnytoneAutoRepeaterSettingsExtension::Direction autoRepeaterDirectionB() const =0
Returns the auto-repeater direction for VFO B.
virtual AnytoneBootSettingsExtension::BootDisplay bootDisplay() const
Returns the boot display mode.
Definition anytone_codeplug.cc:1549
virtual bool fromConfig(const Flags &flags, Context &ctx)
Encodes the general settings.
Definition anytone_codeplug.cc:1584
virtual void setDefaultChannelBToVFO()=0
Sets the default channel for VFO B to be VFO.
virtual void setFuncKeyBLong(AnytoneKeySettingsExtension::KeyFunction func)=0
Sets the key function for a long press on the function key 2.
virtual void clearAutoRepeaterOffsetFrequencyIndexVHF()=0
Clears the auto-repeater offset frequency index for VHF.
virtual unsigned autoRepeaterOffsetFrequencyIndexUHF() const =0
Returns the auto-repeater offset frequency index for UHF.
virtual void idleToneMelody(Melody &melody) const =0
Returns the idle-tone melody.
virtual void setResetToneMelody(const Melody &melody)=0
Sets the reset-tone melody.
virtual void setAutoRepeaterDirectionA(AnytoneAutoRepeaterSettingsExtension::Direction dir)=0
Sets the auto-repeater offset direction for VFO A.
virtual bool idleChannelTone() const =0
Returns true if the idle channel tone is enabled.
virtual bool startupTone() const =0
Returns true if the startup tone is enabled.
virtual void setAutoRepeaterMaxFrequencyVHF(Frequency Hz)=0
Sets the maximum frequency in Hz for the auto-repeater range in VHF band.
virtual AnytoneDisplaySettingsExtension::Color callDisplayColor() const =0
Returns the display color for callsigns.
virtual void enableSidekeysLock(bool enable)=0
Enables/disables the sidekeys lock.
virtual void setLongPressDuration(Interval ms)=0
Sets the long-press duration in ms.
virtual void setFuncKey2Short(AnytoneKeySettingsExtension::KeyFunction func)=0
Sets the key function for a short press on the function key 2.
virtual void setFuncKey1Long(AnytoneKeySettingsExtension::KeyFunction func)=0
Sets the key function for a long press on the function key 1.
virtual void setFuncKey1Short(AnytoneKeySettingsExtension::KeyFunction func)=0
Sets the key function for a short press on the function key 1.
virtual bool sidekeysLock() const =0
Returns true if the sidekeys are locked.
virtual void setAutoRepeaterDirectionB(AnytoneAutoRepeaterSettingsExtension::Direction dir)=0
Sets the auto-repeater direction for VFO B.
virtual Frequency autoRepeaterMinFrequencyUHF() const =0
Returns the minimum frequency in Hz for the auto-repeater range in UHF band.
virtual void enableBootPassword(bool enable)
Enables/disables boot password.
Definition anytone_codeplug.cc:1562
void clear()
Resets the general settings.
Definition anytone_codeplug.cc:1500
virtual void enableKeyLockForced(bool enable)=0
Enables/disables the "professional" key lock.
virtual bool activeChannelB() const =0
Returns true if the active channel is VFO B.
virtual bool keepLastCaller() const =0
Returns true if the last caller is kept when changing channel.
virtual bool showCurrentContact() const =0
Returns true if the current contact is shown.
virtual void setAutoRepeaterMaxFrequencyUHF(Frequency Hz)=0
Sets the maximum frequency in Hz for the auto-repeater range in UHF band.
virtual bool displayCall() const =0
Returns true if the call is displayed instead of the name.
virtual void enableCallAlert(bool enable)=0
Enables/disables call alert.
virtual bool hasAutoRepeaterOffsetFrequencyIndexVHF() const =0
Returns true if the auto-repeater offset frequency for VHF is set.
virtual unsigned memoryZoneB() const =0
Returns the memory zone for VFO B.
virtual Frequency minVFOScanFrequencyUHF() const =0
Returns the minimum VFO scan frequency for the UHF band in Hz.
virtual AnytoneKeySettingsExtension::KeyFunction funcKeyBLong() const =0
Returns the key function for a long press on the function key 2.
virtual void setMaxSpeakerVolume(unsigned level)=0
Sets the maximum volume.
virtual bool gps() const =0
Returns true if GPS is enabled.
virtual void setMemoryZoneA(unsigned zone)=0
Sets the memory zone for VFO A.
virtual Frequency autoRepeaterMaxFrequencyUHF() const =0
Returns the maximum frequency in Hz for the auto-repeater range in UHF band.
virtual void setMaxVFOScanFrequencyVHF(Frequency hz)=0
Sets the maximum VFO scan frequency for the VHF band in Hz.
virtual unsigned defaultZoneIndexA() const =0
Returns the default zone index (0-based) for VFO A.
virtual void setAutoShutdownDelay(Interval min)
Sets the auto-shutdown delay in minutes.
Definition anytone_codeplug.cc:1534
virtual void enableRecording(bool enable)=0
Enables/disables recording.
virtual Interval autoShutdownDelay() const
Returns the auto-shutdown delay in minutes.
Definition anytone_codeplug.cc:1523
virtual void enableDMRResetTone(bool enable)=0
Enables/disables the reset tone for digital calls.
virtual void enableAutoKeyLock(bool enable)
Enables/disables auto key-lock.
Definition anytone_codeplug.cc:1518
virtual void enableGetGPSPosition(bool enable)=0
Enables/disables get GPS position.
virtual bool bootPassword() const
Returns true if boot password is enabled.
Definition anytone_codeplug.cc:1558
virtual void setFuncKeyCShort(AnytoneKeySettingsExtension::KeyFunction func)=0
Sets the key function for a short press on the function key 3/C.
static constexpr unsigned int size()
Returns the size of the element.
Definition anytone_codeplug.hh:646
GroupListBitmapElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition anytone_codeplug.cc:1164
virtual unsigned memberIndex(unsigned n) const
Returns the n-th member index.
Definition anytone_codeplug.cc:1099
virtual RXGroupList * toGroupListObj() const
Constructs a new RXGroupList from this group list.
Definition anytone_codeplug.cc:1112
virtual bool hasMemberIndex(unsigned n) const
Returns true if the n-th member index is valid.
Definition anytone_codeplug.cc:1095
virtual bool fromGroupListObj(const RXGroupList *lst, Context &ctx)
Constructs this group list from the given RXGroupList.
Definition anytone_codeplug.cc:1134
void clear()
Clears the group list.
Definition anytone_codeplug.cc:1074
GroupListElement(uint8_t *ptr, unsigned size)
Hidden constructor.
Definition anytone_codeplug.cc:1061
static constexpr unsigned int size()
Returns the size of the element.
Definition anytone_codeplug.hh:583
bool isValid() const
Returns true if the group list is valid.
Definition anytone_codeplug.cc:1081
virtual void setName(const QString &name)
Sets the name of the group list.
Definition anytone_codeplug.cc:1090
virtual bool linkGroupList(RXGroupList *lst, Context &ctx) const
Populates the RXGroupList from this group list.
Definition anytone_codeplug.cc:1117
virtual QString name() const
Returns the name of the group list.
Definition anytone_codeplug.cc:1086
virtual void clearMemberIndex(unsigned n)
Clears the n-th member index.
Definition anytone_codeplug.cc:1107
virtual void setMemberIndex(unsigned n, unsigned idx)
Sets the n-th member index.
Definition anytone_codeplug.cc:1103
virtual DigiCallType digiCallType() const
If type returns Type::Call and callType CalLType::Digital, returns the digital call type.
Definition anytone_codeplug.cc:2805
virtual void setContactIndex(unsigned idx)
Sets the contact index.
Definition anytone_codeplug.cc:2822
Type
Hot-key types.
Definition anytone_codeplug.hh:1916
@ Menu
Show a menu item.
Definition anytone_codeplug.hh:1918
@ Call
Perform a call.
Definition anytone_codeplug.hh:1917
static constexpr unsigned int size()
Returns the size of the element.
Definition anytone_codeplug.hh:1959
void clear()
Resets the hot-key entry.
Definition anytone_codeplug.cc:2771
virtual Type type() const
Returns the type of the hot-key entry.
Definition anytone_codeplug.cc:2778
virtual void setMessageIndex(unsigned idx)
Sets the message index.
Definition anytone_codeplug.cc:2839
virtual void clearContactIndex()
Clears the contact index.
Definition anytone_codeplug.cc:2826
DigiCallType
Possible digital call sub-types.
Definition anytone_codeplug.hh:1940
@ StatusMessage
Send a state message.
Definition anytone_codeplug.hh:1947
@ AllCall
Perform all call.
Definition anytone_codeplug.hh:1944
@ CallTip
Send a call tip (?).
Definition anytone_codeplug.hh:1946
@ GroupCall
Perform a group call.
Definition anytone_codeplug.hh:1942
@ PrivateCall
Perform private call.
Definition anytone_codeplug.hh:1943
@ Off
Call disabled.
Definition anytone_codeplug.hh:1941
virtual unsigned contactIndex() const
If type is Type::Call, returns the contact index.
Definition anytone_codeplug.cc:2818
virtual void clearMessageIndex()
Clears the message index.
Definition anytone_codeplug.cc:2843
virtual CallType callType() const
If type returns Type::Call, returns the type of the call.
Definition anytone_codeplug.cc:2796
virtual void setMenuItem(MenuItem item)
Sets the menu item.
Definition anytone_codeplug.cc:2791
virtual bool hasContactIndex() const
Returns true if the contact index is set.
Definition anytone_codeplug.cc:2814
HotKeyElement(uint8_t *ptr, unsigned size)
Hidden constructor.
Definition anytone_codeplug.cc:2758
virtual void setCallType(CallType type)
Sets the call type.
Definition anytone_codeplug.cc:2800
CallType
Possible call types.
Definition anytone_codeplug.hh:1934
@ Digital
Perform a digital call.
Definition anytone_codeplug.hh:1936
@ Analog
Perform an analog call.
Definition anytone_codeplug.hh:1935
virtual unsigned messageIndex() const
Returns the message index.
Definition anytone_codeplug.cc:2835
virtual void setType(Type type)
Sets the type of the hot-key entry.
Definition anytone_codeplug.cc:2782
virtual MenuItem menuItem() const
If type returns Type::Menu, returns the menu item.
Definition anytone_codeplug.cc:2787
MenuItem
Possible menu items.
Definition anytone_codeplug.hh:1922
@ HotText
Send a hot-text.
Definition anytone_codeplug.hh:1925
@ Inbox
Show SMS inbox.
Definition anytone_codeplug.hh:1926
@ SMS
Show SMS menu.
Definition anytone_codeplug.hh:1923
@ ManualDial
Show manual dial.
Definition anytone_codeplug.hh:1929
@ NewSMS
Create new SMS.
Definition anytone_codeplug.hh:1924
@ Outbox
Show SMS outbox.
Definition anytone_codeplug.hh:1927
@ Contacts
Show contact list.
Definition anytone_codeplug.hh:1928
@ CallLog
Show call log.
Definition anytone_codeplug.hh:1930
virtual bool hasMessageIndex() const
Returns true if a message index is set.
Definition anytone_codeplug.cc:2831
virtual void setDigiCallType(DigiCallType type)
Sets the digital call type.
Definition anytone_codeplug.cc:2809
HotKeySettingsElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition anytone_codeplug.cc:2852
virtual uint8_t * hotKeySetting(unsigned int n) const
Returns a pointer to the n-th hot key setting.
Definition anytone_codeplug.cc:2872
void clear()
Abstract method to reset the element within the codeplug.
Definition anytone_codeplug.cc:2865
static constexpr unsigned int size()
The size of the element.
Definition anytone_codeplug.hh:2042
virtual void setEncoded(unsigned int idx, bool enable)
Enables/disables the specified index.
Definition anytone_codeplug.cc:80
virtual bool isEncoded(unsigned int idx) const
Returns true if the given index is valid.
Definition anytone_codeplug.cc:73
virtual void enableFirst(unsigned int n)
Enables the first n elements.
Definition anytone_codeplug.cc:87
void clear()
Clears the bitmap, disables all channels.
Definition anytone_codeplug.cc:68
InvertedBytemapElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition anytone_codeplug.cc:61
MessageBytemapElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition anytone_codeplug.cc:2615
static constexpr unsigned int size()
The size of the element.
Definition anytone_codeplug.hh:1755
MessageElement(uint8_t *ptr, unsigned size)
Hidden constructor.
Definition anytone_codeplug.cc:2585
virtual QString message() const
Returns the message text.
Definition anytone_codeplug.cc:2603
void clear()
Resets the message.
Definition anytone_codeplug.cc:2598
virtual void setMessage(const QString &msg)
Sets the message text.
Definition anytone_codeplug.cc:2607
static constexpr unsigned int size()
Returns the size of the element.
Definition anytone_codeplug.hh:1717
virtual void setIndex(unsigned idx)
Sets the index of the message.
Definition anytone_codeplug.cc:2573
virtual bool hasIndex() const
Returns true if there is a message index.
Definition anytone_codeplug.cc:2565
virtual unsigned next() const
Returns the index of the next message in list.
Definition anytone_codeplug.cc:2552
virtual unsigned index() const
Returns the index of the message.
Definition anytone_codeplug.cc:2569
void clear()
Clears the message list item.
Definition anytone_codeplug.cc:2541
virtual void setNext(unsigned idx)
Sets the index of the next message in list.
Definition anytone_codeplug.cc:2556
MessageListElement(uint8_t *ptr, unsigned size)
Hidden constructor.
Definition anytone_codeplug.cc:2528
virtual void clearNext()
Clears the next message index.
Definition anytone_codeplug.cc:2560
virtual bool hasNext() const
Returns true if there is a next message (EOL otherwise).
Definition anytone_codeplug.cc:2548
static constexpr unsigned int size()
Returns the size of the element.
Definition anytone_codeplug.hh:1670
virtual void clearIndex()
Clears the index of the message.
Definition anytone_codeplug.cc:2577
static constexpr unsigned int size()
The size of the element.
Definition anytone_codeplug.hh:874
RadioIDBitmapElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition anytone_codeplug.cc:1477
static constexpr unsigned int size()
Returns the size of the element.
Definition anytone_codeplug.hh:825
virtual bool fromRadioID(DMRRadioID *id)
Encodes the given RadioID.
Definition anytone_codeplug.cc:1467
virtual void setName(const QString &name)
Sets the name of the radio ID.
Definition anytone_codeplug.cc:1458
void clear()
Resets the radio ID.
Definition anytone_codeplug.cc:1441
RadioIDElement(uint8_t *ptr, unsigned size)
Hidden constructor.
Definition anytone_codeplug.cc:1428
virtual DMRRadioID * toRadioID() const
Constructs a new radio id.
Definition anytone_codeplug.cc:1463
virtual void setNumber(unsigned number)
Sets the number of the radio ID.
Definition anytone_codeplug.cc:1449
virtual QString name() const
Returns the name of the radio ID.
Definition anytone_codeplug.cc:1454
virtual unsigned number() const
Returns the number of the radio ID.
Definition anytone_codeplug.cc:1445
virtual bool isSet(unsigned int n) const
Returns true, if the n-th offset frequency is set.
Definition anytone_codeplug.cc:2493
virtual Frequency offset(unsigned int n) const
Returns the n-th offset frequency.
Definition anytone_codeplug.cc:2500
virtual void setOffset(unsigned int n, Frequency freq)
Sets the n-th offset frequency.
Definition anytone_codeplug.cc:2510
RepeaterOffsetListElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition anytone_codeplug.cc:2473
void clear()
Abstract method to reset the element within the codeplug.
Definition anytone_codeplug.cc:2486
virtual void clearOffset(unsigned int n)
Clears the n-th offset frequency.
Definition anytone_codeplug.cc:2518
static constexpr unsigned int size()
The size of the element.
Definition anytone_codeplug.hh:1624
ScanListBitmapElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition anytone_codeplug.cc:1412
static constexpr unsigned int size()
The size of the element.
Definition anytone_codeplug.hh:806
virtual void setSecondarySelected()
Sets the secondary channel to be selected channel.
Definition anytone_codeplug.cc:1258
virtual Interval lookBackTimeA() const
Returns the look back time A in seconds.
Definition anytone_codeplug.cc:1267
virtual bool fromScanListObj(ScanList *lst, Context &ctx)
Constructs the binary representation from the give config.
Definition anytone_codeplug.cc:1372
virtual void setSecondary(unsigned idx)
Sets the secondary channel index.
Definition anytone_codeplug.cc:1254
virtual PriChannel priorityChannels() const
Returns the priority channel selection.
Definition anytone_codeplug.cc:1208
ScanListElement(uint8_t *ptr, unsigned size)
Hidden constructor.
Definition anytone_codeplug.cc:1180
virtual void setLookBackTimeA(const Interval &sec)
Sets the look back time A in seconds.
Definition anytone_codeplug.cc:1271
virtual QString name() const
Returns the name of the scan list.
Definition anytone_codeplug.cc:1311
virtual bool hasSecondary() const
Returns true if the secondary channel is set.
Definition anytone_codeplug.cc:1242
virtual bool hasPrimary() const
Returns true if the primary channel is set.
Definition anytone_codeplug.cc:1217
virtual void setDropOutDelay(const Interval &sec)
Sets the drop out delay in seconds.
Definition anytone_codeplug.cc:1288
virtual bool primaryIsSelected() const
Returns true if the primary channel is set to the selected channel.
Definition anytone_codeplug.cc:1221
virtual unsigned memberIndex(unsigned n) const
Returns the n-th member index.
Definition anytone_codeplug.cc:1324
virtual void setRevertChannel(RevertChannel type)
Sets the revert channel type.
Definition anytone_codeplug.cc:1306
virtual ScanList * toScanListObj() const
Constructs a ScanList object from this definition.
Definition anytone_codeplug.cc:1337
virtual void setPrimary(unsigned idx)
Sets the primary channel index.
Definition anytone_codeplug.cc:1229
virtual void setPrimarySelected()
Sets the primary channel to be selected channel.
Definition anytone_codeplug.cc:1233
virtual Interval dropOutDelay() const
Returns the drop out delay in seconds.
Definition anytone_codeplug.cc:1284
virtual unsigned primary() const
Returns the primary channel index.
Definition anytone_codeplug.cc:1225
PriChannel
Defines all possible priority channel selections.
Definition anytone_codeplug.hh:658
@ Primary
Priority Channel Select 1.
Definition anytone_codeplug.hh:660
@ Secondary
Priority Channel Select 2.
Definition anytone_codeplug.hh:661
@ Both
Priority Channel Select 1 + Priority Channel Select 2.
Definition anytone_codeplug.hh:662
@ Off
Off.
Definition anytone_codeplug.hh:659
virtual void setName(const QString &name)
Sets the name of the scan list.
Definition anytone_codeplug.cc:1315
virtual bool secondaryIsSelected() const
Returns true if the secondary channel is set to the selected channel.
Definition anytone_codeplug.cc:1246
virtual void setPriorityChannels(PriChannel sel)
Sets the priority channel selection.
Definition anytone_codeplug.cc:1212
virtual void clearSecondaryChannel()
Clears the secondary channel index.
Definition anytone_codeplug.cc:1262
virtual RevertChannel revertChannel() const
Returns the revert channel type.
Definition anytone_codeplug.cc:1302
virtual bool hasMemberIndex(unsigned n) const
Returns true if the n-th member index is set.
Definition anytone_codeplug.cc:1320
virtual void clearPrimaryChannel()
Clears the primary channel index.
Definition anytone_codeplug.cc:1237
virtual void setDwellTime(const Interval &sec)
Sets the dwell time in seconds.
Definition anytone_codeplug.cc:1297
RevertChannel
Defines all possible reply channel selections.
Definition anytone_codeplug.hh:666
@ SecondaryActive
Secondary + active channel.
Definition anytone_codeplug.hh:674
@ PrimaryActive
Primary + active channel.
Definition anytone_codeplug.hh:673
@ SelectedActive
Selected + active channel.
Definition anytone_codeplug.hh:668
@ LastUsed
Last Used.
Definition anytone_codeplug.hh:672
@ Selected
Selected channel.
Definition anytone_codeplug.hh:667
@ LastCalled
Last Called.
Definition anytone_codeplug.hh:671
void clear()
Resets the scan list.
Definition anytone_codeplug.cc:1193
virtual void setLookBackTimeB(const Interval &sec)
Sets the look back time B in seconds.
Definition anytone_codeplug.cc:1279
virtual void setMemberIndex(unsigned n, unsigned idx)
Sets the n-th member index.
Definition anytone_codeplug.cc:1328
virtual Interval lookBackTimeB() const
Returns the look back time B in seconds.
Definition anytone_codeplug.cc:1275
virtual Interval dwellTime() const
Returns the dwell time in seconds.
Definition anytone_codeplug.cc:1293
virtual void clearMemberIndex(unsigned n)
Clears the n-th member index.
Definition anytone_codeplug.cc:1332
virtual unsigned secondary() const
Returns the secondary channel index.
Definition anytone_codeplug.cc:1250
virtual bool linkScanListObj(ScanList *lst, Context &ctx) const
Links all channels (members and primary channels) with the given scan-list object.
Definition anytone_codeplug.cc:1342
static constexpr unsigned int size()
Returns the size of the element.
Definition anytone_codeplug.hh:686
static constexpr unsigned int size()
The size of the element.
Definition anytone_codeplug.hh:1904
StatusMessageBitmapElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition anytone_codeplug.cc:2742
static constexpr unsigned int size()
The size of the element.
Definition anytone_codeplug.hh:1866
virtual QString message(unsigned int n) const
Returns the n-th status message.
Definition anytone_codeplug.cc:2726
void clear()
Abstract method to reset the element within the codeplug.
Definition anytone_codeplug.cc:2721
StatusMessagesElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition anytone_codeplug.cc:2708
virtual void setMessage(unsigned int n, const QString &msg)
Sets the n-th status message.
Definition anytone_codeplug.cc:2732
static constexpr unsigned int size()
The size of the element.
Definition anytone_codeplug.hh:2870
TwoToneFunctionBitmapElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition anytone_codeplug.cc:3818
virtual Response response() const
Returns the response.
Definition anytone_codeplug.cc:3797
virtual void setSecondTone(double f)
Sets the second tone of the sequence.
Definition anytone_codeplug.cc:3792
virtual void setFirstTone(double f)
Sets the first tone of the sequence.
Definition anytone_codeplug.cc:3783
Response
Possible responses to a decode.
Definition anytone_codeplug.hh:2802
void clear()
Resets the function.
Definition anytone_codeplug.cc:3774
virtual void setResponse(Response resp)
Sets the response.
Definition anytone_codeplug.cc:3801
virtual QString name() const
Returns the name of the function.
Definition anytone_codeplug.cc:3806
virtual double secondTone() const
Returns the second tone of the sequence.
Definition anytone_codeplug.cc:3788
virtual void setName(const QString &name)
Sets the name of the function.
Definition anytone_codeplug.cc:3810
TwoToneFunctionElement(uint8_t *ptr, unsigned size)
Hidden constructor.
Definition anytone_codeplug.cc:3761
virtual double firstTone() const
Returns the first tone of the sequence.
Definition anytone_codeplug.cc:3779
static constexpr unsigned int size()
Returns the size of the element.
Definition anytone_codeplug.hh:2815
static constexpr unsigned int size()
The size of the element.
Definition anytone_codeplug.hh:2791
TwoToneIDBitmapElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition anytone_codeplug.cc:3745
virtual void setSecondTone(double f)
Sets the second tone of the sequence.
Definition anytone_codeplug.cc:3728
virtual QString name() const
Returns the name of the function.
Definition anytone_codeplug.cc:3733
void clear()
Resets the ID.
Definition anytone_codeplug.cc:3710
static constexpr unsigned int size()
Returns the size of the element.
Definition anytone_codeplug.hh:2742
virtual void setFirstTone(double f)
Sets the first tone of the sequence.
Definition anytone_codeplug.cc:3719
virtual double firstTone() const
Returns the first tone of the sequence.
Definition anytone_codeplug.cc:3715
virtual void setName(const QString &name)
Sets the name of the function.
Definition anytone_codeplug.cc:3737
TwoToneIDElement(uint8_t *ptr, unsigned size)
Hidden constructor.
Definition anytone_codeplug.cc:3697
virtual double secondTone() const
Returns the second tone of the sequence.
Definition anytone_codeplug.cc:3724
virtual void setAutoResetTime(const Interval &sec)
Sets the auto-reset time in seconds.
Definition anytone_codeplug.cc:3892
virtual Interval autoResetTime() const
Returns the auto-reset time in seconds.
Definition anytone_codeplug.cc:3888
virtual bool sidetone() const
Returns true if the sidetone is enabled.
Definition anytone_codeplug.cc:3897
virtual void setFirstToneDuration(const Interval &ms)
Sets the first tone duration in ms.
Definition anytone_codeplug.cc:3856
virtual void enableSidetone(bool enable)
Enables/disables the sidetone.
Definition anytone_codeplug.cc:3901
virtual void setGapDuration(const Interval &ms)
Sets the gap duration in ms.
Definition anytone_codeplug.cc:3883
TwoToneSettingsElement(uint8_t *ptr, unsigned size)
Hidden constructor.
Definition anytone_codeplug.cc:3834
virtual Interval gapDuration() const
Returns the gap duration in ms.
Definition anytone_codeplug.cc:3879
static constexpr unsigned int size()
Returns the size of the element.
Definition anytone_codeplug.hh:2888
virtual void setLongToneDuration(const Interval &ms)
Sets the long tone duration in ms.
Definition anytone_codeplug.cc:3874
virtual Interval longToneDuration() const
Returns the long tone duration in ms.
Definition anytone_codeplug.cc:3870
virtual Interval secondToneDuration() const
Returns the second tone duration in ms.
Definition anytone_codeplug.cc:3861
void clear()
Resets the settings.
Definition anytone_codeplug.cc:3847
virtual Interval firstToneDuration() const
Returns the first tone duration in ms.
Definition anytone_codeplug.cc:3852
virtual void setSecondToneDuration(const Interval &ms)
Sets the second tone duration in ms.
Definition anytone_codeplug.cc:3865
static constexpr unsigned int size()
The size of the element.
Definition anytone_codeplug.hh:3175
WFMChannelBitmapElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition anytone_codeplug.cc:4214
static constexpr unsigned int size()
The size of the element.
Definition anytone_codeplug.hh:3135
virtual void clearChannel(unsigned int n)
Clears the n-th channel frequency.
Definition anytone_codeplug.cc:4204
WFMChannelListElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition anytone_codeplug.cc:4165
virtual void setChannel(unsigned int n, Frequency freq)
Sets the n-th channel frequency.
Definition anytone_codeplug.cc:4197
virtual Frequency channel(unsigned int n) const
Returns the n-th channel frequency.
Definition anytone_codeplug.cc:4190
void clear()
Abstract method to reset the element within the codeplug.
Definition anytone_codeplug.cc:4178
virtual bool hasChannel(unsigned int n) const
Returns true, if the n-th channel is set.
Definition anytone_codeplug.cc:4183
virtual Frequency frequency() const
Returns the VFO frequency.
Definition anytone_codeplug.cc:4249
WFMVFOElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition anytone_codeplug.cc:4230
void clear()
Abstract method to reset the element within the codeplug.
Definition anytone_codeplug.cc:4243
static constexpr unsigned int size()
The size of the element.
Definition anytone_codeplug.hh:3190
virtual void setFrequency(Frequency freq)
Sets the VFO frequency.
Definition anytone_codeplug.cc:4254
static constexpr unsigned int size()
The size of the element.
Definition anytone_codeplug.hh:1381
ZoneBitmapElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition anytone_codeplug.cc:2054
virtual unsigned channelIndexA(unsigned n) const
Returns the channel index (0-based) for VFO A for the n-th zone.
Definition anytone_codeplug.cc:2021
virtual void setChannelIndexB(unsigned n, unsigned idx)
Sets the channel index (0-based) for VFO B for the n-th zone.
Definition anytone_codeplug.cc:2042
virtual bool hasChannelB(unsigned n) const
Returns true if the channel index for VFO B is set for the n-th zone.
Definition anytone_codeplug.cc:2034
void clear()
Resets the zone channel list.
Definition anytone_codeplug.cc:2010
ZoneChannelListElement(uint8_t *ptr, unsigned size)
Hidden constructor.
Definition anytone_codeplug.cc:1997
virtual bool hasChannelA(unsigned n) const
Returns true if the channel index for VFO A is set for the n-th zone.
Definition anytone_codeplug.cc:2017
virtual void clearChannelIndexA(unsigned n)
Clears the channel index (0-based) for VFO A for the n-th zone.
Definition anytone_codeplug.cc:2029
static constexpr unsigned int size()
Returns the size of the element.
Definition anytone_codeplug.hh:1328
virtual void setChannelIndexA(unsigned n, unsigned idx)
Sets the channel index (0-based) for VFO A for the n-th zone.
Definition anytone_codeplug.cc:2025
virtual void clearChannelIndexB(unsigned n)
Clears the channel index (0-based) for VFO B for the n-th zone.
Definition anytone_codeplug.cc:2046
virtual unsigned channelIndexB(unsigned n) const
Returns the channel index (0-based) for VFO B for the n-th zone.
Definition anytone_codeplug.cc:2038
AnytoneCodeplug(const QString &label, QObject *parent=nullptr)
Hidden constructor.
Definition anytone_codeplug.cc:4406
virtual void setBitmaps(Context &ctx)=0
Sets all bitmaps for the given config.
bool encode(Config *config, const Flags &flags, const ErrorStack &err)
Encodes a given abstract configuration (config) to the device specific binary code-plug.
Definition anytone_codeplug.cc:4583
virtual void clear()
Clears and resets the complete codeplug to some default values.
Definition anytone_codeplug.cc:4417
virtual void allocateUpdated()=0
Allocate all code-plug elements that must be written back to the device to maintain a working codeplu...
virtual void allocateForEncoding()=0
Allocate all code-plug elements that are defined through the common Config.
virtual bool createElements(Context &ctx, const ErrorStack &err=ErrorStack())=0
Creates all config objects from the downloaded codeplug.
virtual ~AnytoneCodeplug()
Destructor.
Definition anytone_codeplug.cc:4412
virtual void allocateForDecoding()=0
Allocate all code-plug elements that must be downloaded for decoding.
virtual bool linkElements(Context &ctx, const ErrorStack &err=ErrorStack())=0
Links all previously created config objects.
bool postprocess(Config *config, const ErrorStack &err) const
Returns a post-processed configuration of the decoded config.
Definition anytone_codeplug.cc:4566
Config * preprocess(Config *config, const ErrorStack &err) const
Returns a prepared configuration for this particular radio.
Definition anytone_codeplug.cc:4539
virtual bool encodeElements(const Flags &flags, Context &ctx, const ErrorStack &err=ErrorStack())=0
Encodes the given config (via context) to the binary codeplug.
virtual bool decodeElements(Context &ctx, const ErrorStack &err=ErrorStack())
Decodes the downloaded codeplug.
Definition anytone_codeplug.cc:4523
bool decode(Config *config, const ErrorStack &err)
Decodes a binary codeplug to the given abstract configuration config.
Definition anytone_codeplug.cc:4613
virtual bool allocateBitmaps()=0
Allocates the bitmaps.
QString _label
Holds the image label.
Definition anytone_codeplug.hh:3374
virtual bool index(Config *config, Context &ctx, const ErrorStack &err=ErrorStack()) const
Indexes all elements of the codeplug.
Definition anytone_codeplug.cc:4428
AlertType
Possible ring-tone types.
Definition anytone_extension.hh:274
SquelchMode
Possible squelch mode settings.
Definition anytone_extension.hh:149
KeyFunction
All possible key functions.
Definition anytone_settingsextension.hh:267
VFOScanType
Encodes the possible VFO scan types.
Definition anytone_settingsextension.hh:2126
Represents a DMR (basic) encryption key.
Definition encryptionextension.hh:47
The base class of all channels (analog and digital) of a codeplug configuration.
Definition channel.hh:37
Power
Specifies the prefix for every ID assigned to every channel during serialization.
Definition channel.hh:64
BitmapElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition codeplug.cc:692
Base class for all codeplug contexts.
Definition codeplug.hh:331
Element(uint8_t *ptr, size_t size)
Hidden constructor.
Definition codeplug.cc:56
Certain flags passed to CodePlug::encode to control the transfer and encoding of the codeplug.
Definition codeplug.hh:24
InvertedBitmapElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition codeplug.cc:732
Codeplug(QObject *parent=nullptr)
Hidden default constructor.
Definition codeplug.cc:872
The config class, representing the codeplug configuration.
Definition config.hh:70
uint32_t size() const
Returns the total size of the DFU file.
Definition dfufile.cc:52
TimeSlot
Possible timeslots for digital channels.
Definition channel.hh:439
Represents a digital contact, that is a DMR number.
Definition contact.hh:141
Type
Possible call types for a contact.
Definition contact.hh:155
Represents a DMR radio ID within the abstract config.
Definition radioid.hh:33
Represents an analog contact, that is a DTMF number.
Definition contact.hh:89
Implements a stack of error messages to provide a pretty formatted error traceback.
Definition errorstack.hh:43
Bandwidth
Possible bandwidth of an analog channel.
Definition channel.hh:279
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
Generic representation of a scan list.
Definition scanlist.hh:15
Some internal offsets within element.
Definition anytone_codeplug.hh:2156
Internal offsets within element.
Definition anytone_codeplug.hh:2257
Internal offsets within the element.
Definition anytone_codeplug.hh:2295
Some internal offsets.
Definition anytone_codeplug.hh:1803
Some limits for the quick calls.
Definition anytone_codeplug.hh:1837
static constexpr unsigned int numEntries()
The maximum number of quick-call entries.
Definition anytone_codeplug.hh:1838
Some offsets within the element.
Definition anytone_codeplug.hh:1843
Some limits for boot settings.
Definition anytone_codeplug.hh:1426
static constexpr unsigned int passwordLength()
Maximum password length.
Definition anytone_codeplug.hh:1430
static constexpr unsigned int introLineLength()
Maximum intro line length.
Definition anytone_codeplug.hh:1428
Some internal offsets within element.
Definition anytone_codeplug.hh:1435
Implements encoding of CTCSS tones.
Definition anytone_codeplug.hh:27
static uint8_t encode(const SelectiveCall &tone)
Encodes Signaling::Code CTCSS tones.
Definition anytone_codeplug.cc:39
static SelectiveCall decode(uint8_t code)
Decodes to Signaling::Code CTCSS tones.
Definition anytone_codeplug.cc:48
static SelectiveCall _codeTable[52]
Translation table.
Definition anytone_codeplug.hh:22
Some limits for the channel element.
Definition anytone_codeplug.hh:347
static constexpr unsigned int nameLength()
Maximum name length.
Definition anytone_codeplug.hh:349
Internal used offsets within the channel element.
Definition anytone_codeplug.hh:354
Some limits for the contact.
Definition anytone_codeplug.hh:464
static constexpr unsigned int nameLength()
Maximum name length.
Definition anytone_codeplug.hh:466
Internal offsets within the element.
Definition anytone_codeplug.hh:471
Some internal offsets.
Definition anytone_codeplug.hh:3317
Some limits for the message.
Definition anytone_codeplug.hh:1596
static constexpr unsigned int length()
Maximum message length.
Definition anytone_codeplug.hh:1597
Some internal used offset.
Definition anytone_codeplug.hh:1602
Internal offsets within element.
Definition anytone_codeplug.hh:1544
Some limits for the list.
Definition anytone_codeplug.hh:3228
static constexpr unsigned int numEntries()
Maximum number of DMR encryption key IDs.
Definition anytone_codeplug.hh:3229
Some internal used offsets within the element.
Definition anytone_codeplug.hh:3234
Some limits for the element.
Definition anytone_codeplug.hh:536
static constexpr unsigned int digitCount()
The max number of digits.
Definition anytone_codeplug.hh:537
static constexpr unsigned int nameLength()
Maximum name length.
Definition anytone_codeplug.hh:538
Internal used offsets within the codeplug.
Definition anytone_codeplug.hh:543
Some limits of the list.
Definition anytone_codeplug.hh:3113
static constexpr unsigned int numberLength()
The maximum length of the numbers.
Definition anytone_codeplug.hh:3115
static constexpr unsigned int numEntries()
The maximum number of entries in the list.
Definition anytone_codeplug.hh:3114
Some limits for the settings.
Definition anytone_codeplug.hh:3046
static constexpr unsigned int remoteKillIdLength()
Maximum remote kill ID length.
Definition anytone_codeplug.hh:3054
static constexpr unsigned int remteStunIdLength()
Maximum remote stun ID length.
Definition anytone_codeplug.hh:3056
static constexpr unsigned int idLength()
Maximum ID length.
Definition anytone_codeplug.hh:3048
static constexpr unsigned int eotIdLength()
Maximum EOT ID length.
Definition anytone_codeplug.hh:3052
static constexpr unsigned int botIdLength()
Maximum BOT ID length.
Definition anytone_codeplug.hh:3050
Some internal offsets.
Definition anytone_codeplug.hh:3061
Internal used offsets within the element.
Definition anytone_codeplug.hh:2336
Some limits of the list.
Definition anytone_codeplug.hh:3267
static constexpr unsigned numEntries()
Maximum number of keys.
Definition anytone_codeplug.hh:3268
Some offsets within the element.
Definition anytone_codeplug.hh:3273
Some limits for the function element.
Definition anytone_codeplug.hh:2511
static constexpr unsigned int idLength()
Maximum name length.
Definition anytone_codeplug.hh:2513
static constexpr unsigned int nameLength()
Maximum name length.
Definition anytone_codeplug.hh:2515
Some internal offsets.
Definition anytone_codeplug.hh:2520
Some limits for the list.
Definition anytone_codeplug.hh:2555
static constexpr unsigned int numFunctions()
The max number of functions.
Definition anytone_codeplug.hh:2556
Some limits of the element.
Definition anytone_codeplug.hh:2394
static constexpr unsigned int idLength()
Maximum ID length.
Definition anytone_codeplug.hh:2396
static constexpr unsigned int nameLength()
Maximum name length.
Definition anytone_codeplug.hh:2398
Some internal offsets within element.
Definition anytone_codeplug.hh:2403
Some limits for the list.
Definition anytone_codeplug.hh:2453
static constexpr unsigned int numEntries()
Maximum number of entries.
Definition anytone_codeplug.hh:2454
Some limits for the settings.
Definition anytone_codeplug.hh:2686
static constexpr unsigned int idLength()
Maximum ID length.
Definition anytone_codeplug.hh:2688
static constexpr unsigned int botIdLength()
Maximum BOT ID length.
Definition anytone_codeplug.hh:2690
static constexpr unsigned int eotIdLength()
Maximum EOT ID length.
Definition anytone_codeplug.hh:2692
Some internal offsets.
Definition anytone_codeplug.hh:2697
Internal used offsets within the element.
Definition anytone_codeplug.hh:1261
Some limits for the group list.
Definition anytone_codeplug.hh:616
static constexpr unsigned int nameLength()
Maximum name length.
Definition anytone_codeplug.hh:620
static constexpr unsigned int members()
Maximum number of members.
Definition anytone_codeplug.hh:618
Internal offsets within element.
Definition anytone_codeplug.hh:625
Some internal offsets within element.
Definition anytone_codeplug.hh:2012
Some limits for this element.
Definition anytone_codeplug.hh:2051
static constexpr unsigned int numEntries()
Maximum number of hot-key entries.
Definition anytone_codeplug.hh:2052
Some internal offsets within the element.
Definition anytone_codeplug.hh:2057
Some limits for the message.
Definition anytone_codeplug.hh:1729
static constexpr unsigned int messageLength()
Maximum message length.
Definition anytone_codeplug.hh:1731
Some internal offsets.
Definition anytone_codeplug.hh:1736
Some internal offsets.
Definition anytone_codeplug.hh:1695
Some limits for the radio ID element.
Definition anytone_codeplug.hh:847
static constexpr unsigned int nameLength()
Maximum name length.
Definition anytone_codeplug.hh:849
Some internal offsets within element.
Definition anytone_codeplug.hh:854
Some limits for the offset frequency table.
Definition anytone_codeplug.hh:1639
static constexpr unsigned int numEntries()
Max number of entries in the table.
Definition anytone_codeplug.hh:1640
Some internal used offsets.
Definition anytone_codeplug.hh:1645
Some limits for the scan list.
Definition anytone_codeplug.hh:768
static constexpr unsigned int members()
Maximum number of members.
Definition anytone_codeplug.hh:770
static constexpr unsigned int nameLength()
Maximum name length.
Definition anytone_codeplug.hh:772
Some internal offsets within the element.
Definition anytone_codeplug.hh:777
Some limits.
Definition anytone_codeplug.hh:1877
static constexpr unsigned int numMessages()
Maximum number of messages.
Definition anytone_codeplug.hh:1878
static constexpr unsigned int messageLength()
Maximum length of the messages.
Definition anytone_codeplug.hh:1879
Some internal offsets.
Definition anytone_codeplug.hh:1884
Some limits of the element.
Definition anytone_codeplug.hh:2842
static constexpr unsigned int nameLength()
Maximum name length.
Definition anytone_codeplug.hh:2843
Some internal offsets within the element.
Definition anytone_codeplug.hh:2848
Some limits for the element.
Definition anytone_codeplug.hh:2764
static constexpr unsigned int nameLength()
Maximum name length.
Definition anytone_codeplug.hh:2765
Some internal offsets within the element.
Definition anytone_codeplug.hh:2770
Internal offsets.
Definition anytone_codeplug.hh:2925
Some limits for the channel list.
Definition anytone_codeplug.hh:3150
static constexpr unsigned int numEntries()
Maximum number of channels in the list.
Definition anytone_codeplug.hh:3151
Some internal offsets within the element.
Definition anytone_codeplug.hh:3156
Some limits for the channel lists.
Definition anytone_codeplug.hh:1353
static constexpr unsigned int zones()
Maximum number of channels per VFO.
Definition anytone_codeplug.hh:1355
Internal offsets within element.
Definition anytone_codeplug.hh:1360
Helper type to encode frequencies without any rounding error.
Definition frequency.hh:107
Encodes a selective call.
Definition signaling.hh:13