1 #ifndef MSP_GL_PLACEABLE_H_
2 #define MSP_GL_PLACEABLE_H_
5 #include "renderable.h"
11 A base class for things that can be positioned and oriented in 3D space.
21 virtual void set_matrix(const Matrix &);
23 /** Returns the Placeable's matrix. This function returns a pointer for
24 compatibility with Renderable. The returned pointer is never null. */
25 virtual const Matrix *get_matrix() const { return &matrix; }
29 class PlacedRenderable: public Renderable, public Placeable
32 PlacedRenderable() { }
35 /* Reimplement to clear ambiguity between Renderable and Placeable. This
36 overrides both base classes' implementations. */
37 virtual const Matrix *get_matrix() const { return &matrix; }