libdrmconf  0.11.3
A library to program DMR radios.
Public Types | Public Member Functions | Protected Attributes | Properties | List of all members
AnytoneFMChannelExtension Class Reference

Implements the settings extension for FM channels on AnyTone devices. More...

#include <anytone_extension.hh>

Inheritance diagram for AnytoneFMChannelExtension:
Inheritance graph
[legend]
Collaboration diagram for AnytoneFMChannelExtension:
Collaboration graph
[legend]

Public Types

enum class  SquelchMode {
  Carrier = 0 , SubTone = 1 , OptSig = 2 , SubToneAndOptSig = 3 ,
  SubToneOrOptSig = 4
}
 Possible squelch mode settings.
 

Public Member Functions

Q_INVOKABLE AnytoneFMChannelExtension (QObject *parent=nullptr)
 Default constructor.
 
ConfigItemclone () const
 Clones this item.
 
bool reverseBurst () const
 Returns true, if the CTCSS phase-reverse burst is enabled.
 
void enableReverseBurst (bool enable)
 Enables/disables the CTCSS phase-reverse burst.
 
bool rxCustomCTCSS () const
 Returns true, if the custom CTCSS frequency is used for RX (open squelch).
 
void enableRXCustomCTCSS (bool enable)
 Enables/disables usage of custom CTCSS frequency for RX.
 
bool txCustomCTCSS () const
 Returns true, if the custom CTCSS frequency is used for TX (open squelch).
 
void enableTXCustomCTCSS (bool enable)
 Enables/disables usage of custom CTCSS frequency for TX.
 
double customCTCSS () const
 Returns the custom CTCSS frequency in Hz. More...
 
void setCustomCTCSS (double freq)
 Sets the custom CTCSS frequency in Hz. More...
 
SquelchMode squelchMode () const
 Returns the squelch mode.
 
void setSquelchMode (SquelchMode mode)
 Sets the squelch mode.
 
bool scrambler () const
 Reuturns true, if the analog scrambler is enabled.
 
void enableScrambler (bool enable)
 Enables/disables the analog scrambler.
 
- Public Member Functions inherited from AnytoneChannelExtension
bool talkaround () const
 Returns true, if talkaround is enabled.
 
void enableTalkaround (bool enable)
 Enables/disables talkaround.
 
int frequencyCorrection () const
 Returns the frequency correction in some unknown units.
 
void setFrequencyCorrection (int corr)
 Sets the frequency correction.
 
bool handsFree () const
 Returns true if the hands-free feature is enabled.
 
void enableHandsFree (bool enable)
 Enables/disables the hands-free feature for this channel.
 
AnytoneAPRSFrequencyReffmAPRSFrequency () const
 Holds a reference to the FM APRS frequency to be used if FM APRS is enabled on the channel.
 
- Public Member Functions inherited from ConfigItem
virtual bool copy (const ConfigItem &other)
 Copies the given item into this one. More...
 
virtual int compare (const ConfigItem &other) const
 Compares the items. More...
 
virtual bool label (Context &context, const ErrorStack &err=ErrorStack())
 Recursively labels the config object. More...
 
virtual YAML::Node serialize (const Context &context, const ErrorStack &err=ErrorStack())
 Recursively serializes the configuration to YAML nodes. More...
 
virtual ConfigItemallocateChild (QMetaProperty &prop, const YAML::Node &node, const Context &ctx, const ErrorStack &err=ErrorStack())
 Allocates an instance for the given property on the given YAML node. More...
 
virtual bool parse (const YAML::Node &node, Context &ctx, const ErrorStack &err=ErrorStack())
 Parses the given YAML node, updates the given object and updates the given context (IDs). More...
 
virtual bool link (const YAML::Node &node, const Context &ctx, const ErrorStack &err=ErrorStack())
 Links the given object to the rest of the codeplug using the given context.
 
virtual void clear ()
 Clears the config object.
 
virtual const Configconfig () const
 Returns the config, the item belongs to or nullptr if not part of a config.
 
virtual void findItemsOfTypes (const QStringList &typeNames, QSet< ConfigItem * > &items) const
 Searches the config tree to find all instances of the given type names.
 
template<class Object >
bool is () const
 Returns true if this object is of class Object.
 
template<class Object >
const Object * as () const
 Casts this object to the given type.
 
template<class Object >
Object * as ()
 Casts this object to the given type.
 
bool hasDescription () const
 Returns true if there is a class info "description" for this instance.
 
bool hasLongDescription () const
 Returns true if there is a class info "longDescription" for this instance.
 
bool hasDescription (const QMetaProperty &prop) const
 Returns true if there is a class info "[PropertyName]Description" for the given property.
 
bool hasLongDescription (const QMetaProperty &prop) const
 Returns true if there is a class info "[PropertyName]LongDescription" for the given property.
 
QString description () const
 Returns the description of this instance if set by a class info.
 
QString longDescription () const
 Returns the long description of this instance if set by a class info.
 
QString description (const QMetaProperty &prop) const
 Returns the description of property if set by a class info.
 
QString longDescription (const QMetaProperty &prop) const
 Returns the long description of property if set by a class info.
 

Protected Attributes

bool _reverseBurst
 If true, the CTCSS phase-reverse burst at the end of transmission is enabled.
 
bool _rxCustomCTCSS
 If true, the custom CTCSS tone is used for RX (open squelch).
 
bool _txCustomCTCSS
 If true, the custom CTCSS tone is transmitted.
 
double _customCTCSS
 Holds the custom CTCSS tone frequency in Hz. More...
 
SquelchMode _squelchMode
 Holds the squelch mode.
 
bool _scrambler
 If true, the analog scrambler is enabled for this channel.
 
- Protected Attributes inherited from AnytoneChannelExtension
bool _talkaround
 If true, talkaround is enabled.
 
int _frequencyCorrection
 The frequency correction.
 
bool _handsFree
 If true, the hands-free featrue is enabled for this channel.
 
AnytoneAPRSFrequencyRef_fmAPRSFrequency
 A reference to the FM APRS frequency.
 

Properties

bool reverseBurst
 If true, the CTCSS phase-reverse burst at the end of transmission is enabled.
 
bool rxCustomCTCSS
 If true, the custom CTCSS tone is used for RX (open squelch).
 
bool txCustomCTCSS
 If true, the custom CTCSS tone is transmitted.
 
double customCTCSS
 Holds the custom CTCSS tone frequency in Hz. More...
 
SquelchMode squelchMode
 Holds the squelch mode.
 
bool scrambler
 If true, the analog scrabler is enabled.
 
- Properties inherited from AnytoneChannelExtension
bool talkaround
 If true, talkaround is enabled.
 
int frequencyCorrection
 Holds the frequency correction in some unknown units.
 
bool handsFree
 If true, the hands-free featrue is enabled for this channel.
 
AnytoneAPRSFrequencyReffmAPRSFrequency
 A reference to the FM APRS frequency. More...
 

Additional Inherited Members

- Signals inherited from ConfigItem
void modified (ConfigItem *obj)
 Gets emitted once the config object is modified. More...
 
void beginClear ()
 Gets emitted before clearing the item.
 
void endClear ()
 Gets emitted after clearing the item.
 
- Protected Member Functions inherited from AnytoneChannelExtension
 AnytoneChannelExtension (QObject *parent=nullptr)
 Hidden constructor.
 
- Protected Member Functions inherited from ConfigExtension
 ConfigExtension (QObject *parent=nullptr)
 Hidden constructor.
 
- Protected Member Functions inherited from ConfigItem
 ConfigItem (QObject *parent=nullptr)
 Hidden constructor. More...
 
virtual bool populate (YAML::Node &node, const Context &context, const ErrorStack &err=ErrorStack())
 Recursively serializes the configuration to YAML nodes. More...
 

Detailed Description

Implements the settings extension for FM channels on AnyTone devices.

Member Function Documentation

◆ customCTCSS()

double AnytoneFMChannelExtension::customCTCSS ( ) const

Returns the custom CTCSS frequency in Hz.

Resolution is 0.1Hz.

◆ setCustomCTCSS()

void AnytoneFMChannelExtension::setCustomCTCSS ( double  freq)

Sets the custom CTCSS frequency in Hz.

Resolution is 0.1Hz.

Member Data Documentation

◆ _customCTCSS

double AnytoneFMChannelExtension::_customCTCSS
protected

Holds the custom CTCSS tone frequency in Hz.

Resolution is 0.1Hz

Property Documentation

◆ customCTCSS

double AnytoneFMChannelExtension::customCTCSS
readwrite

Holds the custom CTCSS tone frequency in Hz.

Resolution is 0.1Hz


The documentation for this class was generated from the following files: