libdrmconf
0.12.0
A library to program DMR radios.
|
Represents the general config of the radio within the D868UV binary codeplug. More...
#include <d868uv_codeplug.hh>
Classes | |
struct | KeyFunction |
Device specific key functions. More... | |
struct | Offset |
Some internal used offsets within the element. More... | |
Public Member Functions | |
GeneralSettingsElement (uint8_t *ptr) | |
Constructor. | |
void | clear () |
Resets the general settings. | |
virtual AnytonePowerSaveSettingsExtension::PowerSave | powerSave () const |
Returns the power-save mode. | |
virtual void | setPowerSave (AnytonePowerSaveSettingsExtension::PowerSave mode) |
Sets the power-save mode. | |
virtual unsigned | voxLevel () const |
Returns the VOX level. | |
virtual void | setVOXLevel (unsigned level) |
Sets the VOX level. | |
virtual Interval | voxDelay () const |
Returns the VOX delay in ms. | |
virtual void | setVOXDelay (Interval ms) |
Sets the VOX delay in ms. | |
virtual AnytoneAudioSettingsExtension::VoxSource | voxSource () const |
Returns the VOX source. | |
virtual void | setVOXSource (AnytoneAudioSettingsExtension::VoxSource source) |
Sets the VOX source. | |
unsigned int | dmrMicGain () const |
Returns the mirophone gain. | |
void | setDMRMicGain (unsigned int gain) |
Sets the microphone gain. | |
unsigned | maxSpeakerVolume () const |
Returns the maximum volume. | |
void | setMaxSpeakerVolume (unsigned level) |
Sets the maximum volume. | |
virtual unsigned | maxHeadPhoneVolume () const |
Returns the maximum headphone volume. | |
virtual void | setMaxHeadPhoneVolume (unsigned max) |
Sets the maximum headphone volume. | |
bool | enhanceAudio () const |
Returns true if the audio is "enhanced". | |
void | enableEnhancedAudio (bool enable) |
Enables/disables "enhanced" audio. | |
bool | recording () const |
Returns true if recording is enabled. | |
void | enableRecording (bool enable) |
Enables/disables recording. | |
virtual unsigned | recordingDelay () const |
Returns the recording delay in ms. | |
virtual void | setRecodringDelay (unsigned ms) |
Sets the recording delay in ms. | |
AnytoneSettingsExtension::VFOScanType | vfoScanType () const |
Returns the VFO scan type. | |
void | setVFOScanType (AnytoneSettingsExtension::VFOScanType type) |
Sets the VFO scan type. | |
Frequency | minVFOScanFrequencyUHF () const |
Returns the minimum VFO scan frequency for the UHF band in Hz. | |
void | setMinVFOScanFrequencyUHF (Frequency hz) |
Sets the minimum VFO scan frequency for the UHF band in Hz. | |
Frequency | maxVFOScanFrequencyUHF () const |
Returns the maximum VFO scan frequency for the UHF band in Hz. | |
void | setMaxVFOScanFrequencyUHF (Frequency hz) |
Sets the maximum VFO scan frequency for the UHF band in Hz. | |
Frequency | minVFOScanFrequencyVHF () const |
Returns the minimum VFO scan frequency for the VHF band in Hz. | |
void | setMinVFOScanFrequencyVHF (Frequency hz) |
Sets the minimum VFO scan frequency for the VHF band in Hz. | |
Frequency | maxVFOScanFrequencyVHF () const |
Returns the maximum VFO scan frequency for the VHF band in Hz. | |
void | setMaxVFOScanFrequencyVHF (Frequency hz) |
Sets the maximum VFO scan frequency for the VHF band in Hz. | |
AnytoneKeySettingsExtension::KeyFunction | funcKeyAShort () const |
Returns the key function for a short press on the function key 1/A. | |
void | setFuncKeyAShort (AnytoneKeySettingsExtension::KeyFunction func) |
Sets the key function for a short press on the function key 1/A. | |
AnytoneKeySettingsExtension::KeyFunction | funcKeyBShort () const |
Returns the key function for a short press on the function key 2/B. | |
void | setFuncKeyBShort (AnytoneKeySettingsExtension::KeyFunction func) |
Sets the key function for a short press on the function key 2/B. | |
AnytoneKeySettingsExtension::KeyFunction | funcKeyCShort () const |
Returns the key function for a short press on the function key 3/C. | |
void | setFuncKeyCShort (AnytoneKeySettingsExtension::KeyFunction func) |
Sets the key function for a short press on the function key 3/C. | |
AnytoneKeySettingsExtension::KeyFunction | funcKey1Short () const |
Returns the key function for a short press on the function key 1. | |
void | setFuncKey1Short (AnytoneKeySettingsExtension::KeyFunction func) |
Sets the key function for a short press on the function key 1. | |
AnytoneKeySettingsExtension::KeyFunction | funcKey2Short () const |
Returns the key function for a short press on the function key 2. | |
void | setFuncKey2Short (AnytoneKeySettingsExtension::KeyFunction func) |
Sets the key function for a short press on the function key 2. | |
AnytoneKeySettingsExtension::KeyFunction | funcKeyALong () const |
Returns the key function for a long press on the function key 1. | |
void | setFuncKeyALong (AnytoneKeySettingsExtension::KeyFunction func) |
Sets the key function for a long press on the function key 1. | |
AnytoneKeySettingsExtension::KeyFunction | funcKeyBLong () const |
Returns the key function for a long press on the function key 2. | |
void | setFuncKeyBLong (AnytoneKeySettingsExtension::KeyFunction func) |
Sets the key function for a long press on the function key 2. | |
AnytoneKeySettingsExtension::KeyFunction | funcKeyCLong () const |
Returns the key function for a long press on the function key 3. | |
void | setFuncKeyCLong (AnytoneKeySettingsExtension::KeyFunction func) |
Sets the key function for a long press on the function key 3. | |
AnytoneKeySettingsExtension::KeyFunction | funcKey1Long () const |
Returns the key function for a long press on the function key 1. | |
void | setFuncKey1Long (AnytoneKeySettingsExtension::KeyFunction func) |
Sets the key function for a long press on the function key 1. | |
AnytoneKeySettingsExtension::KeyFunction | funcKey2Long () const |
Returns the key function for a long press on the function key 2. | |
void | setFuncKey2Long (AnytoneKeySettingsExtension::KeyFunction func) |
Sets the key function for a long press on the function key 2. | |
Interval | longPressDuration () const |
Returns the long-press duration in ms. | |
void | setLongPressDuration (Interval ms) |
Sets the long-press duration in ms. | |
bool | vfoModeA () const |
Returns true if the VFO A is in VFO mode. | |
void | enableVFOModeA (bool enable) |
Enables/disables VFO mode for VFO A. | |
bool | vfoModeB () const |
Returns true if the VFO B is in VFO mode. | |
void | enableVFOModeB (bool enable) |
Enables/disables VFO mode for VFO B. | |
unsigned | memoryZoneA () const |
Returns the memory zone for VFO A. | |
void | setMemoryZoneA (unsigned zone) |
Sets the memory zone for VFO A. | |
unsigned | memoryZoneB () const |
Returns the memory zone for VFO B. | |
void | setMemoryZoneB (unsigned zone) |
Sets the memory zone for VFO B. | |
bool | gps () const |
Returns true if GPS is enabled. | |
void | enableGPS (bool enable) |
Enables/disables recording. | |
QTimeZone | gpsTimeZone () const |
Returns the GPS time zone. | |
void | setGPSTimeZone (const QTimeZone &zone) |
Sets the GPS time zone. | |
bool | getGPSPosition () const |
Returns true if get GPS position is enabled. | |
void | enableGetGPSPosition (bool enable) |
Enables/disables get GPS position. | |
bool | gpsUnitsImperial () const |
Returns true if the GPS units are imperial. | |
void | enableGPSUnitsImperial (bool enable) |
Enables/disables imperial GPS units. | |
virtual Interval | gpsUpdatePeriod () const |
Returns the GPS update period in seconds. | |
virtual void | setGPSUpdatePeriod (Interval sec) |
Sets the GPS update period in seconds. | |
bool | keyToneEnabled () const |
Returns true , if the key tone is enabled. | |
void | enableKeyTone (bool enable) |
Enables/disables the key-tone. | |
bool | smsAlert () const |
Returns true if SMS alert is enabled. | |
void | enableSMSAlert (bool enable) |
Enables/disables SMS alert. | |
bool | callAlert () const |
Returns true if call alert is enabled. | |
void | enableCallAlert (bool enable) |
Enables/disables call alert. | |
bool | dmrTalkPermit () const |
Returns true if the talk permit tone is enabled for digital channels. | |
void | enableDMRTalkPermit (bool enable) |
Enables/disables the talk permit tone for digital channels. | |
bool | fmTalkPermit () const |
Returns true if the talk permit tone is enabled for digital channels. | |
void | enableFMTalkPermit (bool enable) |
Enables/disables the talk permit tone for analog channels. | |
bool | dmrResetTone () const |
Returns true if the reset tone is enabled for digital calls. | |
void | enableDMRResetTone (bool enable) |
Enables/disables the reset tone for digital calls. | |
bool | idleChannelTone () const |
Returns true if the idle channel tone is enabled. | |
void | enableIdleChannelTone (bool enable) |
Enables/disables the idle channel tone. | |
bool | startupTone () const |
Returns true if the startup tone is enabled. | |
void | enableStartupTone (bool enable) |
Enables/disables the startup tone. | |
void | callToneMelody (Melody &melody) const |
Returns the call-tone melody. | |
void | setCallToneMelody (const Melody &melody) |
Sets the call-tone melody. | |
void | idleToneMelody (Melody &melody) const |
Returns the idle-tone melody. | |
void | setIdleToneMelody (const Melody &melody) |
Sets the idle-tone melody. | |
void | resetToneMelody (Melody &melody) const |
Returns the reset-tone melody. | |
void | setResetToneMelody (const Melody &melody) |
Sets the reset-tone melody. | |
bool | activeChannelB () const |
Returns true if the active channel is VFO B. | |
void | enableActiveChannelB (bool enable) |
Enables/disables VFO B as the active channel. | |
bool | subChannel () const |
Returns true if sub channel is enabled. | |
void | enableSubChannel (bool enable) |
Enables/disables sub channel. | |
Interval | menuExitTime () const |
Returns the menu exit time in seconds. | |
void | setMenuExitTime (Interval intv) |
Sets the menu exit time in seconds. | |
bool | callEndPrompt () const |
Returns true if the call-end prompt is enabled. | |
void | enableCallEndPrompt (bool enable) |
Enables/disables the call-end prompt. | |
bool | volumeChangePrompt () const |
Returns true if the volume change prompt is enabled. | |
void | enableVolumeChangePrompt (bool enable) |
Enables/disables the volume change prompt. | |
AnytoneDisplaySettingsExtension::LastCallerDisplayMode | lastCallerDisplayMode () const |
Returns the last-caller display mode. | |
void | setLastCallerDisplayMode (AnytoneDisplaySettingsExtension::LastCallerDisplayMode mode) |
Sets the last-caller display mode. | |
bool | displayClock () const |
Returns true if the clock is shown. | |
void | enableDisplayClock (bool enable) |
Enables/disables clock display. | |
bool | displayCall () const |
Returns true if the call is displayed instead of the name. | |
void | enableDisplayCall (bool enable) |
Enables/disables call display. | |
AnytoneDisplaySettingsExtension::Color | callDisplayColor () const |
Returns the display color for callsigns. | |
void | setCallDisplayColor (AnytoneDisplaySettingsExtension::Color color) |
Sets the display color for callsigns. | |
bool | showLastHeard () const |
Returns true if the last heard is shown while pressing PTT. | |
void | enableShowLastHeard (bool enable) |
Enables/disables showing last heard. | |
unsigned | brightness () const |
Returns the display brightness. | |
void | setBrightness (unsigned level) |
Sets the display brightness. | |
virtual bool | backlightPermanent () const |
Returns true if the backlight is always on. | |
virtual Interval | rxBacklightDuration () const |
Returns the backlight duration in seconds. | |
virtual void | setRXBacklightDuration (Interval sec) |
Sets the backlight duration in seconds. | |
virtual void | enableBacklightPermanent () |
Sets the backlight to permanent (always on). | |
AnytoneAutoRepeaterSettingsExtension::Direction | autoRepeaterDirectionA () const |
Returns the auto repeater offset direction for VFO A. | |
void | setAutoRepeaterDirectionA (AnytoneAutoRepeaterSettingsExtension::Direction dir) |
Sets the auto-repeater offset direction for VFO A. | |
AnytoneAutoRepeaterSettingsExtension::Direction | autoRepeaterDirectionB () const |
Returns the auto-repeater direction for VFO B. | |
void | setAutoRepeaterDirectionB (AnytoneAutoRepeaterSettingsExtension::Direction dir) |
Sets the auto-repeater direction for VFO B. | |
bool | hasAutoRepeaterOffsetFrequencyIndexUHF () const |
Returns true if the auto-repeater offset frequency for UHF is set. | |
unsigned | autoRepeaterOffsetFrequencyIndexUHF () const |
Returns the auto-repeater offset frequency index for UHF. | |
void | setAutoRepeaterOffsetFrequenyIndexUHF (unsigned idx) |
Sets the auto-repeater offset frequency index for UHF. | |
void | clearAutoRepeaterOffsetFrequencyIndexUHF () |
Clears the auto-repeater offset frequency index for UHF. | |
bool | hasAutoRepeaterOffsetFrequencyIndexVHF () const |
Returns true if the auto-repeater offset frequency for VHF is set. | |
unsigned | autoRepeaterOffsetFrequencyIndexVHF () const |
Returns the auto-repeater offset frequency index for UHF. | |
void | setAutoRepeaterOffsetFrequenyIndexVHF (unsigned idx) |
Sets the auto-repeater offset frequency index for VHF. | |
void | clearAutoRepeaterOffsetFrequencyIndexVHF () |
Clears the auto-repeater offset frequency index for VHF. | |
Frequency | autoRepeaterMinFrequencyVHF () const |
Returns the minimum frequency in Hz for the auto-repeater range in VHF band. | |
void | setAutoRepeaterMinFrequencyVHF (Frequency Hz) |
Sets the minimum frequency in Hz for the auto-repeater range in VHF band. | |
Frequency | autoRepeaterMaxFrequencyVHF () const |
Returns the maximum frequency in Hz for the auto-repeater range in VHF band. | |
void | setAutoRepeaterMaxFrequencyVHF (Frequency Hz) |
Sets the maximum frequency in Hz for the auto-repeater range in VHF band. | |
Frequency | autoRepeaterMinFrequencyUHF () const |
Returns the minimum frequency in Hz for the auto-repeater range in UHF band. | |
void | setAutoRepeaterMinFrequencyUHF (Frequency Hz) |
Sets the minimum frequency in Hz for the auto-repeater range in UHF band. | |
Frequency | autoRepeaterMaxFrequencyUHF () const |
Returns the maximum frequency in Hz for the auto-repeater range in UHF band. | |
void | setAutoRepeaterMaxFrequencyUHF (Frequency Hz) |
Sets the maximum frequency in Hz for the auto-repeater range in UHF band. | |
bool | showCurrentContact () const |
Returns true if the current contact is shown. | |
void | enableShowCurrentContact (bool enable) |
Enables/disables display of current contact. | |
virtual bool | keyToneLevelAdjustable () const |
Returns true if the key-tone level is adjustable. | |
virtual unsigned | keyToneLevel () const |
Returns the key-tone level (0=adjustable). | |
virtual void | setKeyToneLevel (unsigned level) |
Sets the key-tone level. | |
virtual void | setKeyToneLevelAdjustable () |
Sets the key-tone level adjustable. | |
bool | knobLock () const |
Returns true if the knob is locked. | |
void | enableKnobLock (bool enable) |
Enables/disables the knob lock. | |
bool | keypadLock () const |
Returns true if the keypad is locked. | |
void | enableKeypadLock (bool enable) |
Enables/disables the keypad lock. | |
bool | sidekeysLock () const |
Returns true if the sidekeys are locked. | |
void | enableSidekeysLock (bool enable) |
Enables/disables the sidekeys lock. | |
bool | keyLockForced () const |
Returns true if the "professional" key is locked. | |
void | enableKeyLockForced (bool enable) |
Enables/disables the "professional" key lock. | |
bool | defaultChannel () const |
Returns true if the default boot channel is enabled. | |
void | enableDefaultChannel (bool enable) |
Enables/disables default boot channel. | |
unsigned | defaultZoneIndexA () const |
Returns the default zone index (0-based) for VFO A. | |
void | setDefaultZoneIndexA (unsigned idx) |
Sets the default zone (0-based) for VFO A. | |
unsigned | defaultZoneIndexB () const |
Returns the default zone index (0-based) for VFO B. | |
void | setDefaultZoneIndexB (unsigned idx) |
Sets the default zone (0-based) for VFO B. | |
bool | defaultChannelAIsVFO () const |
Returns true if the default channel for VFO A is VFO. | |
unsigned | defaultChannelAIndex () const |
Returns the default channel index for VFO A. More... | |
void | setDefaultChannelAIndex (unsigned idx) |
Sets the default channel index for VFO A. | |
void | setDefaultChannelAToVFO () |
Sets the default channel for VFO A to be VFO. | |
bool | defaultChannelBIsVFO () const |
Returns true if the default channel for VFO B is VFO. | |
unsigned | defaultChannelBIndex () const |
Returns the default channel index for VFO B. More... | |
void | setDefaultChannelBIndex (unsigned idx) |
Sets the default channel index for VFO B. | |
void | setDefaultChannelBToVFO () |
Sets the default channel for VFO B to be VFO. | |
bool | keepLastCaller () const |
Returns true if the last caller is kept when changing channel. | |
void | enableKeepLastCaller (bool enable) |
Enables/disables keeping the last caller when changing the channel. | |
bool | fromConfig (const Flags &flags, Context &ctx) |
Encodes the general settings. | |
bool | updateConfig (Context &ctx) |
Updates the abstract config from general settings. | |
bool | linkSettings (RadioSettings *settings, Context &ctx, const ErrorStack &err=ErrorStack()) |
Links the general settings. | |
Public Member Functions inherited from AnytoneCodeplug::GeneralSettingsElement | |
virtual bool | displayFrequency () const |
Returns true if the radio displays frequecies instead of channels is enabled. | |
virtual void | enableDisplayFrequency (bool enable) |
Enables/disables the frequency display. | |
virtual bool | autoKeyLock () const |
Returns true if auto key-lock is enabled. | |
virtual void | enableAutoKeyLock (bool enable) |
Enables/disables auto key-lock. | |
virtual Interval | autoShutdownDelay () const |
Returns the auto-shutdown delay in minutes. | |
virtual void | setAutoShutdownDelay (Interval min) |
Sets the auto-shutdown delay in minutes. | |
virtual AnytoneBootSettingsExtension::BootDisplay | bootDisplay () const |
Returns the boot display mode. | |
virtual void | setBootDisplay (AnytoneBootSettingsExtension::BootDisplay mode) |
Sets the boot display mode. | |
virtual bool | bootPassword () const |
Returns true if boot password is enabled. | |
virtual void | enableBootPassword (bool enable) |
Enables/disables boot password. | |
virtual unsigned | squelchLevelA () const |
Squelch level of VFO A, (0=off). | |
virtual void | setSquelchLevelA (unsigned level) |
Returns the squelch level for VFO A, (0=off). | |
virtual unsigned | squelchLevelB () const |
Squelch level of VFO B, (0=off). | |
virtual void | setSquelchLevelB (unsigned level) |
Returns the squelch level for VFO B, (0=off). | |
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... | |
Static Public Member Functions | |
static constexpr unsigned int | size () |
Returns the size of the element. | |
Protected Member Functions | |
GeneralSettingsElement (uint8_t *ptr, unsigned size) | |
Hidden constructor. | |
Protected Member Functions inherited from AnytoneCodeplug::GeneralSettingsElement | |
GeneralSettingsElement (uint8_t *ptr, unsigned size) | |
Hidden constructor. | |
Protected Member Functions inherited from Codeplug::Element | |
Element (uint8_t *ptr, size_t size) | |
Hidden constructor. More... | |
Additional Inherited Members | |
Public Types inherited from AnytoneCodeplug::GeneralSettingsElement | |
enum class | AutoShutdown { Off = 0 , After10min = 1 , After30min = 2 , After60min = 3 , After120min = 4 } |
Possible automatic shutdown delays. | |
Protected Attributes inherited from Codeplug::Element | |
uint8_t * | _data |
Holds the pointer to the element. | |
size_t | _size |
Holds the size of the element. | |
Represents the general config of the radio within the D868UV binary codeplug.
This class only implements the differences to the generic AnytoneCodeplug::GeneralSettingsElement
.
Memory layout of encoded general settings (size 0x00d0 bytes):
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 | Enable key tone | Display mode | Enable automatic key lock | Automatic shutdown time | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 04 | Unknown | Unknown | Boot display | Enable boot password | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 08 | Unknown | Squelch level VFO A | Squelch level VFO B | Power save mode | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 0c | VOX sensitivity | VOX delay in 100+500*n ms | VFO scan type | MIC gain | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 10 | PF1 short press function | PF2 short press function | PF3 short press function | P1 short press function | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 14 | P2 short press function | Work mode A | Work mode B | Unknown ... +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 18 ... ... +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 1c ... | Work mode MEM zone A | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 20 | Work mode MEM zone B | Unknown | Enable recording | Unknown ... +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 24 ... | Display brightness | Backlight duration | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 28 | Enable GPS | Enable SMS alert | Unknown | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 2c | Work mode main channel set | Enable sub channel | Unknown | Enable call alert | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 30 | GPS Time zone | Talk permit tone | Digital call reset tone | VOX source | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 34 | Unknown | Idle channel tone | Menu exit time | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 38 | Unknown | Startup tone | Enable call end prompt | Max volume | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 3c | Unknown | GPS RX positions | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 40 | Unknown | PF1 long press function | PF2 long press function | PF3 long press function | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 44 | P1 long press function | P2 long press function | Long press duration | Enable Volume change prompt | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 48 | Auto repeater A direction | Unknown ... +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 4c ... | Display later caller | Unknown | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 50 | Unknown | Display clock | Max head phone volume | Unknown ... +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 54 | | Enable enhanced audio | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 58 | VFO Scan UHF minimum frequency in 10Hz, 32bit uint, little endian | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 5c | VFO Scan UHF maximum frequency in 10Hz, 32bit uint, little endian | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 60 | VFO Scan VHF minimum frequency in 10Hz, 32bit uint, little endian | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 64 | VFO Scan VHF maximum frequency in 10Hz, 32bit uint, little endian | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 68 | Auto rep. offset index UHF | Auto rep. offset index VHF | Unknown ... +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 6c ... ... +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 70 ... | Call tone frequency 1 in Hz, little endian | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 74 | Call tone frequency 2 in Hz, little endian | Call tone frequency 3 in Hz, little endian | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 78 | Call tone frequency 4 in Hz, little endian | Call tone frequency 5 in Hz, little endian | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 7c | Call tone duration 1 in ms, little endian | Call tone duration 2 in ms, little endian | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 80 | Call tone duration 3 in ms, little endian | Call tone duration 4 in ms, little endian | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 84 | Call tone duration 5 in ms, little endian | Idle tone frequency 1 in Hz, little endian | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 88 | Idle tone frequency 2 in Hz, little endian | Idle tone frequency 3 in Hz, little endian | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 8c | Idle tone frequency 4 in Hz, little endian | Idle tone frequency 5 in Hz, little endian | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 90 | Idle tone duration 1 in ms, little endian | Idle tone duration 2 in ms, little endian | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 94 | Idle tone duration 3 in ms, little endian | Idle tone duration 4 in ms, little endian | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 98 | Idle tone duration 5 in ms, little endian | Reset tone frequency 1 in Hz, little endian | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 9c | Reset tone frequency 2 in Hz, little endian | Reset tone frequency 3 in Hz, little endian | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ a0 | Reset tone frequency 4 in Hz, little endian | Reset tone frequency 5 in Hz, little endian | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ a4 | Reset tone duration 1 in ms, little endian | Reset tone duration 2 in ms, little endian | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ a8 | Reset tone duration 3 in ms, little endian | Reset tone duration 4 in ms, little endian | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ ac | Reset tone duration 5 in ms, little endian | Record delay in 200ms | Call display mode | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ b0 | Call display color | GPS update period | Show zone talkgroup | Key tone level | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ b4 | GPS units | 0 | 0 | 0 |EPK|ESK| 0 |EKB|ENK| Show last heard | Unknown | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ b8 | Auto repeater VHF minimum frequency in 10Hz, little endian | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ bc | Auto repeater VHF maximum frequency in 10Hz, little endian | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ c0 | Auto repeater UHF minimum frequency in 10Hz, little endian | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ c4 | Auto repeater UHF maximum frequency in 10Hz, little endian | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ c8 | Auto rep. direction | Unknown | Enable default channel | Default zone VFO A | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ cc | Default zone VFO B | Default channel A | Default channel B | Keep last caller | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ Field description: - EKN: Enable knob lock. - EKB: Enable keyboard lock. - ESK: Enable side key lock. - EPK: Enable "professional key" lock.
|
virtual |
Returns the default channel index for VFO A.
Must be within default zone. If 0xff, default channel is VFO.
Implements AnytoneCodeplug::GeneralSettingsElement.
Reimplemented in DMR6X2UVCodeplug::GeneralSettingsElement, and D878UVCodeplug::GeneralSettingsElement.
|
virtual |
Returns the default channel index for VFO B.
Must be within default zone. If 0xff, default channel is VFO.
Implements AnytoneCodeplug::GeneralSettingsElement.
Reimplemented in DMR6X2UVCodeplug::GeneralSettingsElement, and D878UVCodeplug::GeneralSettingsElement.