Sunshine0.0.5917
Sunshine 0.0.5917
Self-hosted game stream host for Moonlight.
Loading...
Searching...
No Matches
Go to the documentation of this file.
1
5#pragma once
6
7// standard includes
8#include <vector>
9
10// local includes
12
13namespace platf {
22
32 permission_request_action_t permission_request_action(bool granted, int previous_state, bool startup, bool retry_manual_request);
33
40 bool supports_local_network_privacy(int major_version);
41
49 bool should_request_startup_permission(const permission_status_t &permission, bool notifications_enabled);
50
56 void request_startup_permissions(bool notifications_enabled);
57
64 void request_startup_system_audio_permission();
65
73 bool should_request_startup_system_audio_permission(bool has_custom_sink, bool previously_requested);
74
80 bool request_system_audio_permission();
81
87 bool is_screen_capture_allowed();
88} // namespace platf
89
90namespace dyn {
91 typedef void (*apiproc)();
92
101 int load(void *handle, const std::vector<std::tuple<apiproc *, const char *>> &funcs, bool strict = true);
108 void *handle(const std::vector<const char *> &libs);
109
110} // namespace dyn
int load(library_t *handle, const std::vector< std::tuple< apiproc *, const char * > > &funcs, bool strict)
Load named functions from an open shared library.
Definition misc.cpp:139
library_t * handle(const std::vector< const char * > &libs)
Open the first available shared library from a nonempty list.
Definition misc.cpp:113
void(*)(void) apiproc
Generic GLX procedure pointer returned by the loader.
Definition misc.h:51
permission_request_action_t
Action to take when a macOS privacy permission is unavailable.
Definition misc.h:17
@ settings
Open the permission's settings pane.
Definition misc.h:20
@ none
No startup action is needed after an earlier request.
Definition misc.h:18
@ prompt
Ask macOS for the native permission.
Definition misc.h:19
Cross-platform permission status and request interface.