libdrmconf  0.11.3
A library to program DMR radios.
configlabelingvisitor.hh
1 #ifndef CONFIGLABELINGVISITOR_HH
2 #define CONFIGLABELINGVISITOR_HH
3 
4 #include "visitor.hh"
5 #include "configobject.hh"
6 
11 {
12 protected:
15 
16 public:
18  static bool label(Config *config, ConfigItem::Context &context);
19 
20 protected:
21  bool processItem(ConfigItem *item, const ErrorStack &err=ErrorStack());
22 
23 protected:
27 };
28 
29 #endif // CONFIGLABELINGVISITOR_HH
Parse context for config objects.
Definition: configobject.hh:48
Base class for all configuration objects (channels, zones, contacts, etc).
Definition: configobject.hh:40
A visitor to label the entire configuration.
Definition: configlabelingvisitor.hh:11
ConfigItem::Context & _context
Holds a weak reference to the parser/serializer context.
Definition: configlabelingvisitor.hh:26
static bool label(Config *config, ConfigItem::Context &context)
Labels the configuration and stores the labels in the given context.
bool processItem(ConfigItem *item, const ErrorStack &err=ErrorStack())
Traverses the specified config item.
Definition: configlabelingvisitor.cc:10
ConfigLabelingVisitor(ConfigItem::Context &context)
Hidden constructor.
Definition: configlabelingvisitor.cc:3
The config class, representing the codeplug configuration.
Definition: config.hh:69
Implements a stack of error messages to provide a pretty formatted error traceback.
Definition: errorstack.hh:41
Base visitor class for the config tree.
Definition: visitor.hh:20