From 99d269e82cc7b7bf23d6ce51b151ae5d31d93733 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Giann=20Karlo=20Aguirre=20Sambon=C3=AD?= <giannkas1@gmail.com> Date: Wed, 31 Oct 2018 18:35:33 +0100 Subject: [PATCH] printable node types --- src/CMakeLists.txt | 2 +- src/adt2amas.cpp | 8 +++++--- src/node_type.cpp | 18 ++++++++++++++++++ src/node_type.hpp | 4 ++++ 4 files changed, 28 insertions(+), 4 deletions(-) create mode 100644 src/node_type.cpp diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 64d53c1..88de2d6 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -5,7 +5,7 @@ cmake_minimum_required(VERSION 3.0.0) project(adt2amas_exec CXX) # Libraries -add_library(adt_libs ad_tree.cpp tree_node.cpp node_type.hpp) +add_library(adt_libs ad_tree.cpp tree_node.cpp node_type.cpp) target_include_directories(adt_libs PUBLIC ${CMAKE_CURRENT_LIST_DIR}) # The main programn diff --git a/src/adt2amas.cpp b/src/adt2amas.cpp index 023e053..47bf3e9 100644 --- a/src/adt2amas.cpp +++ b/src/adt2amas.cpp @@ -41,8 +41,9 @@ int main(){ // Removing... //node_one->remove_child(node_six, node_one); node_one->remove_parent_pos(0, node_six); - node_one->remove_child_pos(0, node_ten); + // node_one->remove_child_pos(0, node_ten); + // Lineage printing... cout << "child associated ids of node one:" << endl; for (auto& i : node_one->get_child_associated_ids()) // reference to The C++ Programming Language book, p. 899 cout << i << ' '; @@ -68,7 +69,8 @@ int main(){ delete tree; - NodeType nodeTest{NodeType::Defence}; - cout << "node type = " << static_cast<int>(nodeTest) << endl; + NodeType nodeTest{NodeType::Attack}; + cout << "node type = " << to_string(nodeTest) << endl; + } diff --git a/src/node_type.cpp b/src/node_type.cpp new file mode 100644 index 0000000..b34514a --- /dev/null +++ b/src/node_type.cpp @@ -0,0 +1,18 @@ +#include "node_type.hpp" + +string to_string(NodeType nt){ + + string _nt = ""; + switch (nt) + { + case NodeType::Defence : + _nt = "Defence"; + break; + case NodeType::Attack : + _nt = "Attack"; + default: + break; + } + + return _nt; +} \ No newline at end of file diff --git a/src/node_type.hpp b/src/node_type.hpp index 79db265..f4a0797 100644 --- a/src/node_type.hpp +++ b/src/node_type.hpp @@ -2,6 +2,7 @@ #define NODE_TYPE_HPP #include <iostream> +#include <string> using namespace std; @@ -10,4 +11,7 @@ enum class NodeType Defence, // 0 Attack // 1 }; + +string to_string(NodeType nt); + #endif -- GitLab