Looks good
On Sun, Apr 08, 2012 at 06:42:37PM +0300, Yonit Halperin wrote:
> Add SPICE_MSG_DISPLAY_STREAM_DATA_SIZED, for stream_data message
> that also contains the size and destination box of the data.
> The server can send such messages only to clients with
> SPICE_DISPLAY_CAP_SIZED_STREAM.
> 
> Signed-off-by: Yonit Halperin <yhalp...@redhat.com>
> ---
>  common/messages.h |   15 ++++++++++++++-
>  spice.proto       |   19 ++++++++++++++++---
>  spice1.proto      |    8 ++++++--
>  3 files changed, 36 insertions(+), 6 deletions(-)
> 
> diff --git a/common/messages.h b/common/messages.h
> index 58e8bee..f7bc32a 100644
> --- a/common/messages.h
> +++ b/common/messages.h
> @@ -307,13 +307,26 @@ typedef struct SpiceMsgDisplayStreamCreate {
>      SpiceClip clip;
>  } SpiceMsgDisplayStreamCreate;
>  
> -typedef struct SpiceMsgDisplayStreamData {
> +typedef struct SpiceStreamDataHeader {
>      uint32_t id;
>      uint32_t multi_media_time;
> +} SpiceStreamDataHeader;
> +
> +typedef struct SpiceMsgDisplayStreamData {
> +    SpiceStreamDataHeader base;
>      uint32_t data_size;
>      uint8_t data[0];
>  } SpiceMsgDisplayStreamData;
>  
> +typedef struct SpiceMsgDisplayStreamDataSized {
> +    SpiceStreamDataHeader base;
> +    uint32_t width;
> +    uint32_t height;
> +    SpiceRect dest;
> +    uint32_t data_size;
> +    uint8_t data[0];
> +} SpiceMsgDisplayStreamDataSized;
> +
>  typedef struct SpiceMsgDisplayStreamClip {
>      uint32_t id;
>      SpiceClip clip;
> diff --git a/spice.proto b/spice.proto
> index 513fe87..71be9ac 100644
> --- a/spice.proto
> +++ b/spice.proto
> @@ -591,6 +591,11 @@ struct String {
>      } u @anon;
>  };
>  
> +struct StreamDataHeader {
> +     uint32 id;
> +     uint32 multi_media_time;
> +};
> +
>  channel DisplayChannel : BaseChannel {
>   server:
>      message {
> @@ -637,10 +642,9 @@ channel DisplayChannel : BaseChannel {
>      } stream_create = 122;
>  
>      message {
> -     uint32 id;
> -     uint32 multi_media_time;
> +     StreamDataHeader base;
>       uint32 data_size;
> -     uint8 data[data_size] @end  @nomarshal;
> +     uint8 data[data_size] @end @nomarshal;
>      } stream_data;
>  
>      message {
> @@ -785,6 +789,15 @@ channel DisplayChannel : BaseChannel {
>       uint32 surface_id;
>      } @ctype(SpiceMsgSurfaceDestroy) surface_destroy;
>  
> +    message {
> +     StreamDataHeader base;
> +     uint32 width;
> +     uint32 height;
> +     Rect dest;
> +     uint32 data_size;
> +     uint8 data[data_size] @end @nomarshal;
> +    } stream_data_sized;
> +
>   client:
>      message {
>       uint8 pixmap_cache_id;
> diff --git a/spice1.proto b/spice1.proto
> index fa2524b..2ed1058 100644
> --- a/spice1.proto
> +++ b/spice1.proto
> @@ -533,6 +533,11 @@ struct String {
>      } u @anon;
>  };
>  
> +struct StreamDataHeader {
> +     uint32 id;
> +     uint32 multi_media_time;
> +};
> +
>  channel DisplayChannel : BaseChannel {
>   server:
>      message {
> @@ -580,8 +585,7 @@ channel DisplayChannel : BaseChannel {
>      } stream_create = 122;
>  
>      message {
> -     uint32 id;
> -     uint32 multi_media_time;
> +     StreamDataHeader base;
>       uint32 data_size;
>       uint32 pad_size @zero;
>       uint8 data[data_size] @end  @nomarshal;
> -- 
> 1.7.7.6
> 
> _______________________________________________
> Spice-devel mailing list
> Spice-devel@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/spice-devel

Attachment: pgp5bd34wdhvI.pgp
Description: PGP signature

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

Reply via email to