libdrmconf 0.12.1
A library to program DMR radios.
|
Base visitor class for the config tree. More...
#include <visitor.hh>
Public Member Functions | |
virtual | ~Visitor () |
Destructor. | |
virtual bool | process (Config *config, const ErrorStack &err=ErrorStack()) |
Traverses the properties of the configuration recursively. | |
virtual bool | processProperty (ConfigItem *item, const QMetaProperty &prop, const ErrorStack &err=ErrorStack()) |
Processes the specified property of the item. | |
virtual bool | processEnum (ConfigItem *item, const QMetaProperty &prop, const ErrorStack &err=ErrorStack()) |
Handles an enum typed property. | |
virtual bool | processBool (ConfigItem *item, const QMetaProperty &prop, const ErrorStack &err=ErrorStack()) |
Handles a boolean typed property. | |
virtual bool | processInt (ConfigItem *item, const QMetaProperty &prop, const ErrorStack &err=ErrorStack()) |
Handles an integer typed property. | |
virtual bool | processUInt (ConfigItem *item, const QMetaProperty &prop, const ErrorStack &err=ErrorStack()) |
Handles an unsigned integer typed property. | |
virtual bool | processDouble (ConfigItem *item, const QMetaProperty &prop, const ErrorStack &err=ErrorStack()) |
Handles a double precision float typed property. | |
virtual bool | processString (ConfigItem *item, const QMetaProperty &prop, const ErrorStack &err=ErrorStack()) |
Handles a string typed property. | |
virtual bool | processFrequency (ConfigItem *item, const QMetaProperty &prop, const ErrorStack &err=ErrorStack()) |
Handles a Frequency typed property. | |
virtual bool | processInterval (ConfigItem *item, const QMetaProperty &prop, const ErrorStack &err=ErrorStack()) |
Handles a Interval typed property. | |
virtual bool | processSelectiveCall (ConfigItem *item, const QMetaProperty &prop, const ErrorStack &err=ErrorStack()) |
Handles a SelectiveCall typed property. | |
virtual bool | processUnknownType (ConfigItem *item, const QMetaProperty &prop, const ErrorStack &err=ErrorStack()) |
Handles a property of unknown type. | |
virtual bool | processItem (ConfigItem *item, const ErrorStack &err=ErrorStack()) |
Traverses the specified config item. | |
virtual bool | processList (AbstractConfigObjectList *list, const ErrorStack &err=ErrorStack()) |
Traverses the list of objects or references. | |
virtual bool | processReference (ConfigObjectReference *, const ErrorStack &err=ErrorStack()) |
Handles references to config objects. | |
Protected Member Functions | |
Visitor () | |
Hidden constructor. | |
Base visitor class for the config tree.
This class can be used to implement a convenient tree taversal for the entry configuration.
|
virtual |
Traverses the properties of the configuration recursively.
true
on success. Error information can be found in the error stack, if passed.
|
virtual |
Handles a boolean typed property.
item | Specifies the config item holding this property. |
prop | Specifies the property. |
err | Specifies the error stack to pass on. |
|
virtual |
Handles a double precision float typed property.
item | Specifies the config item holding this property. |
prop | Specifies the property. |
err | Specifies the error stack to pass on. |
|
virtual |
Handles an enum typed property.
item | Specifies the config item holding this property. |
prop | Specifies the property. |
err | Specifies the error stack to pass on. |
|
virtual |
Handles a Frequency
typed property.
item | Specifies the config item holding this property. |
prop | Specifies the property. |
err | Specifies the error stack to pass on. |
|
virtual |
Handles an integer typed property.
item | Specifies the config item holding this property. |
prop | Specifies the property. |
err | Specifies the error stack to pass on. |
|
virtual |
Handles a Interval
typed property.
item | Specifies the config item holding this property. |
prop | Specifies the property. |
err | Specifies the error stack to pass on. |
|
virtual |
Traverses the specified config item.
This method calls processProperty
on all properties of the item.
Reimplemented in ConfigCloneVisitor, ConfigLabelingVisitor, ConfigMergeVisitor, ZoneMergeVisitor, and ZoneSplitVisitor.
|
virtual |
Traverses the list of objects or references.
If list
is a list of ConfigItem
, the visitor will traverse those by calling processItem
on every of these element. If it is a list of ConfigObjectRef
references, the visitor stop here and simply return true
. By default, the visitor does not follow references.
Reimplemented in ConfigCloneVisitor, FixReferencesVisistor, ObjectFilterVisitor, and ZoneMergeVisitor.
|
virtual |
Processes the specified property of the item.
This method dispatches to the type-specific methods like processEnum
, processBool
, processInt
, processUInt
, processDouble
, processString
, processItem
, processReference
, processList
, and processUnknownType
, depending on the type of the property. Do not override this method unless you need to handle all properties differently.
Reimplemented in ConfigCloneVisitor, FixReferencesVisistor, and ObjectFilterVisitor.
|
virtual |
Handles references to config objects.
By default, the method will simply return true
. The visitor does not follow references.
|
virtual |
Handles a SelectiveCall
typed property.
item | Specifies the config item holding this property. |
prop | Specifies the property. |
err | Specifies the error stack to pass on. |
|
virtual |
Handles a string typed property.
item | Specifies the config item holding this property. |
prop | Specifies the property. |
err | Specifies the error stack to pass on. |
|
virtual |
Handles an unsigned integer typed property.
item | Specifies the config item holding this property. |
prop | Specifies the property. |
err | Specifies the error stack to pass on. |
|
virtual |
Handles a property of unknown type.
Returns always false
.
item | Specifies the config item holding this property. |
prop | Specifies the property. |
err | Specifies the error stack to pass on. |