]> git.tdb.fi Git - libs/demoscene.git/blobdiff - source/stage.h
Make some simple actions loadable
[libs/demoscene.git] / source / stage.h
index f34e6ae8462eeb01360c4bfab816ed3f969b9dfb..c43cccb31601e2d86637706c69224973f7489979 100644 (file)
@@ -3,19 +3,33 @@
 
 #include <msp/gl/pipeline.h>
 #include "cameracontrol.h"
-#include "sequencer.h"
+#include "action.h"
 
 struct Stage
 {
-       class UseInView: public Sequencer::Action
+       class UseInView: public Action
        {
+       public:
+               class Loader: public Msp::DataFile::DerivedObjectLoader<UseInView, Action::Loader>
+               {
+               public:
+                       Loader(UseInView &, Demo &);
+
+               private:
+                       void view(const std::string &);
+                       void stage(const std::string &);
+               };
+
        private:
-               Msp::GL::View &view;
-               Stage &stage;
+               Msp::GL::View *view;
+               Stage *stage;
 
        public:
+               UseInView();
                UseInView(Msp::GL::View &, Stage &);
 
+               virtual void validate() const;
+
                virtual void start(float, float);
        };