mutter/clutter/pango
Robert Bragg c3d9f0bed4 [cogl-handle] Optimize how we define cogl handles
The cogl_is_* functions were showing up quite high on profiles due to
iterating through arrays of cogl handles.

This does away with all the handle arrays and implements a simple struct
inheritance scheme. All cogl objects now add a CoglHandleObject _parent;
member to their main structures. The base object includes 2 members a.t.m; a
ref_count, and a klass pointer. The klass in turn gives you a type and
virtual function for freeing objects of that type.

Each handle type has a _cogl_##handle_type##_get_type () function
automatically defined which returns a GQuark of the handle type, so now
implementing the cogl_is_* funcs is just a case of comparing with
obj->klass->type.

Another outcome of the re-work is that cogl_handle_{ref,unref} are also much
more efficient, and no longer need extending for each handle type added to
cogl. The cogl_##handle_type##_{ref,unref} functions are now deprecated and
are no longer used internally to Clutter or Cogl. Potentially we can remove
them completely before 1.0.
2009-04-02 11:58:43 +01:00
..
cogl-pango-fontmap.c 2008-10-31 Emmanuele Bassi <ebassi@linux.intel.com> 2008-10-31 17:48:24 +00:00
cogl-pango-glyph-cache.c [cogl-handle] Optimize how we define cogl handles 2009-04-02 11:58:43 +01:00
cogl-pango-glyph-cache.h [Automatic fixed-to-float.sh change] Applies all scripted changes 2009-01-20 16:20:54 +00:00
cogl-pango-private.h 2008-10-30 Emmanuele Bassi <ebassi@linux.intel.com> 2008-10-30 17:11:29 +00:00
cogl-pango-render.c Change cogl_path_rectangle and cogl_path_round_rectangle to take x1,y1,x2,y2 2009-03-13 12:20:26 +00:00
cogl-pango.h * clutter/pango/cogl-pango.h: Include pango/pango.h to get 2008-11-21 16:18:31 +00:00
Makefile.am Split maintainer-flags from the compiler flags 2009-01-23 13:09:51 +00:00