Sunshine v2026.319.132152
Self-hosted game stream host for Moonlight.
portalgrab.cpp File Reference

Definitions for XDG portal grab. More...

#include <array>
#include <fcntl.h>
#include <format>
#include <fstream>
#include <memory>
#include <mutex>
#include <string.h>
#include <string_view>
#include <thread>
#include <gio/gio.h>
#include <gio/gunixfdlist.h>
#include <libdrm/drm_fourcc.h>
#include <pipewire/pipewire.h>
#include <spa/param/video/format-utils.h>
#include <spa/param/video/type-info.h>
#include <spa/pod/builder.h>
#include "cuda.h"
#include "graphics.h"
#include "src/main.h"
#include "src/platform/common.h"
#include "src/video.h"
#include "vaapi.h"
#include "wayland.h"
#include <sys/capability.h>
#include <sys/prctl.h>
Include dependency graph for portalgrab.cpp:

Classes

struct  portal::dbus_response_t
 
class  portal::dbus_t
 
struct  portal::dmabuf_format_info_t
 
struct  portal::format_map_t
 
class  portal::pipewire_t
 
class  portal::portal_t
 
class  portal::restore_token_t
 
class  portal::session_cache_t
 Singleton cache for portal session data. More...
 
struct  portal::shared_state_t
 
struct  portal::stream_data_t
 

Functions

std::shared_ptr< display_tplatf::portal_display (mem_type_e hwdevice_type, const std::string &display_name, const video::config_t &config)
 
std::vector< std::string > platf::portal_display_names ()
 

Detailed Description

Definitions for XDG portal grab.