]> Dogcows Code - chaz/rasterize/blobdiff - scene.hh
basic ray tracing with hard shadows
[chaz/rasterize] / scene.hh
index 3e7293ddbff93dbc706eb30e16ddd75d57855553..e0c7d393376c062fdf36b8bba0e530731caf5f49 100644 (file)
--- a/scene.hh
+++ b/scene.hh
@@ -8,6 +8,7 @@
 #ifndef _SCENE_HH_
 #define _SCENE_HH_
 
+#include "list.hh"
 #include "raster.hh"
 
 
@@ -27,11 +28,27 @@ scene_t* scene_alloc(FILE* file);
 void scene_destroy(scene_t* s);
 
 
+/*
+ * Get the elements of a scene.
+ */
+list_t* scene_elements(const scene_t* s);
+
+/*
+ * Get the lights of a scene.
+ */
+list_t* scene_lights(const scene_t* s);
+
+/*
+ * Get the ambient light color of the scene.
+ */
+color_t scene_ambient(const scene_t* s);
+
+
 /*
  * Render a scene to an in-memory raster.  The caller takes ownership of the
  * returned object and must destroy it when it is no longer needed.
  */
-raster_t* scene_render(scene_t* s);
+raster_t* scene_render(const scene_t* s);
 
 
 #endif // _SCENE_HH_
This page took 0.020476 seconds and 4 git commands to generate.