--- /dev/null
+#ifndef FORESTPOND_H_
+#define FORESTPOND_H_
+
+#include <memory>
+#include <msp/core/application.h>
+#include <msp/datafile/directorysource.h>
+#include <msp/gl/device.h>
+#include <msp/gl/resourcemanager.h>
+#include <msp/gl/resources.h>
+#include <msp/gl/sequence.h>
+#include <msp/gl/windowview.h>
+#include <msp/graphics/display.h>
+#include <msp/graphics/window.h>
+
+class ForestPond: public Msp::RegisteredApplication<ForestPond>
+{
+private:
+ class Resources: public Msp::GL::Resources
+ {
+ private:
+ Msp::DataFile::DirectorySource source;
+
+ public:
+ Resources(Msp::GL::ResourceManager *);
+ };
+
+ Msp::Graphics::Display display;
+ Msp::Graphics::Window window;
+ Msp::GL::Device gl_device;
+ Msp::GL::ResourceManager res_mgr;
+ Resources resources;
+
+ Msp::GL::WindowView view;
+ std::unique_ptr<Msp::GL::Sequence> sequence;
+ Msp::GL::Camera &camera;
+
+public:
+ ForestPond(int, char **);
+
+ virtual int main();
+private:
+ virtual void tick();
+};
+
+#endif