Fawkes API
Fawkes Development Version
|
Parser used to get information out of interface template. More...
#include <interfaces/generator/parser.h>
Public Member Functions | |
InterfaceParser (std::string config_filename) | |
Constructor. More... | |
~InterfaceParser () | |
Destructor. More... | |
std::vector< InterfaceField > | getFields (xmlpp::Node *node) |
Get parsed fields. More... | |
std::vector< InterfacePseudoMap > | getPseudoMaps (xmlpp::Node *node, std::vector< InterfaceField > &fields) |
Get parsed pseudo maps. More... | |
void | parse () |
Parse config. More... | |
void | printFields (std::vector< InterfaceField > &fields) |
Print fields. More... | |
void | printPseudoMaps (std::vector< InterfacePseudoMap > &pseudo_maps) |
Print pseudo maps. More... | |
void | print () |
Print parsed data. More... | |
void | printParsed (std::vector< InterfaceConstant > &constants, std::vector< InterfaceEnumConstant > &enum_constants, std::vector< InterfaceField > &data_fields, std::vector< InterfacePseudoMap > &pseudo_maps, std::vector< InterfaceMessage > &messages) |
Print parsed config. More... | |
std::string | getInterfaceName () |
Get interface name. More... | |
std::string | getInterfaceAuthor () |
Get interface author. More... | |
std::string | getInterfaceYear () |
Get interface copyright year. More... | |
std::string | getInterfaceCreationDate () |
Get interface creation date as string Only valid after parse(). More... | |
std::vector< InterfaceConstant > | getConstants () |
Get constants. More... | |
std::vector< InterfaceEnumConstant > | getEnumConstants () |
Get enum constants. More... | |
std::vector< InterfaceField > | getDataFields () |
Get data fields. More... | |
std::vector< InterfacePseudoMap > | getPseudoMaps () |
Get data pseudo maps. More... | |
std::string | getDataComment () |
Get data comment. More... | |
std::vector< InterfaceMessage > | getMessages () |
Get messages. More... | |
Parser used to get information out of interface template.
Uses XML parser internally.
InterfaceParser::InterfaceParser | ( | std::string | config_filename | ) |
Constructor.
config_filename | file name of config (interface template) |
Definition at line 46 of file parser.cpp.
InterfaceParser::~InterfaceParser | ( | ) |
Destructor.
Definition at line 60 of file parser.cpp.
std::vector< InterfaceConstant > InterfaceParser::getConstants | ( | ) |
Get constants.
Only valid after parse().
Definition at line 703 of file parser.cpp.
std::string InterfaceParser::getDataComment | ( | ) |
Get data comment.
Only valid after parse().
Definition at line 747 of file parser.cpp.
std::vector< InterfaceField > InterfaceParser::getDataFields | ( | ) |
Get data fields.
Only valid after parse().
Definition at line 725 of file parser.cpp.
std::vector< InterfaceEnumConstant > InterfaceParser::getEnumConstants | ( | ) |
Get enum constants.
Only valid after parse().
Definition at line 714 of file parser.cpp.
std::vector< InterfaceField > InterfaceParser::getFields | ( | xmlpp::Node * | node | ) |
Get parsed fields.
Get fields stored below the given node.
node | root node where to start searching |
Definition at line 72 of file parser.cpp.
References InterfaceField::getName(), fawkes::Exception::print_trace(), InterfaceField::setAttribute(), InterfaceField::setComment(), and InterfaceField::valid().
std::string InterfaceParser::getInterfaceAuthor | ( | ) |
Get interface author.
Only valid after parse().
Definition at line 670 of file parser.cpp.
std::string InterfaceParser::getInterfaceCreationDate | ( | ) |
Get interface creation date as string Only valid after parse().
Definition at line 692 of file parser.cpp.
std::string InterfaceParser::getInterfaceName | ( | ) |
Get interface name.
Only valid after parse().
Definition at line 659 of file parser.cpp.
std::string InterfaceParser::getInterfaceYear | ( | ) |
Get interface copyright year.
Only valid after parse().
Definition at line 681 of file parser.cpp.
std::vector< InterfaceMessage > InterfaceParser::getMessages | ( | ) |
std::vector< InterfacePseudoMap > InterfaceParser::getPseudoMaps | ( | xmlpp::Node * | node, |
std::vector< InterfaceField > & | fields | ||
) |
Get parsed pseudo maps.
Get pseudo maps stored below the given node.
node | root node where to start searching |
fields | vector of parsed fields, used to detect name clashes |
Definition at line 130 of file parser.cpp.
References InterfacePseudoMap::addRef(), fawkes::Exception::print_trace(), and InterfacePseudoMap::valid().
std::vector< InterfacePseudoMap > InterfaceParser::getPseudoMaps | ( | ) |
Get data pseudo maps.
Only valid after parse().
Definition at line 736 of file parser.cpp.
void InterfaceParser::parse | ( | ) |
Parse config.
Definition at line 339 of file parser.cpp.
References InterfaceEnumConstant::add_item(), fawkes::Exception::print_trace(), and fawkes::StringConversions::to_int().
void InterfaceParser::print | ( | ) |
Print parsed data.
Definition at line 331 of file parser.cpp.
void InterfaceParser::printFields | ( | std::vector< InterfaceField > & | fields | ) |
Print fields.
Print fields to stdout.
fields | fields to print |
Definition at line 236 of file parser.cpp.
void InterfaceParser::printParsed | ( | std::vector< InterfaceConstant > & | constants, |
std::vector< InterfaceEnumConstant > & | enum_constants, | ||
std::vector< InterfaceField > & | data_fields, | ||
std::vector< InterfacePseudoMap > & | pseudo_maps, | ||
std::vector< InterfaceMessage > & | messages | ||
) |
Print parsed config.
constants | parsed constants |
enum_constants | parsed enum_constants |
data_fields | parsed data fields |
pseudo_maps | pseudo maps |
messages | parsed messages. |
Definition at line 296 of file parser.cpp.
void InterfaceParser::printPseudoMaps | ( | std::vector< InterfacePseudoMap > & | pseudo_maps | ) |
Print pseudo maps.
pseudo_maps | pseudo maps to print |
Definition at line 269 of file parser.cpp.