19 #ifndef MIR_SCENE_SURFACE_H_
20 #define MIR_SCENE_SURFACE_H_
28 namespace input {
class InputChannel; }
32 class SurfaceObserver;
41 std::string
name()
const = 0;
44 float alpha()
const = 0;
50 virtual std::shared_ptr<input::InputChannel>
input_channel()
const = 0;
51 virtual void on_change(std::function<
void()> change_notification) = 0;
53 virtual void add_observer(std::shared_ptr<SurfaceObserver>
const& observer) = 0;
54 virtual void remove_observer(std::shared_ptr<SurfaceObserver>
const& observer) = 0;
59 #endif // MIR_SCENE_SURFACE_H_
geometry::Point top_left() const =0
virtual void on_change(std::function< void()> change_notification)=0
virtual std::shared_ptr< input::InputChannel > input_channel() const =0
virtual void add_observer(std::shared_ptr< SurfaceObserver > const &observer)=0
geometry::Size size() const =0
Definition: renderable.h:33
std::string name() const =0
virtual void remove_observer(std::shared_ptr< SurfaceObserver > const &observer)=0