A processor that runs N pipeline branches concurrently.
System frames are broadcast to all branches. Data frames are sent to all branches (fan-out). Output from all branches is merged into the single downstream.
Usage in a pipeline:
pipeline = Feline.Pipeline.new([
{SomeProcessor, []},
{Feline.Pipeline.Parallel, branches: [
[{BranchA1, opts}, {BranchA2, opts}],
[{BranchB1, opts}, {BranchB2, opts}]
]},
{AnotherProcessor, []}
])