Svc/ComSplitter/docs/sdd.md
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.
| Name | Description | Validation |
|---|---|---|
| SVC-COMSPLITTER-001 | The ComSplitter component shall forward each Com buffer received on comIn to every connected comOut port | unit test |
| SVC-COMSPLITTER-002 | The ComSplitter component shall pass a copy of the buffer to each output so that consumers cannot affect one another | unit test |
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.
| Port | Kind | Type | Description |
|---|---|---|---|
comIn | sync input | Fw.Com | Com buffer stream to split |
comOut | output (array of 5) | Fw.Com | Duplicated Com buffer stream |
The component has no commands, events, telemetry, or parameters.
comIn.comOut; unconnected elements are skipped.| Date | Description |
|---|---|
| 2026-08-10 | Initial SDD |