gtk2/gsk
Emmanuele Bassi 3d90a070d5 gsk: Tie render nodes to renderers
Render nodes need access to rendering information like scaling factors.
If we keep render nodes separate from renderers until we submit a nodes
tree for rendering we're going to have to duplicate all that information
in a way that makes the API more complicated and fuzzier on its
semantics.

By having GskRenderer create GskRenderNode instances we can tie nodes
and renderers together; since higher layers will also have access to
the renderer instance, this does not add any burden to callers.

Additionally, if memory measurements indicate that we are spending too
much time in the allocation of new render nodes, we can now easily
implement a free-list or a renderer-specific allocator without breaking
the API.
2016-10-18 11:49:10 +01:00
..
resources/glsl gsk: Rename uniforms and attributes in shaders 2016-10-18 11:49:09 +01:00
gsk.h Initial implementation of GSK rendering pipeline 2016-10-18 11:29:34 +01:00
gskcairorenderer.c gsk: Rework GskRenderer and GskRenderNode semantics 2016-10-18 11:29:34 +01:00
gskcairorendererprivate.h Initial implementation of GSK rendering pipeline 2016-10-18 11:29:34 +01:00
gskdebug.c gsk: Add specific debug type for shaders 2016-10-18 11:49:08 +01:00
gskdebugprivate.h gsk: Add specific debug type for shaders 2016-10-18 11:49:08 +01:00
gskenums.h gsk: Make GskBlendMode enumeration public 2016-10-18 11:49:07 +01:00
gskenumtypes.c.template Initial implementation of GSK rendering pipeline 2016-10-18 11:29:34 +01:00
gskenumtypes.h.template Initial implementation of GSK rendering pipeline 2016-10-18 11:29:34 +01:00
gskgldriver.c gsk: Move resource handling inside GskGLDriver 2016-10-18 11:49:09 +01:00
gskgldriverprivate.h gsk: Move resource handling inside GskGLDriver 2016-10-18 11:49:09 +01:00
gskglprofiler.c gsk: Bind GL context to the GL profiler 2016-10-18 11:49:10 +01:00
gskglprofilerprivate.h gsk: Bind GL context to the GL profiler 2016-10-18 11:49:10 +01:00
gskglrenderer.c gsk: Bind GL context to the GL profiler 2016-10-18 11:49:10 +01:00
gskglrendererprivate.h Initial implementation of GSK rendering pipeline 2016-10-18 11:29:34 +01:00
gskprivate.c Initial implementation of GSK rendering pipeline 2016-10-18 11:29:34 +01:00
gskprivate.h Initial implementation of GSK rendering pipeline 2016-10-18 11:29:34 +01:00
gskrenderer.c gsk: Tie render nodes to renderers 2016-10-18 11:49:10 +01:00
gskrenderer.h gsk: Tie render nodes to renderers 2016-10-18 11:49:10 +01:00
gskrendererprivate.h gsk: Rework GskRenderer and GskRenderNode semantics 2016-10-18 11:29:34 +01:00
gskrendernode.c gsk: Tie render nodes to renderers 2016-10-18 11:49:10 +01:00
gskrendernode.h gsk: Tie render nodes to renderers 2016-10-18 11:49:10 +01:00
gskrendernodeiter.c Initial implementation of GSK rendering pipeline 2016-10-18 11:29:34 +01:00
gskrendernodeiter.h Initial implementation of GSK rendering pipeline 2016-10-18 11:29:34 +01:00
gskrendernodeprivate.h gsk: Tie render nodes to renderers 2016-10-18 11:49:10 +01:00
gskshaderbuilder.c gsk: Move resource handling inside GskGLDriver 2016-10-18 11:49:09 +01:00
gskshaderbuilderprivate.h gsk: Consolidate program creation and storage 2016-10-18 11:49:07 +01:00
gsktypes.h Initial implementation of GSK rendering pipeline 2016-10-18 11:29:34 +01:00
Makefile.am gsk: Add GL profiler 2016-10-18 11:49:08 +01:00