void setUp() { pyconfig::Parser emptyConfig; layer = new LayerStub(); fuNet = new fun::Main(layer); upper = new tools::Stub(fuNet, emptyConfig); lower = new tools::Stub(fuNet, emptyConfig); { pyconfig::Parser groupConfig; groupConfig.loadString( "from openwns.FUN import FUN, Node\n" "from openwns.Group import Group\n" "from openwns.Tools import Stub\n" "fun = FUN()\n" "a = Node('inner1', Stub())\n" "b = Node('inner2', Stub())\n" "fun.add(a)\n" "fun.add(b)\n" "a.connect(b)\n" "group = Group(fun, 'inner1', 'inner2')\n" ); pyconfig::View groupView(groupConfig, "group"); group = new Group(fuNet, groupView); } fuNet->addFunctionalUnit("upper", upper); fuNet->addFunctionalUnit("group", group); fuNet->addFunctionalUnit("lower", lower); upper ->connect(group) ->connect(lower); inner1 = group->getSubFUN()->findFriend<tools::Stub*>("inner1"); inner2 = group->getSubFUN()->findFriend<tools::Stub*>("inner2"); }
void DependencyView::Build(const DependencyGraph& dependencies, const FileDictionary& fileDictionary, WeightType criteria, GroupedDependencyGraph& result ) { // Group all nodes with unique file name O(Entries) GroupView groupView(dependencies, fileDictionary, criteria, result); groupView.Group(); }