Sunshine master
Self-hosted game stream host for Moonlight.
platf::qos_t Class Reference

Linux QoS state used to tune socket priority while streaming. More...

Inheritance diagram for platf::qos_t:
[legend]
Collaboration diagram for platf::qos_t:
[legend]

Public Member Functions

 qos_t (int sockfd, std::vector< std::tuple< int, int, int > > options)
 Apply Linux socket priority and DSCP QoS settings for scoped cleanup.
 
 qos_t (int sockfd, std::vector< std::tuple< int, int, int > > options)
 Apply macOS socket QoS settings for scoped cleanup.
 
 qos_t (QOS_FLOWID flow_id)
 Store a Windows QoS flow ID for cleanup on destruction.
 
- Public Member Functions inherited from platf::deinit_t
virtual ~deinit_t ()=default
 Destroy the deinitializer.
 

Detailed Description

Linux QoS state used to tune socket priority while streaming.

Owns platform QoS state that is restored during cleanup.

Constructor & Destructor Documentation

◆ qos_t() [1/3]

platf::qos_t::qos_t ( int sockfd,
std::vector< std::tuple< int, int, int > > options )
inline

Apply Linux socket priority and DSCP QoS settings for scoped cleanup.

Parameters
sockfdNative socket descriptor whose options are updated.
optionsRequest options or socket options to apply.

◆ qos_t() [2/3]

platf::qos_t::qos_t ( int sockfd,
std::vector< std::tuple< int, int, int > > options )
inline

Apply macOS socket QoS settings for scoped cleanup.

Parameters
sockfdNative socket descriptor whose options are updated.
optionsRequest options or socket options to apply.

◆ qos_t() [3/3]

platf::qos_t::qos_t ( QOS_FLOWID flow_id)
inline

Store a Windows QoS flow ID for cleanup on destruction.

Parameters
flow_idFlow ID.

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