libdrmconf 0.14.1
A library to program DMR radios.
Loading...
Searching...
No Matches
uv390_codeplug.hh
1#ifndef UV390_CODEPLUG_HH
2#define UV390_CODEPLUG_HH
3
4#include "dm1701_codeplug.hh"
5
51{
52 Q_OBJECT
53
54public:
60 {
61 protected:
63 ChannelElement(uint8_t *ptr, size_t size);
64
65 public:
67 explicit ChannelElement(uint8_t *ptr);
68
70 void clear() override;
71
72 bool talkaround() const override;
73 void enableTalkaround(bool enable) override;
74
76 virtual bool privacySwitch() const;
78 virtual void enablePrivacySwitch(bool enable);
79
82 void setPrivacyType(PrivacyType type) override;
83
88
93
95 virtual Level squelch() const;
97 virtual void setSquelch(Level value);
98
100 virtual Channel::Power power() const;
102 virtual void setPower(Channel::Power pwr);
103
105 virtual bool allowInterrupt() const;
107 virtual void enableAllowInterrupt(bool enable);
108
110 virtual bool dualCapacityDirectMode() const;
112 virtual void enableDualCapacityDirectMode(bool enable);
113
115 virtual bool dcdmLeader() const;
117 virtual void enableDCDMLeader(bool enable);
118
120 virtual Channel *toChannelObj(const ErrorStack &err=ErrorStack()) const override;
122 virtual void fromChannelObj(const Channel *c, Context &ctx) override;
123
124 protected:
128 static constexpr Bit privacySwitch() { return {0x0005, 2}; }
129 static constexpr Bit inCallCriteria() { return {0x0005, 4}; }
130 static constexpr Bit turnOffFreq() { return {0x0005, 6}; }
131 static constexpr unsigned int squelch() { return 0x000f; }
132 static constexpr Bit power() { return {0x001e, 0}; }
133 static constexpr Bit allowInterrupt() { return {0x001f, 2}; }
134 static constexpr Bit dualCapacityDirectMode() { return {0x001f, 3}; }
135 static constexpr Bit dcdmLeader() { return {0x001f, 4}; }
137 };
138 };
139
145 {
146 protected:
148 VFOChannelElement(uint8_t *ptr, size_t size);
149
150 public:
152 VFOChannelElement(uint8_t *ptr);
154 virtual ~VFOChannelElement();
155
156 QString name() const;
157 void setName(const QString &txt);
158
160 virtual unsigned stepSize() const;
162 virtual void setStepSize(unsigned ss_hz);
163 };
164
167
174 {
175 protected:
177 GeneralSettingsElement(uint8_t *ptr, size_t size);
178
179 public:
181 GeneralSettingsElement(uint8_t *ptr);
182
183 void clear();
184
187 LAST_CALL_CH = 0,
188 LAST_CALL_AND_HAND_CH = 1,
189 DESIGNED_CH = 2,
190 DESIGNED_AND_HAND_CH = 3,
191 };
192
194 virtual TransmitMode transmitMode() const;
196 virtual void setTransmitMode(TransmitMode mode);
197
199 virtual bool channelVoiceAnnounce() const;
201 virtual void enableChannelVoiceAnnounce(bool enable);
202
204 virtual bool keypadTones() const;
206 virtual void enableKeypadTones(bool enable);
207
209 virtual bool publicZone() const;
211 virtual void enablePublicZone(bool enable);
212
214 virtual uint32_t additionalDMRId(unsigned n) const;
216 virtual void setAdditionalDMRId(unsigned n, uint32_t id);
217
219 virtual Level micLevel() const;
221 virtual void setMICLevel(Level val);
222
224 virtual bool editRadioID() const;
226 virtual void enableEditRadioID(bool enable);
227
229 virtual bool fromConfig(const Config *config);
231 virtual bool updateConfig(Config *config);
232
233 public:
237 static constexpr Range<unsigned int> micGain() { return {0,6}; }
238 };
239
240 protected:
244 static constexpr Bit micGain() { return {0x00a0, 3}; }
246 };
247 };
248
254 {
255 protected:
257 BootSettingsElement(uint8_t *ptr, size_t size);
258
259 public:
261 explicit BootSettingsElement(uint8_t *ptr);
263 virtual ~BootSettingsElement();
264
265 void clear();
266
268 virtual unsigned zoneIndex() const;
270 virtual void setZoneIndex(unsigned idx);
272 virtual unsigned channelIndexA() const;
274 virtual void setChannelIndexA(unsigned idx);
276 virtual unsigned channelIndexB() const;
278 virtual void setChannelIndexB(unsigned idx);
279 };
280
286 {
287 protected:
289 MenuSettingsElement(uint8_t *ptr, size_t size);
290
291 public:
293 explicit MenuSettingsElement(uint8_t *ptr);
294
295 void clear();
296
298 virtual bool gpsSettings() const;
300 virtual void enableGPSSettings(bool enable);
302 virtual bool recording() const;
304 virtual void enableRecording(bool enable);
305
307 virtual bool groupCallMatch() const;
309 virtual void enableGroupCallMatch(bool enable);
311 virtual bool privateCallMatch() const;
313 virtual void enablePrivateCallMatch(bool enable);
315 virtual bool menuHangtimeItem() const;
317 virtual void enableMenuHangtimeItem(bool enable);
319 virtual bool txMode() const;
321 virtual void enableTXMode(bool enable);
323 virtual bool zoneSettings() const;
325 virtual void enableZoneSettings(bool enable);
327 virtual bool newZone() const;
329 virtual void enableNewZone(bool enable);
330
332 virtual bool editZone() const;
334 virtual void enableEditZone(bool enable);
336 virtual bool newScanList() const;
338 virtual void enableNewScanList(bool enable);
339 };
340
341
342public:
344 explicit UV390Codeplug(QObject *parent = nullptr);
346 virtual ~UV390Codeplug();
347
348 void clear();
349
350public:
351 void clearTimestamp();
352 bool encodeTimestamp();
353
355 bool encodeGeneralSettings(const Flags &flags, Context &ctx, const ErrorStack &err=ErrorStack());
356 bool decodeGeneralSettings(Context &ctx, const ErrorStack &err=ErrorStack());
357
358 void clearChannels();
359 bool encodeChannels( const Flags &flags, Context &ctx, const ErrorStack &err=ErrorStack());
360 bool createChannels(Context &ctx, const ErrorStack &err=ErrorStack());
361 bool linkChannels(Context &ctx, const ErrorStack &err=ErrorStack());
362
363 void clearContacts();
364 bool encodeContacts(const Flags &flags, Context &ctx, const ErrorStack &err=ErrorStack());
365 bool createContacts(Context &ctx, const ErrorStack &err=ErrorStack());
366
367 void clearZones();
368 bool encodeZones(const Flags &flags, Context &ctx, const ErrorStack &err=ErrorStack());
369 bool createZones(Context &ctx, const ErrorStack &err=ErrorStack());
370 bool linkZones(Context &ctx, const ErrorStack &err=ErrorStack());
371
372 void clearGroupLists();
373 bool encodeGroupLists(const Flags &flags, Context &ctx, const ErrorStack &err=ErrorStack());
374 bool createGroupLists(Context &ctx, const ErrorStack &err=ErrorStack());
375 bool linkGroupLists(Context &ctx, const ErrorStack &err=ErrorStack());
376
377 void clearScanLists();
378 bool encodeScanLists(const Flags &flags, Context &ctx, const ErrorStack &err=ErrorStack());
379 bool createScanLists(Context &ctx, const ErrorStack &err=ErrorStack());
380 bool linkScanLists(Context &ctx, const ErrorStack &err=ErrorStack());
381
383 bool encodePositioningSystems(const Flags &flags, Context &ctx, const ErrorStack &err=ErrorStack());
384 bool createPositioningSystems(Context &ctx, const ErrorStack &err=ErrorStack());
385 bool linkPositioningSystems(Context &ctx, const ErrorStack &err=ErrorStack());
386
387 void clearButtonSettings();
388 bool encodeButtonSettings(const Flags &flags, Context &ctx, const ErrorStack &err=ErrorStack());
389 bool decodeButtonSetttings(Context &ctx, const ErrorStack &err=ErrorStack());
390
391 void clearPrivacyKeys();
392 bool encodePrivacyKeys(const Flags &flags, Context &ctx, const ErrorStack &err);
393 bool decodePrivacyKeys(Context &ctx, const ErrorStack &err);
394
395 void clearTextMessages();
396 bool encodeTextMessages(Context &ctx, const Flags &flags, const ErrorStack &err);
397 bool decodeTextMessages(Context &ctx, const ErrorStack &err);
398
400 virtual void clearBootSettings();
401 void clearMenuSettings();
404 virtual void clearVFOSettings();
405
406public:
408 struct Limit: public Element::Limit {
410 static constexpr unsigned int channels() { return 3000; }
411 };
412
413protected:
415 struct Offset {
417 static constexpr unsigned int messages() { return 0x002180; }
418 static constexpr unsigned int channels() { return 0x110000; }
419 static constexpr unsigned int betweenChannels() { return ChannelElement::size(); }
421 };
422};
423
424#endif // UV390CODEPLUG_HH
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
Base class for all codeplug contexts.
Definition codeplug.hh:331
Represents the abstract base class of all codeplug elements.
Definition codeplug.hh:65
Certain flags passed to CodePlug::encode to control the transfer and encoding of the codeplug.
Definition codeplug.hh:24
The config class, representing the codeplug configuration.
Definition config.hh:70
uint32_t size() const
Returns the total size of the DFU file.
Definition dfufile.cc:52
Extends the common TyTCodeplug::GeneralSettingsElement to implement the DM-1701 specific settings.
Definition dm1701_codeplug.hh:121
Extended zone data for the DM-1701.
Definition dm1701_codeplug.hh:228
Implements a stack of error messages to provide a pretty formatted error traceback.
Definition errorstack.hh:43
Some simple class implementing a [1-10] level setting.
Definition level.hh:15
InCallCriterion
Possible in-call criterions.
Definition tyt_extensions.hh:66
KillTone
Possible kill-tone settings.
Definition tyt_extensions.hh:60
Represents a single channel (analog or digital) within the TyT codeplug.
Definition tyt_codeplug.hh:35
static constexpr unsigned int size()
Returns the size of the element.
Definition tyt_codeplug.hh:81
PrivacyType
Possible privacy types.
Definition tyt_codeplug.hh:51
Represents all menu settings within the codeplug on the radio.
Definition tyt_codeplug.hh:788
TyTCodeplug(QObject *parent=nullptr)
Empty constructor.
Definition tyt_codeplug.cc:2884
virtual void setChannelIndexB(unsigned idx)
Sets the channel index (within zone) for VFO B.
Definition uv390_codeplug.cc:470
virtual unsigned channelIndexA() const
Returns the channel index (within zone) for VFO A.
Definition uv390_codeplug.cc:457
virtual void setChannelIndexA(unsigned idx)
Sets the channel index (within zone) for VFO A.
Definition uv390_codeplug.cc:461
void clear()
Abstract method to reset the element within the codeplug.
Definition uv390_codeplug.cc:435
virtual ~BootSettingsElement()
Destructor.
Definition uv390_codeplug.cc:430
BootSettingsElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition uv390_codeplug.cc:418
virtual unsigned channelIndexB() const
Returns the channel index (within zone) for VFO B.
Definition uv390_codeplug.cc:466
virtual unsigned zoneIndex() const
Returns the boot zone index.
Definition uv390_codeplug.cc:448
virtual void setZoneIndex(unsigned idx)
Sets the boot zone index.
Definition uv390_codeplug.cc:452
virtual TyTChannelExtension::InCallCriterion inCallCriteria() const
Returns the in-call criterion for this channel.
Definition uv390_codeplug.cc:104
ChannelElement(uint8_t *ptr, size_t size)
Constructs a channel from the given memory.
Definition uv390_codeplug.cc:51
virtual void enableAllowInterrupt(bool enable)
Enables/disables interruption for this channel.
Definition uv390_codeplug.cc:161
virtual TyTChannelExtension::KillTone turnOffFreq() const
Returns the remote turn-off/kill frequency for this channel.
Definition uv390_codeplug.cc:112
virtual Channel * toChannelObj(const ErrorStack &err=ErrorStack()) const override
Constructs a generic Channel object from the codeplug channel.
Definition uv390_codeplug.cc:185
virtual void setTurnOffFreq(TyTChannelExtension::KillTone freq)
Sets the remote turn-off/kill frequency for this channel.
Definition uv390_codeplug.cc:116
virtual void enablePrivacySwitch(bool enable)
Enables/disables the privacy switch.
Definition uv390_codeplug.cc:93
virtual bool dcdmLeader() const
Returns true if the radio acts as the leader for this DCDM channel.
Definition uv390_codeplug.cc:175
bool talkaround() const override
Returns true if the channel has talkaround enabled.
Definition uv390_codeplug.cc:80
virtual void enableDualCapacityDirectMode(bool enable)
Enables/disables dual-capacity direct mode for this channel.
Definition uv390_codeplug.cc:170
virtual Level squelch() const
Returns the squelch level [0-10].
Definition uv390_codeplug.cc:121
virtual void enableDCDMLeader(bool enable)
Enables/disables this radio to be the leader for this DCDM channel.
Definition uv390_codeplug.cc:179
void clear() override
Clears/resets the channel and therefore disables it.
Definition uv390_codeplug.cc:64
virtual Channel::Power power() const
Returns the power of this channel.
Definition uv390_codeplug.cc:131
virtual void fromChannelObj(const Channel *c, Context &ctx) override
Initializes this codeplug channel from the given generic configuration.
Definition uv390_codeplug.cc:221
void enableTalkaround(bool enable) override
Enables/disables talkaround for this channel.
Definition uv390_codeplug.cc:84
virtual void setPower(Channel::Power pwr)
Sets the power of this channel.
Definition uv390_codeplug.cc:141
virtual bool allowInterrupt() const
Returns true if the channel allows interruption enabled.
Definition uv390_codeplug.cc:157
virtual bool dualCapacityDirectMode() const
Returns true if the channel has dual-capacity direct mode enabled.
Definition uv390_codeplug.cc:166
virtual bool privacySwitch() const
Returns true, if the privacy switch is enabled.
Definition uv390_codeplug.cc:89
virtual void setInCallCriteria(TyTChannelExtension::InCallCriterion crit)
Sets the in-call criterion for this channel.
Definition uv390_codeplug.cc:108
void setPrivacyType(PrivacyType type) override
Overrides TyT basic implementation to enable privacy switch, whenever encryption is enabled for this ...
Definition uv390_codeplug.cc:98
virtual void setSquelch(Level value)
Sets the squelch level [0-10].
Definition uv390_codeplug.cc:125
virtual bool keypadTones() const
Returns true, if keypad tones are enabled.
Definition uv390_codeplug.cc:350
virtual void enableEditRadioID(bool enable)
Enable/disable radio ID editing.
Definition uv390_codeplug.cc:390
virtual bool fromConfig(const Config *config)
Encodes the general settings.
Definition uv390_codeplug.cc:395
virtual void enableKeypadTones(bool enable)
Enables/disables the keypad tones.
Definition uv390_codeplug.cc:354
virtual Level micLevel() const
Returns the microphone gain.
Definition uv390_codeplug.cc:377
TransmitMode
Defines all possible transmit modes.
Definition uv390_codeplug.hh:186
virtual void setAdditionalDMRId(unsigned n, uint32_t id)
Sets the n-th DMR id.
Definition uv390_codeplug.cc:372
virtual bool editRadioID() const
If true, radio ID editing is enabled.
Definition uv390_codeplug.cc:386
virtual void enableChannelVoiceAnnounce(bool enable)
Enables/disables the speech synthesis.
Definition uv390_codeplug.cc:345
virtual uint32_t additionalDMRId(unsigned n) const
Returns the n-th DMR id.
Definition uv390_codeplug.cc:368
virtual bool channelVoiceAnnounce() const
Returns true, if the speech synthesis is enabled.
Definition uv390_codeplug.cc:341
GeneralSettingsElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition uv390_codeplug.cc:294
virtual void setMICLevel(Level val)
Sets the microphone gain.
Definition uv390_codeplug.cc:381
void clear()
Abstract method to reset the element within the codeplug.
Definition uv390_codeplug.cc:307
virtual bool updateConfig(Config *config)
Updates config from general settings.
Definition uv390_codeplug.cc:406
virtual void enablePublicZone(bool enable)
Enables/disables public zone.
Definition uv390_codeplug.cc:363
virtual TransmitMode transmitMode() const
Returns the transmit mode.
Definition uv390_codeplug.cc:332
virtual bool publicZone() const
Returns true, if public zone is enabled.
Definition uv390_codeplug.cc:359
virtual void setTransmitMode(TransmitMode mode)
Sets the transmit mode.
Definition uv390_codeplug.cc:336
virtual void enableTXMode(bool enable)
Enables/disables TX mode menu.
Definition uv390_codeplug.cc:569
virtual bool menuHangtimeItem() const
Returns true if menu hang time item is enabled.
Definition uv390_codeplug.cc:556
virtual void enableNewZone(bool enable)
Enables/disables new zone menu.
Definition uv390_codeplug.cc:587
virtual void enableGPSSettings(bool enable)
Enables/disables GPS settings menu.
Definition uv390_codeplug.cc:524
virtual bool txMode() const
Returns true if TX mode menu is enabled.
Definition uv390_codeplug.cc:565
virtual bool privateCallMatch() const
Returns true if private call match menu is enabled.
Definition uv390_codeplug.cc:547
virtual bool editZone() const
Returns true if edit zone menu is enabled.
Definition uv390_codeplug.cc:592
virtual bool newZone() const
Returns true if new zone menu is enabled.
Definition uv390_codeplug.cc:583
virtual void enableZoneSettings(bool enable)
Enables/disables zone settings menu.
Definition uv390_codeplug.cc:578
virtual void enableGroupCallMatch(bool enable)
Enables/disables group call match menu.
Definition uv390_codeplug.cc:542
virtual bool newScanList() const
Returns true if new scan list menu is enabled.
Definition uv390_codeplug.cc:601
virtual void enableMenuHangtimeItem(bool enable)
Enables/disables menu hang time item.
Definition uv390_codeplug.cc:560
virtual void enableNewScanList(bool enable)
Enables/disables new scan list menu.
Definition uv390_codeplug.cc:605
void clear()
Abstract method to reset the element within the codeplug.
Definition uv390_codeplug.cc:491
MenuSettingsElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition uv390_codeplug.cc:478
virtual void enableRecording(bool enable)
Enables/disables recording menu.
Definition uv390_codeplug.cc:533
virtual bool groupCallMatch() const
Returns true if group call match menu is enabled.
Definition uv390_codeplug.cc:538
virtual bool gpsSettings() const
Returns true if GPS settings menu is enabled.
Definition uv390_codeplug.cc:520
virtual void enableEditZone(bool enable)
Enables/disables edit zone menu.
Definition uv390_codeplug.cc:596
virtual bool zoneSettings() const
Returns true if zone settings menu is enabled.
Definition uv390_codeplug.cc:574
virtual bool recording() const
Returns true if recording menu is enabled.
Definition uv390_codeplug.cc:529
virtual void enablePrivateCallMatch(bool enable)
Enables/disables private call match menu.
Definition uv390_codeplug.cc:551
virtual void setStepSize(unsigned ss_hz)
Sets the step-size for the VFO channel in Hz.
Definition uv390_codeplug.cc:284
VFOChannelElement(uint8_t *ptr, size_t size)
Constructor from pointer to memory.
Definition uv390_codeplug.cc:253
virtual ~VFOChannelElement()
Destructor.
Definition uv390_codeplug.cc:265
QString name() const
Returns the name of this channel.
Definition uv390_codeplug.cc:270
void setName(const QString &txt)
Sets the name of this channel.
Definition uv390_codeplug.cc:274
virtual unsigned stepSize() const
Returns the step-size for the VFO channel.
Definition uv390_codeplug.cc:280
void clearMenuSettings()
Clears the menu settings in the codeplug.
Definition uv390_codeplug.cc:1027
void clearTextMessages()
Clears all text messages in the codeplug.
Definition uv390_codeplug.cc:1033
bool encodePrivacyKeys(const Flags &flags, Context &ctx, const ErrorStack &err)
Encodes the encryption keys.
Definition uv390_codeplug.cc:998
bool decodeButtonSetttings(Context &ctx, const ErrorStack &err=ErrorStack())
Decodes the button settings.
Definition uv390_codeplug.cc:986
bool decodePrivacyKeys(Context &ctx, const ErrorStack &err)
Decodes the encryption keys.
Definition uv390_codeplug.cc:1008
void clearTimestamp()
Clears the time-stamp in the codeplug.
Definition uv390_codeplug.cc:637
bool encodeGeneralSettings(const Flags &flags, Context &ctx, const ErrorStack &err=ErrorStack())
Updates the general settings from the given configuration.
Definition uv390_codeplug.cc:654
bool linkZones(Context &ctx, const ErrorStack &err=ErrorStack())
Links all added zones within the configuration.
Definition uv390_codeplug.cc:797
void clearScanLists()
Clears all scan lists in the codeplug.
Definition uv390_codeplug.cc:867
bool encodeScanLists(const Flags &flags, Context &ctx, const ErrorStack &err=ErrorStack())
Encodes all scan lists in the configuration into the codeplug.
Definition uv390_codeplug.cc:874
void clear()
Clears and resets the complete codeplug to some default values.
Definition uv390_codeplug.cc:629
bool encodeChannels(const Flags &flags, Context &ctx, const ErrorStack &err=ErrorStack())
Encodes all channels in the configuration into the codeplug.
Definition uv390_codeplug.cc:673
bool createChannels(Context &ctx, const ErrorStack &err=ErrorStack())
Adds a channel to the configuration for each one in the codeplug.
Definition uv390_codeplug.cc:687
bool linkScanLists(Context &ctx, const ErrorStack &err=ErrorStack())
Links all added scan lists within the configuration.
Definition uv390_codeplug.cc:904
bool createGroupLists(Context &ctx, const ErrorStack &err=ErrorStack())
Adds a RX group list to the configuration for each one in the codeplug.
Definition uv390_codeplug.cc:837
bool createZones(Context &ctx, const ErrorStack &err=ErrorStack())
Adds a zone to the configuration for each one in the codeplug.
Definition uv390_codeplug.cc:780
void clearGeneralSettings()
Clears the general settings in the codeplug.
Definition uv390_codeplug.cc:649
void clearGroupLists()
Clears all RX group lists in the codeplug.
Definition uv390_codeplug.cc:818
void clearPrivacyKeys()
Clears all encryption keys in the codeplug.
Definition uv390_codeplug.cc:993
bool createScanLists(Context &ctx, const ErrorStack &err=ErrorStack())
Adds a scan list to the configuration for each one in the codeplug.
Definition uv390_codeplug.cc:888
bool encodeTextMessages(Context &ctx, const Flags &flags, const ErrorStack &err)
Encodes text messages.
Definition uv390_codeplug.cc:1038
bool linkChannels(Context &ctx, const ErrorStack &err=ErrorStack())
Links all added channels within the configuration.
Definition uv390_codeplug.cc:703
void clearChannels()
Clears all channels in the codeplug.
Definition uv390_codeplug.cc:666
virtual void clearBootSettings()
Resets the boot setting, e.g.
Definition uv390_codeplug.cc:1022
void clearPositioningSystems()
Clears all positioning systems in the codeplug.
Definition uv390_codeplug.cc:919
bool encodeZones(const Flags &flags, Context &ctx, const ErrorStack &err=ErrorStack())
Encodes all zones in the configuration into the codeplug.
Definition uv390_codeplug.cc:763
bool createPositioningSystems(Context &ctx, const ErrorStack &err=ErrorStack())
Adds a GPS positioning system to the configuration for each one in the codeplug.
Definition uv390_codeplug.cc:942
bool createContacts(Context &ctx, const ErrorStack &err=ErrorStack())
Adds a digital contact to the configuration for each one in the codeplug.
Definition uv390_codeplug.cc:738
UV390Codeplug(QObject *parent=nullptr)
Constructor.
Definition uv390_codeplug.cc:613
virtual ~UV390Codeplug()
Destructor.
Definition uv390_codeplug.cc:624
DM1701Codeplug::ZoneExtElement ZoneExtElement
Reuse zone extension from DM1701.
Definition uv390_codeplug.hh:166
virtual void clearVFOSettings()
Clears the VFO A & B.
Definition uv390_codeplug.cc:1056
void clearEmergencySystems()
Clears all emergency systems in the codeplug.
Definition uv390_codeplug.cc:1049
bool decodeTextMessages(Context &ctx, const ErrorStack &err)
Decodes text messages.
Definition uv390_codeplug.cc:1043
bool encodeGroupLists(const Flags &flags, Context &ctx, const ErrorStack &err=ErrorStack())
Encodes all group lists in the configuration into the codeplug.
Definition uv390_codeplug.cc:824
bool encodeTimestamp()
Sets the time-stamp.
Definition uv390_codeplug.cc:642
bool decodeGeneralSettings(Context &ctx, const ErrorStack &err=ErrorStack())
Updates the given configuration from the general settings.
Definition uv390_codeplug.cc:660
void clearZones()
Clears all zones in the codeplug.
Definition uv390_codeplug.cc:754
bool linkGroupLists(Context &ctx, const ErrorStack &err=ErrorStack())
Links all added RX group lists within the configuration.
Definition uv390_codeplug.cc:853
bool encodePositioningSystems(const Flags &flags, Context &ctx, const ErrorStack &err=ErrorStack())
Encodes all DMR positioning systems in the configuration into the codeplug.
Definition uv390_codeplug.cc:926
bool encodeButtonSettings(const Flags &flags, Context &ctx, const ErrorStack &err=ErrorStack())
Encodes the button settings.
Definition uv390_codeplug.cc:979
bool linkPositioningSystems(Context &ctx, const ErrorStack &err=ErrorStack())
Links all added positioning systems within the configuration.
Definition uv390_codeplug.cc:959
bool encodeContacts(const Flags &flags, Context &ctx, const ErrorStack &err=ErrorStack())
Encodes all digital contacts in the configuration into the codeplug.
Definition uv390_codeplug.cc:724
void clearButtonSettings()
Clears the button settings in the codeplug.
Definition uv390_codeplug.cc:974
void clearContacts()
Clears all contacts in the codeplug.
Definition uv390_codeplug.cc:717
Holds a range of values [min, max].
Definition codeplug.hh:94
Base class for Limits.
Definition codeplug.hh:92
Some type to specify a bit offset.
Definition codeplug.hh:70
Base class for Offsets.
Definition codeplug.hh:68
Some internal offsets within the element.
Definition tyt_codeplug.hh:270
Some internal offsets.
Definition uv390_codeplug.hh:126
Some limits.
Definition uv390_codeplug.hh:235
static constexpr Range< unsigned int > micGain()
Specifies the valid range for mic gain.
Definition uv390_codeplug.hh:237
Some internal offsets.
Definition uv390_codeplug.hh:242
Some limits for the codeplug.
Definition uv390_codeplug.hh:408
static constexpr unsigned int channels()
Number of channels.
Definition uv390_codeplug.hh:410
Some internal offsets within the codeplug.
Definition uv390_codeplug.hh:415