Transport

Transport is the lower RSSI stream endpoint. It exchanges RSSI frames between the controller and the underlying link transport. For conceptual guidance, see RSSI Protocol.

Python binding

This C++ class is also exported into Python as rogue.protocols.rssi.Transport.

Python API page: - Transport

objects in C++ are referenced by the following shared pointer typedef:

typedef std::shared_ptr<rogue::protocols::rssi::Transport> rogue::protocols::rssi::TransportPtr
[header]

The class description is shown below:

class Transport : public rogue::interfaces::stream::Master, public rogue::interfaces::stream::Slave
[header]

RSSI transport endpoint.

Bridges stream traffic between the RSSI controller and the underlying link.

Inbound frames are forwarded synchronously to Controller::transportRx(). Outbound transport frames are produced via controller APIs and emitted by other RSSI components.

Public Functions

Transport()
[header] [impl]

Constructs a transport endpoint.

Creator.

This constructor is a low-level C++ allocation path. Prefer create() when shared ownership or Python exposure is required.

~Transport()
[header] [impl]

Destroys the transport endpoint.

Destructor.

void setController(std::shared_ptr<rogue::protocols::rssi::Controller> cntl)
[header] [impl]

Attaches the RSSI controller.

Setup links.

Parameters:

cntlController instance that owns protocol state.

virtual void acceptFrame(std::shared_ptr<rogue::interfaces::stream::Frame> frame)
[header] [impl]

Accepts a frame from the upstream stream interface.

Accept a frame from master.

Parameters:

frame – Input frame to decode and forward to controller logic.

Public Static Functions

static std::shared_ptr<rogue::protocols::rssi::Transport> create()
[header] [impl]

Creates a new transport endpoint instance.

Class creation.

This static factory is the preferred construction path when the object is shared across Rogue graph connections or exposed to Python. It returns std::shared_ptr ownership compatible with Rogue pointer typedefs.

Company : SLAC National Accelerator Laboratory

Description: RSSI Port

This file is part of the rogue software platform. It is subject to the license terms in the LICENSE.txt file found in the top-level directory of this distribution and at: https://confluence.slac.stanford.edu/display/ppareg/LICENSE.html. No part of the rogue software platform, including this file, may be copied, modified, propagated, or distributed except according to the terms contained in the LICENSE.txt file.

Returns:

Shared pointer to the created transport endpoint.

static void setup_python()
[header] [impl]

Registers Python bindings for this class.