Bomberman
Node.hpp
Go to the documentation of this file.
1 //
2 // Created by cbihan on 16/06/2021.
3 //
4 
5 #pragma once
6 
7 #include <vector>
8 #include <map>
9 #include <string>
10 
11 namespace BBM
12 {
13  class Node
14  {
15  private:
17  std::string _name;
18 
20  std::vector<Node> _childNodes;
21 
23  std::map<std::string, std::string> _properties;
24 
25  public:
26 
27  std::string getName() const;
28 
29  void setName(const std::string &name);
30 
31  void addChildNode(const Node &childNode);
32 
33  std::vector<Node> getChildNodes(const std::string &childNodeName);
34  std::vector<Node> getChildNodes(void);
35 
36  void setProperty(const std::string &propertyName, const std::string &propertyValue);
37  void setProperty(const std::pair<std::string, std::string> &propertyNameValue);
38 
39  std::string getProperty(const std::string &propertyName) const;
40 
42  explicit Node(std::string name);
44  Node(const Node &) = default;
46  ~Node() = default;
48  Node &operator=(const Node &) = default;
49  };
50 }
51 
BBM::Node::getProperty
std::string getProperty(const std::string &propertyName) const
Definition: Node.cpp:20
BBM::Node::_properties
std::map< std::string, std::string > _properties
node's properties
Definition: Node.hpp:23
BBM::Node::setName
void setName(const std::string &name)
Definition: Node.cpp:52
BBM::Node::getName
std::string getName() const
Definition: Node.cpp:25
BBM::Node::Node
Node(std::string name)
ctor
Definition: Node.cpp:10
BBM
Definition: AnimationsComponent.cpp:9
BBM::Node::_childNodes
std::vector< Node > _childNodes
child nodes
Definition: Node.hpp:20
BBM::Node::~Node
~Node()=default
dtor
BBM::Node::_name
std::string _name
Node name.
Definition: Node.hpp:17
BBM::Node::operator=
Node & operator=(const Node &)=default
assignment operator
BBM::Node::setProperty
void setProperty(const std::string &propertyName, const std::string &propertyValue)
Definition: Node.cpp:15
BBM::Node
Definition: Node.hpp:13
BBM::Node::addChildNode
void addChildNode(const Node &childNode)
Definition: Node.cpp:30
BBM::Node::getChildNodes
std::vector< Node > getChildNodes(void)
Definition: Node.cpp:47