Dataflow Software Stack
032db78
Master Thesis of Mathijs Saey at the VUB
|
IGR compound node compiler. More...
Functions | |
def | selectStart |
Ensure all the subgraphs link to the exit sink. More... | |
def | selectStop |
Add all the subgraph entry points to the destination list of select. More... | |
def | convertSelectNode |
Convert a select node. More... | |
def | convertForAllNode |
def | convertNode |
Add the DIS equivalent of a certain node to a DIS object. More... | |
Variables | |
dictionary | converters |
IGR compound node compiler.
This module contains functions for the compilation of compound nodes. It's worth noting that the links to and from a compound node are made by the regular nodeConverter.
def backEnd.DVM.compoundConverter.selectStart | ( | dis, | |
comp | |||
) |
Ensure all the subgraphs link to the exit sink.
def backEnd.DVM.compoundConverter.selectStop | ( | dis, | |
comp, | |||
idx | |||
) |
Add all the subgraph entry points to the destination list of select.
Restore exit nodes.
def backEnd.DVM.compoundConverter.convertSelectNode | ( | dis, | |
node | |||
) |
Convert a select node.
First, we add the node itself to dis. We add a sink and a switch. The switch is the actual select while the sink will be the exit point of any results coming out of the compound node.
We register the switch as the destination for any incoming links while the sink is registered as the source of outgoing links.
Next, we simply ensure all the subgraphs link to the shard sink, and compile the subgraphs.
Finally, we get the dis addresses of the possible destinations, after which we add them to the destination list of the switch node.
def backEnd.DVM.compoundConverter.convertForAllNode | ( | dis, | |
node | |||
) |
def backEnd.DVM.compoundConverter.convertNode | ( | dis, | |
node | |||
) |
Add the DIS equivalent of a certain node to a DIS object.
dis | A DIS instance that will contain the DIS version of the node. |
node | The node to convert. |
dictionary backEnd.DVM.compoundConverter.converters |