X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=effect_chain.h;h=718d5ff7830cde86c7fb192b77417278dd68f7cf;hb=274627c966f53780991e9f80887aa1906b592751;hp=70dc256f41f19616d4b2fce2875ec98d049e7847;hpb=2fd06b9c44225d1e740cb2de08a9dfa5c9cd0031;p=movit diff --git a/effect_chain.h b/effect_chain.h index 70dc256..718d5ff 100644 --- a/effect_chain.h +++ b/effect_chain.h @@ -23,6 +23,7 @@ #include #include +#include #include #include #include @@ -179,7 +180,8 @@ struct Phase { std::vector > uniforms_mat3; // For measurement of GPU time used. - GLuint timer_query_object; + std::list timer_query_objects_running; + std::list timer_query_objects_free; uint64_t time_elapsed_ns; uint64_t num_measured_iterations; }; @@ -192,7 +194,7 @@ public: // will create its own that is not shared with anything else. Does not take // ownership of the passed-in ResourcePool, but will naturally take ownership // of its own internal one if created. - EffectChain(float aspect_nom, float aspect_denom, ResourcePool *resource_pool = NULL); + EffectChain(float aspect_nom, float aspect_denom, ResourcePool *resource_pool = NULL, GLenum intermediate_format = GL_RGBA16F); ~EffectChain(); // User API: @@ -436,6 +438,7 @@ private: std::vector inputs; // Also contained in nodes. std::vector phases; + GLenum intermediate_format; unsigned num_dither_bits; OutputOrigin output_origin; bool finalized;