YAMLParser
FENode.h
Go to the documentation of this file.
1 
5 #pragma once
6 #include <vector>
7 #include <string>
8 #include "yaml-cpp/yaml.h"
9 #include "Identifiable.h"
10 #include "FECoordSys.h"
11 
12 //Forward declarations
13 class FECoordSys;
14 
15 class FENode :
16  public Identifiable
17 {
18 public:
19  FENode(YAML::Node& yamlNode, FECoordSys* rot);
20  ~FENode();
21 
22 
24  virtual std::string getTypeAsString() override;
25 
28  bool assignIndependentAttributes(YAML::Node& yamlNode);
29 
31  bool setCoordinates(YAML::Node& yamlNode);
32 
34  std::vector<std::string> extractYamlKeys(YAML::Node yamlNode);
35 
37  void printAttributes();
38 
39  //Data fields
40  double x;
41  double y;
42  double z;
43  int ix;
44  int iy;
45  int iz;
46  int irx;
47  int iry;
48  int irz;
50 };
51 
int irx
Boundary code for rotation about X-axis.
Definition: FENode.h:46
This is the base class for all types with an external identifier attribute. Used when reference to an...
Definition: Identifiable.h:13
Definition: FENode.h:15
FENode(YAML::Node &yamlNode, FECoordSys *rot)
Definition: FENode.cpp:6
This class represents a coordinate system.
Definition: FECoordSys.h:11
double y
Y-coordinate for the node.
Definition: FENode.h:41
int iz
Boundary code for translation in z-direction.
Definition: FENode.h:45
bool setCoordinates(YAML::Node &yamlNode)
Definition: FENode.cpp:47
int iy
Boundary code for translation in y-direction.
Definition: FENode.h:44
virtual std::string getTypeAsString() override
Definition: FENode.cpp:16
int irz
Boundary code for rotation about Z-axis.
Definition: FENode.h:48
double z
Z-coordinate for the node.
Definition: FENode.h:42
bool assignIndependentAttributes(YAML::Node &yamlNode)
Definition: FENode.cpp:23
~FENode()
Definition: FENode.cpp:19
std::vector< std::string > extractYamlKeys(YAML::Node yamlNode)
Definition: FENode.cpp:70
Identifiable::Type getType()
Definition: FENode.cpp:15
void printAttributes()
Definition: FENode.cpp:79
double x
X-coordinate for the node.
Definition: FENode.h:40
FECoordSys * pRotID
Reference to local coordinate system for BCs.
Definition: FENode.h:49
Type
Definition: Identifiable.h:26
int ix
Boundary code for translation in x-direction.
Definition: FENode.h:43
int iry
Boundary code for rotation about Y-axis.
Definition: FENode.h:47