Configuration

Input Ports

There are no input ports for this process.

Output Ports

Pipefile Usage

The following sections describe the blocks needed to use this process in a pipe file.

Pipefile block

# ================================================================
process <this-proc>
  :: distribute
# ================================================================

Process connections

The following Input ports will need to be set

# There are no input port's for this process

The following Output ports will need to be set

# This process will produce the following output ports

Class Description

class sprokit::distribute_process : public sprokit::process

A process for distributing input data to multiple output edges.

Distribute input data among many output processes.

Note

Edges for a {tag} may only be connected after the {status/{tag}} is connected to. Before this connection happens, the other ports to not exist and will cause errors. In short: The first connection for any {tag} must be {status/{tag}}.

{src/{tag}} The source input {tag}.

{status/{tag}} The status of the input {tag}. {dist/{tag}/{group}} A port to distribute the input {tag} to. Data is distributed in ASCII-betical order.

Each input port {src/{tag}} must be connected. Each output port {status/{res}} must be connected. Each {res} must have at least two outputs to distribute to.

process distrib :: distribute

# connect input port
connect foo.p1_data      to      distrib.src/set1

# status output port
connect distrib.status/set1  to     bar.status

# connect output ports
connect distrib.dist/set1/A   to    bar.data
connect distrib.dist/set1/B   to    bar_1.data

Todo:

Add configuration to allow forcing a number of outputs for a source.

Add configuration to allow same number of outputs for all sources.

class priv
class tag_info