diff --git a/include/nodes/BaseNode.h b/include/nodes/BaseNode.h index f2af8f3..f430074 100644 --- a/include/nodes/BaseNode.h +++ b/include/nodes/BaseNode.h @@ -9,7 +9,8 @@ class BaseNode : public virtual INode { public: /// \brief Конструктор узла. /// \param name Неуникальное имя узла. - BaseNode(std::string name) : name_(std::move(name)) { + BaseNode(std::string name, std::string kind) : + name_(std::move(name)), kind_(std::move(kind)) { Logger::get("ConDes").dbg(std::string("--- Base constructor called for: ") + name_); } /// \brief Неуникальное имя узла. diff --git a/include/nodes/ComplexNode.h b/include/nodes/ComplexNode.h index fef4537..8e33181 100644 --- a/include/nodes/ComplexNode.h +++ b/include/nodes/ComplexNode.h @@ -15,7 +15,8 @@ public: Logger::get("ConDes").dbg(std::string("--- Complex destructor called for: ") + name_); } protected: - ComplexNode(std::string name) : BaseNode(std::move(name)) { + ComplexNode(std::string name, std::string kind) : + BaseNode(std::move(name), std::move(kind)) { Logger::get("ConDes").dbg(std::string("--- Complex constructor called for: ") + name_); } }; diff --git a/include/nodes/HTBNode.h b/include/nodes/HTBNode.h index da16671..2d8713d 100644 --- a/include/nodes/HTBNode.h +++ b/include/nodes/HTBNode.h @@ -36,14 +36,12 @@ public: const Config& config() const { return config_; } private: friend class FabricMixin; - HTBNode(std::string&& name) : ComplexNode(std::move(name)) { - kind_ = "HTB"; + HTBNode(std::string&& name) : ComplexNode(std::move(name), "HTB") { Logger::get("ConDes").dbg(std::string("--- HTB constructor called for: ") + name_); } - HTBNode(std::string&& name, Config&& config) : ComplexNode(std::move(name)), + HTBNode(std::string&& name, Config&& config) : ComplexNode(std::move(name), "HTB"), config_(std::move(config)) { - kind_ = "HTB"; Logger::get("ConDes").dbg(std::string("--- HTB constructor called for: ") + name_); } diff --git a/include/nodes/LeafNode.h b/include/nodes/LeafNode.h index 62cb51c..fce80d5 100644 --- a/include/nodes/LeafNode.h +++ b/include/nodes/LeafNode.h @@ -15,8 +15,8 @@ public: Logger::get("ConDes").dbg(std::string("--- Leaf destructor called for: ") + name_); } protected: - LeafNode(std::string name, std::string kind) : BaseNode(std::move(name)) { - kind_ = std::move(kind); + LeafNode(std::string name, std::string kind) : + BaseNode(std::move(name), std::move(kind)) { Logger::get("ConDes").dbg(std::string("--- Leaf constructor called for: ") + name_ + ", kind=" + kind_); } }; diff --git a/include/nodes/SFQNode.h b/include/nodes/SFQNode.h index 9bffdb9..3d4b4a7 100644 --- a/include/nodes/SFQNode.h +++ b/include/nodes/SFQNode.h @@ -31,14 +31,12 @@ public: const Config& config() const { return config_; } private: friend class FabricMixin; - SFQNode(std::string&& name) : BaseNode(std::move(name)) { - kind_ = "SFQ"; + SFQNode(std::string&& name) : BaseNode(std::move(name), "SFQ") { Logger::get("ConDes").dbg(std::string("--- SFQ constructor called for: ") + name_); } - SFQNode(std::string&& name, Config&& config) - : BaseNode(std::move(name)), config_(std::move(config)) { - kind_ = "SFQ"; + SFQNode(std::string&& name, Config&& config) : BaseNode(std::move(name), "SFQ"), + config_(std::move(config)) { Logger::get("ConDes").dbg(std::string("--- SFQ constructor called for: ") + name_); } diff --git a/include/nodes/WREDNode.h b/include/nodes/WREDNode.h index 08b251f..57a92b0 100644 --- a/include/nodes/WREDNode.h +++ b/include/nodes/WREDNode.h @@ -27,14 +27,12 @@ public: const Config& config() const { return config_; } private: friend class FabricMixin; - WREDNode(std::string&& name) : BaseNode(std::move(name)) { - kind_ = "WRED"; + WREDNode(std::string&& name) : BaseNode(std::move(name), "WRED") { Logger::get("ConDes").dbg(std::string("--- WRED constructor called for: ") + name_); } - WREDNode(std::string&& name, Config&& config) - : BaseNode(std::move(name)), config_(std::move(config)) { - kind_ = "WRED"; + WREDNode(std::string&& name, Config&& config) : BaseNode(std::move(name), "WRED"), + config_(std::move(config)) { Logger::get("ConDes").dbg(std::string("--- WRED constructor called for: ") + name_); }