[Spice-devel] [PATCH 38/39] zap vd_interface.h

Alexander Larsson alexl at redhat.com
Wed May 19 01:45:07 PDT 2010


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 
       alexl at redhat.com            alexander.larsson at 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! 



More information about the Spice-devel mailing list