+public:
+ struct Template
+ {
+ class Loader: public Msp::DataFile::ObjectLoader<Template>
+ {
+ public:
+ Loader(Template &);
+ };
+
+ unsigned size_divisor;
+
+ Template();
+ virtual ~Template() { }
+
+ virtual PostProcessor *create(unsigned, unsigned) const = 0;
+ };
+
+private:
+ static WeakPtr<Mesh> fullscreen_quad;
+ static WeakPtr<Sampler> nearest_sampler;
+ static WeakPtr<Sampler> linear_sampler;
+