1 #pragma once 2 #include <Node.h> 3 #include <string> 4 5 class BinaryTree { 6 public: 7 explicit BinaryTree(const std::string binaryTreeDescription); 8 std::string getDescription() const; // For debugging only 9 std::string decode(const std::string binaryString) const; 10 11 private: 12 // Left branch of sentinel_ is root of tree. 13 const Node* getRoot() const {return sentinel_.getLeftBranch();} 14 15 // Right branch of sentinel_ is null. 16 // Parent of sentinel is null. 17 InternalNode sentinel_; 18 };