19 #ifndef MIR_SCENE_PROMPT_SESSION_MANAGER_H_ 20 #define MIR_SCENE_PROMPT_SESSION_MANAGER_H_ 22 #include <sys/types.h> 32 struct PromptSessionCreationParameters;
51 virtual void stop_prompt_session(std::shared_ptr<PromptSession>
const& prompt_session)
const = 0;
71 std::shared_ptr<Session>
const& prompt_provider)
const = 0;
77 virtual void remove_session(std::shared_ptr<Session>
const& session)
const = 0;
83 virtual std::shared_ptr<Session>
application_for(std::shared_ptr<PromptSession>
const& prompt_session)
const = 0;
89 virtual std::shared_ptr<Session>
helper_for(std::shared_ptr<PromptSession>
const& prompt_session)
const = 0;
97 std::function<
void(std::shared_ptr<Session>
const& prompt_provider)>
const& f)
const = 0;
108 #endif // MIR_SCENE_PROMPT_SESSION_MANAGER_H_ PromptSessionManager()=default
All things Mir.
Definition: atomic_callback.h:25
virtual std::shared_ptr< Session > application_for(std::shared_ptr< PromptSession > const &prompt_session) const =0
Retrieve the application session for a prompt session.
virtual ~PromptSessionManager()=default
virtual void add_prompt_provider(std::shared_ptr< PromptSession > const &prompt_session, std::shared_ptr< Session > const &prompt_provider) const =0
Add a prompt provider to an existing prompt session.
virtual void stop_prompt_session(std::shared_ptr< PromptSession > const &prompt_session) const =0
Stop a started prompt session.
virtual void remove_session(std::shared_ptr< Session > const &session) const =0
Remove a session from all associated prompt sessions.
virtual std::shared_ptr< Session > helper_for(std::shared_ptr< PromptSession > const &prompt_session) const =0
Retrieve the helper session for a prompt session.
virtual std::shared_ptr< PromptSession > start_prompt_session_for(std::shared_ptr< Session > const &session, PromptSessionCreationParameters const ¶ms) const =0
Start a new prompt session.
PromptSessionManager & operator=(const PromptSessionManager &)=delete
virtual void resume_prompt_session(std::shared_ptr< PromptSession > const &prompt_session) const =0
Resume a suspended prompt session.
Definition: prompt_session_manager.h:34
virtual void for_each_provider_in(std::shared_ptr< PromptSession > const &prompt_session, std::function< void(std::shared_ptr< Session > const &prompt_provider)> const &f) const =0
Iterate over all the prompt providers associated with a prompt session.
Definition: prompt_session_creation_parameters.h:29
virtual void suspend_prompt_session(std::shared_ptr< PromptSession > const &prompt_session) const =0
Suspend a prompt session.