Package bbflow
Class ff_all2all<T,U,V,W>
java.lang.Object
bbflow.block<T,U>
bbflow.ff_node<T,V>
bbflow.ff_all2all<T,U,V,W>
- Type Parameters:
T- Custom type of channels
All2All Building Block able to merge multiple farms
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) LinkedList<block>collection of blocks where first and last element are of type ff_farm in any circumstances(package private) int -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddInputChannel(ff_queue<T> input) add input channel to the left sidevoidaddOutputChannel(ff_queue<V> output) add output channel to the right sidevoidvoidcombine_farm(ff_farm<T, U> b1, ff_farm<V, W> b2, ff_node<U, Object> customEmitterR, ff_node<Object, V> customCollectorG, boolean merge) All2All building block.voidjoin()wait end of all blocksstatic voidpreload()voidstart()start all blocksMethods inherited from class bbflow.ff_node
getInputChannel, getOutputChannel, removeInputChannel, removeOutputChannel
-
Field Details
-
a2a
LinkedList<block> a2acollection of blocks where first and last element are of type ff_farm in any circumstances -
bufferSize
int bufferSize
-
-
Constructor Details
-
ff_all2all
public ff_all2all() -
ff_all2all
public ff_all2all(int bufferSize)
-
-
Method Details
-
preload
public static void preload() -
combine_farm
public void combine_farm(ff_farm<T, U> b1, ff_farm<V, W> b2, ff_node<U, Object> customEmitterR, ff_node<Object, V> customCollectorG, boolean merge) All2All building block. For details see the thesis. 8 Cases considered- Parameters:
b1- Left farmb2- Right farmcustomEmitterR- custom emitter to use during fusioncustomCollectorG- custom collector to use during fusionmerge- true, pipeline with single channel generated between farms. False pipeline with multiple channels
-
combine_farm
-
addInputChannel
add input channel to the left side- Overrides:
addInputChannelin classff_node<T,V> - Parameters:
input- input channel
-
addOutputChannel
add output channel to the right side- Overrides:
addOutputChannelin classff_node<T,V> - Parameters:
output- output channel
-
start
public void start()start all blocks -
join
public void join()wait end of all blocks
-