* mcgarvey@eng.utah.edu
*/
-#ifndef __SCENE_H__
-#define __SCENE_H__
+#ifndef _SCENE_H_
+#define _SCENE_H_
-#include "pixmap.h"
+#include "raster.h"
/*
- * A scene.
+ * A scene class.
*/
typedef struct scene scene_t;
/*
* Allocate a scene by reading in data from a file.
*/
-scene_t* scene_alloc(const char* filename);
+scene_t* scene_alloc(FILE* file);
/*
* Destroy a scene.
/*
- * Render a scene to an in-memory pixmap. The caller takes ownership of the
+ * 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.
*/
-pixmap_t* scene_render(scene_t* s);
+raster_t* scene_render(scene_t* s);
+
+#if OPENGL
+/*
+ * Render a scene to a window using OpenGL. This function does not return.
+ */
+void scene_render_gl(scene_t* s);
+#endif // OPENGL
-#endif // __SCENE_H__
+#endif // _SCENE_H_