At this page there is a good introduction to the Intel TBB flow graph http://www.drdobbs.com/tools/the-intel-threading-building-blocks-flow/23...
After reading it and after I have seen some practical examples, I haven't found a solution to my problem yet.
My input: a set of value that I get altogether on a given timing, for example I get an array of int any tot. seconds.
My logic: so my input is an array but my application/algorithm it's not supposed to work on that array but on a bigger chunk of data like a set of array ordered in a sequence ( to keep the input order ).
My abstract solution is to imagine that I have this flow of array in input, and even if I know that I get 1 array each 50 seconds I don't want to rely on time to group this arrays in a chunk of data, instead I just would like to set a value used in a buffer node to aggregate this arrays in a single output, for example if I set 10, the node waits until 10 arrays are ready in a sequence and then it will fires the data over the graph.
My problem also hides a change in the roots of my flow graph, if it's true that my input is N, my real input for my internal business logic is kN, so that node buffer should be the first block on the input and it also should "repack" my data to be considered or referenced more easily by the other functions, because internally I need to consider chunks of arrays not just a single array.
In the entire TBB I haven't found a block for a graph that actually changes the dimension of my input and gives me the ability to refere to my input as a chunk, How do I solve my problem with a flow graph ?
It would be great to also have the ability to access the next or the previous k inputs in sequence, according to the input order, from a function node or from any given node.