Back to Fprime

Svc::ComSplitter

Svc/ComSplitter/docs/sdd.md

4.3.01.7 KB
Original Source

Svc::ComSplitter

1. Introduction

The ComSplitter component duplicates a stream of Fw::Com buffers to multiple consumers. Each Com buffer received on its input port is copied and forwarded to every connected output port. A typical use is fanning a single downlink stream out to several sinks, for example a radio path and an on-board logger such as Svc::ComLogger.

2. Requirements

NameDescriptionValidation
SVC-COMSPLITTER-001The ComSplitter component shall forward each Com buffer received on comIn to every connected comOut portunit test
SVC-COMSPLITTER-002The ComSplitter component shall pass a copy of the buffer to each output so that consumers cannot affect one anotherunit test

3. Design

The ComSplitter is a passive component. The comIn handler executes synchronously on the caller's thread: it iterates over the comOut output port array (5 ports) and, for each connected port, invokes it with a copy of the incoming Fw::ComBuffer. The context value forwarded to consumers is always 0. At least one output port must be connected; the handler asserts otherwise.

3.1 Port Description

PortKindTypeDescription
comInsync inputFw.ComCom buffer stream to split
comOutoutput (array of 5)Fw.ComDuplicated Com buffer stream

The component has no commands, events, telemetry, or parameters.

4. Usage

  1. Instantiate the component in the topology.
  2. Connect the source Com stream to comIn.
  3. Connect up to 5 consumers to elements of comOut; unconnected elements are skipped.

5. Change Log

DateDescription
2026-08-10Initial SDD