Sunshine v2025.118.151840
Self-hosted game stream host for Moonlight.
globals.h
Go to the documentation of this file.
1
5#pragma once
6
7#include "entry_handler.h"
8#include "thread_pool.h"
9
14
18extern bool display_cursor;
19
20#ifdef _WIN32
21 // Declare global singleton used for NVIDIA control panel modifications
23
28#endif
29
33namespace mail {
34#define MAIL(x) \
35 constexpr auto x = std::string_view { \
36 #x \
37 }
38
42 extern safe::mail_t man;
43
44 // Global mail
45 MAIL(shutdown);
46 MAIL(broadcast_shutdown);
47 MAIL(video_packets);
48 MAIL(audio_packets);
49 MAIL(switch_display);
50
51 // Local mail
52 MAIL(touch_port);
53 MAIL(idr);
54 MAIL(invalidate_ref_frames);
55 MAIL(gamepad_feedback);
56 MAIL(hdr);
57#undef MAIL
58
59} // namespace mail
Definition nvprefs_interface.h:12
Definition thread_pool.h:14
Declarations for entry handling functions.
thread_pool_util::ThreadPool task_pool
A thread pool for processing tasks.
Definition globals.cpp:8
nvprefs::nvprefs_interface nvprefs_instance
A global singleton used for NVIDIA control panel modifications.
Definition globals.cpp:12
bool display_cursor
A boolean flag to indicate whether the cursor should be displayed.
Definition globals.cpp:9
Handles process-wide communication.
Definition globals.h:33
safe::mail_t man
A process-wide communication mechanism.
Definition globals.cpp:7
Declarations for nvidia preferences interface.
Declarations for the thread pool system.