YAMLParser
|
This is the top-level parser class. More...
#include <Parser.h>
Public Member Functions | |
Parser (std::string filename) | |
~Parser () | |
void | logErrorMsg (std::runtime_error e) |
void | parseCoordSys (YAML::Node &yamlNode, std::string type) |
Instantiate a FECoordSys object from the YAML::Node. More... | |
void | parseNode (YAML::Node &yamlNode, std::string type) |
Instantiate a FENode object from the YAML::Node. More... | |
void | parseVector (YAML::Node &yamlNode, std::string type) |
Instantiate a FEVector object from the YAML::Node. More... | |
void | parseBeam (YAML::Node &yamlNode, std::string type) |
Instantiate a FEBeam object from the YAML::Node. More... | |
void | parseTrishell (YAML::Node &yamlNode, std::string type) |
Instantiate a FETrishell object from the YAML::Node. More... | |
void | parseQuadshell (YAML::Node &yamlNode, std::string type) |
Instantiate a FEQuadshell object from the YAML::Node. More... | |
void | ParseGenericFEMElement (YAML::Node &yamlNode) |
A classifier. Parses a generic FEM element, identified by the literal string FEMElement in the YAML::Node. More... | |
void | parseEccentricity (YAML::Node &yamlNode, std::string type) |
Instantiate a FEEccentricity object from the YAML::Node. More... | |
void | ParseIsoMaterial (YAML::Node &yamlNode, std::string type) |
Instantiate a FEIsoMaterial object from the YAML::Node. More... | |
void | ParsePipe (YAML::Node &yamlNode, std::string type) |
Instantiate a cross-sectional FEPipe object from the YAML::Node. More... | |
void | parseTsection (YAML::Node &yamlNode, std::string type) |
Instantiate a cross-sectional FETsection object from the YAML::Node. More... | |
void | parsePLThick (YAML::Node &yamlNode, std::string type) |
Instantiate a PLThick object from the YAML::Node. More... | |
void | parsePLComp (YAML::Node &yamlNode, std::string type) |
Instantiate a PLComp object from the YAML::Node. More... | |
void | parseNodeLoad (YAML::Node &yamlNode) |
Instantiate a FENodeLoad object from the YAML::Node. More... | |
void | parseLoadComb (YAML::Node &yamlNode) |
Instantiate a FELoadComb object from the YAML::Node. More... | |
void | parseDepenencyLevelNull () |
void | parseDepenencyLevelOne () |
void | parseDepenencyLevelTwo () |
void | parse () |
Public Attributes | |
YAML::Node | root |
YAML root node. More... | |
YAML::Node | structureNode |
FEA format structure node. More... | |
YAML::Node | nextNode |
Next node to parse. More... | |
Structure * | structure |
Ptr to Structure object to which the data types are added. More... | |
This is the top-level parser class.
This class traverses the YAML representation (graph of YAML::Nodes) once per dependency level and calls calls the parse function (e.g. parseNode) corresponding to the FE type for each YAML::Node.
Parser::Parser | ( | std::string | filename | ) |
Parser::~Parser | ( | ) |
void Parser::logErrorMsg | ( | std::runtime_error | e | ) |
Error logger. Writes error message to console and to log file
void Parser::parse | ( | ) |
parse() is the parser main method which iterates over the input YAML::Node list. This method checks the YAML::Node's element type and passes the node to the corresponding parse function for FEM types.
void Parser::parseBeam | ( | YAML::Node & | yamlNode, |
std::string | type | ||
) |
Instantiate a FEBeam object from the YAML::Node.
void Parser::parseCoordSys | ( | YAML::Node & | yamlNode, |
std::string | type | ||
) |
Instantiate a FECoordSys object from the YAML::Node.
void Parser::parseDepenencyLevelNull | ( | ) |
Traverses the entire graph of YAML::Nodes and parses all FE types of dependency level null
void Parser::parseDepenencyLevelOne | ( | ) |
Traverses the entire graph of YAML::Nodes and parses all FE types of dependency level one
void Parser::parseDepenencyLevelTwo | ( | ) |
Traverses the entire graph of YAML::Nodes and parses all FE types of dependency level two
void Parser::parseEccentricity | ( | YAML::Node & | yamlNode, |
std::string | type | ||
) |
Instantiate a FEEccentricity object from the YAML::Node.
void Parser::ParseGenericFEMElement | ( | YAML::Node & | yamlNode | ) |
A classifier. Parses a generic FEM element, identified by the literal string FEMElement in the YAML::Node.
void Parser::ParseIsoMaterial | ( | YAML::Node & | yamlNode, |
std::string | type | ||
) |
Instantiate a FEIsoMaterial object from the YAML::Node.
void Parser::parseLoadComb | ( | YAML::Node & | yamlNode | ) |
Instantiate a FELoadComb object from the YAML::Node.
void Parser::parseNode | ( | YAML::Node & | yamlNode, |
std::string | type | ||
) |
Instantiate a FENode object from the YAML::Node.
void Parser::parseNodeLoad | ( | YAML::Node & | yamlNode | ) |
Instantiate a FENodeLoad object from the YAML::Node.
void Parser::ParsePipe | ( | YAML::Node & | yamlNode, |
std::string | type | ||
) |
Instantiate a cross-sectional FEPipe object from the YAML::Node.
void Parser::parsePLComp | ( | YAML::Node & | yamlNode, |
std::string | type | ||
) |
Instantiate a PLComp object from the YAML::Node.
void Parser::parsePLThick | ( | YAML::Node & | yamlNode, |
std::string | type | ||
) |
Instantiate a PLThick object from the YAML::Node.
void Parser::parseQuadshell | ( | YAML::Node & | yamlNode, |
std::string | type | ||
) |
Instantiate a FEQuadshell object from the YAML::Node.
void Parser::parseTrishell | ( | YAML::Node & | yamlNode, |
std::string | type | ||
) |
Instantiate a FETrishell object from the YAML::Node.
void Parser::parseTsection | ( | YAML::Node & | yamlNode, |
std::string | type | ||
) |
Instantiate a cross-sectional FETsection object from the YAML::Node.
void Parser::parseVector | ( | YAML::Node & | yamlNode, |
std::string | type | ||
) |
Instantiate a FEVector object from the YAML::Node.
YAML::Node Parser::nextNode |
Next node to parse.
YAML::Node Parser::root |
YAML root node.
YAML::Node Parser::structureNode |
FEA format structure node.