summaryrefslogtreecommitdiffstats
path: root/libdimensionxx/dimensionxx/scene.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'libdimensionxx/dimensionxx/scene.hpp')
-rw-r--r--libdimensionxx/dimensionxx/scene.hpp26
1 files changed, 20 insertions, 6 deletions
diff --git a/libdimensionxx/dimensionxx/scene.hpp b/libdimensionxx/dimensionxx/scene.hpp
index 8b5270c..c79152f 100644
--- a/libdimensionxx/dimensionxx/scene.hpp
+++ b/libdimensionxx/dimensionxx/scene.hpp
@@ -25,12 +25,19 @@
namespace Dimension
{
+ // Wrapper for dmnsn_quality
+ enum Quality {
+ RENDER_NONE = DMNSN_RENDER_NONE,
+ RENDER_OBJECTS = DMNSN_RENDER_OBJECTS,
+ RENDER_FULL = DMNSN_RENDER_FULL
+ };
+
// Base scene class. Wraps a dmnsn_scene*.
class Scene
{
public:
// Allocate a dmnsn_scene*
- Scene(const Color& background, Camera& camera, Canvas& canvas);
+ Scene(Camera& camera, Canvas& canvas);
// Scene(const Scene& scene);
@@ -38,14 +45,21 @@ namespace Dimension
~Scene();
// Element access
- Color background() const;
- Camera& camera();
- const Camera& camera() const;
- Canvas& canvas();
- const Canvas& canvas() const;
+ Color background() const;
+ void background(const Color& color);
+
+ Camera& camera();
+ const Camera& camera() const;
+
+ Canvas& canvas();
+ const Canvas& canvas() const;
+
Array<Object>& objects();
const Array<Object>& objects() const;
+ Quality quality() const;
+ void quality(Quality quality);
+
// Access the wrapped C object.
dmnsn_scene* dmnsn();
const dmnsn_scene* dmnsn() const;