Class TransportCCManager
Manages transport-wide congestion control logic including sequence numbers, timestamps, and control frame generation.
Inheritance
Namespace: FM.LiveSwitch
Assembly: FM.LiveSwitch.dll
Syntax
public class TransportCCManager : object
Constructors
TransportCCManager(Int32)
Construct a Transport CC Manager.
Declaration
public TransportCCManager(int reportInterval)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int32 | reportInterval |
Properties
ArrivalTimesBeginSequenceNumber
Gets the begin sequence number for arrival times.
Declaration
public long ArrivalTimesBeginSequenceNumber { get; }
Property Value
| Type | Description |
|---|---|
| System.Int64 |
ArrivalTimesEndSequenceNumber
Gets the end sequence number for arrival times
Declaration
public long ArrivalTimesEndSequenceNumber { get; }
Property Value
| Type | Description |
|---|---|
| System.Int64 |
Id
Gets the Transport CC Manager Id.
Declaration
public string Id { get; }
Property Value
| Type | Description |
|---|---|
| System.String |
LogContext
Gets the LogContext.
Declaration
protected LogContext LogContext { get; }
Property Value
| Type | Description |
|---|---|
| LogContext |
ReceiveDeltaMultipleTicks
Gets the delta between packets time unit reported as intervals of 250 microseconds in ticks.
Declaration
public static int ReceiveDeltaMultipleTicks { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
ReferenceTimeMultipleTicks
Gets the reference time unit reported as intervals of 64 ms in ticks.
Declaration
public static int ReferenceTimeMultipleTicks { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
Methods
GetNextOutboundTransportSequenceNumber()
Gets the next outbound transport-wide sequence number.
Declaration
public int GetNextOutboundTransportSequenceNumber()
Returns
| Type | Description |
|---|---|
| System.Int32 | The next outbound transport-wide sequence number. |
GetTransportCCControlFrame()
Gets a transport-CC control frame if needed.
Declaration
public TransportCCControlFrame GetTransportCCControlFrame()
Returns
| Type | Description |
|---|---|
| TransportCCControlFrame | A transport-CC control frame, or |
GetTransportCCControlFrame(Int64)
Gets a transport-CC control frame if needed based on timing.
Declaration
public TransportCCControlFrame GetTransportCCControlFrame(long systemTimestamp)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int64 | systemTimestamp | The current system timestamp. |
Returns
| Type | Description |
|---|---|
| TransportCCControlFrame | A transport-CC control frame, or |
SetInboundTimestamp(Int32, Int64)
Sets an inbound transport-wide sequence number.
Declaration
public void SetInboundTimestamp(int sequenceNumber, long systemTimestamp)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int32 | sequenceNumber | The inbound transport-wide sequence number. |
| System.Int64 | systemTimestamp | The system timestamp. |