On Tue, 2010-05-18 at 17:43 +0200, Gerd Hoffmann wrote:
> +struct SpiceRect;
> +struct QXLWorker {
> +    uint32_t minor_version;
> +    uint32_t major_version;
> +    void (*wakeup)(QXLWorker *worker);
> +    void (*oom)(QXLWorker *worker);
> +    void (*start)(QXLWorker *worker);
> +    void (*stop)(QXLWorker *worker);
> +    void (*update_area)(QXLWorker *qxl_worker, uint32_t surface_id,
> +                       struct SpiceRect *area, struct SpiceRect *dirty_rects,
> +                       uint32_t num_dirty_rects, uint32_t 
> clear_dirty_region); 


I don't like how this puts the SpiceRect typedef in the public API, as
we want to convert all Spice types that qxl uses to qxl specific types
(i.e. QXLRect), and then make SpiceRect internal (in fact we want to
change SpiceRect to be binary compat with the pixman box_t type).

Furthermore, the API as is doesn't even define SpiceRect as it doesn't
pull in the right header from spice-protocol for it. I'm not sure what
the best approach here is. We should add QXLRect to qxl_dev.h and just
use it for update_area for now. Then we can pull in qxl_dev.h into
spice.h or we could forward declare it like SpiceRect above.

-- 
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
 Alexander Larsson                                            Red Hat, Inc 
       al...@redhat.com            alexander.lars...@gmail.com 
He's a leather-clad Amish stage actor moving from town to town, helping folk 
in trouble. She's a blind out-of-work queen of the dead with only herself to 
blame. They fight crime! 

_______________________________________________
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/spice-devel

Reply via email to