38 #include "yaml-cpp/yaml.h"
54 class Element :
public Object {
71 Element(
const std::string& type_name, std::string name = std::string());
101 return find_<BufferProbe>(name);
115 const std::string& probe_name,
116 const std::string probe_tip =
"");
119 template<
typename... Args>
121 const std::string& probe_name,
122 const std::string probe_tip =
"",
123 const Args&... args) {
124 addProbe(plugin_name, probe_name, probe_tip);
126 if (probe && (
sizeof...(args) > 0)) {
145 return find_<SignalHandler>(name);
175 const std::string& handler_name,
176 const std::string& signal_names);
179 template<
typename... Args>
181 const std::string& handler_name,
182 const std::string& signal_names,
183 const Args&... args) {
186 if (handler && (
sizeof...(args) > 0)) {
187 handler->set(args...);
206 std::shared_ptr<std::unordered_map<std::string, std::unique_ptr<CustomObject>>>
objects_;
215 [&](
const auto& pair) {
216 return pair.first == name && dynamic_cast<T*>(pair.second.get());
219 if (itr !=
objects_->end())
return dynamic_cast<T*
>(itr->second.get());