X-Git-Url: http://git.tdb.fi/?p=libs%2Fgl.git;a=blobdiff_plain;f=source%2Fbuilders%2Fsequencetemplate.h;h=061fdfc39928f1b4ce8e2634ffe3e1d933ec1086;hp=596def5064950d9741ff64d8626a11756c3c1c9d;hb=866c80e19e66d6dd8d49ec48d9be54a3a7fe07a2;hpb=6cbabebe65575a55e120acd6294da305765d5bbb diff --git a/source/builders/sequencetemplate.h b/source/builders/sequencetemplate.h index 596def50..061fdfc3 100644 --- a/source/builders/sequencetemplate.h +++ b/source/builders/sequencetemplate.h @@ -6,13 +6,14 @@ #include #include #include "blend.h" +#include "depthtest.h" #include "postprocessor.h" #include "predicate.h" +#include "stenciltest.h" namespace Msp { namespace GL { -class DepthTest; class Lighting; class Renderable; @@ -64,26 +65,35 @@ public: { class Loader: public DataFile::CollectionObjectLoader { + private: + std::string inline_base_name; + public: Loader(Step &); Loader(Step &, Collection &); private: void init(); - void blend(BlendFactor, BlendFactor); - void blend_predefined(const std::string &); - void depth_test(Predicate); - void depth_test_predefined(const std::string &); + public: + void set_inline_base_name(const std::string &); + + private: + void blend(); + void blend_factors(BlendFactor, BlendFactor); + void depth_test(); + void depth_compare(Predicate); void lighting(const std::string &); void lighting_inline(); void object(const std::string &); void scene(const std::string &); + void stencil_test(); }; std::string tag; - RefPtr lighting; - RefPtr depth_test; - RefPtr blend; + const Lighting *lighting; + DepthTest depth_test; + StencilTest stencil_test; + Blend blend; std::string slot_name; Renderable *default_renderable; @@ -103,7 +113,6 @@ public: private: typedef TypeRegistry PostProcessorRegistry; - Resources *resources; bool hdr; bool alpha; unsigned required_multisample; @@ -115,7 +124,6 @@ public: SequenceTemplate(); ~SequenceTemplate(); - Resources &get_resources() const; bool get_hdr() const { return hdr; } bool get_alpha() const { return alpha; } unsigned get_required_multisample() const { return required_multisample; }