size_t get_link_count();
std::vector<Link*> get_all_links();
+ std::vector<Link*> get_filtered_links(std::function<bool(Link*)> filter);
size_t get_storage_count();
std::vector<Storage*> get_all_storages();
return res;
}
+std::vector<Link*> Engine::get_filtered_links(std::function<bool(Link*)> filter)
+{
+ // FIXME: This is a terrible implementation and should be done
+ // without getting all links first.
+ std::vector<Link*> res;
+ kernel::resource::LinkImpl::linksList(&res);
+ std::vector<Link*> filtered_list;
+ for (auto& link : res) {
+ if (filter(link))
+ filtered_list.push_back(link);
+ }
+ return filtered_list;
+}
+
void Engine::run()
{
if (MC_is_active()) {