rogue
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | List of all members
rogue::protocols::rssi::Client Class Reference

RSSI client convenience wrapper. More...

#include <Client.h>

Public Member Functions

 Client (uint32_t segSize)
 Constructs an RSSI client bundle.
 
 ~Client ()
 Destroys the client bundle.
 
std::shared_ptr< rogue::protocols::rssi::Transporttransport ()
 Returns the transport endpoint.
 
std::shared_ptr< rogue::protocols::rssi::Applicationapplication ()
 Returns the application endpoint.
 
bool getOpen ()
 Returns whether the link is in open state.
 
uint32_t getDownCount ()
 Returns the down-transition counter.
 
uint32_t getDropCount ()
 Returns the dropped-frame counter.
 
uint32_t getRetranCount ()
 Returns the retransmit counter.
 
bool getLocBusy ()
 Returns the local busy state.
 
uint32_t getLocBusyCnt ()
 Returns the local busy event counter.
 
bool getRemBusy ()
 Returns the remote busy state.
 
uint32_t getRemBusyCnt ()
 Returns the remote busy event counter.
 
void setLocTryPeriod (uint32_t val)
 Sets the local connection retry period in microseconds.
 
uint32_t getLocTryPeriod ()
 Returns the local connection retry period in microseconds.
 
void setLocMaxBuffers (uint8_t val)
 Sets the local maximum outstanding-buffer count.
 
uint8_t getLocMaxBuffers ()
 Returns the local maximum outstanding-buffer count.
 
void setLocMaxSegment (uint16_t val)
 Sets the local maximum segment size in bytes.
 
uint16_t getLocMaxSegment ()
 Returns the local maximum segment size in bytes.
 
void setLocCumAckTout (uint16_t val)
 Sets the local cumulative-ACK timeout.
 
uint16_t getLocCumAckTout ()
 Returns the local cumulative-ACK timeout.
 
void setLocRetranTout (uint16_t val)
 Sets the local retransmit timeout.
 
uint16_t getLocRetranTout ()
 Returns the local retransmit timeout.
 
void setLocNullTout (uint16_t val)
 Sets the local null-segment timeout.
 
uint16_t getLocNullTout ()
 Returns the local null-segment timeout.
 
void setLocMaxRetran (uint8_t val)
 Sets the local maximum retransmit count.
 
uint8_t getLocMaxRetran ()
 Returns the local maximum retransmit count.
 
void setLocMaxCumAck (uint8_t val)
 Sets the local maximum cumulative-ACK interval.
 
uint8_t getLocMaxCumAck ()
 Returns the local maximum cumulative-ACK interval.
 
uint8_t curMaxBuffers ()
 Returns the negotiated maximum outstanding-buffer count.
 
uint16_t curMaxSegment ()
 Returns the negotiated maximum segment size in bytes.
 
uint16_t curCumAckTout ()
 Returns the negotiated cumulative-ACK timeout.
 
uint16_t curRetranTout ()
 Returns the negotiated retransmit timeout.
 
uint16_t curNullTout ()
 Returns the negotiated null-segment timeout.
 
uint8_t curMaxRetran ()
 Returns the negotiated maximum retransmit count.
 
uint8_t curMaxCumAck ()
 Returns the negotiated maximum cumulative-ACK interval.
 
void resetCounters ()
 Resets runtime counters.
 
void setTimeout (uint32_t timeout)
 Sets timeout in microseconds for frame transmits.
 
void stop ()
 Stops the RSSI connection.
 
void start ()
 Starts or restarts RSSI connection establishment.
 

Static Public Member Functions

static std::shared_ptr< rogue::protocols::rssi::Clientcreate (uint32_t segSize)
 Creates an RSSI client bundle.
 
static void setup_python ()
 Registers Python bindings for this class.
 

Detailed Description

RSSI client convenience wrapper.

Bundles transport, application, and controller components for client-side RSSI links. Protocol reference: https://confluence.slac.stanford.edu/x/1IyfD

Construction wires the internal components together: Transport <-> Controller <-> Application.

Definition at line 45 of file Client.h.

Constructor & Destructor Documentation

◆ Client()

rogue::protocols::rssi::Client::Client ( uint32_t  segSize)
explicit

Constructs an RSSI client bundle.

Creator.

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

Parameters
segSizeInitial local maximum segment size.

Definition at line 88 of file Client.cpp.

◆ ~Client()

rogue::protocols::rssi::Client::~Client ( )

Destroys the client bundle.

Destructor.

Definition at line 98 of file Client.cpp.

Member Function Documentation

◆ application()

rogue::protocols::rssi::ApplicationPtr rogue::protocols::rssi::Client::application ( )

Returns the application endpoint.

Application module.

Returns
Shared application interface.

Definition at line 108 of file Client.cpp.

◆ create()

rogue::protocols::rssi::ClientPtr rogue::protocols::rssi::Client::create ( uint32_t  segSize)
static

Creates an RSSI client bundle.

Class creation.

Parameter semantics are identical to the constructor; see Client() for bundle-construction details. 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.

Parameters
segSizeInitial local maximum segment size.
Returns
Shared pointer to the created client bundle.

Company : SLAC National Accelerator Laboratory

Description:

RSSI Client Class

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.

Definition at line 38 of file Client.cpp.

◆ curCumAckTout()

uint16_t rogue::protocols::rssi::Client::curCumAckTout ( )

Returns the negotiated cumulative-ACK timeout.

Definition at line 224 of file Client.cpp.

◆ curMaxBuffers()

uint8_t rogue::protocols::rssi::Client::curMaxBuffers ( )

Returns the negotiated maximum outstanding-buffer count.

Definition at line 216 of file Client.cpp.

◆ curMaxCumAck()

uint8_t rogue::protocols::rssi::Client::curMaxCumAck ( )

Returns the negotiated maximum cumulative-ACK interval.

Definition at line 240 of file Client.cpp.

◆ curMaxRetran()

uint8_t rogue::protocols::rssi::Client::curMaxRetran ( )

Returns the negotiated maximum retransmit count.

Definition at line 236 of file Client.cpp.

◆ curMaxSegment()

uint16_t rogue::protocols::rssi::Client::curMaxSegment ( )

Returns the negotiated maximum segment size in bytes.

Definition at line 220 of file Client.cpp.

◆ curNullTout()

uint16_t rogue::protocols::rssi::Client::curNullTout ( )

Returns the negotiated null-segment timeout.

Definition at line 232 of file Client.cpp.

◆ curRetranTout()

uint16_t rogue::protocols::rssi::Client::curRetranTout ( )

Returns the negotiated retransmit timeout.

Definition at line 228 of file Client.cpp.

◆ getDownCount()

uint32_t rogue::protocols::rssi::Client::getDownCount ( )

Returns the down-transition counter.

Get Down Count.

Returns
Number of times the link entered a down/closed state.

Definition at line 118 of file Client.cpp.

◆ getDropCount()

uint32_t rogue::protocols::rssi::Client::getDropCount ( )

Returns the dropped-frame counter.

Get Drop Count.

Returns
Number of dropped received frames.

Definition at line 123 of file Client.cpp.

◆ getLocBusy()

bool rogue::protocols::rssi::Client::getLocBusy ( )

Returns the local busy state.

Get locBusy.

Returns
True when the local endpoint is currently busy.

Definition at line 133 of file Client.cpp.

◆ getLocBusyCnt()

uint32_t rogue::protocols::rssi::Client::getLocBusyCnt ( )

Returns the local busy event counter.

Get locBusyCnt.

Returns
Number of local busy assertions.

Definition at line 138 of file Client.cpp.

◆ getLocCumAckTout()

uint16_t rogue::protocols::rssi::Client::getLocCumAckTout ( )

Returns the local cumulative-ACK timeout.

Definition at line 180 of file Client.cpp.

◆ getLocMaxBuffers()

uint8_t rogue::protocols::rssi::Client::getLocMaxBuffers ( )

Returns the local maximum outstanding-buffer count.

Definition at line 164 of file Client.cpp.

◆ getLocMaxCumAck()

uint8_t rogue::protocols::rssi::Client::getLocMaxCumAck ( )

Returns the local maximum cumulative-ACK interval.

Definition at line 212 of file Client.cpp.

◆ getLocMaxRetran()

uint8_t rogue::protocols::rssi::Client::getLocMaxRetran ( )

Returns the local maximum retransmit count.

Definition at line 204 of file Client.cpp.

◆ getLocMaxSegment()

uint16_t rogue::protocols::rssi::Client::getLocMaxSegment ( )

Returns the local maximum segment size in bytes.

Definition at line 172 of file Client.cpp.

◆ getLocNullTout()

uint16_t rogue::protocols::rssi::Client::getLocNullTout ( )

Returns the local null-segment timeout.

Definition at line 196 of file Client.cpp.

◆ getLocRetranTout()

uint16_t rogue::protocols::rssi::Client::getLocRetranTout ( )

Returns the local retransmit timeout.

Definition at line 188 of file Client.cpp.

◆ getLocTryPeriod()

uint32_t rogue::protocols::rssi::Client::getLocTryPeriod ( )

Returns the local connection retry period in microseconds.

Definition at line 156 of file Client.cpp.

◆ getOpen()

bool rogue::protocols::rssi::Client::getOpen ( )

Returns whether the link is in open state.

Get state.

Returns
True when connection state is open.

Definition at line 113 of file Client.cpp.

◆ getRemBusy()

bool rogue::protocols::rssi::Client::getRemBusy ( )

Returns the remote busy state.

Get remBusy.

Returns
True when the remote endpoint reports busy.

Definition at line 143 of file Client.cpp.

◆ getRemBusyCnt()

uint32_t rogue::protocols::rssi::Client::getRemBusyCnt ( )

Returns the remote busy event counter.

Get remBusyCnt.

Returns
Number of remote busy indications.

Definition at line 148 of file Client.cpp.

◆ getRetranCount()

uint32_t rogue::protocols::rssi::Client::getRetranCount ( )

Returns the retransmit counter.

Get Retran Count.

Returns
Number of retransmitted frames.

Definition at line 128 of file Client.cpp.

◆ resetCounters()

void rogue::protocols::rssi::Client::resetCounters ( )

Resets runtime counters.

Definition at line 244 of file Client.cpp.

◆ setLocCumAckTout()

void rogue::protocols::rssi::Client::setLocCumAckTout ( uint16_t  val)

Sets the local cumulative-ACK timeout.

Definition at line 176 of file Client.cpp.

◆ setLocMaxBuffers()

void rogue::protocols::rssi::Client::setLocMaxBuffers ( uint8_t  val)

Sets the local maximum outstanding-buffer count.

Definition at line 160 of file Client.cpp.

◆ setLocMaxCumAck()

void rogue::protocols::rssi::Client::setLocMaxCumAck ( uint8_t  val)

Sets the local maximum cumulative-ACK interval.

Definition at line 208 of file Client.cpp.

◆ setLocMaxRetran()

void rogue::protocols::rssi::Client::setLocMaxRetran ( uint8_t  val)

Sets the local maximum retransmit count.

Definition at line 200 of file Client.cpp.

◆ setLocMaxSegment()

void rogue::protocols::rssi::Client::setLocMaxSegment ( uint16_t  val)

Sets the local maximum segment size in bytes.

Definition at line 168 of file Client.cpp.

◆ setLocNullTout()

void rogue::protocols::rssi::Client::setLocNullTout ( uint16_t  val)

Sets the local null-segment timeout.

Definition at line 192 of file Client.cpp.

◆ setLocRetranTout()

void rogue::protocols::rssi::Client::setLocRetranTout ( uint16_t  val)

Sets the local retransmit timeout.

Definition at line 184 of file Client.cpp.

◆ setLocTryPeriod()

void rogue::protocols::rssi::Client::setLocTryPeriod ( uint32_t  val)

Sets the local connection retry period in microseconds.

Definition at line 152 of file Client.cpp.

◆ setTimeout()

void rogue::protocols::rssi::Client::setTimeout ( uint32_t  timeout)

Sets timeout in microseconds for frame transmits.

Set timeout for frame transmits in microseconds.

Parameters
timeoutTimeout in microseconds.

Definition at line 249 of file Client.cpp.

◆ setup_python()

void rogue::protocols::rssi::Client::setup_python ( )
static

Registers Python bindings for this class.

Definition at line 43 of file Client.cpp.

◆ start()

void rogue::protocols::rssi::Client::start ( )

Starts or restarts RSSI connection establishment.

Start.

Definition at line 259 of file Client.cpp.

◆ stop()

void rogue::protocols::rssi::Client::stop ( )

Stops the RSSI connection.

Send reset and close.

Definition at line 254 of file Client.cpp.

◆ transport()

rogue::protocols::rssi::TransportPtr rogue::protocols::rssi::Client::transport ( )

Returns the transport endpoint.

Get transport interface.

Returns
Shared transport interface.

Definition at line 103 of file Client.cpp.


The documentation for this class was generated from the following files: