MCPcopy Create free account
hub / github.com/NetSys/bess / UpdateParentsAs

Method UpdateParentsAs

core/module_graph.cc:52–73  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

50};
51
52void ModuleGraph::UpdateParentsAs(
53 Module *task, Module *module,
54 std::unordered_set<Module *> &visited_modules) {
55 visited_modules.insert(module);
56
57 if (module->is_task()) {
58 module->AddParentTask(task);
59 return;
60 } else {
61 std::vector<bess::OGate *> ogates = module->ogates();
62 for (size_t i = 0; i < ogates.size(); i++) {
63 if (!ogates[i]) {
64 continue;
65 }
66 Module *child = ogates[i]->igate()->module();
67 if (visited_modules.count(child) != 0) {
68 continue;
69 }
70 UpdateParentsAs(task, child, visited_modules);
71 }
72 }
73}
74
75void ModuleGraph::UpdateSingleTaskGraph(Module *task_module) {
76 std::unordered_set<Module *> visited_modules;

Callers

nothing calls this directly

Calls 5

is_taskMethod · 0.80
AddParentTaskMethod · 0.80
sizeMethod · 0.80
igateMethod · 0.80
moduleMethod · 0.45

Tested by

no test coverage detected