19 #ifndef MIR_SCENE_SESSION_H_ 20 #define MIR_SCENE_SESSION_H_ 26 #include <sys/types.h> 30 namespace frontend {
class EventSink; }
31 namespace shell {
struct StreamSpecification; }
32 namespace input {
class Device; }
36 struct SurfaceCreationParameters;
41 virtual void force_requests_to_complete() = 0;
42 virtual pid_t process_id()
const = 0;
45 virtual std::shared_ptr<Surface> default_surface()
const = 0;
49 virtual void hide() = 0;
50 virtual void show() = 0;
52 virtual void start_prompt_session() = 0;
53 virtual void stop_prompt_session() = 0;
54 virtual void suspend_prompt_session() = 0;
55 virtual void resume_prompt_session() = 0;
59 std::shared_ptr<frontend::EventSink>
const& sink) = 0;
63 virtual std::shared_ptr<Surface> surface_after(std::shared_ptr<Surface>
const&)
const = 0;
69 virtual void configure_streams(
Surface& surface, std::vector<shell::StreamSpecification>
const& config) = 0;
70 virtual void destroy_surface(std::weak_ptr<Surface>
const& surface) = 0;
71 virtual void send_input_device_change(std::vector<std::shared_ptr<input::Device>>
const& devices) = 0;
76 #endif // MIR_SCENE_SESSION_H_
All things Mir.
Definition: atomic_callback.h:25
std::function< void(Snapshot const &)> SnapshotCallback
Definition: snapshot.h:39
Definition: surface_creation_parameters.h:41
Buffer creation properties.
Definition: buffer_properties.h:48
Interface to a configuration of display cards and outputs.
Definition: display_configuration.h:167