qosd: прокинут kind до BaseNode
Теперь конкретные узлы не сами устанавливают себе `kind_`, а делают это через `BaseNode` — единую точку входа.
This commit is contained in:
@@ -9,7 +9,8 @@ class BaseNode : public virtual INode {
|
|||||||
public:
|
public:
|
||||||
/// \brief Конструктор узла.
|
/// \brief Конструктор узла.
|
||||||
/// \param name Неуникальное имя узла.
|
/// \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_);
|
Logger::get("ConDes").dbg(std::string("--- Base constructor called for: ") + name_);
|
||||||
}
|
}
|
||||||
/// \brief Неуникальное имя узла.
|
/// \brief Неуникальное имя узла.
|
||||||
|
|||||||
@@ -14,7 +14,8 @@ public:
|
|||||||
Logger::get("ConDes").dbg(std::string("--- Complex destructor called for: ") + name_);
|
Logger::get("ConDes").dbg(std::string("--- Complex destructor called for: ") + name_);
|
||||||
}
|
}
|
||||||
protected:
|
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_);
|
Logger::get("ConDes").dbg(std::string("--- Complex constructor called for: ") + name_);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -27,14 +27,12 @@ public:
|
|||||||
const Config& config() const { return config_; }
|
const Config& config() const { return config_; }
|
||||||
private:
|
private:
|
||||||
friend class FabricMixin<HTBNode>;
|
friend class FabricMixin<HTBNode>;
|
||||||
HTBNode(std::string&& name) : ComplexNode(std::move(name)) {
|
HTBNode(std::string&& name) : ComplexNode(std::move(name), "HTB") {
|
||||||
kind_ = "HTB";
|
|
||||||
Logger::get("ConDes").dbg(std::string("--- HTB constructor called for: ") + name_);
|
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)) {
|
config_(std::move(config)) {
|
||||||
kind_ = "HTB";
|
|
||||||
Logger::get("ConDes").dbg(std::string("--- HTB constructor called for: ") + name_);
|
Logger::get("ConDes").dbg(std::string("--- HTB constructor called for: ") + name_);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -15,8 +15,8 @@ public:
|
|||||||
Logger::get("ConDes").dbg(std::string("--- Leaf destructor called for: ") + name_);
|
Logger::get("ConDes").dbg(std::string("--- Leaf destructor called for: ") + name_);
|
||||||
}
|
}
|
||||||
protected:
|
protected:
|
||||||
LeafNode(std::string name, std::string kind) : BaseNode(std::move(name)) {
|
LeafNode(std::string name, std::string kind) :
|
||||||
kind_ = std::move(kind);
|
BaseNode(std::move(name), std::move(kind)) {
|
||||||
Logger::get("ConDes").dbg(std::string("--- Leaf constructor called for: ") + name_ + ", kind=" + kind_);
|
Logger::get("ConDes").dbg(std::string("--- Leaf constructor called for: ") + name_ + ", kind=" + kind_);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -31,14 +31,12 @@ public:
|
|||||||
const Config& config() const { return config_; }
|
const Config& config() const { return config_; }
|
||||||
private:
|
private:
|
||||||
friend class FabricMixin<SFQNode>;
|
friend class FabricMixin<SFQNode>;
|
||||||
SFQNode(std::string&& name) : BaseNode(std::move(name)) {
|
SFQNode(std::string&& name) : BaseNode(std::move(name), "SFQ") {
|
||||||
kind_ = "SFQ";
|
|
||||||
Logger::get("ConDes").dbg(std::string("--- SFQ constructor called for: ") + name_);
|
Logger::get("ConDes").dbg(std::string("--- SFQ constructor called for: ") + name_);
|
||||||
}
|
}
|
||||||
|
|
||||||
SFQNode(std::string&& name, Config&& config)
|
SFQNode(std::string&& name, Config&& config) : BaseNode(std::move(name), "SFQ"),
|
||||||
: BaseNode(std::move(name)), config_(std::move(config)) {
|
config_(std::move(config)) {
|
||||||
kind_ = "SFQ";
|
|
||||||
Logger::get("ConDes").dbg(std::string("--- SFQ constructor called for: ") + name_);
|
Logger::get("ConDes").dbg(std::string("--- SFQ constructor called for: ") + name_);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -29,14 +29,12 @@ public:
|
|||||||
const Config& config() const { return config_; }
|
const Config& config() const { return config_; }
|
||||||
private:
|
private:
|
||||||
friend class FabricMixin<WREDNode>;
|
friend class FabricMixin<WREDNode>;
|
||||||
WREDNode(std::string&& name) : BaseNode(std::move(name)) {
|
WREDNode(std::string&& name) : BaseNode(std::move(name), "WRED") {
|
||||||
kind_ = "WRED";
|
|
||||||
Logger::get("ConDes").dbg(std::string("--- WRED constructor called for: ") + name_);
|
Logger::get("ConDes").dbg(std::string("--- WRED constructor called for: ") + name_);
|
||||||
}
|
}
|
||||||
|
|
||||||
WREDNode(std::string&& name, Config&& config)
|
WREDNode(std::string&& name, Config&& config) : BaseNode(std::move(name), "WRED"),
|
||||||
: BaseNode(std::move(name)), config_(std::move(config)) {
|
config_(std::move(config)) {
|
||||||
kind_ = "WRED";
|
|
||||||
Logger::get("ConDes").dbg(std::string("--- WRED constructor called for: ") + name_);
|
Logger::get("ConDes").dbg(std::string("--- WRED constructor called for: ") + name_);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user