libdrmconf 0.12.3
A library to program DMR radios.
Loading...
Searching...
No Matches
RoamingZone Class Reference

Represents a RoamingZone within the abstract device configuration. More...

#include <roamingzone.hh>

Inheritance diagram for RoamingZone:
Collaboration diagram for RoamingZone:

Public Member Functions

Q_INVOKABLE RoamingZone (QObject *parent=nullptr)
 Default constructor.
 
 RoamingZone (const QString &name, QObject *parent=nullptr)
 Constructor.
 
RoamingZone & operator= (const RoamingZone &other)
 Copies the given zone.
 
ConfigItem * clone () const
 Clones this item.
 
int count () const
 Returns the number of zones.
 
void clear ()
 Clears the zone list.
 
bool contains (const RoamingChannel *ch) const
 Returns true, if the given roaming channel is member of this zone.
 
RoamingChannel * channel (int idx) const
 Returns the roaming channel, which is the member at index idx (0-based).
 
int addChannel (RoamingChannel *ch, int row=-1)
 Adds a channel to the roaming zone.
 
bool remChannel (int row)
 Removes the channel from the roaming zone at index row.
 
bool remChannel (RoamingChannel *ch)
 Removes the given channel from the roaming zone.
 
const RoamingChannelRefList * channels () const
 Returns the list of digital channels in this roaming zone.
 
RoamingChannelRefList * channels ()
 Returns the list of digital channels in this roaming zone.
 
bool link (const YAML::Node &node, const Context &ctx, const ErrorStack &err)
 Links the channel reference list.
 
bool populate (YAML::Node &node, const Context &context, const ErrorStack &err)
 Serializes the channel reference list.
 
- Public Member Functions inherited from ConfigObject
virtual const QString & name () const
 Returns the name of the object.
 
virtual void setName (const QString &name)
 Sets the name of the object.
 
QString idPrefix () const
 Returns the ID prefix for this object.
 
bool label (Context &context, const ErrorStack &err=ErrorStack())
 Recursively labels the config object.
 
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).
 
- Public Member Functions inherited from ConfigItem
virtual bool copy (const ConfigItem &other)
 Copies the given item into this one.
 
virtual int compare (const ConfigItem &other) const
 Compares the items.
 
virtual YAML::Node serialize (const Context &context, const ErrorStack &err=ErrorStack())
 Recursively serializes the configuration to YAML nodes.
 
virtual ConfigItem * allocateChild (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.
 
virtual const Config * config () 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

RoamingChannelRefList _channel
 Holds the actual channels of the roaming zone.
 
- Protected Attributes inherited from ConfigObject
QString _name
 Holds the name of the object.
 

Properties

RoamingChannelRefList * channels
 The channels in the roaming zone.
 
- Properties inherited from ConfigObject
QString name
 The name of the object.
 

Additional Inherited Members

- Signals inherited from ConfigItem
void modified (ConfigItem *obj)
 Gets emitted once the config object is modified.
 
void beginClear ()
 Gets emitted before clearing the item.
 
void endClear ()
 Gets emitted after clearing the item.
 
- Protected Member Functions inherited from ConfigObject
 ConfigObject (QObject *parent=nullptr)
 Specifies the prefix for every ID assigned to every object during serialization.
 
 ConfigObject (const QString &name, QObject *parent=nullptr)
 Hidden constructor.
 
- Protected Member Functions inherited from ConfigItem
 ConfigItem (QObject *parent=nullptr)
 Hidden constructor.
 
- Static Protected Member Functions inherited from ConfigObject
static QString findIdPrefix (const QMetaObject *meta)
 Helper to find the IdPrefix class info in the class hierarchy.
 

Detailed Description

Represents a RoamingZone within the abstract device configuration.

A roaming zone collects a set of repeaters that act as alternatives to each other. When a selected repeater gets out of range, another one might be found automatically from within the roaming zone.

Constructor & Destructor Documentation

◆ RoamingZone()

RoamingZone::RoamingZone ( const QString & name,
QObject * parent = nullptr )

Constructor.

Parameters
nameSpecifies the name of the roaming zone.
parentSpecifies the QObject parent of this zone.

Member Function Documentation

◆ addChannel()

int RoamingZone::addChannel ( RoamingChannel * ch,
int row = -1 )

Adds a channel to the roaming zone.

Parameters
chSpecifies the channel to add.
rowSpeicifies the index where to insert the channel (optional, default insert at end).

◆ channel()

RoamingChannel * RoamingZone::channel ( int idx) const

Returns the roaming channel, which is the member at index idx (0-based).

Parameters
idxSpecifies the index of the member channel.

◆ clear()

void RoamingZone::clear ( )
virtual

Clears the zone list.

Reimplemented from ConfigItem.

◆ clone()

ConfigItem * RoamingZone::clone ( ) const
virtual

Clones this item.

Implements ConfigItem.

◆ link()

bool RoamingZone::link ( const YAML::Node & node,
const Context & ctx,
const ErrorStack & err )
virtual

Links the channel reference list.

Todo
Implemented for backward compatibility with version 0.10.0, remove for 1.0.0.

Reimplemented from ConfigItem.

◆ populate()

bool RoamingZone::populate ( YAML::Node & node,
const Context & context,
const ErrorStack & err )
virtual

Serializes the channel reference list.

Todo
Implemented for backward compatibility with version 0.10.0, remove for 1.0.0.

Reimplemented from ConfigObject.

Property Documentation

◆ channels

RoamingChannelRefList * RoamingZone::channels
read

The channels in the roaming zone.

Todo
This property is marked non-scriptable to handle references to DMR channels before version 0.11.0. Remove in future.

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