19 #ifndef MIR_SHELL_SURFACE_FACTORY_H_
20 #define MIR_SHELL_SURFACE_FACTORY_H_
26 namespace scene {
class SurfaceObserver; }
32 struct SurfaceCreationParameters;
40 std::shared_ptr<scene::SurfaceObserver>
const& observer) = 0;
42 virtual void destroy_surface(std::shared_ptr<Surface>
const& surface) = 0;
53 #endif // MIR_SHELL_SURFACE_FACTORY_H_
Definition: surface_creation_parameters.h:38
virtual ~SurfaceFactory()
Definition: surface_factory.h:45
virtual void destroy_surface(std::shared_ptr< Surface > const &surface)=0
virtual std::shared_ptr< Surface > create_surface(Session *session, SurfaceCreationParameters const ¶ms, std::shared_ptr< scene::SurfaceObserver > const &observer)=0
SurfaceFactory & operator=(const SurfaceFactory &)=delete
Definition: surface_factory.h:34