libdrmconf
0.12.0
A library to program DMR radios.
|
Codeplug representation of the general settings. More...
#include <tyt_codeplug.hh>
Public Member Functions | |
GeneralSettingsElement (uint8_t *ptr) | |
Constructor. | |
virtual | ~GeneralSettingsElement () |
Destructor. | |
void | clear () |
Abstract method to reset the element within the codeplug. More... | |
virtual QString | introLine1 () const |
Returns the first intro line. | |
virtual void | setIntroLine1 (const QString line) |
Sets the first intro line. | |
virtual QString | introLine2 () const |
Returns the second intro line. | |
virtual void | setIntroLine2 (const QString line) |
Sets the second intro line. | |
virtual TyTSettingsExtension::MonitorType | monitorType () const |
Returns the monitor type. | |
virtual void | setMonitorType (TyTSettingsExtension::MonitorType type) |
Sets the monitor type. | |
virtual bool | allLEDsDisabled () const |
Returns true if all LEDs are disabled. | |
virtual void | disableAllLEDs (bool disable) |
Enables/disables all LEDs. | |
virtual bool | savePreamble () const |
Returns true , if save preamble is enabled. | |
virtual void | setSavePreamble (bool enable) |
Enables/disables save preamble. | |
virtual bool | saveModeRX () const |
Returns true , if save RX mode is enabled. | |
virtual void | setSaveModeRX (bool enable) |
Enables/disables save mode RX. | |
virtual bool | allTonesDisabled () const |
Returns true , if all tones are disabled. | |
virtual void | disableAllTones (bool disable) |
Enables/disables all tones. | |
virtual bool | chFreeIndicationTone () const |
Returns true , if the channel free indication tone is enabled. | |
virtual void | setChFreeIndicationTone (bool enable) |
Enables/disables the channel free indication tone. | |
virtual bool | passwdAndLock () const |
Returns true , if password and lock is enabled. | |
virtual void | enablePasswdAndLock (bool enable) |
Enables/disables password and lock. | |
virtual bool | talkPermitToneDigital () const |
Returns true , if the talk permit tone is enabled for DMR channels. | |
virtual void | enableTalkPermitToneDigital (bool enable) |
Enables/disables talk permit tone for DMR channels. | |
virtual bool | talkPermitToneAnalog () const |
Returns true , if the talk permit tone is enabled for analog channels. | |
virtual void | enableTalkPermitToneAnalog (bool enable) |
Enables/disables talk permit tone for analog channels. | |
virtual bool | introPicture () const |
Returns true , if intro picture is enabled. | |
virtual void | enableIntroPicture (bool enable) |
Enables/disables the intro picture. | |
virtual uint32_t | dmrId () const |
Returns the default DMR ID of the radio. | |
virtual void | setDMRId (uint32_t id) |
Sets the default DMR ID of the radio. | |
virtual unsigned | txPreambleDuration () const |
Returns the TX preamble duration. | |
virtual void | setTXPreambleDuration (unsigned ms) |
Sets the TX preamble duration. | |
virtual unsigned | groupCallHangTime () const |
Returns the group call hang time. | |
virtual void | setGroupCallHangTime (unsigned ms) |
Sets the group call hang time. | |
virtual unsigned | privateCallHangTime () const |
Returns the private call hang time. | |
virtual void | setPrivateCallHangTime (unsigned ms) |
Sets the private call hang time. | |
virtual unsigned | voxSesitivity () const |
Returns the VOX sensitivity. | |
virtual void | setVOXSesitivity (unsigned ms) |
Sets the group call hang time. | |
virtual unsigned | lowBatteryInterval () const |
Returns the low-battery warning interval. | |
virtual void | setLowBatteryInterval (unsigned sec) |
Sets the low-battery warning interval. | |
virtual bool | callAlertToneIsContinuous () const |
Returns true if the call-alert is continuous. | |
virtual unsigned | callAlertToneDuration () const |
Returns the call-alert tone duration. | |
virtual void | setCallAlertToneDuration (unsigned sec) |
Sets the call-alert tone duration. | |
virtual void | setCallAlertToneContinuous () |
Sets the call-alert tone continuous. | |
virtual unsigned | loneWorkerResponseTime () const |
Returns the lone-worker response time. | |
virtual void | setLoneWorkerResponseTime (unsigned min) |
Sets the lone-worker response time. | |
virtual unsigned | loneWorkerReminderTime () const |
Returns the lone-worker reminder time. | |
virtual void | setLoneWorkerReminderTime (unsigned min) |
Sets the lone-worker reminder time. | |
virtual unsigned | scanDigitalHangTime () const |
Returns the scan digital hang time. | |
virtual void | setScanDigitalHangTime (unsigned ms) |
Sets the scan digital hang time. | |
virtual unsigned | scanAnalogHangTime () const |
Returns the scan analog hang time. | |
virtual void | setScanAnalogHangTime (unsigned ms) |
Sets the scan analog hang time. | |
virtual bool | backlightIsAlways () const |
Returns true if the backlight is always on. | |
virtual unsigned | backlightTime () const |
Returns the backlight time. | |
virtual void | setBacklightTime (unsigned sec) |
Sets the backlight time. | |
virtual void | backlightTimeSetAlways () |
Turns the backlight always on. | |
virtual bool | keypadLockIsManual () const |
Returns true if the keypad lock is manual. | |
virtual unsigned | keypadLockTime () const |
Returns the keypad lock time. | |
virtual void | setKeypadLockTime (unsigned sec) |
Sets the keypad lock time. | |
virtual void | keypadLockTimeSetManual () |
Set keypad lock to manual. | |
virtual uint32_t | powerOnPassword () const |
Returns the 8-digit power-on password. | |
virtual void | setPowerOnPassword (uint32_t passwd) |
Sets the 8-digit power-on password. | |
virtual bool | radioProgPasswordEnabled () const |
Returns true , if the radio programming password is enabled. | |
virtual uint32_t | radioProgPassword () const |
Returns the 8-digit radio programming password. | |
virtual void | setRadioProgPassword (uint32_t passwd) |
Sets the 8-digit radio programming password. | |
virtual void | radioProgPasswordDisable () |
Disables the radio programming password. | |
virtual bool | pcProgPasswordEnabled () const |
Returns true , if the PC programming password is enabled. | |
virtual QString | pcProgPassword () const |
Returns the PC programming password. | |
virtual void | setPCProgPassword (const QString &pass) |
Sets the PC programming password. | |
virtual void | pcProgPasswordDisable () |
Disables the PC programming password. | |
virtual QString | radioName () const |
Returns the radio name. | |
virtual void | setRadioName (const QString &name) |
Sets the radio name. | |
virtual bool | fromConfig (const Config *config) |
Encodes the general settings. | |
virtual bool | updateConfig (Config *config) |
Updates config from general settings. | |
Public Member Functions inherited from Codeplug::Element | |
Element (const Element &other) | |
Copy constructor. | |
virtual | ~Element () |
Destructor. | |
Element & | operator= (const Element &other) |
Copy assignment. | |
virtual bool | isValid () const |
Returns true if the pointer is not null. | |
bool | fill (uint8_t value, unsigned offset=0, int size=-1) |
Fills the memsets the entire element to the given value. | |
bool | getBit (const Offset::BitOffset &offset) const |
Reads a specific bit at the given byte-offset. | |
bool | getBit (unsigned offset, unsigned bit) const |
Reads a specific bit at the given byte-offset. | |
void | setBit (const Offset::BitOffset &offset, bool value=true) |
Sets a specific bit at the given byte-offset. | |
void | setBit (unsigned offset, unsigned bit, bool value=true) |
Sets a specific bit at the given byte-offset. | |
void | clearBit (unsigned offset, unsigned bit) |
Clears a specific bit at the given byte-offset. | |
uint8_t | getUInt2 (unsigned offset, unsigned bit) const |
Reads a 2bit unsigned integer at the given byte- and bit-offset. | |
void | setUInt2 (unsigned offset, unsigned bit, uint8_t value) |
Stores a 2bit unsigned integer at the given byte- and bit-offset. | |
uint8_t | getUInt3 (unsigned offset, unsigned bit) const |
Reads a 3bit unsigned integer at the given byte- and bit-offset. | |
void | setUInt3 (unsigned offset, unsigned bit, uint8_t value) |
Stores a 3bit unsigned integer at the given byte- and bit-offset. | |
uint8_t | getUInt4 (unsigned offset, unsigned bit) const |
Reads a 4bit unsigned integer at the given byte- and bit-offset. | |
void | setUInt4 (unsigned offset, unsigned bit, uint8_t value) |
Stores a 4bit unsigned integer at the given byte- and bit-offset. | |
uint8_t | getUInt5 (unsigned offset, unsigned bit) const |
Reads a 5bit unsigned integer at the given byte- and bit-offset. | |
void | setUInt5 (unsigned offset, unsigned bit, uint8_t value) |
Stores a 5bit iunsinged nteger at the given byte- and bit-offset. | |
uint8_t | getUInt6 (unsigned offset, unsigned bit) const |
Reads a 6bit unsigned integer at the given byte- and bit-offset. | |
void | setUInt6 (unsigned offset, unsigned bit, uint8_t value) |
Stores a 6bit unsigned integer at the given byte- and bit-offset. | |
uint8_t | getUInt8 (unsigned offset) const |
Reads a 8bit unsigned integer at the given byte- and bit-offset. | |
void | setUInt8 (unsigned offset, uint8_t value) |
Reads a 8bit unsigned integer at the given byte- and bit-offset. | |
int8_t | getInt8 (unsigned offset) const |
Reads a 8bit signed integer at the given byte- and bit-offset. | |
void | setInt8 (unsigned offset, int8_t value) |
Reads a 8bit signed integer at the given byte- and bit-offset. | |
uint16_t | getUInt16_be (unsigned offset) const |
Reads a 16bit big-endian unsigned integer at the given byte-offset. | |
uint16_t | getUInt16_le (unsigned offset) const |
Reads a 16bit little-endian unsigned integer at the given byte-offset. | |
void | setUInt16_be (unsigned offset, uint16_t value) |
Stores a 16bit big-endian unsigned integer at the given byte-offset. | |
void | setUInt16_le (unsigned offset, uint16_t value) |
Stores a 16bit little-endian unsigned integer at the given byte-offset. | |
uint32_t | getUInt24_be (unsigned offset) const |
Reads a 24bit big-endian unsigned integer at the given byte-offset. | |
uint32_t | getUInt24_le (unsigned offset) const |
Reads a 24bit little-endian unsigned integer at the given byte-offset. | |
void | setUInt24_be (unsigned offset, uint32_t value) |
Stores a 24bit big-endian unsigned integer at the given byte-offset. | |
void | setUInt24_le (unsigned offset, uint32_t value) |
Stores a 24bit little-endian unsigned integer at the given byte-offset. | |
uint32_t | getUInt32_be (unsigned offset) const |
Reads a 32bit big-endian unsigned integer at the given byte-offset. | |
uint32_t | getUInt32_le (unsigned offset) const |
Reads a 32bit little-endian unsigned integer at the given byte-offset. | |
void | setUInt32_be (unsigned offset, uint32_t value) |
Stores a 32bit big-endian unsigned integer at the given byte-offset. | |
void | setUInt32_le (unsigned offset, uint32_t value) |
Stores a 32bit little-endian unsigned integer at the given byte-offset. | |
uint64_t | getUInt64_be (unsigned offset) const |
Reads a 64bit big-endian unsigned integer at the given byte-offset. | |
uint64_t | getUInt64_le (unsigned offset) const |
Reads a 64bit little-endian unsigned integer at the given byte-offset. | |
void | setUInt64_be (unsigned offset, uint64_t value) |
Stores a 64bit big-endian unsigned integer at the given byte-offset. | |
void | setUInt64_le (unsigned offset, uint64_t value) |
Stores a 64bit little-endian unsigned integer at the given byte-offset. | |
uint8_t | getBCD2 (unsigned offset) const |
Reads a 2-digit (1-byte/8bit) BDC value in big-endian at the given byte-offset. | |
void | setBCD2 (unsigned offset, uint8_t value) |
Stores a 2-digit (1-byte/8bit) BDC value in big-endian at the given byte-offset. | |
uint16_t | getBCD4_be (unsigned offset) const |
Reads a 4-digit (2-byte/16bit) BDC value in big-endian at the given byte-offset. | |
void | setBCD4_be (unsigned offset, uint16_t value) |
Stores a 4-digit (2-byte/16bit) BDC value in big-endian at the given byte-offset. | |
uint16_t | getBCD4_le (unsigned offset) const |
Reads a 4-digit (2-byte/16bit) BDC value in little-endian at the given byte-offset. | |
void | setBCD4_le (unsigned offset, uint16_t value) |
Stores a 4-digit (1-byte/16bit) BDC value in little-endian at the given byte-offset. | |
uint32_t | getBCD8_be (unsigned offset) const |
Reads a 8-digit (4-byte/32bit) BDC value in big-endian at the given byte-offset. | |
void | setBCD8_be (unsigned offset, uint32_t value) |
Stores a 8-digit (4-byte/32bit) BDC value in big-endian at the given byte-offset. | |
uint32_t | getBCD8_le (unsigned offset) const |
Reads a 8-digit (4-byte/32bit) BDC value in little-endian at the given byte-offset. | |
void | setBCD8_le (unsigned offset, uint32_t value) |
Stores a 8-digit (4-byte/32bit) BDC value in little-endian at the given byte-offset. | |
QString | readASCII (unsigned offset, unsigned maxlen, uint8_t eos=0x00) const |
Reads up to maxlen ASCII chars at the given byte-offset using eos as the string termination char. | |
void | writeASCII (unsigned offset, const QString &txt, unsigned maxlen, uint8_t eos=0x00) |
Stores up to maxlen ASCII chars at the given byte-offset using eos as the string termination char. More... | |
QString | readUnicode (unsigned offset, unsigned maxlen, uint16_t eos=0x0000) const |
Reads up to maxlen unicode chars at the given byte-offset using eos as the string termination char. | |
void | writeUnicode (unsigned offset, const QString &txt, unsigned maxlen, uint16_t eos=0x0000) |
Stores up to maxlen unicode chars at the given byte-offset using eos as the string termination char. More... | |
Protected Member Functions | |
GeneralSettingsElement (uint8_t *ptr, size_t size) | |
Hidden constructor. | |
Protected Member Functions inherited from Codeplug::Element | |
Element (uint8_t *ptr, size_t size) | |
Hidden constructor. More... | |
Additional Inherited Members | |
Protected Attributes inherited from Codeplug::Element | |
uint8_t * | _data |
Holds the pointer to the element. | |
size_t | _size |
Holds the size of the element. | |
Codeplug representation of the general settings.
Memory layout of encoded settings:
7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 00 | Intro Line 1, 10 x 16bit unicode characters ... +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 10 ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 14 | Intro Line 2, 10 x 16bit unicode characters ... +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 24 ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 26 | Reserved 24 bytes, set to 0xff ... +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 3c ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 40 | 1 1 1 |MNT| 1 |DAL| 1 0 |TPA|TPD|PWE|CIT| 1 |DAT|SMR|SPR| 1 1 1 |INP| 1 0 1 | 0 | Unused set to 0xff | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 44 | DMR ID 24bit, little endian | Unused 0x00 | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 48 | TX Preamble Duration N x 60ms | Grp Call Hang Time N x 100ms | Prv. Call Hang Time N x 100ms | VOX sensitivity [1..10] | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 4c | Unused, set 0x00 | Unused, set 0x00 | RX Low Bat. Intv N x 5s | Call Alert Tone Dur N x 5s | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 50 | Lone Worker Resp. Time in min | Lone Worker Rem. Time in sec | Unused, set to 0x00 | Scan Dig. Hang Time N x 100ms | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 54 | Scan Anal. Hang Time N x 100ms| 0 0 0 0 0 0 |BcLTime| Keypad Lock Time N x 5s | Unused, set to 0xff | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 58 | Power-on password 8 x BCD numbers, 0x00000000=default | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 5c | Radio prog. password 8 x BCD numbers, 0x00000000=disabled | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 60 | PC Programming password 8 x ASCII, 0x00 terminated, filled with 0xff=disabled ... +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 64 ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 68 | Unused set to 0xffffffff | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 6c | Unused set to 0xffffffff | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 70 | Radio name 16 x 16bit unicode chars ... +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 8c ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ Field description: MNT = Monitor type: 1 = Open Squelch, 0 = Silent, default=1; DAL = Disable all LEDs (inverted); TPD = Talk permit tone digital; TPA = Talk permit tone analog; PWE = Password and lock enable (inverted); CIT = Ch. free indication tone (inverted); DAT = Disable all tones (inverted); SMR = Save Mode Receive; SPR = Save Preamble; INP = Intro Picture; BcLTime = Backlight time, 0=Always, t=n*5s; Keypad Lock Time = 0xff=manual otherwise
|
virtual |
Abstract method to reset the element within the codeplug.
Any device specific element should implement this method.
Reimplemented from Codeplug::Element.
Reimplemented in UV390Codeplug::GeneralSettingsElement.